|  | @@ -0,0 +1,59 @@
 | 
	
		
			
				|  |  | +"""add_telegram_account
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +Revision ID: 75b3282b1d3f
 | 
	
		
			
				|  |  | +Revises: 661865b159c9
 | 
	
		
			
				|  |  | +Create Date: 2020-01-26 15:17:12.904010
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +"""
 | 
	
		
			
				|  |  | +from alembic import op
 | 
	
		
			
				|  |  | +import sqlalchemy as sa
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +# revision identifiers, used by Alembic.
 | 
	
		
			
				|  |  | +revision = '75b3282b1d3f'
 | 
	
		
			
				|  |  | +down_revision = '661865b159c9'
 | 
	
		
			
				|  |  | +branch_labels = None
 | 
	
		
			
				|  |  | +depends_on = None
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +def upgrade():
 | 
	
		
			
				|  |  | +    op.create_table('telegram_account',
 | 
	
		
			
				|  |  | +    sa.Column('id', sa.BigInteger(), nullable=False),
 | 
	
		
			
				|  |  | +    sa.Column('name', sa.String(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.Column('registration_date', sa.DateTime(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.PrimaryKeyConstraint('id', name=op.f('pk_telegram_account'))
 | 
	
		
			
				|  |  | +    )
 | 
	
		
			
				|  |  | +    op.create_table('player_telegram',
 | 
	
		
			
				|  |  | +    sa.Column('player_id', sa.BigInteger(), nullable=False),
 | 
	
		
			
				|  |  | +    sa.Column('telegram_id', sa.BigInteger(), nullable=False),
 | 
	
		
			
				|  |  | +    sa.Column('from_date_time', sa.DateTime(), nullable=False),
 | 
	
		
			
				|  |  | +    sa.Column('until_date_time', sa.DateTime(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.ForeignKeyConstraint(['player_id'], ['player.id'], name=op.f('fk_player_telegram_player_id_player')),
 | 
	
		
			
				|  |  | +    sa.ForeignKeyConstraint(['telegram_id'], ['telegram_account.id'], name=op.f('fk_player_telegram_telegram_id_telegram_account')),
 | 
	
		
			
				|  |  | +    sa.PrimaryKeyConstraint('player_id', 'telegram_id', 'from_date_time', name=op.f('pk_player_telegram'))
 | 
	
		
			
				|  |  | +    )
 | 
	
		
			
				|  |  | +    op.create_table('telegram_handle',
 | 
	
		
			
				|  |  | +    sa.Column('id', sa.Integer(), nullable=False),
 | 
	
		
			
				|  |  | +    sa.Column('handle', sa.String(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.Column('registration_date', sa.DateTime(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.Column('telegram_account_id', sa.BigInteger(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.ForeignKeyConstraint(['telegram_account_id'], ['telegram_account.id'], name=op.f('fk_telegram_handle_telegram_account_id_telegram_account')),
 | 
	
		
			
				|  |  | +    sa.PrimaryKeyConstraint('id', name=op.f('pk_telegram_handle'))
 | 
	
		
			
				|  |  | +    )
 | 
	
		
			
				|  |  | +    op.create_table('telegram_verification',
 | 
	
		
			
				|  |  | +    sa.Column('player_id', sa.BigInteger(), nullable=False),
 | 
	
		
			
				|  |  | +    sa.Column('telegram_id', sa.BigInteger(), nullable=False),
 | 
	
		
			
				|  |  | +    sa.Column('code', sa.String(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.Column('date_time', sa.DateTime(), nullable=True),
 | 
	
		
			
				|  |  | +    sa.Column('confirmed', sa.Boolean(), server_default='f', nullable=True),
 | 
	
		
			
				|  |  | +    sa.ForeignKeyConstraint(['player_id'], ['player.id'], name=op.f('fk_telegram_verification_player_id_player')),
 | 
	
		
			
				|  |  | +    sa.ForeignKeyConstraint(['telegram_id'], ['telegram_account.id'], name=op.f('fk_telegram_verification_telegram_id_telegram_account')),
 | 
	
		
			
				|  |  | +    sa.PrimaryKeyConstraint('player_id', 'telegram_id', name=op.f('pk_telegram_verification'))
 | 
	
		
			
				|  |  | +    )
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +def downgrade():
 | 
	
		
			
				|  |  | +    op.drop_table('telegram_verification')
 | 
	
		
			
				|  |  | +    op.drop_table('telegram_handle')
 | 
	
		
			
				|  |  | +    op.drop_table('player_telegram')
 | 
	
		
			
				|  |  | +    op.drop_table('telegram_account')
 |