from sqlalchemy import Column, Integer, String, DateTime, JSON, Enum from datetime import datetime from app.core.database import Base class VasTask(Base): __tablename__ = "vas_task" id = Column(Integer, primary_key=True, autoincrement=True) order_id = Column(String(128), nullable=False) routing_key = Column(String(255), nullable=False) priority = Column(Integer, default=0) script_version = Column(String(50)) config = Column(JSON) status = Column( Enum('pending','grabbed','running','cancelled','completed'), default='pending' ) user_inputs = Column(JSON) grabbed_history = Column(JSON) meta = Column(JSON) attempt_count = Column(Integer, default=0) notify_count = Column(Integer, default=0) expire_at = Column(DateTime) created_at = Column(DateTime, default=datetime.utcnow) updated_at = Column(DateTime, default=datetime.utcnow, onupdate=datetime.utcnow)