Browse Source

Merge branch 'master' into budget

JoostSijm 4 years ago
parent
commit
14b272232e

+ 41 - 3
app/models.py

@@ -33,15 +33,44 @@ class DeepExploration(Base):
     """Model for deep exploration"""
     __tablename__ = 'deep_exploration'
     id = Column(Integer, primary_key=True)
-    date_time_end = Column(DateTime)
-    region_id = Column(Integer)
+    until_date_time = Column(DateTime)
+    points = Column(Integer)
     resource_type = Column(SmallInteger)
     region_id = Column(Integer, ForeignKey('region.id'))
-    region_track = relationship(
+    region = relationship(
         'Region',
         backref=backref('deep_explorations', lazy='dynamic')
     )
 
+class DeepExplorationOrder(Base):
+    """Model for deep exploration order"""
+    __tablename__ = 'deep_exploration_order'
+    id = Column(Integer, primary_key=True)
+    resource_type = Column(SmallInteger, nullable=False)
+    order_type = Column(SmallInteger, nullable=False)
+    amount = Column(Integer)
+    from_date_time = Column(DateTime)
+    until_date_time = Column(DateTime)
+
+    region_id = Column(Integer, ForeignKey('region.id'))
+    region = relationship(
+        'Region',
+        backref=backref('resource_stats', lazy='dynamic')
+    )
+
+    order_types = {
+        0: 'max',
+        1: 'fixed',
+        2: 'percentage',
+        3: 'auto',
+    }
+
+    def order_type_name(self):
+        """Type name"""
+        if self.order_type in self.order_types:
+            return self.order_types[self.type]
+        return 'unknown'
+
 
 class ResourceTrack(Base):
     """Model for resource track"""
@@ -385,6 +414,7 @@ class StateMarketStat(Base):
         backref=backref('state_market_stats', lazy='dynamic')
     )
 
+
 class TelegramAccount(Base):
     """Model for Telegram account"""
     __tablename__ = 'telegram_account'
@@ -392,6 +422,7 @@ class TelegramAccount(Base):
     name = Column(String)
     registration_date = Column(DateTime)
 
+
 class TelegramHandle(Base):
     """Model for Telegram handle"""
     __tablename__ = 'telegram_handle'
@@ -405,6 +436,7 @@ class TelegramHandle(Base):
         backref=backref('account_handles', lazy='dynamic')
     )
 
+
 class PlayerTelegram(Base):
     """Model for belongs to"""
     __tablename__ = 'player_telegram'
@@ -413,6 +445,7 @@ class PlayerTelegram(Base):
     from_date_time = Column(DateTime, primary_key=True)
     until_date_time = Column(DateTime)
 
+
 class TelegramVerification(Base):
     """Model for Telegram verification"""
     __tablename__ = 'telegram_verification'
@@ -422,6 +455,7 @@ class TelegramVerification(Base):
     date_time = Column(DateTime)
     confirmed = Column(Boolean, server_default='f', default=False)
 
+
 class Donation(Base):
     """Model for donation"""
     __tablename__ = 'donation'
@@ -442,6 +476,7 @@ class Donation(Base):
         backref=backref('donations', lazy='dynamic')
     )
 
+
 class DonationTrigger(Base):
     """Donation trigger"""
     __tablename__ = 'table_name'
@@ -450,6 +485,7 @@ class DonationTrigger(Base):
     from_date_time = Column(DateTime)
     until_date_time = Column(DateTime)
 
+
 class Fund(Base):
     """Model for fund"""
     __tablename__ = 'fund'
@@ -468,6 +504,7 @@ class Fund(Base):
         backref=backref('funds', lazy='dynamic')
     )
 
+
 class Balance(Base):
     """Model for balance"""
     __tablename__ = 'balance'
@@ -480,6 +517,7 @@ class Balance(Base):
     amount = Column(Integer)
     resource = Column(SmallInteger)
 
+
 class Transfer(Base):
     """Model for transfer"""
     __tablename__ = 'transfer'

+ 26 - 0
migrations/versions/5081ca31d1c3_rename_deep_exploration_date_column.py

@@ -0,0 +1,26 @@
+"""rename deep exploration date column
+
+Revision ID: 5081ca31d1c3
+Revises: 7976912082a6
+Create Date: 2020-02-11 22:51:56.652667
+
+"""
+from alembic import op
+import sqlalchemy as sa
+from sqlalchemy.dialects import postgresql
+
+# revision identifiers, used by Alembic.
+revision = '5081ca31d1c3'
+down_revision = '7976912082a6'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.add_column('deep_exploration', sa.Column('until_date_time', sa.DateTime(), nullable=True))
+    op.drop_column('deep_exploration', 'date_time_end')
+
+
+def downgrade():
+    op.add_column('deep_exploration', sa.Column('date_time_end', postgresql.TIMESTAMP(), autoincrement=False, nullable=True))
+    op.drop_column('deep_exploration', 'until_date_time')

+ 32 - 0
migrations/versions/7976912082a6_add_deep_exploration_orders.py

