1
0
mirror of https://gitlab.com/MoonTestUse1/AdministrationItDepartmens.git synced 2025-08-14 00:25:46 +02:00

Интеграция базы данных Postgresql v9

This commit is contained in:
MoonTestUse1
2024-12-28 07:32:45 +06:00
parent 5dc71f943d
commit e312eea415

View File

@@ -14,13 +14,18 @@ branch_labels = None
depends_on = None depends_on = None
def upgrade() -> None: def upgrade() -> None:
# Drop existing enum types if they exist
connection = op.get_bind()
connection.execute(sa.text('DROP TYPE IF EXISTS requeststatus CASCADE;'))
connection.execute(sa.text('DROP TYPE IF EXISTS requestpriority CASCADE;'))
# Create RequestStatus enum type # Create RequestStatus enum type
request_status = sa.Enum(RequestStatus, name='requeststatus') request_status = sa.Enum(RequestStatus, name='requeststatus')
request_status.create(op.get_bind(), checkfirst=True) request_status.create(op.get_bind(), checkfirst=False)
# Create RequestPriority enum type # Create RequestPriority enum type
request_priority = sa.Enum(RequestPriority, name='requestpriority') request_priority = sa.Enum(RequestPriority, name='requestpriority')
request_priority.create(op.get_bind(), checkfirst=True) request_priority.create(op.get_bind(), checkfirst=False)
# Create employees table # Create employees table
op.create_table( op.create_table(
@@ -45,7 +50,7 @@ def upgrade() -> None:
sa.Column('department', sa.String(), nullable=False), sa.Column('department', sa.String(), nullable=False),
sa.Column('request_type', sa.String(), nullable=False), sa.Column('request_type', sa.String(), nullable=False),
sa.Column('priority', request_priority, nullable=False), sa.Column('priority', request_priority, nullable=False),
sa.Column('status', request_status, nullable=False, server_default='NEW'), sa.Column('status', request_status, nullable=False, server_default=sa.text("'NEW'")),
sa.Column('description', sa.String(), nullable=True), sa.Column('description', sa.String(), nullable=True),
sa.Column('created_at', sa.DateTime(timezone=True), server_default=sa.text('now()')), sa.Column('created_at', sa.DateTime(timezone=True), server_default=sa.text('now()')),
sa.ForeignKeyConstraint(['employee_id'], ['employees.id'], ), sa.ForeignKeyConstraint(['employee_id'], ['employees.id'], ),
@@ -58,5 +63,6 @@ def downgrade() -> None:
op.drop_table('employees') op.drop_table('employees')
# Drop enum types # Drop enum types
sa.Enum(RequestStatus, name='requeststatus').drop(op.get_bind(), checkfirst=True) connection = op.get_bind()
sa.Enum(RequestPriority, name='requestpriority').drop(op.get_bind(), checkfirst=True) connection.execute(sa.text('DROP TYPE IF EXISTS requeststatus CASCADE;'))
connection.execute(sa.text('DROP TYPE IF EXISTS requestpriority CASCADE;'))