2019-02-10 12:10:19 +00:00
|
|
|
from ogn import db
|
2018-10-21 15:34:03 +00:00
|
|
|
|
|
|
|
|
2019-02-10 12:10:19 +00:00
|
|
|
class RelationStats(db.Model):
|
2018-10-21 15:34:03 +00:00
|
|
|
__tablename__ = "relation_stats"
|
|
|
|
|
2019-02-10 12:25:24 +00:00
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
2018-10-21 15:34:03 +00:00
|
|
|
|
2019-02-10 12:25:24 +00:00
|
|
|
date = db.Column(db.Date)
|
2018-10-21 15:34:03 +00:00
|
|
|
|
|
|
|
# Statistic data
|
2019-02-10 12:25:24 +00:00
|
|
|
quality = db.Column(db.Float(precision=2))
|
|
|
|
beacon_count = db.Column(db.Integer)
|
2018-10-21 15:34:03 +00:00
|
|
|
|
|
|
|
# Relations
|
2019-02-10 12:25:24 +00:00
|
|
|
device_id = db.Column(db.Integer, db.ForeignKey('devices.id', ondelete='SET NULL'), index=True)
|
|
|
|
device = db.relationship('Device', foreign_keys=[device_id], backref='relation_stats')
|
|
|
|
receiver_id = db.Column(db.Integer, db.ForeignKey('receivers.id', ondelete='SET NULL'), index=True)
|
|
|
|
receiver = db.relationship('Receiver', foreign_keys=[receiver_id], backref='relation_stats')
|
2018-10-21 15:34:03 +00:00
|
|
|
|
|
|
|
def __repr__(self):
|
2019-01-04 14:18:06 +00:00
|
|
|
return "<RelationStats: %s,%s,%s>" % (
|
2018-10-21 15:34:03 +00:00
|
|
|
self.date,
|
2019-01-04 14:18:06 +00:00
|
|
|
self.quality,
|
2018-10-21 15:34:03 +00:00
|
|
|
self.beacon_count)
|
|
|
|
|
2019-01-01 19:13:08 +00:00
|
|
|
|
2019-02-10 12:25:24 +00:00
|
|
|
db.Index('ix_relation_stats_date_device_id', RelationStats.date, RelationStats.device_id, RelationStats.receiver_id)
|
|
|
|
db.Index('ix_relation_stats_date_receiver_id', RelationStats.date, RelationStats.receiver_id, RelationStats.device_id)
|