# 外部人员预警实施记录 ## 保存路径确认 - 后端实施计划:`docs/plans/backend/2026-06-24-external-person-warning-backend-implementation.md` - 前端实施计划:`docs/plans/frontend/2026-06-24-external-person-warning-frontend-implementation.md` - 实施记录:`docs/reports/implementation/2026-06-24-external-person-warning-implementation.md` - 测试数据 SQL:`sql/migration/2026-06-24-add-external-person-warning-test-data.sql` ## 修改内容 1. 结果总览后端新增外部人员预警接口: - `GET /ccdi/project/overview/external-persons` - `POST /ccdi/project/overview/external-persons/export` - `GET /ccdi/project/overview/external-risk-models/cards` - `GET /ccdi/project/overview/external-risk-models/people` - `POST /ccdi/project/overview/external-risk-models/people/export` 2. 后端新增外部人员预警 DTO、VO、Excel 导出对象。 3. Mapper 新增外部人员聚合查询,基于本方 `cret_no` 排除员工和员工亲属后识别外部人员。 4. 外部人员主体类型支持中介、客户、外部人员。 5. 风险明细涉疑交易增加 `EXTERNAL_PERSON` 筛选口径。 6. 前端风险人员区域增加靠后的“外部人员预警” Tab,员工风险人员仍为默认入口。 7. 前端风险模型区域后置展示外部人员预警模型,模型导出按钮改为真实导出当前筛选命中明细。 8. 新增外部人员预警联调测试数据 SQL。 ## 业务口径 1. 员工仍然是结果总览默认主视图,原员工风险人员、员工模型和员工项目分析不变。 2. 外部人员预警和员工使用同一页面风格,但不展示员工专属字段。 3. 外部人员不进入资产分析、负面征信、部门岗位和员工画像详情。 4. 外部人员预警模型限定为交易和关系类: - 外部人员大额交易 - 外部人员异常交易 - 外部人员可疑赌博 - 外部人员可疑关系 5. 中介识别优先使用中介库本人证件号匹配,不使用姓名作为主体识别依据。 ## 验证情况 1. 已执行后端编译: - `mvn -pl ccdi-project -am compile -DskipTests` - 结果:通过。 2. 测试数据 SQL 已生成。因本机执行 `bash bin/mysql_utf8_exec.sh sql/migration/2026-06-24-add-external-person-warning-test-data.sql` 失败,已改用 Java/JDBC 显式执行 `SET NAMES utf8mb4` 和 `SET collation_connection = utf8mb4_general_ci` 后入库成功。 3. 前端执行前已按项目要求检查 Node: - `.nvmrc` 为 `14.21.3` - 当前 `node -v` 为 `v14.21.3` - 当前环境 `npm` 不在 PATH,改用 `C:\Users\20696\AppData\Roaming\nvm\v14.21.3\node.exe node_modules/@vue/cli-service/bin/vue-cli-service.js build` - 结果:构建通过,仅有既有资源体积 warning。 4. 数据库验证: - 测试项目 `90624001` 已入库 2 个外部人员主体:测试中介王某、测试客户赵某。 - 外部人员模型命中结果已入库 4 类:外部人员大额交易、外部人员异常交易、外部人员可疑赌博、外部人员可疑关系。 5. 本机已有后端服务监听 `62318`,但未通过脚本重启到最新代码;项目重启脚本依赖 bash/lsof/pgrep,当前 Windows 环境缺可用 bash/WSL。 6. 真实接口登录验证受运行环境 Redis 超时影响,`POST /login/test` 返回 `Redis command timed out`,因此未完成浏览器页面验证。 ## 后续验证建议 1. 在具备 bash/lsof/pgrep 的环境使用 `bin/restart_java_backend.sh` 重启后端。 2. Redis 恢复后登录系统,在真实结果总览页面验证: - 员工风险人员默认展示不变。 - 外部人员预警 Tab 可分页加载。 - 外部人员预警导出可下载。 - 外部人员模型卡片后置展示。 - 风险模型导出可按当前筛选下载。 - 风险明细可筛选“外部人员预警”。