完成风险明细统一导出功能

This commit is contained in:
wkc
2026-03-30 14:32:41 +08:00
parent 28b846134a
commit ea6bd5213f
16 changed files with 590 additions and 14 deletions

View File

@@ -0,0 +1,91 @@
# 项目详情风险明细统一导出后端实施记录
**日期**: 2026-03-30
**范围**: 项目详情 - 结果总览 - 风险明细统一导出后端
## 1. 本次实施内容
本次后端完成以下改动:
-`CcdiProjectOverviewController` 新增统一导出接口:
- `POST /ccdi/project/overview/risk-details/export`
-`ICcdiProjectOverviewService``CcdiProjectOverviewServiceImpl` 中新增统一导出主流程
- 新增 `CcdiProjectEmployeeCreditNegativeExcel`,用于 `员工负面征信信息` sheet 行导出
-`CcdiProjectOverviewMapper``CcdiProjectOverviewMapper.xml` 中新增 `selectEmployeeCreditNegativeList`
- 新增 `CcdiProjectRiskDetailWorkbookExporter`,统一生成 3 个 sheet
- `涉疑交易明细`
- `员工负面征信信息`
- `异常账户人员信息`
## 2. 导出实现口径
### 2.1 涉疑交易明细
- 复用现有 `exportSuspiciousTransactions` 查询链路
- 在统一导出主流程中固定传入 `suspiciousType=ALL`
- 导出当前项目全部命中记录
### 2.2 员工负面征信信息
- 复用现有项目员工范围口径
- 新增非分页导出 SQL`selectEmployeeCreditNegativeList`
- 只导出存在负面征信记录的员工
### 2.3 异常账户人员信息
- 本轮不开发真实查询
- 统一导出文件中保留 `异常账户人员信息` sheet
- sheet 仅输出表头:
- `账号`
- `开户人`
- `银行`
- `异常类型`
- `异常发生时间`
- `状态`
## 3. 测试补充
新增或扩展了以下测试:
- `CcdiProjectOverviewControllerContractTest`
- 校验统一导出接口路径和注解
- `CcdiProjectOverviewControllerTest`
- 校验控制器对统一导出服务的委托
- `CcdiProjectOverviewMapperSqlTest`
- 校验员工负面征信导出 SQL 的表、关联和排序
- `CcdiProjectOverviewServiceEmployeeCreditNegativeTest`
- 校验员工负面征信导出列表映射与项目校验
- `CcdiProjectOverviewServiceImplTest`
- 校验统一导出主流程会查询两类真实数据并调用工作簿导出器
- `CcdiProjectRiskDetailWorkbookExporterTest`
- 校验 3 个 sheet 的顺序和空白异常账户 sheet 表头
## 4. 验证命令
执行命令:
```bash
mvn -pl ccdi-project -am -Dsurefire.failIfNoSpecifiedTests=false \
-Dtest=CcdiProjectOverviewControllerTest,CcdiProjectOverviewControllerContractTest,\
CcdiProjectOverviewMapperSqlTest,CcdiProjectOverviewServiceEmployeeCreditNegativeTest,\
CcdiProjectOverviewServiceImplTest,CcdiProjectRiskDetailWorkbookExporterTest test
```
验证结果:
- 42 个定向测试全部通过
- 统一导出接口、数据查询、工作簿生成链路全部通过定向验证
## 5. 结果说明
本次后端已满足设计目标:
- 提供统一导出接口
- 导出文件固定包含 3 个 sheet
- 涉疑交易与员工负面征信导出真实数据
- 异常账户 sheet 保留空白模板,不伪造数据
未完成项:
- 未开发异常账户真实查询链路
- 未进行真实浏览器下载联调,等待与前端统一按钮联调时一起验证

View File

@@ -0,0 +1,50 @@
# 项目详情风险明细统一导出前端实施记录
**日期**: 2026-03-30
**范围**: 项目详情 - 结果总览 - 风险明细统一导出前端
## 1. 本次实施内容
本次前端仅修改 `ruoyi-ui/src/views/ccdiProject/components/detail/RiskDetailSection.vue`,完成以下调整:
-`风险明细` 总卡片右上角新增统一 `导出` 按钮
- 移除 `涉疑交易明细` 区块右上角原有导出按钮
- 移除 `异常账户人员信息` 区块右上角占位导出按钮
- 将下载路径从:
- `ccdi/project/overview/suspicious-transactions/export`
- 调整为 `ccdi/project/overview/risk-details/export`
- 将导出文件名调整为:
- `风险明细_<projectId>_<timestamp>.xlsx`
- 调整总卡片头部布局,使标题区与导出按钮同一行展示
## 2. 交互口径
- 统一导出按钮只依赖 `projectId` 是否存在
- 不再绑定 `suspiciousTotal`
- 不再携带 `suspiciousType`
- 不改变现有涉疑交易筛选、分页和详情弹窗逻辑
- 不改变员工负面征信分页逻辑
## 3. 验证结果
执行命令:
```bash
cd ruoyi-ui
npm run build:prod
```
执行结果:
- 构建成功
- 仅存在仓库原有的体积告警,没有新增编译错误
## 4. 本轮未完成项
- 未做浏览器层手工点击联调
- 未启动前端开发服务做页面人工回归
说明:
- 本轮已完成静态构建验证
- 真实下载链路需结合后端统一导出接口在联调时一起确认