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/9ec77608de2_add_the_messages_table.py
"""Add the Messages table

Revision ID: 9ec77608de2
Revises: 2f61212a19ad
Create Date: 2018-05-02 12:16:54.102123

"""

# revision identifiers, used by Alembic.
revision = '9ec77608de2'
down_revision = '2f61212a19ad'
branch_labels = None
depends_on = None

from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import postgresql


def upgrade():
    op.create_table('messages',
                    sa.Column('created_on',
                              postgresql.TIMESTAMP(timezone=True),
                              autoincrement=False, nullable=True),
                    sa.Column('updated_on',
                              postgresql.TIMESTAMP(timezone=True),
                              autoincrement=False, nullable=True),
                    sa.Column('id', sa.INTEGER(), primary_key=True),

                    sa.Column('type', sa.String(32), nullable=False, server_default=''),

                    sa.Column('provider',sa. String(32), nullable=False, server_default='', index=True),

                    sa.Column('provider_message_id', sa.String(64), nullable=False, server_default=''),

                    sa.Column('provider_message_date', sa.String(64), nullable=False, server_default=''),
                    sa.Column('to', sa.String(20), index=True, nullable=False, server_default=''),
                    sa.Column('from', sa.String(20), index=True, nullable=False, server_default=''),
                    sa.Column('body_text', sa.String(1024), nullable=False, server_default=''),
                    sa.Column('num_media_files', sa.String(10), nullable=True),
                    sa.Column('media_url', sa.String(512), nullable=True),
                    sa.Column('status', sa.String(64), nullable=False, server_default=''),
                    sa.Column('delivery_code', sa.Integer(), nullable=True),
                    sa.Column('delivery_description', sa.String(256), nullable=True),
                    sa.Column('direction', sa.String(64), nullable=False, server_default=''),
                    sa.Column('inbound_id', sa.Integer(), sa.ForeignKey(
                        'phonenumbers.id', name='message_inbound_fkey', onupdate='CASCADE', ondelete='SET NULL'),
                              index=True, nullable=False),
                    sa.Column('partnership_account_id', sa.Integer(),
                              sa.ForeignKey('partnership_accounts.id', name='message_partnership_account_fkey',
                                            onupdate='CASCADE', ondelete='CASCADE'),
                              index=True, nullable=False),
                    sa.Column('contact_id', sa.Integer(),
                              sa.ForeignKey('contacts.id', name='message_contact_fkey',
                                            onupdate='CASCADE', ondelete='CASCADE'),
                              index=True, nullable=False),
                    sa.Index('messages_id_index', 'id', unique=True)
                    )


def downgrade():
    op.drop_table('messages')