25 lines
1.1 KiB
Python
25 lines
1.1 KiB
Python
"""Исключение рейса (recipe) из плана на конкретную дату."""
|
|
|
|
from sqlalchemy import Column, Date, DateTime, ForeignKey, Integer, String
|
|
|
|
from app import db
|
|
from .base import SoftDeleteMixin, TimestampMixin, default_uuid
|
|
|
|
|
|
class DailyTripSkip(db.Model, TimestampMixin, SoftDeleteMixin):
|
|
"""Глобальное исключение рейса на дату (все кормораздатчики / кормоцеха)."""
|
|
|
|
__tablename__ = "daily_trip_skip"
|
|
|
|
id = Column(String(36), primary_key=True, default=default_uuid)
|
|
recipe_id = Column(String(36), ForeignKey("recipe.id"), nullable=False, index=True)
|
|
plan_date = Column(Date, nullable=False, index=True)
|
|
valid_until = Column(Date, nullable=True, index=True)
|
|
|
|
version = Column(Integer, default=1, nullable=False)
|
|
created_by = Column(String(50), nullable=False, default="system")
|
|
updated_by = Column(String(50), nullable=False, default="system")
|
|
sync_timestamp = Column(DateTime, nullable=True)
|
|
sync_status = Column(String(20), default="pending", nullable=False)
|
|
content_hash = Column(String(64), nullable=False, default="")
|