2020-10-27 19:46:14 +00:00
|
|
|
from app import db
|
|
|
|
|
|
|
|
from sqlalchemy.dialects.postgresql import JSON
|
|
|
|
|
|
|
|
class SenderDirectionStatistic(db.Model):
|
|
|
|
__tablename__ = "sender_direction_statistics"
|
|
|
|
|
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
|
|
|
|
|
|
directions_count = db.Column(db.Integer)
|
|
|
|
messages_count = db.Column(db.Integer)
|
|
|
|
direction_data = db.Column(db.JSON)
|
|
|
|
|
|
|
|
# Relations
|
|
|
|
sender_id = db.Column(db.Integer, db.ForeignKey("senders.id", ondelete="CASCADE"), index=True)
|
2020-11-20 16:31:03 +00:00
|
|
|
sender = db.relationship("Sender", foreign_keys=[sender_id], backref=db.backref("direction_stats", order_by=directions_count.desc()))
|
2020-10-27 19:46:14 +00:00
|
|
|
|
|
|
|
receiver_id = db.Column(db.Integer, db.ForeignKey("receivers.id", ondelete="CASCADE"), index=True)
|
2020-11-20 16:31:03 +00:00
|
|
|
receiver = db.relationship("Receiver", foreign_keys=[receiver_id], backref=db.backref("direction_stats", order_by=directions_count.desc()))
|
2020-10-27 19:46:14 +00:00
|
|
|
|
2020-11-20 16:31:03 +00:00
|
|
|
__table_args__ = (db.Index('idx_sender_direction_statistics_uc', 'sender_id', 'receiver_id', unique=True), )
|