from datetime import date from pydantic import BaseModel from app.core.constants import ActorValue from app.modules.feishu.constants import FeishuReceiveIdType from app.modules.reports.constants import ReportType class ReportResponse(BaseModel): title: str content: str lines: list[str] class PushReportRequest(BaseModel): receive_id: str | None = None receive_id_type: str = FeishuReceiveIdType.CHAT_ID actor: str = ActorValue.SYSTEM class WorkReportGenerateRequest(BaseModel): report_type: ReportType = ReportType.DAILY reporter: str = ActorValue.SYSTEM department: str | None = None project_code: str | None = None period_start: date | None = None period_end: date | None = None persist: bool = True actor: str = ActorValue.API