40 lines
2.3 KiB
Markdown
40 lines
2.3 KiB
Markdown
|
|
# 员工亲属关系维护双 Sheet 导入后端实施计划
|
|||
|
|
|
|||
|
|
## 目标
|
|||
|
|
- 将员工亲属关系维护导入模板改为双 Sheet:
|
|||
|
|
- `员工亲属关系信息`
|
|||
|
|
- `亲属资产信息`
|
|||
|
|
- 将导入提交入口统一到 `/ccdi/staffFmyRelation/importData`。
|
|||
|
|
- 统一补充失败记录定位字段,支持前端展示 `Sheet / Excel行号 / 失败原因`。
|
|||
|
|
|
|||
|
|
## 实施内容
|
|||
|
|
- Controller 调整
|
|||
|
|
- `CcdiStaffFmyRelationController#importTemplate` 改为输出双 Sheet 模板,模板文件名统一为“员工亲属关系维护导入模板”。
|
|||
|
|
- `CcdiStaffFmyRelationController#importData` 一次读取两个 Sheet。
|
|||
|
|
- 按有数据的 Sheet 分别提交亲属关系导入任务和亲属资产导入任务。
|
|||
|
|
- 返回新的提交结果 VO,包含 `relationTaskId`、`assetTaskId` 和提示文案。
|
|||
|
|
- VO 调整
|
|||
|
|
- `StaffFmyRelationImportFailureVO` 增加 `sheetName`、`rowNum`。
|
|||
|
|
- `AssetImportFailureVO` 增加 `sheetName`、`rowNum`。
|
|||
|
|
- 新增 `StaffFmyRelationImportSubmitResultVO`。
|
|||
|
|
- 导入服务调整
|
|||
|
|
- `CcdiStaffFmyRelationImportServiceImpl` 失败记录写入固定 `sheetName=员工亲属关系信息`,并记录 Excel 数据行号。
|
|||
|
|
- `CcdiAssetInfoImportServiceImpl` 失败记录写入固定 `sheetName=亲属资产信息`,并记录 Excel 数据行号。
|
|||
|
|
- 兼容策略
|
|||
|
|
- 保留原 `CcdiAssetInfoController` 的状态查询与失败记录查询接口,前端继续复用原有资产任务轮询与失败记录查看能力。
|
|||
|
|
|
|||
|
|
## 验证
|
|||
|
|
- 后端优先验证:
|
|||
|
|
- `CcdiStaffFmyRelationControllerTest`
|
|||
|
|
- `CcdiAssetInfoControllerTest`
|
|||
|
|
- 编译验证:
|
|||
|
|
- `mvn -pl ccdi-info-collection -am -Dmaven.test.skip=true compile`
|
|||
|
|
|
|||
|
|
## 影响范围
|
|||
|
|
- `ccdi-info-collection/src/main/java/com/ruoyi/info/collection/controller/CcdiStaffFmyRelationController.java`
|
|||
|
|
- `ccdi-info-collection/src/main/java/com/ruoyi/info/collection/service/impl/CcdiStaffFmyRelationImportServiceImpl.java`
|
|||
|
|
- `ccdi-info-collection/src/main/java/com/ruoyi/info/collection/service/impl/CcdiAssetInfoImportServiceImpl.java`
|
|||
|
|
- `ccdi-info-collection/src/main/java/com/ruoyi/info/collection/domain/vo/StaffFmyRelationImportFailureVO.java`
|
|||
|
|
- `ccdi-info-collection/src/main/java/com/ruoyi/info/collection/domain/vo/AssetImportFailureVO.java`
|
|||
|
|
- `ccdi-info-collection/src/main/java/com/ruoyi/info/collection/domain/vo/StaffFmyRelationImportSubmitResultVO.java`
|