fabrics-aar75v/alembic/versions/20250430_101955_cc017186_update_sale.py

34 lines
1.1 KiB
Python

"""create table for sales
Revision ID: 2f9d3b7c8a4a
Revises: 0001
Create Date: 2023-05-25 12:34:56
"""
from alembic import op
import sqlalchemy as sa
from sqlalchemy.sql import func
import uuid
# revision identifiers, used by Alembic.
revision = '2f9d3b7c8a4a'
down_revision = '0001'
branch_labels = None
depends_on = None
def upgrade():
op.create_table(
'sales',
sa.Column('id', sa.String(36), primary_key=True, default=lambda: str(uuid.uuid4())),
sa.Column('customer_id', sa.String(36), nullable=False),
sa.Column('product_id', sa.String(36), nullable=False),
sa.Column('quantity', sa.Integer(), nullable=False),
sa.Column('price', sa.Float(), nullable=False),
sa.Column('total_amount', sa.Float(), nullable=False),
sa.Column('created_at', sa.DateTime(), server_default=func.now()),
sa.Column('updated_at', sa.DateTime(), server_default=func.now(), onupdate=func.now()),
sa.ForeignKeyConstraint(['customer_id'], ['customers.id']),
sa.ForeignKeyConstraint(['product_id'], ['products.id'])
)
def downgrade():
op.drop_table('sales')