# REV004 accountProcess gap remediation — 2026-04-13 验证记录 ## 本轮改动 - accountProcess 查询 ReqVO 补前端原型 range 参数兼容: - `sold`: `accountMonth` / `collectionTime` - `log`: `accountMonth` / `createTime` / `handleTime` / `paymentDate` - `unsold`: `accountMonth` - `prestorage`: `acceptTime` - 查询 Controller 增加 query-normalize,兼容多值 query param 传入 - `accountLog` 状态筛选补兼容值:`1=正常`、`2=已撤销` ## 验证结果 ### 1. 主代码编译 命令: ```bash cd sw-business/sw-business-server && mvn -q -DskipTests compile ``` 结果:通过。 ### 2. 变更相关测试(手动定向执行) 由于模块内存在与本次改动无关的存量 testCompile 问题(`ChargeService` / `ChargeDO` 相关旧测试编译失败),本轮对变更相关测试采用定向手动编译 + JUnit Console 执行。 执行类: - `AccountingAdjustActionControllerTest` - `AccountingAdjustRouteSmokeTest` - `AccountingAdjustLogProcessServiceImplTest` - `AccountingAdjustPrestorageProcessServiceImplTest` - `AccountingAdjustSoldQueryProcessServiceImplTest` - `AccountingAdjustUnsoldProcessServiceImplTest` 结果: - 34 tests found - 34 tests started - 34 tests successful - 0 tests failed 关键覆盖点: - accountProcess 路由 smoke 正常 - query range 参数兼容归一化正常 - `accountLog` 的 `status=2` 已撤销兼容筛选正常 - `prestorage adjustmentNo` 闭环仍保持通过 - `sold` 查询过滤与 `unsold` / `prestorage` 主流程回归通过 ### 3. 说明 直接执行: ```bash cd sw-business/sw-business-server && mvn -Dtest='...' test ``` 仍会被仓库内历史遗留的 testCompile 问题阻断;该问题与本轮 accountProcess 修复无直接关系。 ## 4. `sold.isHistory` 语义收口(追加) ### 语义定义 - `isHistory=false`:查询当前已收记录(`payState=PAID`),保留调整/批量撤销能力 - `isHistory=true`:查询历史已结记录(`payState=SETTLED`),按只读口径返回,不开放调整/批量撤销 ### 追加验证 命令: - `cd sw-business/sw-business-server && mvn -q -DskipTests compile` - 手动定向执行:`AccountingAdjustRouteSmokeTest` + `AccountingAdjustSoldQueryProcessServiceImplTest` 结果: - 6 tests found - 6 tests started - 6 tests successful - 0 tests failed ## 5. 完整相关回归(追加) 在 `sold.isHistory` 收口后,再次对本轮相关 6 个 accountProcess 测试类做完整定向回归。 执行类: - `AccountingAdjustActionControllerTest` - `AccountingAdjustRouteSmokeTest` - `AccountingAdjustLogProcessServiceImplTest` - `AccountingAdjustPrestorageProcessServiceImplTest` - `AccountingAdjustSoldQueryProcessServiceImplTest` - `AccountingAdjustUnsoldProcessServiceImplTest` 结果: - 35 tests found - 35 tests started - 35 tests successful - 0 tests failed ## 6. sold / accountLog 展示字段复核(追加) ### 复核结论 - `sold`:当前前端列表/弹窗所需展示字段已基本满足,暂不需要额外补展示字段 - `accountLog`:补 `custId`,用于前端客户编号点击后稳定跳转客户详情 ### 追加验证 - `mvn -q -DskipTests compile` 通过 - 手动定向执行:`AccountingAdjustRouteSmokeTest` + `AccountingAdjustLogProcessServiceImplTest` - 结果:5 tests found / 5 tests successful / 0 failed ## 7. accountLog `custId` 补齐后的回归(追加) ### 变更目的 - 补 `accountLog` 列表/详情响应中的 `custId` - 支撑前端客户编号点击后稳定跳客户详情 ### 追加验证 - 手动定向编译:`AccountingAdjustRouteSmokeTest`、`AccountingAdjustLogProcessServiceImplTest`、`AccountingAdjustSoldQueryProcessServiceImplTest` - JUnit Console 执行结果:9 tests found / 9 tests successful / 0 failed ## 8. work_status 字典与正式文档同步(追加) ### 本轮结果 - 已在 `../water-docs/sql/rev004_account_adjust_dict_seed.sql` 中补充 `work_status` 字典 type/data(幂等) - 已将 `../water-docs/docs/design/03_Technical_Design/01_Database_Design.md` 中的 `work_status` 口径同步为代码四态:`0-未处理 / 1-已审核 / 2-已完成 / 3-已撤销` - 本轮仍无业务表 schema 变更,仅涉及字典 seed 与正式文档同步 ### 业务解释补充 - `0 未处理`:工单创建,待审核/待处理 - `1 已审核`:审核通过(或无需审批),待完成 - `2 已完成`:处理成功且已回写完成 - `3 已撤销`:工单已撤销 - 说明:`钱到账`、`带红冲操作` 更偏业务侧解释;当前代码稳定判定仍以 `approvalStatus / resultStatus / writeBackStatus / revokeOfAdjustmentNo` 为准。 ### 剩余风险 - 当前 seed SQL 采用幂等补缺策略,不会纠正**环境中已存在但口径错误**的 `work_status` 数据;若某环境已落旧三态字典,仍需后续补一条存量纠偏 SQL 或人工核查。 - Archive/历史快照与 processed/output 产物可能仍保留旧三态,它们属于历史资料/派生产物,不作为当前正式口径。