""" 系統功能快取 Model 從 System Admin 服務同步的系統功能定義 (只讀副本) """ from datetime import datetime from sqlalchemy import Column, Integer, String, Boolean, DateTime, UniqueConstraint, Index from app.db.base import Base class SystemFunctionCache(Base): """系統功能快取表""" __tablename__ = "system_functions_cache" __table_args__ = ( UniqueConstraint("function_code", name="uq_function_code"), Index("idx_func_cache_service", "service_code"), Index("idx_func_cache_category", "function_category"), ) id = Column(Integer, primary_key=True, comment="與 System Admin 的 id 一致") service_code = Column(String(50), nullable=False, comment="服務代碼: hr/erp/mail/ai") function_code = Column(String(100), nullable=False, comment="功能代碼: HR_EMPLOYEE_VIEW") function_name = Column(String(200), nullable=False, comment="功能名稱") function_category = Column(String(50), nullable=True, comment="功能分類: query/manage/approve/report") is_active = Column(Boolean, default=True, nullable=False) synced_at = Column(DateTime, default=datetime.utcnow, nullable=False, comment="最後同步時間") def __repr__(self): return f""