128 lines
7.8 KiB
Markdown
128 lines
7.8 KiB
Markdown
# 图谱功能改动梳理与验收清单
|
||
|
||
## 1. 验收目标
|
||
|
||
本清单用于继续验收当前图谱相关改动,覆盖资金流图谱和关系图谱两部分,重点确认:
|
||
|
||
- 已改动内容分别承担什么功能。
|
||
- 后端接口是否返回正常,是否出现 `500`、鉴权异常或 SQL 报错。
|
||
- 专项排查和项目分析弹窗中的真实页面是否能打开和查询。
|
||
- 已建图谱表不重复建表,仅核对必要字段、索引和补充脚本。
|
||
|
||
## 2. 改动梳理
|
||
|
||
### 2.1 资金流图谱
|
||
|
||
| 类型 | 文件/入口 | 功能 |
|
||
| --- | --- | --- |
|
||
| 后端 Controller | `ccdi-project/src/main/java/com/ruoyi/ccdi/project/controller/CcdiFundGraphController.java` | 提供主体搜索、一层资金图谱查询、边流水明细分页、手工资金流向保存接口。 |
|
||
| 后端 Service | `CcdiFundGraphServiceImpl.java` | 参数归一化、中心主体定位、真实边和手工边合并排序、节点组装、手工边保存、默认 `limit` 防空。 |
|
||
| 后端 Mapper | `CcdiFundGraphMapper.java`、`CcdiFundGraphMapper.xml` | 读取 `lx_fund_flow_*` 表,按账户明细实时聚合主体资金边,查询逐笔流水,写入手工边。 |
|
||
| DTO/VO | `CcdiFundGraph*DTO.java`、`CcdiFundGraph*VO.java` | 定义查询条件、手工边保存参数、图谱节点、资金边、流水明细返回结构。 |
|
||
| 前端 API | `ruoyi-ui/src/api/ccdi/graph/fundGraph.js` | 封装 `/ccdi/project/fund-graph/*` 接口。 |
|
||
| 前端组件 | `FundGraphSection.vue` | 资金图谱主工作台:搜索、日期范围、最小金额、ECharts 图谱、节点/边详情、边流水分页、手工新增资金流向。 |
|
||
| 专项排查入口 | `SpecialCheck.vue` | 将原图谱占位卡替换为真实图谱组件。 |
|
||
| 项目分析弹窗 | `ProjectAnalysisDialog.vue`、`ProjectAnalysisFundFlowTab.vue` | 在“资金流向”页签内展示简版资金图谱,弹窗内不展示逐笔流水表。 |
|
||
| SQL | `sql/ccdi/graph/01_lx_fund_graph_mysql_ddl.sql`、`02_lx_fund_graph_seed_test_data.sql`、`06_lx_fund_graph_existing_table_supplement.sql` | 记录资金图谱必要表结构、开发联调测试数据,以及已建表环境补字段/补索引脚本。 |
|
||
|
||
### 2.2 关系图谱
|
||
|
||
| 类型 | 文件/入口 | 功能 |
|
||
| --- | --- | --- |
|
||
| 后端 Controller | `CcdiRelationGraphController.java` | 提供主体搜索、一层关系图谱查询、疑似同名企业查询接口。 |
|
||
| 后端 Service | `CcdiRelationGraphServiceImpl.java` | 关系图谱主体定位、家庭/股东/法人边合并展示、疑似企业按姓名召回与年龄规则过滤。 |
|
||
| 后端 Mapper | `CcdiRelationGraphMapper.java`、`CcdiRelationGraphMapper.xml` | 读取 `lx_rel_node`、`lx_rel_family_edge`、`lx_rel_stock_edge`、`lx_rel_represent_edge`。 |
|
||
| DTO/VO | `CcdiRelationGraph*DTO.java`、`CcdiRelationGraph*VO.java` | 定义关系图谱查询、节点、边、疑似企业候选返回结构。 |
|
||
| 前端 API | `ruoyi-ui/src/api/ccdi/graph/relationGraph.js` | 封装 `/ccdi/project/relation-graph/*` 接口。 |
|
||
| 前端组件 | `FundGraphSection.vue` | 同一组件内提供“关系图谱”页签、节点/边详情和疑似同名企业面板。 |
|
||
| 项目分析弹窗 | `ProjectAnalysisDialog.vue` | “关系图谱”页签由占位页改为真实关系图谱简版展示。 |
|
||
| SQL | `03_lx_relation_graph_mysql_ddl.sql`、`04_lx_relation_graph_build_mysql.sql`、`05_lx_relation_graph_seed_test_data.sql` | 关系图谱建表、构建和测试数据脚本。DDL 已包含旧表补字段/补索引逻辑。 |
|
||
|
||
### 2.3 关联修复
|
||
|
||
| 文件 | 功能 |
|
||
| --- | --- |
|
||
| `CcdiModelParamServiceImpl.java` | 对 `ICcdiBankTagService` 增加 `@Lazy`,缓解服务循环依赖启动问题。 |
|
||
| `CcdiProjectOverviewServiceImpl.java` | 对 `ICcdiModelParamService` 增加 `@Lazy`,缓解服务循环依赖启动问题。 |
|
||
| `application-dev.yml`、`tongweb_62318.properties` | 本地/部署运行配置存在改动,不纳入本次图谱验收清单。 |
|
||
|
||
## 3. 建表与补充脚本验收口径
|
||
|
||
当前表已建好,本轮不重复执行建表脚本。验收时按以下口径处理:
|
||
|
||
- `CREATE TABLE IF NOT EXISTS` 可保留在仓库内,作为新环境初始化和评审依据。
|
||
- 已存在表只做字段、索引、字符集、排序规则核对。
|
||
- 如已建资金流图谱表缺字段或缺索引,优先使用 `sql/ccdi/graph/06_lx_fund_graph_existing_table_supplement.sql` 补充,不要先删表再重建。
|
||
- 如已建关系图谱表缺字段或缺索引,优先使用 `sql/ccdi/graph/03_lx_relation_graph_mysql_ddl.sql` 中的补充逻辑。
|
||
- 所有图谱表、字符字段和新增索引保持 `utf8mb4`、`utf8mb4_general_ci` 口径。
|
||
- 执行包含中文内容的 SQL 文件时使用 `bin/mysql_utf8_exec.sh <sql-file>`。
|
||
- 生产环境 DDL 和补充 SQL 由人工确认后手动执行,不随应用发布自动执行。
|
||
|
||
资金流图谱需核对:
|
||
|
||
- `lx_fund_flow_subject_node`
|
||
- `lx_fund_flow_account_node`
|
||
- `lx_fund_flow_own_account_edge`
|
||
- `lx_fund_flow_detail_edge`
|
||
- `lx_fund_flow_manual_edge`
|
||
|
||
关系图谱需核对:
|
||
|
||
- `lx_rel_node`
|
||
- `lx_rel_family_edge`
|
||
- `lx_rel_stock_edge`
|
||
- `lx_rel_represent_edge`
|
||
|
||
## 4. 验收清单
|
||
|
||
### 4.1 静态与构建
|
||
|
||
- [ ] 后端 `mvn -pl ccdi-project -am compile -DskipTests` 通过。
|
||
- [ ] 前端执行前确认 Node 版本;如 `nvm` 不可用,记录实际 Node 版本。
|
||
- [ ] 前端 `npm run build:prod` 通过,无新增编译错误。
|
||
- [ ] 检查暂存区,确认验收文档、业务代码、SQL、构建产物边界清晰。
|
||
|
||
### 4.2 资金流图谱接口
|
||
|
||
- [ ] 未登录访问图谱接口返回认证失败,不泄露数据。
|
||
- [ ] 管理员登录后,`/ccdi/project/fund-graph/search` 可按身份证号查到主体。
|
||
- [ ] `/ccdi/project/fund-graph/graph` 默认查询返回节点、边、总金额、交易笔数。
|
||
- [ ] 日期范围查询返回正常,不出现 SQL 字符集/排序规则错误。
|
||
- [ ] `direction=1` 支出查询返回正常。
|
||
- [ ] `direction=2` 收入查询返回正常。
|
||
- [ ] 点击边对应的 `/edge-detail` 分页返回正常,不再出现 `LIMIT null`。
|
||
- [ ] 手工新增资金流向缺少起点时返回明确业务错误,不抛服务端异常栈。
|
||
- [ ] 手工边与真实边合并后统一排序和统一 `limit`。
|
||
|
||
### 4.3 关系图谱接口
|
||
|
||
- [ ] `/ccdi/project/relation-graph/search` 可按身份证号或姓名查到主体。
|
||
- [ ] `/ccdi/project/relation-graph/graph` 返回家庭、股东、法人关系边。
|
||
- [ ] `/ccdi/project/relation-graph/suspected-enterprises` 可按姓名召回疑似企业。
|
||
- [ ] 同名候选过多时返回阻断提示,不直接大批量展示。
|
||
- [ ] 出生日期或身份证可用时,成立时未满 18 岁候选被过滤。
|
||
|
||
### 4.4 专项排查页面
|
||
|
||
- [ ] 登录后进入真实项目详情页,不打开原型页。
|
||
- [ ] 切换到“专项排查”,图谱分析区域出现。
|
||
- [ ] 资金流图谱默认空态文案正确。
|
||
- [ ] 输入身份证号后点击查询,资金边统计展示正确。
|
||
- [ ] 图谱画布非空白,页面无明显遮挡、错位。
|
||
- [ ] 点击资金边后右侧展示金额、笔数、关系标签和逐笔流水。
|
||
- [ ] 切换到关系图谱页签,搜索后页面无白屏、无控制台错误。
|
||
- [ ] 浏览器控制台无 `error`,图谱相关网络请求均为 `200`。
|
||
|
||
### 4.5 项目分析弹窗
|
||
|
||
- [ ] 在结果总览人员行点击“查看详情”打开项目分析弹窗。
|
||
- [ ] “资金流向”页签展示简版图谱,无搜索栏,画布能渲染。
|
||
- [ ] “关系图谱”页签展示简版关系图谱,切换页签后图谱重新 resize。
|
||
- [ ] 弹窗版不展示逐笔流水表,仅展示汇总信息。
|
||
- [ ] 弹窗控制台无图谱 resize、ECharts 初始化、接口调用异常。
|
||
|
||
### 4.6 待重点复核项
|
||
|
||
- [ ] `nvm` 在当前 PowerShell 环境不可用;前端构建已记录实际 Node 版本。
|
||
- [ ] 已建表环境执行补充前,先人工确认目标库、表结构差异和备份策略。
|