From 0444ff325490f24e9a8d35f83ba37a0bd95ab6c5 Mon Sep 17 00:00:00 2001 From: Tolmachev Igor Date: Mon, 23 Mar 2026 22:17:24 +0300 Subject: Add pay_invoice button --- alembic/versions/1627487324fd_init_database.py | 72 ------------------------ alembic/versions/c0c4d0fbcee2_init_database.py | 77 ++++++++++++++++++++++++++ 2 files changed, 77 insertions(+), 72 deletions(-) delete mode 100644 alembic/versions/1627487324fd_init_database.py create mode 100644 alembic/versions/c0c4d0fbcee2_init_database.py (limited to 'alembic/versions') diff --git a/alembic/versions/1627487324fd_init_database.py b/alembic/versions/1627487324fd_init_database.py deleted file mode 100644 index f25277f..0000000 --- a/alembic/versions/1627487324fd_init_database.py +++ /dev/null @@ -1,72 +0,0 @@ -"""init database - -Revision ID: 1627487324fd -Revises: -Create Date: 2026-03-23 18:33:08.493629 - -""" - -from typing import Sequence, Union - -import sqlalchemy as sa - -from alembic import op - -# revision identifiers, used by Alembic. -revision: str = "1627487324fd" -down_revision: Union[str, Sequence[str], None] = None -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - """Upgrade schema.""" - # ### commands auto generated by Alembic - please adjust! ### - op.create_table( - "announcement", - sa.Column("id", sa.Integer(), autoincrement=True, nullable=False), - sa.Column("message", sa.JSON(), nullable=False), - sa.Column("datetime", sa.DateTime(), nullable=False), - sa.PrimaryKeyConstraint("id", name=op.f("pk_announcement")), - ) - op.create_table( - "invoice", - sa.Column("id", sa.Integer(), autoincrement=True, nullable=False), - sa.Column("message", sa.JSON(), nullable=False), - sa.Column("datetime", sa.DateTime(), nullable=False), - sa.PrimaryKeyConstraint("id", name=op.f("pk_invoice")), - ) - op.create_table( - "user", - sa.Column("id", sa.Integer(), autoincrement=False, nullable=False), - sa.Column("role", sa.Enum("REGULAR", "ADMIN", name="userrole"), nullable=False), - sa.Column("vpn_link", sa.String(), nullable=False), - sa.Column("datetime", sa.DateTime(), nullable=False), - sa.PrimaryKeyConstraint("id", name=op.f("pk_user")), - ) - op.create_table( - "payment", - sa.Column("id", sa.Integer(), autoincrement=True, nullable=False), - sa.Column("user_id", sa.Integer(), nullable=False), - sa.Column("invoice_id", sa.Integer(), nullable=False), - sa.Column("receipt_file_id", sa.String(), nullable=False), - sa.Column("datetime", sa.DateTime(), nullable=False), - sa.ForeignKeyConstraint( - ["invoice_id"], ["invoice.id"], name=op.f("fk_payment_invoice_id_invoice") - ), - sa.ForeignKeyConstraint( - ["user_id"], ["user.id"], name=op.f("fk_payment_user_id_user") - ), - sa.PrimaryKeyConstraint("id", name=op.f("pk_payment")), - ) - # ### end Alembic commands ### - - -def downgrade() -> None: - """Downgrade schema.""" - # ### commands auto generated by Alembic - please adjust! ### - op.drop_table("payment") - op.drop_table("user") - op.drop_table("invoice") - op.drop_table("announcement") - # ### end Alembic commands ### diff --git a/alembic/versions/c0c4d0fbcee2_init_database.py b/alembic/versions/c0c4d0fbcee2_init_database.py new file mode 100644 index 0000000..8f61846 --- /dev/null +++ b/alembic/versions/c0c4d0fbcee2_init_database.py @@ -0,0 +1,77 @@ +"""init database + +Revision ID: c0c4d0fbcee2 +Revises: +Create Date: 2026-03-23 21:19:28.195907 + +""" + +from typing import Sequence, Union + +import sqlalchemy as sa + +from alembic import op + +# revision identifiers, used by Alembic. +revision: str = "c0c4d0fbcee2" +down_revision: Union[str, Sequence[str], None] = None +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + """Upgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.create_table( + "announcement", + sa.Column("id", sa.Integer(), autoincrement=True, nullable=False), + sa.Column("message", sa.JSON(), nullable=False), + sa.Column("datetime", sa.DateTime(), nullable=False), + sa.PrimaryKeyConstraint("id", name=op.f("pk_announcement")), + ) + op.create_table( + "invoice", + sa.Column("id", sa.Integer(), autoincrement=True, nullable=False), + sa.Column("message", sa.JSON(), nullable=False), + sa.Column("datetime", sa.DateTime(), nullable=False), + sa.PrimaryKeyConstraint("id", name=op.f("pk_invoice")), + ) + op.create_table( + "user", + sa.Column("id", sa.Integer(), autoincrement=False, nullable=False), + sa.Column("role", sa.Enum("REGULAR", "ADMIN", name="userrole"), nullable=False), + sa.Column("vpn_link", sa.String(), nullable=False), + sa.Column("datetime", sa.DateTime(), nullable=False), + sa.PrimaryKeyConstraint("id", name=op.f("pk_user")), + ) + op.create_table( + "payment", + sa.Column("id", sa.Integer(), autoincrement=True, nullable=False), + sa.Column("user_id", sa.Integer(), nullable=False), + sa.Column("invoice_id", sa.Integer(), nullable=False), + sa.Column("receipt_file", sa.JSON(), nullable=False), + sa.Column( + "status", + sa.Enum("PENDING", "ACCEPTED", "REJECTED", name="paymentstatus"), + nullable=False, + ), + sa.Column("datetime", sa.DateTime(), nullable=False), + sa.ForeignKeyConstraint( + ["invoice_id"], ["invoice.id"], name=op.f("fk_payment_invoice_id_invoice") + ), + sa.ForeignKeyConstraint( + ["user_id"], ["user.id"], name=op.f("fk_payment_user_id_user") + ), + sa.PrimaryKeyConstraint("id", name=op.f("pk_payment")), + ) + # ### end Alembic commands ### + + +def downgrade() -> None: + """Downgrade schema.""" + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table("payment") + op.drop_table("user") + op.drop_table("invoice") + op.drop_table("announcement") + # ### end Alembic commands ### -- cgit v1.3