# 营收明确缺陷第一批修复验证记录 日期:2026-06-08 ## 修复范围 - #78 水价调整失败后重试闭环 - #39 柜台预存缴费进入结账 - #50 柜台结账收费员筛选 - #53 预存抵扣校验 - #58/#59 柜台红冲记录查询 - #69/#76 待审批账务调整文案 ## 后端基线 - 仓库:water-backend - Worktree:backend-revenue-bugfix-clear-scope - 提交:`ba136759b1925789cb0adc18105d00d6928add59` ## 前端基线 - 仓库:water-frontend - Worktree:frontend-revenue-bugfix-clear-scope - 提交:`5f7ad7754473541483b26efa324419eb7a5d1a3b` ## 验证命令与结果 ### 后端 targeted tests ```bash cd /Volumes/Dpan/github/water-workspace/worktrees/backend-revenue-bugfix-clear-scope mvn -pl sw-business/sw-business-server -Dtest=PriceTemplateServiceImplTest,PriceTemplateAdjustmentLockRedisDAOTest,CounterSettleApplicationServiceImplTest,ChargeServiceImplCounterPrepayTest test ``` 结果:通过。 - Surefire 汇总:`Tests run: 26, Failures: 0, Errors: 0, Skipped: 0` - Maven 结果:`BUILD SUCCESS` - 备注:执行期间存在既有 Maven model warning、Mockito dynamic-agent warning;`PriceTemplateServiceImplTest` 中有一段业务代码捕获后记录的 NPE 栈日志,但测试结果为 0 failures / 0 errors。 ### 后端 compile ```bash cd /Volumes/Dpan/github/water-workspace/worktrees/backend-revenue-bugfix-clear-scope mvn -pl sw-business/sw-business-server -DskipTests compile ``` 结果:通过。 - Maven 结果:`BUILD SUCCESS` ### 前端 contract test ```bash cd /Volumes/Dpan/github/water-workspace/worktrees/frontend-revenue-bugfix-clear-scope node --test tests/revenue-bugs/revenueBugfixClearScope.contract.test.mjs ``` 结果:通过。 - Node test 汇总:`tests 5`, `pass 5`, `fail 0` ### 前端 settings contract regression ```bash cd /Volumes/Dpan/github/water-workspace/worktrees/frontend-revenue-bugfix-clear-scope node --test tests/settings/priceTemplateAdjustmentErrorHandling.test.mjs ``` 结果:通过。 - Node test 汇总:`tests 3`, `pass 3`, `fail 0` ### 前端 type check ```bash pnpm ts:check ``` 结果:未完成,不作为通过项。 - 首次执行长时间无诊断输出后以 `[ELIFECYCLE] Command failed.` 退出。 - 随后按用户明确指令停止继续运行 `vue-tsc` / `pnpm ts:check`。 - 已终止残留 `vue-tsc` 进程。 ### 前端 build ```bash cd /Volumes/Dpan/github/water-workspace/worktrees/frontend-revenue-bugfix-clear-scope pnpm build:dev ``` 结果:通过。 - 输出:`Build successful. Please see dist directory` - 备注:构建期间存在既有 Vite CJS deprecation warning、SVG icon symbolId warning、Rollup PURE annotation warning。 ## 备注 - 前端 worktree 中存在未跟踪 `test-results/*.png` 截图产物,本次未提交。 - 本轮未处理 #70 和 #9。#70 需抓包确认提交字段;#9 需产品确认抄表状态规则。 ## Jenkins 构建修复补充记录(2026-06-09) ### 问题定位 - Jenkins `sw-system-cloud-dev-pipeline` 在 `sw-business-server` 编译阶段报出 `*DORef` 缺失、Lombok getter/setter/log 缺失以及 `CounterSettleApplicationServiceImpl.isChargePaymentRecord(...)` 重复定义。 - 本地复现确认:`PrestorageBpmCallbackService` 已存在 `@Slf4j`,`log` 缺失不是独立代码问题,而是编译异常导致注解处理未完成后的级联报错。 - 修复 `CounterSettleApplicationServiceImpl` 中重复的 `isChargePaymentRecord(PaymentRecordDO)` 后,`target/generated-sources/annotations` 重新生成 `*DORef.java`,Lombok 相关报错消失。 - 同一提交引入的 `Collection::stream` 代码缺少 `java.util.Collection` 导入,补齐后编译闭环通过。 ### 后端修复范围 - 仓库:`../water-backend` - 分支:`develop` - 基线:`8e42a5123` - 修改文件:`sw-business/sw-business-server/src/main/java/cn/com/emsoft/sw/business/service/countersettle/CounterSettleApplicationServiceImpl.java` ### 验证命令与结果 ```bash cd /Volumes/Dpan/github/water-workspace/water-backend mvn -pl sw-business/sw-business-server -am -DskipTests compile ``` 结果:通过。 - Maven 结果:`BUILD SUCCESS` - 说明:用于确认注解处理恢复,`*DORef` 生成文件重新出现。 ```bash cd /Volumes/Dpan/github/water-workspace/water-backend mvn clean package -DskipTests -T 1C -pl sw-dependencies,sw-framework,sw-gateway,sw-server,sw-module-system,sw-module-infra,sw-module-bpm,sw-module-pay,sw-module-report,sw-business,sw-business-bank,sw-module-member -am ``` 结果:通过。 - Maven 结果:`BUILD SUCCESS` - 耗时:`01:13 min (Wall Clock)` - 备注:执行期间仍存在既有 Maven model warning、MapStruct unmapped target warning、Mockito `MockBean` deprecation warning;均未导致构建失败。 ## Jenkins 构建修复收敛记录(2026-06-09 10:35) ### 修复收敛结论 - 已确认 `8e42a5123 fix: configure sw-common annotation processors` 不是本次 Jenkins 编译失败的根因修复。 - 已将 `sw-framework/sw-common/pom.xml` 恢复到 `8e42a5123` 之前的注解处理器版本配置,避免保留错误方向的 POM 改动。 - 最终保留的真实修复为: - 删除 `CounterSettleApplicationServiceImpl` 中重复定义的 `isChargePaymentRecord(PaymentRecordDO)`。 - 补齐同文件中 `Collection::stream` 所需的 `java.util.Collection` import。 ### 后端最终修复范围 - 仓库:`../water-backend` - 分支:`develop` - 修复前基线:`8e42a5123` - 后端修复提交:`86203127eeb27fcb1ff8228a89a77eb3a3325c57` - 修改文件: - `sw-framework/sw-common/pom.xml` - `sw-business/sw-business-server/src/main/java/cn/com/emsoft/sw/business/service/countersettle/CounterSettleApplicationServiceImpl.java` ### 最终验证命令与结果 ```bash cd /Volumes/Dpan/github/water-workspace/water-backend mvn clean package -DskipTests -T 1C -pl sw-dependencies,sw-framework,sw-gateway,sw-server,sw-module-system,sw-module-infra,sw-module-bpm,sw-module-pay,sw-module-report,sw-business,sw-business-bank,sw-module-member -am ``` 结果:通过。 - Maven 结果:`BUILD SUCCESS` - 耗时:`01:15 min (Wall Clock)` - 完成时间:`2026-06-09T10:35:31+08:00` - 关键模块结果: - `sw-common`: `SUCCESS` - `sw-business-server`: `SUCCESS` - `sw-server`: `SUCCESS` - 备注:验证命令使用 `-DskipTests`,本次结论覆盖编译与打包;测试执行被跳过。