调整实体库管理数据来源维护规则
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
# 实体库管理新增弹窗后端实施计划
|
||||
|
||||
## 文档路径确认
|
||||
|
||||
- 后端实施计划保存路径:`docs/plans/backend/`
|
||||
- 本文档文件名:`2026-04-23-enterprise-base-info-add-dialog-backend-implementation.md`
|
||||
|
||||
## 需求目标
|
||||
|
||||
- 实体库管理新增场景不再要求前端传入数据来源。
|
||||
- 新增时由后端自动写入数据来源,人工新增统一落为 `MANUAL`。
|
||||
- 编辑时后端保留原有数据来源,不允许通过请求修改。
|
||||
- 经营状态调整为非必填项。
|
||||
- 导入模板同步去除数据来源输入列,并将经营状态改为非必填展示。
|
||||
- 导入时由后端自动写入 `IMPORT`,不再依赖模板传值。
|
||||
|
||||
## 实施范围
|
||||
|
||||
- `CcdiEnterpriseBaseInfoAddDTO`
|
||||
- `CcdiEnterpriseBaseInfoEditDTO`
|
||||
- `CcdiEnterpriseBaseInfoServiceImpl`
|
||||
- `CcdiEnterpriseBaseInfoImportServiceImpl`
|
||||
- `CcdiEnterpriseBaseInfoExcel`
|
||||
|
||||
## 实施步骤
|
||||
|
||||
1. 去除新增 DTO 中 `status`、`dataSource` 的必填约束,编辑 DTO 中去除 `status` 的必填约束。
|
||||
2. 调整新增服务逻辑,仅校验风险等级和企业来源,新增数据时后端固定写入 `MANUAL`。
|
||||
3. 调整编辑服务逻辑,更新时始终沿用数据库中的原始数据来源。
|
||||
4. 调整状态字段赋值逻辑,将空白字符串统一收敛为 `null`,避免出现空串脏数据。
|
||||
5. 调整导入服务逻辑,去掉对模板数据来源的解析和校验,导入时固定写入 `IMPORT`。
|
||||
6. 修改导入模板对象,移除数据来源列,并把“经营状态*”调整为“经营状态”。
|
||||
7. 补充/更新单元测试,覆盖新增自动写入 `MANUAL`、编辑保留原数据来源、导入自动写入 `IMPORT`、经营状态非必填和模板表头变更。
|
||||
|
||||
## 验证方案
|
||||
|
||||
- 执行定向测试:
|
||||
`mvn -pl ccdi-info-collection -am -Dsurefire.failIfNoSpecifiedTests=false -Dtest=CcdiEnterpriseBaseInfoServiceImplTest,CcdiEnterpriseBaseInfoImportServiceImplTest,EasyExcelUtilTemplateTest test`
|
||||
- 通过真实后端接口验证:
|
||||
- 新增不传 `dataSource`、不传 `status` 仍可成功
|
||||
- 查询结果中 `dataSource=MANUAL`
|
||||
- 删除测试数据成功
|
||||
- 下载导入模板并核对首行表头:
|
||||
- 包含 `经营状态`
|
||||
- 不包含 `数据来源`
|
||||
|
||||
## 风险与注意事项
|
||||
|
||||
- 当前工作区存在其他未提交改动,本次仅处理实体库管理相关文件,不回退无关内容。
|
||||
- 导入模板对象同时承担导入解析职责,本次变更后模板和导入字段保持一致。
|
||||
@@ -0,0 +1,41 @@
|
||||
# 实体库管理新增弹窗前端实施计划
|
||||
|
||||
## 文档路径确认
|
||||
|
||||
- 前端实施计划保存路径:`docs/plans/frontend/`
|
||||
- 本文档文件名:`2026-04-23-enterprise-base-info-add-dialog-frontend-implementation.md`
|
||||
|
||||
## 需求目标
|
||||
|
||||
- 实体库管理新增弹窗隐藏“数据来源”字段。
|
||||
- 经营状态改为非必填。
|
||||
- 编辑弹窗仍保留数据来源展示,但不允许修改。
|
||||
- 导入入口沿用现有交互,但模板下载出的字段定义要与后端保持一致。
|
||||
|
||||
## 实施范围
|
||||
|
||||
- `ruoyi-ui/src/views/ccdiEnterpriseBaseInfo/index.vue`
|
||||
|
||||
## 实施步骤
|
||||
|
||||
1. 在表单层按 `isAdd` 区分新增与编辑模式,新增时隐藏“数据来源”表单项。
|
||||
2. 去除经营状态前端必填校验。
|
||||
3. 编辑态将数据来源改为只读展示,避免用户误改。
|
||||
4. 调整数据来源校验逻辑,仅用于保持表单已有值,不提供编辑能力。
|
||||
5. 新增提交时从请求载荷中删除 `dataSource` 字段,避免旧表单状态误传。
|
||||
6. 保留列表、详情、编辑页中的数据来源展示,避免影响已有查看能力。
|
||||
|
||||
## 验证方案
|
||||
|
||||
- 使用 `nvm use` 切换到仓库要求的 Node 版本后启动前端:
|
||||
`npm run dev`
|
||||
- 浏览器进入 `实体库管理` 页面,核对:
|
||||
- 新增弹窗没有“数据来源”字段
|
||||
- 经营状态没有必填星号
|
||||
- 风险等级、企业来源仍为必填
|
||||
- 导入弹窗可正常打开
|
||||
|
||||
## 风险与注意事项
|
||||
|
||||
- 当前页面文件存在其他在途改动,本次仅追加最小范围修改,不覆盖无关调整。
|
||||
- 新增与编辑共用同一个表单对象,需要通过条件渲染和条件校验避免互相影响。
|
||||
Reference in New Issue
Block a user