Prechádzať zdrojové kódy

Add dates to tables and market tracking

JoostSijm 5 rokov pred
rodič
commit
6b0feb3ea9
1 zmenil súbory, kde vykonal 52 pridanie a 4 odobranie
  1. 52 4
      app/models.py

+ 52 - 4
app/models.py

@@ -78,7 +78,9 @@ class ResourceStat(Base):
 
 state_region = Table('state_region', Base.metadata,
     Column('state_id', Integer, ForeignKey('state.id')),
-    Column('region_id', Integer, ForeignKey('region.id'))
+    Column('region_id', Integer, ForeignKey('region.id')),
+    Column('from_date_time', DateTime),
+    Column('until_date_time', DateTime),
 )
 
 class State(Base):
@@ -118,17 +120,23 @@ class DepartmentStat(Base):
 
 player_party = Table('player_party', Base.metadata,
     Column('player_id', Integer, ForeignKey('player.id')),
-    Column('party_id', Integer, ForeignKey('party.id'))
+    Column('party_id', Integer, ForeignKey('party.id')),
+    Column('from_date_time', DateTime),
+    Column('until_date_time', DateTime),
 )
 
 player_residency = Table('player_residency', Base.metadata,
     Column('player_id', Integer, ForeignKey('player.id')),
-    Column('region_id', Integer, ForeignKey('region.id'))
+    Column('region_id', Integer, ForeignKey('region.id')),
+    Column('from_date_time', DateTime),
+    Column('until_date_time', DateTime),
 )
 
 player_location  = Table('player_location', Base.metadata,
     Column('player_id', Integer, ForeignKey('player.id')),
-    Column('region_id', Integer, ForeignKey('region.id'))
+    Column('region_id', Integer, ForeignKey('region.id')),
+    Column('from_date_time', DateTime),
+    Column('until_date_time', DateTime),
 )
 
 class Player(Base):
@@ -177,6 +185,11 @@ class ElectionStat(Base):
         "Election",
         backref=backref("election_stats", lazy="dynamic")
     )
+    party_id = Column(Integer, ForeignKey('party.id'))
+    party = relationship(
+        "Party",
+        backref=backref("election_stats", lazy="dynamic")
+    )
 
 
 class MilitaryAcademy(Base):
@@ -247,3 +260,38 @@ class FactoryStat(Base):
         'Region',
         backref=backref('factory_stats', lazy='dynamic')
     )
+
+
+class MarketTrack(Base):
+    """Model for market track"""
+    __tablename__ = 'market_track'
+    id = Column(Integer, primary_key=True)
+    date_time = Column(DateTime)
+
+
+class PersonalMarketStat(Base):
+    """Model for market stat"""
+    __tablename__ = 'personal_market_stat'
+    id = Column(Integer, primary_key=True)
+    item_type = Column(SmallInteger)
+    price = Column(Integer)
+
+    market_track_id = Column(Integer, ForeignKey('market_track.id'))
+    market_track = relationship(
+        'MarketTrack',
+        backref=backref('personal_market_stats', lazy='dynamic')
+    )
+
+
+class StateMarketStat(Base):
+    """Model for market stat"""
+    __tablename__ = 'state_market_stat'
+    id = Column(Integer, primary_key=True)
+    item_type = Column(SmallInteger)
+    price = Column(Integer)
+
+    market_track_id = Column(Integer, ForeignKey('market_track.id'))
+    market_track = relationship(
+        'MarketTrack',
+        backref=backref('state_market_stats', lazy='dynamic')
+    )