@@ -0,0 +1,32 @@
+"""add deep exploration orders
+
+Revision ID: 7976912082a6
+Revises: 9524fe8e91f0
+Create Date: 2020-02-11 13:13:53.215765
+
+"""
+from alembic import op
+import sqlalchemy as sa
+
+
+# revision identifiers, used by Alembic.
+revision = '7976912082a6'
+down_revision = '9524fe8e91f0'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.create_table('deep_exploration_order',
+    sa.Column('id', sa.Integer(), nullable=False),
+    sa.Column('resource_type', sa.SmallInteger(), nullable=False),
+    sa.Column('order_type', sa.SmallInteger(), nullable=False),
+    sa.Column('amount', sa.Integer(), nullable=True),
+    sa.Column('from_date_time', sa.DateTime(), nullable=True),
+    sa.Column('until_date_time', sa.DateTime(), nullable=True),
+    sa.PrimaryKeyConstraint('id', name=op.f('pk_deep_exploration_order'))
+    )
+
+
+def downgrade():
+    op.drop_table('deep_exploration_order')

+ 33 - 0
migrations/versions/9524fe8e91f0_remove_telegram_verification.py

@@ -0,0 +1,33 @@
+"""remove telegram verification
+
+Revision ID: 9524fe8e91f0
+Revises: 97d0cf5e4bb0
+Create Date: 2020-02-11 00:03:26.671954
+
+"""
+from alembic import op
+import sqlalchemy as sa
+from sqlalchemy.dialects import postgresql
+
+# revision identifiers, used by Alembic.
+revision = '9524fe8e91f0'
+down_revision = '97d0cf5e4bb0'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.drop_table('telegram_verification')
+
+
+def downgrade():
+    op.create_table('telegram_verification',
+    sa.Column('player_id', sa.BIGINT(), autoincrement=False, nullable=False),
+    sa.Column('telegram_id', sa.BIGINT(), autoincrement=False, nullable=False),
+    sa.Column('code', sa.VARCHAR(), autoincrement=False, nullable=True),
+    sa.Column('date_time', postgresql.TIMESTAMP(), autoincrement=False, nullable=True),
+    sa.Column('confirmed', sa.BOOLEAN(), server_default=sa.text('false'), autoincrement=False, nullable=True),
+    sa.ForeignKeyConstraint(['player_id'], ['player.id'], name='fk_telegram_verification_player_id_player'),
+    sa.ForeignKeyConstraint(['telegram_id'], ['telegram_account.id'], name='fk_telegram_verification_telegram_id_telegram_account'),
+    sa.PrimaryKeyConstraint('player_id', 'telegram_id', name='pk_telegram_verification')
+    )

+ 26 - 0
migrations/versions/95e16c281a76_add_region_id_to_deep_exploration_orders.py

@@ -0,0 +1,26 @@
+"""add region id to deep exploration orders
+
+Revision ID: 95e16c281a76
+Revises: 5081ca31d1c3
+Create Date: 2020-02-13 09:54:29.287214
+
+"""
+from alembic import op
+import sqlalchemy as sa
+
+
+# revision identifiers, used by Alembic.
+revision = '95e16c281a76'
+down_revision = '5081ca31d1c3'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.add_column('deep_exploration_order', sa.Column('region_id', sa.Integer(), nullable=True))
+    op.create_foreign_key(op.f('fk_deep_exploration_order_region_id_region'), 'deep_exploration_order', 'region', ['region_id'], ['id'])
+
+
+def downgrade():
+    op.drop_constraint(op.f('fk_deep_exploration_order_region_id_region'), 'deep_exploration_order', type_='foreignkey')
+    op.drop_column('deep_exploration_order', 'region_id')

+ 24 - 0
migrations/versions/97d0cf5e4bb0_fix_deep_exploration.py

@@ -0,0 +1,24 @@
+"""fix_deep_exploration
+
+Revision ID: 97d0cf5e4bb0
+Revises: 75b3282b1d3f
+Create Date: 2020-02-11 00:02:01.244499
+
+"""
+from alembic import op
+import sqlalchemy as sa
+
+
+# revision identifiers, used by Alembic.
+revision = '97d0cf5e4bb0'
+down_revision = '75b3282b1d3f'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.add_column('deep_exploration', sa.Column('points', sa.Integer(), nullable=True))
+
+
+def downgrade():
+    op.drop_column('deep_exploration', 'points')

+ 26 - 0
migrations/versions/d9b4e754a98e_change_wp_primary_key.py

@@ -0,0 +1,26 @@
+"""change wp primary key
+
+Revision ID: d9b4e754a98e
+Revises: 95e16c281a76
+Create Date: 2020-04-09 17:45:28.103910
+
+"""
+from alembic import op
+import sqlalchemy as sa
+
+
+# revision identifiers, used by Alembic.
+revision = 'd9b4e754a98e'
+down_revision = '95e16c281a76'
+branch_labels = None
+depends_on = None
+
+
+def upgrade():
+    op.drop_constraint('pk_state_work_permit', 'state_work_permit', type_='primary')
+    op.create_primary_key('pk_state_work_permit', 'state_work_permit', ['state_id', 'player_id', 'from_date_time'])
+
+
+def downgrade():
+    op.drop_constraint('pk_state_work_permit', 'state_work_permit', type_='primary')
+    op.create_primary_key('pk_state_work_permit', 'state_work_permit', ['state_id', 'player_id'])