fix:优化项目内容

This commit is contained in:
Daniel
2026-03-18 17:01:10 +08:00
parent da63282a10
commit 27dc89e251
64 changed files with 3421 additions and 4982 deletions

View File

@@ -104,12 +104,31 @@ class FinanceSyncResponse(BaseModel):
details: List[FinanceSyncResult] = Field(default_factory=list)
class FinanceSyncRequest(BaseModel):
"""
邮箱附件同步策略:
- mode=incremental默认策略。首次无历史全量否则仅同步 UNSEEN。
- mode=all同步全部附件可配合时间范围
- mode=latest只同步「最新一封」邮件中的附件可配合时间范围
时间范围为任意起止日期(含起止日),内部会转为 IMAP 的 SINCE/BEFORE。
"""
mode: str = Field("incremental", description="incremental | all | latest")
start_date: Optional[date] = Field(None, description="YYYY-MM-DD")
end_date: Optional[date] = Field(None, description="YYYY-MM-DD")
doc_types: Optional[List[str]] = Field(
None,
description="要同步的附件类型invoices/receipts/statements。为空表示默认全部类型。",
)
class FinanceRecordRead(BaseModel):
id: int
month: str
type: str
file_name: str
file_path: str
tags: Optional[str] = None
meta_json: Optional[str] = None
amount: Optional[float] = None
billing_date: Optional[date] = None
created_at: datetime
@@ -123,6 +142,10 @@ class FinanceRecordUpdate(BaseModel):
billing_date: Optional[date] = None
class FinanceBatchDeleteRequest(BaseModel):
ids: List[int] = Field(..., description="要删除的财务记录 ID 列表")
class FinanceUploadResponse(BaseModel):
id: int
month: str