Files
ccdi/docs/reports/implementation/2026-03-19-risk-dashboard-target-count-fix.md

1.2 KiB

风险仪表盘总人数修复实施记录

日期: 2026-03-19 范围: 后端

问题现象

  • 风险仪表盘中的“总人数”始终显示 0
  • 真实数据库中多个项目已存在流水数据,但 ccdi_project.target_count 未被维护

根因

  • 结果总览接口按既定口径直接读取 ccdi_project.target_count
  • 项目创建时将 target_count 初始化为 0
  • 后续在银行流水导入成功、删除上传记录成功后,都没有重新统计并回写 target_count

本次修改

  1. CcdiFileUploadServiceImpl 中新增项目目标人数刷新逻辑
  2. 在银行流水入库成功后,按 ccdi_bank_statement 中去重身份证号数量回写 ccdi_project.target_count
  3. 在删除上传记录并清理项目流水后,同步刷新 ccdi_project.target_count
  4. 新增增量脚本 sql/migration/2026-03-19-backfill-project-target-count.sql,用于回填历史项目的目标人数
  5. 补充单元测试,覆盖:
    • 流水入库成功后刷新目标人数
    • 删除上传记录后刷新目标人数
    • 目标人数刷新按去重身份证号统计

验证

  • 执行:mvn -pl ccdi-project -Dtest=CcdiFileUploadServiceImplTest test
  • 结果:通过