26 lines
1.3 KiB
Markdown
26 lines
1.3 KiB
Markdown
|
|
# 涉疑交易无外部人员短路后端实施计划
|
||
|
|
|
||
|
|
## 背景
|
||
|
|
|
||
|
|
生产结果总览首屏中,`/ccdi/project/overview/suspicious-transactions` 在无外部人员项目上可能超过前端 10 秒超时。该接口的汇总 SQL 无条件拼接外部人员预警分支,导致只上传员工数据的项目仍会执行外部人员复杂关联。
|
||
|
|
|
||
|
|
## 目标
|
||
|
|
|
||
|
|
- 保持涉疑交易原有口径不变。
|
||
|
|
- 当项目不存在外部人员主体时,跳过涉疑交易中的外部人员预警分支。
|
||
|
|
- 当查询类型为 `EXTERNAL_PERSON` 且项目不存在外部人员主体时,直接返回空结果。
|
||
|
|
|
||
|
|
## 实施步骤
|
||
|
|
|
||
|
|
1. 在 `CcdiProjectSuspiciousTransactionQueryDTO` 增加内部开关 `includeExternalPerson`。
|
||
|
|
2. 在 `CcdiProjectOverviewMapper` 增加轻量外部人员主体存在性判断。
|
||
|
|
3. 在 `CcdiProjectOverviewMapper.xml` 中将 `externalSuspiciousTransactionSql` 的 `union all` 改为按 `includeExternalPerson` 条件拼接。
|
||
|
|
4. 在 `CcdiProjectOverviewServiceImpl` 中按 `suspiciousType` 设置外部人员分支开关;`EXTERNAL_PERSON` 无主体时直接返回空分页或空导出列表。
|
||
|
|
5. 补充 Mapper SQL 结构测试和 Service 行为测试。
|
||
|
|
|
||
|
|
## 验证
|
||
|
|
|
||
|
|
- 运行涉疑交易相关单测。
|
||
|
|
- 运行结果总览 Mapper SQL 结构测试。
|
||
|
|
- 验证无外部人员项目不再执行涉疑交易外部人员分支。
|