gitscope
← marzneshin / v0.6.5 / app/db/migrations/versions/20240526_058eb11c5b17_user_reset_in_table.py
https://dev.kronoz.win/r/marzneshin.git
app/db/migrations/versions/20240526_058eb11c5b17_user_reset_in_table.py · Python
Blame Raw
 1"""hold user last reset and lifetime_used_traffic inside the table
 2
 3Revision ID: 058eb11c5b17
 4Revises: 74e234a3bd4b
 5Create Date: 2024-05-26 21:16:06.762089
 6
 7"""
 8
 9import sqlalchemy as sa
10from alembic import op
11
12# revision identifiers, used by Alembic.
13revision = "058eb11c5b17"
14down_revision = "74e234a3bd4b"
15branch_labels = None
16depends_on = None
17
18
19def upgrade() -> None:
20    # ### commands auto generated by Alembic - please adjust! ###
21    op.drop_table("user_usage_logs")
22    op.add_column(
23        "users",
24        sa.Column(
25            "lifetime_used_traffic",
26            sa.BigInteger(),
27            server_default="0",
28            nullable=False,
29        ),
30    )
31    op.add_column(
32        "users",
33        sa.Column(
34            "traffic_reset_at",
35            sa.DateTime(),
36            server_default=sa.sql.null(),
37            nullable=True,
38        ),
39    )
40    # ### end Alembic commands ###
41
42
43def downgrade() -> None:
44    # ### commands auto generated by Alembic - please adjust! ###
45    op.drop_column("users", "traffic_reset_at")
46    op.drop_column("users", "lifetime_used_traffic")
47    op.create_table(
48        "user_usage_logs",
49        sa.Column("id", sa.INTEGER(), nullable=False),
50        sa.Column("user_id", sa.INTEGER(), nullable=True),
51        sa.Column("used_traffic_at_reset", sa.BIGINT(), nullable=False),
52        sa.Column("reset_at", sa.DATETIME(), nullable=True),
53        sa.ForeignKeyConstraint(
54            ["user_id"],
55            ["users.id"],
56        ),
57        sa.PrimaryKeyConstraint("id"),
58    )
59    # ### end Alembic commands ###