修订: 完善员工资产导入与实体库补入设计

This commit is contained in:
wkc
2026-05-06 17:24:25 +08:00
parent 104e8697fe
commit 0f7b57e824

View File

@@ -63,6 +63,8 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
实体库缺失时最小插入;已存在时不更新。
供应商来源需要同步新增后端枚举 `EnterpriseSource.SUPPLIER("SUPPLIER", "供应商")`,并补充 `/ccdi/enum/enterpriseSource` 枚举接口测试。前端继续通过现有枚举接口展示来源,不需要调整页面结构。
## 5. 员工信息维护双 Sheet 导入设计
### 5.1 当前问题
@@ -146,8 +148,8 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
5. 更新亲属关系任务状态和失败记录。
6. 再执行亲属资产导入。
7. 亲属资产归属候选来源为:
- 数据库已有有效员工亲属关系
- 本轮亲属关系 Sheet 成功导入的有效员工亲属关系
- 数据库已有员工亲属关系,沿用现有 owner 查询条件
- 本轮亲属关系 Sheet 成功导入的员工亲属关系
8. 亲属资产落库继续保持:
- `family_id = 员工身份证号`
- `person_id = 亲属身份证号`
@@ -155,10 +157,10 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
### 6.3 任务状态
- 只填亲属关系 Sheet只返回 `relationTaskId`
- 只填亲属资产 Sheet只返回 `assetTaskId`,只按数据库已有有效亲属关系校验。
- 只填亲属资产 Sheet只返回 `assetTaskId`,只按数据库已有员工亲属关系校验,并沿用现有 owner 查询条件
- 两个 Sheet 都填:返回 `relationTaskId``assetTaskId`,后台保证亲属关系先处理、资产后处理。
- 亲属关系主 Sheet 部分成功时,亲属资产只能使用成功亲属关系上下文。
- 亲属关系主 Sheet 全部失败时,亲属资产仍执行,但只能命中数据库已有有效亲属关系。
- 亲属关系主 Sheet 全部失败时,亲属资产仍执行,但只能命中数据库已有员工亲属关系。
## 7. 实体库自动补入设计
@@ -190,7 +192,7 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
- `ent_source = 来源`
- `data_source = MANUAL 或 IMPORT`
- `risk_level = 来源规则值`
- `create_by/update_by = 当前用户`
- `created_by/updated_by = 当前用户`
5. 中介来源 `INTERMEDIARY``risk_level = 1`
6. 员工亲属、信贷客户、供应商来源写 `risk_level = NULL`
7. 并发导致主键重复时,按“已存在实体”处理。
@@ -216,16 +218,17 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
中介实体关联:
- 手工新增:校验通过后、插入关联关系前补入实体库
- 导入:只对校验成功并即将插入的记录批量补入。
- 手工新增:字段校验和重复关系校验通过后,取消或替换“实体库必须已存在”校验,先补入实体库,再插入关联关系
- 导入:字段校验和重复关系校验通过后,取消或替换“实体库必须已存在”失败条件,只对即将插入的成功记录批量补入。
- 来源:`INTERMEDIARY`
- 数据来源:手工新增为 `MANUAL`,导入为 `IMPORT`
- 风险等级:`1`
招投标供应商:
- 手工新增或保存招投标主信息时,只对有效供应商数据补入。
- 导入:只对成功采购事项中的供应商批量补入,失败采购事项不补入。
- 手工新增或保存招投标主信息时,只对 `supplierUscc` 非空且通过现有格式校验的供应商补入。
- 导入:只对成功采购事项中 `supplierUscc` 非空且通过现有格式校验的供应商批量补入,失败采购事项不补入。
- 导入中 `supplierUscc` 为空的供应商保持现有保存规则,但不补入实体库。
- 来源:`SUPPLIER`
- 数据来源:手工新增为 `MANUAL`,导入为 `IMPORT`
- 风险等级:`NULL`
@@ -241,6 +244,7 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
- 员工资产找不到员工时继续报“员工资产导入仅支持员工本人证件号”。
- 亲属资产找不到归属时继续报“未找到亲属资产归属员工”。
- 亲属资产命中多个归属时继续报“亲属资产归属员工不唯一”。
- 亲属资产数据库归属查询条件沿用当前实现,不因本次编排新增额外状态过滤。
### 8.2 自动补入边界
@@ -249,6 +253,8 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
- 已存在实体不更新,避免覆盖人工维护数据。
- 不增加默认企业名称、默认来源、默认风险等级等兜底逻辑。
- 不改变实体库导入的严格新增规则。
- 中介实体关联的“实体库必须已存在”校验需要被自动补入替换,否则缺失实体无法进入补入链路。
- 供应商自动补入只处理非空统一社会信用代码,空统一社会信用代码不改变原导入保存规则。
## 9. 测试设计
@@ -266,7 +272,7 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
- 同一模板中新亲属关系和亲属资产同时导入,资产引用新亲属证件号,资产成功。
- 亲属关系 Sheet 行校验失败,资产引用该亲属证件号且数据库不存在,资产失败。
- 只导亲属资产,数据库已有唯一有效亲属关系时成功。
- 只导亲属资产,数据库已有唯一员工亲属关系时成功。
- 只导亲属资产,数据库不存在亲属关系时失败。
- 同一亲属证件号命中多个员工归属时失败。
@@ -277,6 +283,7 @@ Controller 继续负责读取两个 Sheet但不再分别提交两个彼此独
- 同批多个成功行引用同一统一社会信用代码,只补入一次。
- 中介来源写 `riskLevel=1`
- 员工亲属、信贷客户、供应商来源写 `riskLevel=null`
- 后端枚举接口返回 `SUPPLIER/供应商`
- 并发重复主键按已存在处理。
四类业务接入: