diff --git a/app/api/v1/module_energy/report_review/model.py b/app/api/v1/module_energy/report_review/model.py index 79e5295..2e0f59f 100644 --- a/app/api/v1/module_energy/report_review/model.py +++ b/app/api/v1/module_energy/report_review/model.py @@ -53,7 +53,7 @@ class EnergyReportReviewModel(ModelMixin, TenantMixin, UserMixin): Integer, default=0, nullable=False, - comment="状态 0:待审查 1:审核通过 2:审核不通过", + comment="状态 0:待审查 1:审查中 2:已审查 3:审查失败", index=True, ) reviewer_id: Mapped[int | None] = mapped_column( diff --git a/app/api/v1/module_energy/report_review/schema.py b/app/api/v1/module_energy/report_review/schema.py index d666567..7cc1d1f 100644 --- a/app/api/v1/module_energy/report_review/schema.py +++ b/app/api/v1/module_energy/report_review/schema.py @@ -19,7 +19,7 @@ class EnergyReportReviewCreateSchema(BaseModel): template_id: int = Field(..., ge=1, description="能源报告模板ID") file_id: int = Field(..., ge=1, description="上传文档文件ID") attachment_file_id: int | None = Field(default=None, ge=1, description="附件文件ID") - status: int = Field(default=0, ge=0, le=2, description="状态 0:待审查 1:审核通过 2:审核不通过") + status: int = Field(default=0, ge=0, le=3, description="状态 0:待审查 1:审查中 2:已审查 3:审查失败") reviewer_id: int | None = Field(default=None, ge=1, description="审查人ID") description: str | None = Field(default=None, max_length=500, description="描述") @@ -34,8 +34,8 @@ class EnergyReportReviewCreateSchema(BaseModel): @field_validator("status") @classmethod def validate_status(cls, value: int) -> int: - if value not in {0, 1, 2}: - raise ValueError("状态仅支持 0(待审查)、1(审核通过)、2(审核不通过)") + if value not in {0, 1, 2, 3}: + raise ValueError("状态仅支持 0(待审查)、1(审查中)、2(已审查)、3(审查失败)") return value @field_validator("report_type") @@ -71,9 +71,10 @@ class EnergyReportReviewStatsSchema(BaseModel): """能源报告审核任务统计模型。""" submitted_count: int = Field(default=0, description="提交任务数") - reviewed_count: int = Field(default=0, description="审核通过任务数") + reviewing_count: int = Field(default=0, description="审查中任务数") + reviewed_count: int = Field(default=0, description="已审查任务数") pending_count: int = Field(default=0, description="待审查任务数") - failed_count: int = Field(default=0, description="审核不通过任务数") + failed_count: int = Field(default=0, description="审查失败任务数") class EnergyReportReviewPageOutSchema(BaseModel): @@ -93,7 +94,7 @@ class EnergyReportReviewQueryParam(BaseQueryParam, UserByQueryParam, TenantByQue task_name: str | None = Query(None, description="任务名称") report_type: int | None = Query(None, ge=1, le=2, description="报告类型 1:能源报告 2:光伏报告") - status: int | None = Query(None, ge=0, le=2, description="状态 0:待审查 1:审核通过 2:审核不通过") + status: int | None = Query(None, ge=0, le=3, description="状态 0:待审查 1:审查中 2:已审查 3:审查失败") template_id: int | None = Query(None, ge=1, description="模板ID") reviewer_id: int | None = Query(None, ge=1, description="审查人ID") diff --git a/app/api/v1/module_energy/report_review/service.py b/app/api/v1/module_energy/report_review/service.py index 7a9fc50..10f08ae 100644 --- a/app/api/v1/module_energy/report_review/service.py +++ b/app/api/v1/module_energy/report_review/service.py @@ -22,8 +22,8 @@ ENERGY_REPORT_REVIEW_BUSINESS_TYPE = "energy_report_review" REVIEW_LOG_ACTION_NAMES = { "create_task": "创建审查任务", "start_review": "开始审查", - "review_pass": "审核通过", - "review_reject": "审核不通过", + "review_pass": "已审查", + "review_reject": "审查失败", } @@ -128,9 +128,10 @@ class EnergyReportReviewService: records = await EnergyReportReviewCRUD(self.auth).get_list(search=search_dict or {}) return EnergyReportReviewStatsSchema( submitted_count=len(records), - reviewed_count=len([record for record in records if record.status == 1]), + reviewing_count=len([record for record in records if record.status == 1]), + reviewed_count=len([record for record in records if record.status == 2]), pending_count=len([record for record in records if record.status == 0]), - failed_count=len([record for record in records if record.status == 2]), + failed_count=len([record for record in records if record.status == 3]), ) def _build_stats_search(self, search_dict: dict | None = None) -> dict: