Эх сурвалжийг харах

Add player and state to market track

JoostSijm 5 жил өмнө
parent
commit
e83433762d

+ 14 - 0
app/models.py

@@ -311,6 +311,13 @@ class PersonalMarketStat(Base):
     id = Column(Integer, primary_key=True)
     item_type = Column(SmallInteger)
     price = Column(Integer)
+    amount = Column(BigInteger)
+
+    player_id = Column(Integer, ForeignKey('player.id'))
+    player = relationship(
+        'Player',
+        backref=backref('personal_market_stats', lazy='dynamic')
+    )
 
     market_track_id = Column(Integer, ForeignKey('market_track.id'))
     market_track = relationship(
@@ -325,6 +332,13 @@ class StateMarketStat(Base):
     id = Column(Integer, primary_key=True)
     item_type = Column(SmallInteger)
     price = Column(Integer)
+    amount = Column(BigInteger)
+
+    state_id = Column(Integer, ForeignKey('state.id'))
+    state = relationship(
+        'State',
+        backref=backref('state_market_stats', lazy='dynamic')
+    )
 
     market_track_id = Column(Integer, ForeignKey('market_track.id'))
     market_track = relationship(

+ 28 - 0
migrations/versions/73c8363fb4ad_add_player_to_player_market_track.py

@@ -0,0 +1,28 @@
+"""add player to player market track
+
+Revision ID: 73c8363fb4ad
+Revises: 89ec1e8a0561
+Create Date: 2019-09-09 15:45:15.429371
+
+"""
+from alembic import op
+import sqlalchemy as sa
+
+
+# revision identifiers, used by Alembic.
+revision = '73c8363fb4ad'
+down_revision = '89ec1e8a0561'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.add_column('personal_market_stat', sa.Column('amount', sa.BigInteger(), nullable=True))
+    op.add_column('personal_market_stat', sa.Column('player_id', sa.Integer(), nullable=True))
+    op.create_foreign_key(op.f('fk_personal_market_stat_player_id_player'), 'personal_market_stat', 'player', ['player_id'], ['id'])
+
+
+def downgrade():
+    op.drop_constraint(op.f('fk_personal_market_stat_player_id_player'), 'personal_market_stat', type_='foreignkey')
+    op.drop_column('personal_market_stat', 'player_id')
+    op.drop_column('personal_market_stat', 'amount')

+ 34 - 0
migrations/versions/89ec1e8a0561_add_state_to_state_market_track.py

@@ -0,0 +1,34 @@
+"""add state to state market track
+
+Revision ID: 89ec1e8a0561
+Revises: ce18c26cb4be
+Create Date: 2019-09-09 13:35:27.216929
+
+"""
+from alembic import op
+import sqlalchemy as sa
+
+
+# revision identifiers, used by Alembic.
+revision = '89ec1e8a0561'
+down_revision = 'ce18c26cb4be'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.alter_column('factory_location', 'factory_id',
+               existing_type=sa.BIGINT(),
+               type_=sa.Integer())
+    op.add_column('state_market_stat', sa.Column('amount', sa.BigInteger(), nullable=True))
+    op.add_column('state_market_stat', sa.Column('state_id', sa.Integer(), nullable=True))
+    op.create_foreign_key(op.f('fk_state_market_stat_state_id_state'), 'state_market_stat', 'state', ['state_id'], ['id'])
+
+
+def downgrade():
+    op.drop_constraint(op.f('fk_state_market_stat_state_id_state'), 'state_market_stat', type_='foreignkey')
+    op.drop_column('state_market_stat', 'state_id')
+    op.drop_column('state_market_stat', 'amount')
+    op.alter_column('factory_location', 'factory_id',
+               existing_type=sa.Integer(),
+               type_=sa.BIGINT())