30 lines
1.2 KiB
Python
30 lines
1.2 KiB
Python
"""Алерты контроля качества кормления (feed_quality)."""
|
|
|
|
from sqlalchemy import Column, DateTime, Float, String, Text
|
|
|
|
from app import db
|
|
from .base import default_uuid
|
|
|
|
|
|
class FeedAlert(db.Model):
|
|
"""Событие отклонения по отчёту загрузки/выгрузки."""
|
|
|
|
__bind_key__ = "reports"
|
|
__tablename__ = "feed_alert"
|
|
|
|
id = Column(String(36), primary_key=True, default=default_uuid)
|
|
event_type = Column(String(20), nullable=False)
|
|
severity = Column(String(10), nullable=False, default="warning")
|
|
loading_report_id = Column(String(36), nullable=False, index=True)
|
|
unloading_report_id = Column(String(36), nullable=True, index=True)
|
|
recipe_id = Column(String(36), nullable=False)
|
|
recipe_name = Column(String(100), nullable=False, default="")
|
|
component_name = Column(String(100), nullable=True)
|
|
group_name = Column(String(100), nullable=True)
|
|
detail = Column(Text, nullable=False, default="")
|
|
deviation_kg = Column(Float, nullable=True)
|
|
deviation_pct = Column(Float, nullable=True)
|
|
cost_deviation_rub = Column(Float, nullable=True)
|
|
client_id = Column(String(50), nullable=True)
|
|
created_at = Column(DateTime, nullable=False)
|