HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/buyercall/buyercall/migrations/versions/7ceadf892b98_add_appointment_table.py
"""Add appointment table

Revision ID: ba49cfc1e494
Revises: 5bb73b0033a1
Create Date: 2021-04-05 18:05:50.566936

"""

# revision identifiers, used by Alembic.
revision = 'ba49cfc1e494'
down_revision = '5bb73b0033a1'
branch_labels = None
depends_on = None

from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import postgresql
from sqlalchemy.dialects.postgresql import UUID
from buyercall.lib.util_sqlalchemy import DateTime


def upgrade():
    op.create_table('appointments',
                    sa.Column('created_on',
                              postgresql.TIMESTAMP(timezone=True),
                              autoincrement=False, nullable=False),
                    sa.Column('updated_on',
                              postgresql.TIMESTAMP(timezone=True),
                              autoincrement=False, nullable=False),
                    sa.Column('id', sa.INTEGER(), nullable=False),
                    sa.Column('sid', UUID(as_uuid=True), nullable=False, unique=True),
                    sa.Column('partnership_account_id',
                              sa.INTEGER(),
                              nullable=False),
                    sa.Column('user_id',
                              sa.INTEGER(),
                              nullable=True),
                    sa.Column('contact_id',
                              sa.INTEGER(),
                              nullable=False),
                    sa.Column('appointment_date', DateTime(),
                              nullable=False),
                    sa.Column('appointment_type', sa.VARCHAR(length=128),
                              nullable=False, server_default='general'),
                    sa.Column('deactivated_on', sa.DateTime,
                              nullable=True),
                    sa.Column('is_deactivated', sa.BOOLEAN(),
                              nullable=False, server_default='0'),
                    sa.PrimaryKeyConstraint('id', name=u'appointments_pkey'),
                    sa.ForeignKeyConstraint(['partnership_account_id'], [u'partnership_accounts.id'],
                                            name=u'appointment_partner_account_id_fkey',
                                            onupdate=u'CASCADE',
                                            ondelete=u'CASCADE'),
                    sa.ForeignKeyConstraint(['user_id'], [u'users.id'],
                                            name=u'appointment_user_fkey',
                                            onupdate=u'CASCADE',
                                            ondelete=u'CASCADE'),
                    sa.ForeignKeyConstraint(['contact_id'], [u'contacts.id'],
                                            name=u'appointment_contact_fkey',
                                            onupdate=u'CASCADE',
                                            ondelete=u'CASCADE'),
                    ),


def downgrade():
    op.drop_table('appointments'),