fujian_water_biz_doc/docs/evidence/bugfix/revenue-bugfix-clear-scope-2026-06-08.md
tangweijie 3eccab2cf9 docs: 文档治理统一 — AGENTS.md 生命周期规则 + 模块归档 + DDL 修正
1. AGENTS.md 更新
   - water-docs: 新增 specs/ 与 docs/design/ 生命周期规则章节
   - water-backend: 更新协作引用(建设期/建成后、evidence 模块化)

2. specs/ 重复合并
   - 006-reminder-event-design 合并入 003-rev006-reminder-event-design
   - 001-rev004-accounting 删除冗余 data-model.md + contracts/
   - 002-rev005-invoice-flow 删除冗余 data-model.md + contracts/

3. evidence 按模块归档
   - 35 个 REV-004 文件归入 evidence/rev004-accounting/
   - 7 个通用 bugfix 文件归入 evidence/bugfix/ 和 bugfix/frontend/
   - 新建 rev005-invoice/、rev006-reminder/、rev007-statistics/ 目录

4. guides/ 清理
   - 14 个 REV004_*.md 移入 evidence/rev004-accounting/

5. 遗留文件处理
   - docs/research/ 归档到 Archive/06_Migration_Plans/
   - backend-check detached worktrees 清理

6. 交叉引用修复
   - 006-reminder-event-design → 003-rev006-reminder-event-design
   - docs/guides/REV004_ → docs/evidence/rev004-accounting/REV004_

7. DB 设计文档修正(01_Database_Design.md)
   - biz_invoice 明确为开票配置表,非发票记录表
   - 新增 biz_invoice_record 为发票申请/结果主表
   - 新增 biz_charge_invoice_rel 账单-发票关联说明
   - REV-005 承接口径表名全部修正

8. 发票审计证据
   - 新增 evidence/rev005-invoice/2026-06-16-invoice-document-audit.md
2026-06-16 11:47:16 +08:00

6.3 KiB
Raw Blame History

营收明确缺陷第一批修复验证记录

日期2026-06-08

修复范围

  • #78 水价调整失败后重试闭环
  • #39 柜台预存缴费进入结账
  • #50 柜台结账收费员筛选
  • #53 预存抵扣校验
  • #58/#59 柜台红冲记录查询
  • #69/#76 待审批账务调整文案

后端基线

  • 仓库water-backend
  • Worktreebackend-revenue-bugfix-clear-scope
  • 提交:ba136759b1925789cb0adc18105d00d6928add59

前端基线

  • 仓库water-frontend
  • Worktreefrontend-revenue-bugfix-clear-scope
  • 提交:5f7ad7754473541483b26efa324419eb7a5d1a3b

验证命令与结果

后端 targeted tests

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 warningPriceTemplateServiceImplTest 中有一段业务代码捕获后记录的 NPE 栈日志,但测试结果为 0 failures / 0 errors。

后端 compile

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

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

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

pnpm ts:check

结果:未完成,不作为通过项。

  • 首次执行长时间无诊断输出后以 [ELIFECYCLE] Command failed. 退出。
  • 随后按用户明确指令停止继续运行 vue-tsc / pnpm ts:check
  • 已终止残留 vue-tsc 进程。

前端 build

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-pipelinesw-business-server 编译阶段报出 *DORef 缺失、Lombok getter/setter/log 缺失以及 CounterSettleApplicationServiceImpl.isChargePaymentRecord(...) 重复定义。
  • 本地复现确认:PrestorageBpmCallbackService 已存在 @Slf4jlog 缺失不是独立代码问题,而是编译异常导致注解处理未完成后的级联报错。
  • 修复 CounterSettleApplicationServiceImpl 中重复的 isChargePaymentRecord(PaymentRecordDO) 后,target/generated-sources/annotations 重新生成 *DORef.javaLombok 相关报错消失。
  • 同一提交引入的 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

验证命令与结果

cd /Volumes/Dpan/github/water-workspace/water-backend
mvn -pl sw-business/sw-business-server -am -DskipTests compile

结果:通过。

  • Maven 结果:BUILD SUCCESS
  • 说明:用于确认注解处理恢复,*DORef 生成文件重新出现。
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

最终验证命令与结果

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,本次结论覆盖编译与打包;测试执行被跳过。