Refactor project pages and update related docs

This commit is contained in:
wkc
2026-05-28 16:37:51 +08:00
parent 000e8698a5
commit 7ce721ef93
40 changed files with 730 additions and 785 deletions

View File

@@ -0,0 +1,29 @@
# 账号库列表排除信贷客户后端实施计划
## 1. 目标
账号库管理列表不展示 `ccdi_account_info.owner_type = 'CREDIT_CUSTOMER'` 的信贷客户账号,避免信贷客户账号批量导入后进入页面列表并影响查询性能。
## 2. 实施范围
- 后端账号库列表查询 SQL
- 账号库导出查询复用同一筛选条件
- 本次不调整前端筛选项、接口参数、返回结构、新增编辑导入校验
## 3. 实施步骤
1.`CcdiAccountInfoMapper.xml``AccountInfoWhereClause` 增加固定条件:
`AND ai.owner_type <> 'CREDIT_CUSTOMER'`
2. 保持现有 `ownerType` 动态筛选逻辑不变,使 `ownerType=CREDIT_CUSTOMER` 查询自然返回空结果。
3. 不新增前端“信贷客户”筛选项,不扩展账号库维护端归属类型。
## 4. 验证要点
- 无筛选条件时列表不返回 `CREDIT_CUSTOMER` 数据。
- `ownerType=EMPLOYEE``RELATION``INTERMEDIARY``EXTERNAL` 时仍按原逻辑查询。
- `ownerType=CREDIT_CUSTOMER` 时返回空结果。
- 账号库导出与列表使用同一排除口径。
## 5. 前提
信贷客户账号导入 `ccdi_account_info` 时,`owner_type` 必须固定写入 `CREDIT_CUSTOMER`

View File

@@ -0,0 +1,24 @@
# 项目打标失败状态后端实施计划
## 保存路径确认
- 后端计划:`docs/plans/backend/2026-05-27-project-tag-failed-status-backend-implementation.md`
- 实施记录:`docs/reports/implementation/2026-05-27-project-tag-failed-status-implementation.md`
## 目标
新增正式项目状态 `4-打标失败`,打标任务失败后项目状态停留在失败态;项目详情接口在失败态下返回最近失败任务错误信息,列表接口不返回完整错误。
## 实施步骤
1. 扩展项目状态常量、实体注释、状态文案和状态统计 VO新增 `TAG_FAILED = "4"``status4`
2. 修改打标失败流转:`CcdiBankTagServiceImpl.rebuildProject` 捕获异常后保留任务失败信息,并将项目状态更新为 `4`
3. 新增 `CcdiBankTagTaskMapper.selectLatestFailedTaskByProjectId`,按 `id desc limit 1` 查询项目最近失败任务。
4. 扩展 `CcdiProjectVO`,只新增 `latestTagTaskErrorMessage``latestTagTaskEndTime``getProjectById` 仅在状态为 `4` 时组装失败任务信息。
5. 补充 SQL 初始化与迁移脚本,新增 `ccdi_project_status` 字典值 `4-打标失败`,并回填未归档且最新打标任务失败的 `0/3` 项目。
6. 补充后端单测覆盖失败状态流转、详情失败信息、`status4` 统计、`4` 状态可写和 SQL/Mapper 契约。
## 验证
- 执行本次相关后端测试类。
- 执行 `mvn -pl ccdi-project -am test` 观察全量状态并记录非本次问题。

View File

@@ -0,0 +1,28 @@
# 项目打标失败状态前端实施计划
## 保存路径确认
- 前端计划:`docs/plans/frontend/2026-05-27-project-tag-failed-status-frontend-implementation.md`
- 实施记录:`docs/reports/implementation/2026-05-27-project-tag-failed-status-implementation.md`
## 目标
前端支持 `4-打标失败` 状态展示;项目列表只展示失败状态和进入项目入口;项目详情页展示失败提示,并通过详情接口字段查看完整错误。
## 实施步骤
1. 在项目列表、项目详情、历史导入状态映射中增加 `4-打标失败`,使用失败红色样式。
2.`SearchBar` 和项目首页状态统计中增加 `4` 筛选与 `status4` 计数。
3. 在项目详情页头部下方增加打标失败提示,仅当 `projectInfo.projectStatus === "4"` 且存在 `latestTagTaskErrorMessage` 时展示。
4. 详情失败提示提供完整错误弹窗,内容只使用详情接口返回的 `latestTagTaskErrorMessage``latestTagTaskEndTime`
5. 项目状态轮询在状态脱离 `3-打标中` 后停止,因此遇到 `4` 自动停止并展示失败信息。
6. `UploadData.vue``4``0-进行中` 处理:允许上传、拉取、征信导入,禁用查看报告入口。
7. `ParamConfig.vue` 维持只锁定 `3-打标中``2-已归档`,因此 `4` 状态允许保存参数并触发重新打标。
8. 补充静态单测覆盖状态映射、详情失败提示、列表不展示完整错误、筛选计数和失败态操作口径。
## 验证
- 前端命令执行前先通过 `nvm use` 切换到项目 Node 版本。
- 执行相关静态单测。
- 执行 `npm run build:prod`
- 在真实业务页面路由中验证列表和详情页显示效果,不打开 prototype 页面。