From 4ba57fb4ce9c58ed89c99f9ec91389c4ffcfda07 Mon Sep 17 00:00:00 2001 From: liuyun Date: Wed, 14 Oct 2026 21:38:35 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E6=9B=B4=E6=96=B0=E5=AD=90=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E6=8C=87=E9=92=88=20+=20=E4=BF=AE=E6=AD=A3=20C1=20spe?= =?UTF-8?q?c=20=E8=B7=AF=E5=BE=84/=E7=AD=89=E7=BA=A7=E6=8E=AA=E8=BE=9E?= =?UTF-8?q?=EF=BC=88C1=20=E5=BE=85=E9=81=87=E6=A1=A3=E6=A1=88=E8=90=BD?= =?UTF-8?q?=E5=9C=B0=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 --- .../svc-org-c1-elder/specs/backend/elder/spec.md | 12 ++++++------ .../svc-org-c1-elder/specs/frontend/ad/elder/spec.md | 8 ++++---- .../specs/shared/api-contract/spec.md | 4 ++-- sources/ec-admin | 2 +- sources/ec-nest | 2 +- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/openspec/changes/svc-org-c1-elder/specs/backend/elder/spec.md b/openspec/changes/svc-org-c1-elder/specs/backend/elder/spec.md index 9f14631..6385201 100644 --- a/openspec/changes/svc-org-c1-elder/specs/backend/elder/spec.md +++ b/openspec/changes/svc-org-c1-elder/specs/backend/elder/spec.md @@ -5,18 +5,18 @@ ## ADDED Requirements ### Requirement: 老人建档 -`POST /elder/create` MUST 校验身份证 18 位+校验位、出生日期由身份证带出、同机构 id_card_no 唯一、待遇止 > 起;建档后按待遇有效期置初始状态(active 或 waiting_period)。 +`POST /elder` MUST 校验身份证 18 位+校验位、出生日期由身份证带出、同机构 id_card_no 唯一、待遇止 > 起;建档后按待遇有效期置初始状态(active 或 waiting_period)。 #### Scenario: 身份证防重 - **WHEN** 同机构重复录入同一 id_card_no - **THEN** 提示「已有档案」,不创建重复档案 ### Requirement: 等级唯一来源 -建档 MUST 不接受前端传入 assess_level/care_level;等级只能来自评估结论(assess_org/assess_date + 上传的评估结论副本)。 +建档时 assess_level/care_level MUST 绑定评估结论副本(assess_evidence_file):有等级必须有副本,否则拒绝(ELDER_LEVEL_REQUIRES_EVIDENCE)。 -#### Scenario: 禁止手填等级 -- **WHEN** 建档请求携带 assess_level -- **THEN** 忽略该字段,等级由评估结论字段决定 +#### Scenario: 等级绑定副本 +- **WHEN** 建档请求携带 assess_level 但无 assess_evidence_file +- **THEN** 拒绝并返回 ELDER_LEVEL_REQUIRES_EVIDENCE ### Requirement: 十态状态机 `elder.treat_status` MUST 支持十态;状态变更 MUST 写 elder_status_log 且 change_reason 必填。 @@ -26,7 +26,7 @@ - **THEN** 拒绝并返回校验错误 ### Requirement: 评估结论副本上传 -`POST /elder/assess-evidence/upload` MUST 上传文件到 MinIO 并返回 file key。 +`POST /elder/assess-evidence` MUST 上传文件到 MinIO 并返回 file key。 #### Scenario: 上传成功 - **WHEN** 上传评估结论副本 diff --git a/openspec/changes/svc-org-c1-elder/specs/frontend/ad/elder/spec.md b/openspec/changes/svc-org-c1-elder/specs/frontend/ad/elder/spec.md index a0f99cc..79dac4d 100644 --- a/openspec/changes/svc-org-c1-elder/specs/frontend/ad/elder/spec.md +++ b/openspec/changes/svc-org-c1-elder/specs/frontend/ad/elder/spec.md @@ -12,11 +12,11 @@ - **THEN** 只显示该状态的老人 ### Requirement: 建档表单 -建档表单 MUST 含身份证校验、出生日期自动带出、参保地默认取机构属地、参保核验字段、评估结论副本上传(禁止手填等级)。 +建档表单 MUST 含身份证校验、出生日期自动带出、参保地默认取机构属地、参保核验字段、评估结论副本上传与等级录入(等级必须绑定评估结论副本)。 -#### Scenario: 等级不可手填 -- **WHEN** 打开建档表单 -- **THEN** 等级字段不可编辑,只能通过上传评估结论副本带出 +#### Scenario: 等级绑定副本 +- **WHEN** 填了等级但未上传评估结论副本 +- **THEN** 拦截提交,提示先上传副本 ### Requirement: 状态变更 详情页 MUST 支持十态状态变更(原因必填)+ 状态日志时间线。 diff --git a/openspec/changes/svc-org-c1-elder/specs/shared/api-contract/spec.md b/openspec/changes/svc-org-c1-elder/specs/shared/api-contract/spec.md index ce939b2..e817ddc 100644 --- a/openspec/changes/svc-org-c1-elder/specs/shared/api-contract/spec.md +++ b/openspec/changes/svc-org-c1-elder/specs/shared/api-contract/spec.md @@ -1,10 +1,10 @@ ## ADDED Requirements ### Requirement: 老人档案接口 -`/elder/list`、`/elder/create`、`/elder/detail`、`/elder/status/change`、`/elder/status/log`、`/elder/assess-evidence/upload` MUST 存在,遵循统一响应 `{code,message,data,hint}`。 +`GET /elder`、`POST /elder`、`GET /elder/:id`、`POST /elder/:id/status`、`GET /elder/:id/status/log`、`POST /elder/assess-evidence` MUST 存在,遵循统一响应 `{code,message,data,hint}`。 #### Scenario: 状态变更必填原因 -- **WHEN** 调用 `/elder/status/change` 且缺 change_reason +- **WHEN** 调用 `/elder/:id/status` 且缺 change_reason - **THEN** 返回校验错误,拒绝变更 ### Requirement: 身份证服务端掩码 diff --git a/sources/ec-admin b/sources/ec-admin index 56056ec..ebbd468 160000 --- a/sources/ec-admin +++ b/sources/ec-admin @@ -1 +1 @@ -Subproject commit 56056ec3d098a29ba08cbd9afabcf08f86938332 +Subproject commit ebbd46899cc04453779992cf01bbca9060fc8f6e diff --git a/sources/ec-nest b/sources/ec-nest index 239dec9..64c3efd 160000 --- a/sources/ec-nest +++ b/sources/ec-nest @@ -1 +1 @@ -Subproject commit 239dec912c1797f47e6357243d4d5205f671661e +Subproject commit 64c3efd931e55bb6f23c60a749a8344d6eea9e99