## Purpose 定义服务机构端待遇档案(elder)域的后端行为——老人建档、十态状态机、评估结论承载、身份证防重与掩码。 ## ADDED Requirements ### Requirement: 老人建档 `POST /elder` MUST 校验身份证 18 位+校验位、出生日期由身份证带出、同机构 id_card_no 唯一、待遇止 > 起;建档后按待遇有效期置初始状态(active 或 waiting_period)。 #### Scenario: 身份证防重 - **WHEN** 同机构重复录入同一 id_card_no - **THEN** 提示「已有档案」,不创建重复档案 ### Requirement: 等级唯一来源 建档时 assess_level/care_level MUST 绑定评估结论副本(assess_evidence_file):有等级必须有副本,否则拒绝(ELDER_LEVEL_REQUIRES_EVIDENCE)。 #### Scenario: 等级绑定副本 - **WHEN** 建档请求携带 assess_level 但无 assess_evidence_file - **THEN** 拒绝并返回 ELDER_LEVEL_REQUIRES_EVIDENCE ### Requirement: 十态状态机 `elder.treat_status` MUST 支持十态;状态变更 MUST 写 elder_status_log 且 change_reason 必填。 #### Scenario: 状态变更留痕 - **WHEN** 变更状态缺 change_reason - **THEN** 拒绝并返回校验错误 ### Requirement: 评估结论副本上传 `POST /elder/assess-evidence` MUST 上传文件到 MinIO 并返回 file key。 #### Scenario: 上传成功 - **WHEN** 上传评估结论副本 - **THEN** 返回 file key,供建档引用 ### Requirement: 身份证明文查看留痕 仅 admin/qc 可查看身份证明文,且每次明文查看 MUST 落审计。 #### Scenario: 明文查看留痕 - **WHEN** qc 查看老人身份证明文 - **THEN** 写一条审计日志