64 lines
3.2 KiB
Markdown
64 lines
3.2 KiB
Markdown
|
|
# 2026-03-30 项目详情风险人员导出后端验证记录
|
|||
|
|
|
|||
|
|
## 设计文档
|
|||
|
|
|
|||
|
|
- 已核对设计文档路径:`docs/design/2026-03-30-project-detail-risk-people-export-design.md`
|
|||
|
|
|
|||
|
|
## 执行命令
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
mvn -pl ccdi-project -Dtest=CcdiProjectOverviewControllerTest test
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 验证结果
|
|||
|
|
|
|||
|
|
- 本次 Maven 验证未能进入本需求测试断言阶段,编译阶段被仓库内既有无关问题阻塞。
|
|||
|
|
- 阻塞信息为:
|
|||
|
|
- `ccdi-project/src/main/java/com/ruoyi/ccdi/project/domain/excel/CcdiIdCardExcelRow.java`
|
|||
|
|
- `ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiFileUploadServiceImpl.java`
|
|||
|
|
- 缺少 `com.alibaba.excel` / `com.alibaba.excel.annotation.ExcelProperty`
|
|||
|
|
- 因此当前无法在本地完成计划中的 `CcdiProjectOverviewControllerTest`、`CcdiProjectOverviewMapperSqlTest`、`CcdiProjectOverviewServiceImplTest` Maven 回归。
|
|||
|
|
|
|||
|
|
## 已完成的静态核对
|
|||
|
|
|
|||
|
|
- 导出接口路径已接通为 `POST /ccdi/project/overview/risk-people/export`。
|
|||
|
|
- Service 已新增 `exportRiskPeopleOverview(Long projectId)`。
|
|||
|
|
- 导出查询 `selectRiskPeopleOverviewList` 已与分页查询共用字段片段 `riskPeopleOverviewSelectColumns` 和排序片段 `riskPeopleOverviewOrderBy`。
|
|||
|
|
- 导出字段顺序与页面表格字段保持一致:姓名、身份证号、所属部门、疑似违规数、风险等级、命中模型数、核心异常点。
|
|||
|
|
|
|||
|
|
## 结论
|
|||
|
|
|
|||
|
|
- 需求代码已补齐,但后端自动化回归仍受仓库现有 EasyExcel 编译问题影响,待该阻塞解除后需重新执行:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
mvn -pl ccdi-project -Dtest=CcdiProjectOverviewControllerTest,CcdiProjectOverviewMapperSqlTest,CcdiProjectOverviewServiceImplTest test
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 2026-03-30 真机接口补充验证
|
|||
|
|
|
|||
|
|
### 执行命令
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
./bin/restart_java_backend.sh restart
|
|||
|
|
curl -sS -H 'Content-Type: application/json' \
|
|||
|
|
-d '{"username":"admin","password":"admin123"}' \
|
|||
|
|
http://127.0.0.1:62318/login/test
|
|||
|
|
curl -sS -H 'Authorization: Bearer <token>' \
|
|||
|
|
'http://127.0.0.1:62318/ccdi/project/overview/risk-people?projectId=62&pageNum=1&pageSize=5'
|
|||
|
|
curl -sS -D /tmp/risk_people_export_headers.txt \
|
|||
|
|
-o /tmp/risk_people_export.xlsx \
|
|||
|
|
-H 'Authorization: Bearer <token>' \
|
|||
|
|
-X POST 'http://127.0.0.1:62318/ccdi/project/overview/risk-people/export?projectId=62'
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 结果
|
|||
|
|
|
|||
|
|
- 后端已成功重启并监听 `62318`。
|
|||
|
|
- `POST /login/test` 使用 JSON 请求体可成功返回 token。
|
|||
|
|
- `GET /ccdi/project/overview/risk-people?projectId=62&pageNum=1&pageSize=5` 返回 `200`,分页结果为 `total = 17`、`pageNum = 1`、`pageSize = 5`,首行数据为 `郑强`。
|
|||
|
|
- `POST /ccdi/project/overview/risk-people/export?projectId=62` 返回 `200`,响应头 `Content-Type` 为 `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8`。
|
|||
|
|
- 导出文件 `/tmp/risk_people_export.xlsx` 成功生成,sheet 维度为 `A1:G18`,包含 1 行表头 + 17 行数据。
|
|||
|
|
- 抽样核对导出表头为:`姓名`、`身份证号`、`所属部门`、`疑似违规数`、`风险等级`、`命中模型数`、`核心异常点`。
|
|||
|
|
- 抽样核对导出首行数据为 `郑强 / 180516198412041355 / 若依科技 / 23 / 高风险 / 8`,与页面列表口径一致。
|
|||
|
|
- 后端日志确认导出请求命中 `selectRiskPeopleOverviewList`,并返回 `17` 条记录。
|