Files
ccdi/docs/reports/implementation/2026-07-02-increase-lending-query-implementation.md
2026-07-03 10:01:17 +08:00

35 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 新增贷款查询模块实施记录
## 本次修改
- 在项目专项排查后端新增“新增贷款查询”分页接口。
- 新增查询 DTO 与列表 VO返回员工信息、合同编号、借款人、贷款产品、合同金额、当前余额、发放日期、到期日期、合同状态、五级分类等字段。
- 柜员号查询直接精确匹配 `ccdi_increase_lending.customer_manager_id`,员工身份证查询通过 `ccdi_base_staff.id_card` 精确过滤,审核人柜员号查询直接精确匹配 `ccdi_increase_lending.approver`,并支持按贷款发放日期范围过滤。
- 前后端均限制柜员号、员工身份证和审核人柜员号至少填写一项,避免默认展开大列表。
- 新增“新增贷款查询”导出接口与 Excel 导出对象,按当前单人查询条件导出全部匹配贷款明细,不受表格分页页码限制。
- 在前端专项排查页面新增 `IncreaseLendingSection`,放置于资金流向图谱下方、拓展查询上方。
- 新增柜员号、员工身份证、审核人柜员号与发放日期筛选框;默认展示空表头,点击查询后加载分页贷款列表,并支持导出当前查询结果。
## 影响范围
- 后端:`ccdi-project` 模块项目专项排查接口。
- 前端:`ruoyi-ui` 项目详情专项排查页面。
- 数据库:不新增或修改表结构,依赖既有 `ccdi_increase_lending` 表。
## 验证情况
- 后端执行 `mvn -pl ccdi-project -DskipTests compile`,编译被既有 `CcdiFileUploadServiceImpl` 调用 `LsfxAnalysisClient.uploadFile(Integer, File, String)` 与当前客户端方法签名 `uploadFile(Integer, File)` 不一致阻塞;阻塞点不在本次新增贷款查询改动范围内。
- 前端执行 `npm run build:prod` 成功,存在既有资源体积告警;已覆盖“默认不展示结果表、输入柜员号或员工身份证查询后展开列表”的交互调整。
- 当前数据库 `ccdi_increase_lending` 已存在 6 条演示数据,柜员号为 `9021001``9021006`
- 早期联调用本地 mock 验证过页面交互;最终验收以真实 Java 后端 `62318` 为准。
- 按项目要求执行 `nvm use` 时,由于未指定版本返回“缺少版本参数”;随后使用当前 Node `v22.22.3`、npm `10.9.8` 执行 `npm run build:prod` 通过。
- 真实页面浏览器自动化检查受本地 Node/npm 环境限制未复跑;本地 8080 前端服务已存在,可刷新页面手工验证。
- 后续调整柜员号口径:`customer_manager_id` 已由模糊匹配改为精确匹配,前端不做 7 位格式提示,输入半截柜员号自然无结果。
- 审核人字段口径:当前按 `approver` 精确匹配“审核人柜员号”,字段为空时查询自然无结果;后续数据入库后无需改代码即可按审核人柜员号联动查询和导出。
- 后端验证:`mvn -pl ruoyi-admin -am -DskipTests compile``mvn -pl ruoyi-admin -am clean package -DskipTests` 均通过;真实后端已在 `62318` 启动,未登录直接访问业务接口返回 `401`,说明当前端口已由 Java 后端接管。
- 提交前检查:当前 `dev-ui` 可继续提交本次功能;但 `dev``dev-ui` 之间已有大量历史冲突,后续直接合入 `dev` 需要单独解决冲突,不能视为无冲突直合。
- 本次收紧单人查询:员工身份证条件同步改为精确匹配;真实接口验证 `projectId=90337&staffId=9021001` 返回 `total=1``staffId/customerManagerId` 均为 `9021001``staffId=902100` 返回 `total=0`
- 新增导出验证:真实接口 `projectId=90337&staffId=9021001` 导出 Excel 成功,文件 sheet 为“新增贷款查询”,表头包含“审批人”,导出 1 行贷款明细。
- 审核人柜员号验证:当前 `approver` 字段缺少有效数据,真实接口 `projectId=90337&approver=9021001` 返回 `total=0`;后续 `approver` 有柜员号数据后可直接联动查询和导出。
-`.nvmrc` 执行 `nvm use 14.21.3` 后,本地 nvm 目录缺少 `npm.cmd`,无法用 Node 14 启动前端构建;改用本机可用的 Node `v22.22.3` / npm `10.9.8` 执行 `npm run build:prod` 通过,存在既有资源体积告警。