# fee-prepayment Specification ## Purpose 定义费用查询与预交金能力,包括费用记录筛选、费用详情、预交金用途和充值记录、住院账户、账户缴费契约、入院办理、价格公示,以及支付、充值、缴费和入院写操作的用户确认边界。 ## Requirements ### Requirement: REQ-ORDER-003-01 费用查询与费用详情 系统 MUST 提供费用查询、付款记录筛选、费用详情和住院日清单能力。 - MUST 调用真实查询接口 `03100202` 获取筛选项,并调用 `05100361` 获取付款/费用记录。 - MUST 从医院和就诊人上下文读取 `hospCode`、`patID`、`patNumber` 等参数,缺少登录、医院或就诊人时展示阻断状态。 - MUST 在费用详情中展示费用摘要;住院记录 MUST 可调用 `03100203` 查询住院日清单。 - MUST 覆盖加载、空数据、失败、未登录、未选就诊人和医院缺失状态。 #### Scenario: 用户筛选费用记录 - Given 用户已登录、已选择医院和就诊人 - When 用户进入费用查询并切换年份或就诊类型 - Then 系统 MUST 使用真实接口刷新付款记录,并可进入费用详情查看摘要或住院日清单。 ### Requirement: REQ-ORDER-003-02 预交金与充值记录查询 系统 MUST 提供预交金用途、账户类型、充值记录和可充值就诊记录查询能力,并维持旧版扫码入口与用户编码契约。 - MUST:`05100366`、`05100364`、`05100367` 的 `userCode` 使用服务端明确下发的业务用户编码;未下发时 MUST 使用旧版固定值 `wxsf`,MUST NOT 使用 OpenID/OpenId 代替。 - MUST:识别旧二维码 `q` 的 `hospCode^patNo^patName^idCardNo^mobile` 格式,并在进入充值契约页时保留扫码患者字段。 - MUST:二维码目标医院与当前医院不一致时,复用既有医院选择流程并在用户确认后刷新;确认前不得查询或构建充值支付契约。 - MUST:调用 `05100366` 查询账户类型/用途,调用 `03100211` 查询充值用途,并调用 `05100364` 按月份和用途查询充值记录。 - MUST NOT:使用本地静态费用、充值记录或假接口替代真实接口返回。 #### Scenario: 扫码进入预交金页 - Given 用户已登录且二维码携带同院预交金患者参数 - When 用户选择一个充值用途 - Then 系统 SHALL 将二维码中的患者编号、姓名、证件号和手机号与用途上下文一并传入后续充值契约页。 #### Scenario: 用户编码默认值 - Given 当前用户上下文未下发业务 `userCode` 但包含 OpenID - When 系统查询预交金账户类型或充值记录 - Then 系统 SHALL 使用 `wxsf` 作为 `userCode`,不得将 OpenID 发送到业务接口。 ### Requirement: REQ-ORDER-003-03 账户缴费、入院办理和价格公示查询 系统 MUST 保留住院账户、账户缴费入口、入院办理弱链路和价格公示查询能力。 - MUST 调用 `130973` 查询住院/账户记录。 - MUST 调用 `03100205` 查询入院办理列表,并可在详情页调用 `03100208` 和 `03100207` 查询房间类型和床位。 - MUST 调用 `03100209` 支持价格公示类型、关键字和分页查询。 - MUST 仅在用户明确确认且旧版字段齐全时调用 `03100206` 更新入院时间或床位;页面加载、显示和刷新 MUST NOT 自动调用。 #### Scenario: 用户查看价格公示和入院办理 - Given 用户已选择医院和就诊人 - When 用户进入价格公示或入院办理页面 - Then 系统 MUST 展示真实查询接口结果;入院详情中的床位/时间更新仅可由用户确认提交,不得自动提交。 ### Requirement: REQ-ORDER-003-04 支付入口契约和高风险动作边界 系统 MUST 承接 PAY-001 支付入口契约;本模块负责按旧版字段生成业务契约,PAY-001 在用户确认后负责底层支付执行。 - MUST 在预交金充值、账户充值和账户缴费页面构建 PAY-001 所需业务契约,包含 `01050002`、`99070016` 或 `99070044`、业务类型、金额、患者、医院、就诊记录和用途字段。 - MUST NOT 自行绕过 PAY-001 调用微信支付底层能力。 - MUST NOT 在页面加载、显示、回跳或刷新时触发充值、账户缴费、支付结果回写、医保支付、退款或商品订单等写操作。 - MUST 将充值支付、账户缴费、视光预交金支付、入院办理写操作和真机支付表现纳入授权测试验收项。 #### Scenario: 用户点击充值或缴费 - Given 用户已输入充值金额或打开账户缴费单 - When 用户点击充值或缴费 - Then 系统 MUST 按旧版字段生成 PAY-001 契约并进入支付确认;只有用户在 PAY-001 再次确认后才可触发真实下单或支付。