"""add audit logs
Revision ID: c3d4e5f6a7b8
Revises: b2c3d4e5f6a7
"""
from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import postgresql
revision='c3d4e5f6a7b8';down_revision='b2c3d4e5f6a7';branch_labels=None;depends_on=None
def upgrade():
 op.create_table('audit_logs',sa.Column('id',postgresql.UUID(as_uuid=True),primary_key=True),sa.Column('business_id',postgresql.UUID(as_uuid=True),sa.ForeignKey('businesses.id',ondelete='CASCADE'),nullable=False),sa.Column('branch_id',postgresql.UUID(as_uuid=True),sa.ForeignKey('branches.id',ondelete='SET NULL')),sa.Column('actor_user_id',postgresql.UUID(as_uuid=True),sa.ForeignKey('users.id',ondelete='SET NULL')),sa.Column('action',sa.String(80),nullable=False),sa.Column('entity_type',sa.String(80),nullable=False),sa.Column('entity_id',postgresql.UUID(as_uuid=True)),sa.Column('details',postgresql.JSONB(),nullable=False),sa.Column('created_at',sa.DateTime(timezone=True),nullable=False))
 for n,c in [('ix_audit_logs_business_id',['business_id']),('ix_audit_logs_branch_id',['branch_id']),('ix_audit_logs_actor_user_id',['actor_user_id']),('ix_audit_logs_action',['action']),('ix_audit_logs_entity_type',['entity_type']),('ix_audit_logs_entity_id',['entity_id']),('ix_audit_logs_created_at',['created_at']),('ix_audit_business_created',['business_id','created_at'])]:op.create_index(n,'audit_logs',c)
def downgrade():op.drop_table('audit_logs')
