统一个人测算入参与重启脚本进程识别
This commit is contained in:
@@ -181,7 +181,7 @@
|
||||
- 下拉选项:`consumer`、`business`
|
||||
- `loanTerm`
|
||||
- 固定年限下拉
|
||||
- 选项按 Excel 的 `1/2/3/4/5/6……` 组织
|
||||
- 选项固定为 `1/2/3/4/5/6`
|
||||
|
||||
同时修正:
|
||||
|
||||
@@ -307,12 +307,12 @@
|
||||
- 提交流程后详情页能回显 `loanPurpose`、`loanTerm`
|
||||
- 验证完成后停止本次启动的前后端进程
|
||||
|
||||
## 9. 待确认项
|
||||
## 9. 已确认项
|
||||
|
||||
- 当前代码中的 `orgCode` 默认值为 `892000`
|
||||
- `ModelInvokeDTO` 注释中写的是固定值 `931000`
|
||||
|
||||
本次设计不擅自调整该默认值,保持现有运行逻辑,待业务另行确认后再处理。
|
||||
- `orgCode` 统一为 `892000`
|
||||
- `ModelInvokeDTO` 注释已统一为 `892000`
|
||||
- 数据库 `loan_pricing_workflow.org_code` 默认值已统一为 `892000`
|
||||
- 存量 `loan_pricing_workflow.org_code` 数据已通过迁移脚本统一为 `892000`
|
||||
|
||||
## 10. 非目标
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ git commit -m "新增个人测算输入参数前端断言"
|
||||
```vue
|
||||
<el-form-item label="借款期限(年)" prop="loanTerm">
|
||||
<el-select v-model="form.loanTerm" placeholder="请选择借款期限" style="width: 100%">
|
||||
<el-option v-for="item in loanTermOptions" :key="item" :label="item" :value="item" />
|
||||
<el-option v-for="item in ['1', '2', '3', '4', '5', '6']" :key="item" :label="item" :value="item" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
```
|
||||
|
||||
@@ -32,10 +32,12 @@
|
||||
| idNum | String | 否 | 证件号码 |
|
||||
| guarType | String | 是 | 担保方式,可选值: 信用/保证/抵押/质押 |
|
||||
| applyAmt | String | 是 | 申请金额,单位: 元 |
|
||||
| bizProof | String | 否 | 是否有经营佐证,值: true/false |
|
||||
| loanLoop | String | 否 | 循环功能,值: true/false |
|
||||
| collType | String | 否 | 抵质押类型,可选值: 一线/一类/二类 |
|
||||
| collThirdParty | String | 否 | 抵质押物是否三方所有,值: true/false |
|
||||
| loanPurpose | String | 是 | 贷款用途,可选值: consumer/business |
|
||||
| loanTerm | String | 是 | 借款期限(年),固定下拉选项按模型文档配置 |
|
||||
| bizProof | String | 否 | 是否有经营佐证,值: 0/1 |
|
||||
| loanLoop | String | 否 | 循环功能,值: 0/1 |
|
||||
| collType | String | 否 | 抵质押类型,可选值: 一类/二类/三类 |
|
||||
| collThirdParty | String | 否 | 抵质押物是否三方所有,值: 0/1 |
|
||||
|
||||
**请求示例:**
|
||||
|
||||
@@ -47,10 +49,12 @@
|
||||
"idNum": "110101199001011234",
|
||||
"guarType": "抵押",
|
||||
"applyAmt": "500000",
|
||||
"bizProof": "true",
|
||||
"loanLoop": "false",
|
||||
"loanPurpose": "business",
|
||||
"loanTerm": "3",
|
||||
"bizProof": "1",
|
||||
"loanLoop": "0",
|
||||
"collType": "一类",
|
||||
"collThirdParty": "false"
|
||||
"collThirdParty": "0"
|
||||
}
|
||||
```
|
||||
|
||||
@@ -64,12 +68,14 @@
|
||||
"id": 1,
|
||||
"modelOutputId": 100,
|
||||
"serialNum": "20250119143025123",
|
||||
"orgCode": "931000",
|
||||
"orgCode": "892000",
|
||||
"runType": "1",
|
||||
"custIsn": "CUST001",
|
||||
"custType": "个人",
|
||||
"guarType": "抵押",
|
||||
"applyAmt": "500000",
|
||||
"loanPurpose": "business",
|
||||
"loanTerm": "3",
|
||||
"custName": "张三",
|
||||
"idType": "身份证",
|
||||
"createTime": "2025-01-19 14:30:25",
|
||||
@@ -136,7 +142,7 @@
|
||||
"id": 2,
|
||||
"modelOutputId": 101,
|
||||
"serialNum": "20250119143125456",
|
||||
"orgCode": "931000",
|
||||
"orgCode": "892000",
|
||||
"runType": "1",
|
||||
"custIsn": "CORP001",
|
||||
"custType": "企业",
|
||||
@@ -189,7 +195,7 @@ GET /loanPricing/workflow/list?pageNum=1&pageSize=10&custName=科技
|
||||
"id": 1,
|
||||
"modelOutputId": 100,
|
||||
"serialNum": "20250119143025123",
|
||||
"orgCode": "931000",
|
||||
"orgCode": "892000",
|
||||
"custIsn": "CUST001",
|
||||
"custType": "企业",
|
||||
"guarType": "抵押",
|
||||
@@ -240,7 +246,7 @@ GET /loanPricing/workflow/20250119143025123
|
||||
"id": 1,
|
||||
"modelOutputId": 100,
|
||||
"serialNum": "20250119143025123",
|
||||
"orgCode": "931000",
|
||||
"orgCode": "892000",
|
||||
"runType": "1",
|
||||
"custIsn": "CUST001",
|
||||
"custType": "企业",
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
# 2026-04-09 默认切换 Node 25 以支持 Playwright 实施记录
|
||||
|
||||
## 变更内容
|
||||
- 将 `nvm` 默认别名从 `14` 调整为 `25`
|
||||
- 清理了本次验证过程中残留的 Playwright 浏览器安装进程
|
||||
|
||||
## 执行命令
|
||||
- `zsh -lic 'nvm alias default 25'`
|
||||
|
||||
## 变更结果
|
||||
- 新开的交互式 `zsh` 默认 Node 版本变为 `v25.9.0`
|
||||
- 默认 npm/npx 版本变为 `11.12.1`
|
||||
|
||||
## 验证结果
|
||||
- `zsh -lic 'node -v && npm -v && npx -v && nvm current && nvm alias default'`
|
||||
- `node v25.9.0`
|
||||
- `npm 11.12.1`
|
||||
- `npx 11.12.1`
|
||||
- `nvm current = v25.9.0`
|
||||
- `default -> 25 (-> v25.9.0 *)`
|
||||
- `zsh -lic '... playwright_cli.sh --help'`
|
||||
- Playwright CLI 帮助输出正常
|
||||
- `zsh -lic '... playwright_cli.sh --session verify-default-25 open https://example.com && snapshot && close && list'`
|
||||
- 页面成功打开
|
||||
- 页面标题为 `Example Domain`
|
||||
- 快照成功输出
|
||||
- 浏览器关闭后 `list` 返回 `(no browsers)`
|
||||
|
||||
## 结论
|
||||
- 默认 shell 环境下已可直接使用 Playwright,无需再先手动执行 `nvm use 25`
|
||||
@@ -0,0 +1,30 @@
|
||||
# 2026-04-09 安装 Node 25 与 Node 14 实施记录
|
||||
|
||||
## 变更内容
|
||||
- 使用 `nvm` 安装 `node v25.9.0`
|
||||
- 使用 `nvm` 安装 `node v14.21.3`
|
||||
- 调整 `/Users/wkc/.npmrc`,删除与 `nvm` 冲突的 `prefix=~/.npm-global`
|
||||
- 保留 npm 镜像配置:`registry=https://registry.npmmirror.com`
|
||||
|
||||
## 处理过程
|
||||
- `node 25` 通过 `nvm` 正常安装成功
|
||||
- `node 14` 在 Apple Silicon 原生环境下无法直接下载 `darwin-arm64` 安装包
|
||||
- 原生源码编译 `node 14` 失败,错误来自当前 macOS Command Line Tools/SDK 与旧版 `node 14` 源码不兼容
|
||||
- 改为通过 Rosetta 以 `x64` 方式安装 `node 14`,安装成功
|
||||
|
||||
## 验证结果
|
||||
- `zsh -lic 'nvm use 25 && node -v && npm -v'` 验证结果:
|
||||
- `node v25.9.0`
|
||||
- `npm 11.12.1`
|
||||
- `zsh -lic 'nvm use 14 && node -v && npm -v'` 验证结果:
|
||||
- `node v14.21.3`
|
||||
- `npm 6.14.18`
|
||||
- `arch -x86_64 /bin/zsh -lic 'nvm use 14 && node -v && npm -v'` 验证结果:
|
||||
- `node v14.21.3`
|
||||
- `npm 6.14.18`
|
||||
- 新开的交互式 `zsh` 默认版本:
|
||||
- `node v14.21.3`
|
||||
- `npm 6.14.18`
|
||||
|
||||
## 备注
|
||||
- `nvm` 当前默认别名已指向 `14`
|
||||
@@ -0,0 +1,25 @@
|
||||
# 2026-04-09 Node 卸载与 nvm 安装实施记录
|
||||
|
||||
## 变更内容
|
||||
- 卸载了 Homebrew 安装的 `node 25.8.1_1`
|
||||
- 删除了本地目录 `/Users/wkc/.local/node-v14.21.3-darwin-x64`
|
||||
- 更新了 `/Users/wkc/.zshrc`
|
||||
- 安装了 `nvm 0.40.4`
|
||||
|
||||
## shell 配置调整
|
||||
- 删除旧配置:`export PATH="/Users/wkc/.local/node-v14.21.3-darwin-x64/bin:$PATH"`
|
||||
- 新增 `nvm` 初始化配置:
|
||||
|
||||
```sh
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
[ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh"
|
||||
[ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm"
|
||||
```
|
||||
|
||||
## 验证结果
|
||||
- 交互式 `zsh` 下 `nvm --version` 返回 `0.40.4`
|
||||
- `node` 命令已不存在,说明当前环境中已无非 `nvm` 管理的 Node 版本
|
||||
- `nvm ls` 返回 `N/A`,说明尚未通过 `nvm` 安装任何 Node 版本
|
||||
|
||||
## 备注
|
||||
- `brew uninstall node` 过程中触发了 Homebrew 自动移除若干仅供该版本 Node 使用的依赖库
|
||||
@@ -0,0 +1,25 @@
|
||||
# 证件输入校验移除实施记录
|
||||
|
||||
## 实施时间
|
||||
- 2026-04-09
|
||||
|
||||
## 修改内容
|
||||
- 移除个人新增弹窗中的证件号码格式校验
|
||||
- 移除企业新增弹窗中的证件号码格式校验
|
||||
- 两个新增弹窗的证件号码规则统一保留为必填校验
|
||||
- 新增前端源码断言,约束后续不再恢复证件号码格式校验
|
||||
|
||||
## 修改文件
|
||||
- `ruoyi-ui/src/views/loanPricing/workflow/components/PersonalCreateDialog.vue`
|
||||
- `ruoyi-ui/src/views/loanPricing/workflow/components/CorporateCreateDialog.vue`
|
||||
- `ruoyi-ui/tests/id-number-validation-removal.test.js`
|
||||
- `ruoyi-ui/package.json`
|
||||
- `doc/implementation-report-2026-04-09-remove-id-number-validation.md`
|
||||
|
||||
## 验证方式
|
||||
1. `npm --prefix ruoyi-ui run test:id-number-validation-removal`
|
||||
2. `npm --prefix ruoyi-ui run build:prod`
|
||||
|
||||
## 说明
|
||||
- 本次移除的是前端证件号码格式校验,不影响证件号码必填约束
|
||||
- 后端本次未新增或调整证件号码格式校验逻辑
|
||||
@@ -0,0 +1,93 @@
|
||||
# 上虞个人利率测算输入参数对齐实施记录
|
||||
|
||||
## 实施时间
|
||||
- 2026-04-09
|
||||
|
||||
## 修改内容
|
||||
- 个人新增弹窗补齐 `loanPurpose`、`loanTerm`
|
||||
- 个人新增弹窗 `loanTerm` 固定为 `1-6` 年
|
||||
- 个人新增弹窗 `collType` 选项统一为 `一类/二类/三类`
|
||||
- 个人新增弹窗开关字段提交值由 `true/false` 调整为 `1/0`
|
||||
- 个人详情页补齐 `贷款用途` 展示
|
||||
- 个人与企业详情、模型输出布尔展示兼容 `1/0`
|
||||
- 后端个人创建 DTO 补齐 `loanPurpose`、`loanTerm`
|
||||
- 后端个人 DTO 到流程实体映射补齐 `loanPurpose`、`loanTerm`
|
||||
- 后端模型调用 DTO 补齐 `loanTerm`、`loanLoop`
|
||||
- 后端个人模型调用前统一将 `bizProof`、`loanLoop`、`collThirdParty` 规范为 `0/1`
|
||||
- `orgCode` 统一为 `892000`
|
||||
- `ModelInvokeDTO` 注释、接口文档、SQL 基线和迁移脚本同步统一为 `892000`
|
||||
- 新增前端源码断言与后端单元测试
|
||||
|
||||
## 修改文件
|
||||
- `ruoyi-ui/src/views/loanPricing/workflow/components/PersonalCreateDialog.vue`
|
||||
- `ruoyi-ui/src/views/loanPricing/workflow/components/PersonalWorkflowDetail.vue`
|
||||
- `ruoyi-ui/src/views/loanPricing/workflow/components/ModelOutputDisplay.vue`
|
||||
- `ruoyi-ui/src/views/loanPricing/workflow/components/CorporateWorkflowDetail.vue`
|
||||
- `ruoyi-ui/src/views/loanPricing/workflow/components/CorporateCreateDialog.vue`
|
||||
- `ruoyi-ui/tests/personal-create-input-params.test.js`
|
||||
- `ruoyi-ui/package.json`
|
||||
- `ruoyi-loan-pricing/src/main/java/com/ruoyi/loanpricing/domain/dto/PersonalLoanPricingCreateDTO.java`
|
||||
- `ruoyi-loan-pricing/src/main/java/com/ruoyi/loanpricing/domain/dto/ModelInvokeDTO.java`
|
||||
- `ruoyi-loan-pricing/src/main/java/com/ruoyi/loanpricing/util/LoanPricingConverter.java`
|
||||
- `ruoyi-loan-pricing/src/main/java/com/ruoyi/loanpricing/service/LoanPricingModelService.java`
|
||||
- `ruoyi-loan-pricing/src/test/java/com/ruoyi/loanpricing/service/LoanPricingModelServicePersonalParamsTest.java`
|
||||
- `doc/api/loan-pricing-workflow-api.md`
|
||||
- `sql/loan_pricing_workflow.sql`
|
||||
- `sql/loan_pricing_schema_20260328.sql`
|
||||
- `sql/loan_pricing_prod_init_20260331.sql`
|
||||
- `sql/fix_comments.sql`
|
||||
- `sql/fix_all_comments.sql`
|
||||
- `sql/update_org_code_default_20260409.sql`
|
||||
- `doc/2026-04-09-shangyu-retail-input-params-design.md`
|
||||
- `doc/2026-04-09-shangyu-retail-input-params-frontend-plan.md`
|
||||
- `doc/implementation-report-2026-04-09-shangyu-retail-input-params.md`
|
||||
|
||||
## 数据库处理
|
||||
1. 执行 `sql/update_org_code_default_20260409.sql`
|
||||
2. 将 `loan_pricing_workflow.org_code` 默认值修改为 `892000`
|
||||
3. 将存量 `loan_pricing_workflow.org_code` 非 `892000` 的记录统一更新为 `892000`
|
||||
|
||||
## 验证方式
|
||||
1. 前端源码断言:
|
||||
- `npm --prefix ruoyi-ui run test:personal-create-input-params`
|
||||
- `npm --prefix ruoyi-ui run test:retail-display-fields`
|
||||
2. 后端单元测试:
|
||||
- `mvn -pl ruoyi-loan-pricing -Dtest=LoanPricingModelServiceTest,LoanPricingModelServicePersonalParamsTest test`
|
||||
3. 前端构建:
|
||||
- `npm --prefix ruoyi-ui run build:prod`
|
||||
4. 数据库验证:
|
||||
- 查询 `loan_pricing_workflow.org_code` 字段默认值
|
||||
- 查询存量数据中是否仍存在非 `892000` 记录
|
||||
5. 接口验证:
|
||||
- `/login/test` 获取 token
|
||||
- `POST /loanPricing/workflow/create/personal` 正常场景
|
||||
- `POST /loanPricing/workflow/create/personal` 缺少 `loanPurpose` 场景
|
||||
- `POST /loanPricing/workflow/create/personal` 分支值场景
|
||||
- `GET /loanPricing/workflow/{serialNum}` 验证回显
|
||||
6. 页面验证:
|
||||
- 启动前端 dev server
|
||||
- 使用浏览器打开流程列表页
|
||||
- 校验新增弹窗下拉选项
|
||||
- 页面创建个人流程并打开详情页确认回显
|
||||
|
||||
## 验证结果
|
||||
- `npm --prefix ruoyi-ui run test:personal-create-input-params` 通过
|
||||
- `npm --prefix ruoyi-ui run test:retail-display-fields` 通过
|
||||
- `mvn -pl ruoyi-loan-pricing -Dtest=LoanPricingModelServiceTest,LoanPricingModelServicePersonalParamsTest test` 通过
|
||||
- `npm --prefix ruoyi-ui run build:prod` 通过,输出 `Build complete.`
|
||||
- 数据库验证结果:
|
||||
- `loan_pricing_workflow.org_code` 默认值为 `892000`
|
||||
- 存量非 `892000` 记录数为 `0`
|
||||
- 接口验证结果:
|
||||
- 正常场景创建成功,返回 `orgCode=892000`,并持久化 `loanPurpose`、`loanTerm`
|
||||
- 缺少 `loanPurpose` 时返回 `贷款用途不能为空`
|
||||
- 分支场景详情回显 `bizProof=0`、`loanLoop=1`、`collThirdParty=0`
|
||||
- 页面验证结果:
|
||||
- 新增弹窗显示 `贷款用途`
|
||||
- 借款期限下拉仅包含 `1-6`
|
||||
- 抵质押类型下拉为 `一类/二类/三类`
|
||||
- 页面创建流程成功后,详情页展示 `贷款用途=经营`、`借款期限=6`
|
||||
|
||||
## 说明
|
||||
- 浏览器验证使用系统 `Google Chrome.app`
|
||||
- 本次验证期间启动的后端、前端和浏览器进程已在任务结束前关闭
|
||||
26
doc/implementation-report-2026-04-09-start-script-ps-ef.md
Normal file
26
doc/implementation-report-2026-04-09-start-script-ps-ef.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# 启动脚本进程判断改为 ps -ef 实施记录
|
||||
|
||||
## 修改内容
|
||||
|
||||
- 将 `bin/prod/restart_java.sh` 中的后端进程收集逻辑由 `pgrep -f` 改为 `ps -ef | awk`
|
||||
- 将 `bin/restart_java_backend.sh` 中的后端进程收集逻辑由 `pgrep -f` 改为 `ps -ef | awk`
|
||||
- 删除 `bin/restart_java_backend.sh` 中对 `pgrep` 命令的依赖校验
|
||||
- 更新 `bin/prod/restart_java_test.sh`,补充 `ps -ef` / `pgrep` 约束校验,并修正测试夹具中的 JDK 目录
|
||||
- 新增 `bin/restart_java_backend_test.sh`,校验本地后端重启脚本已改用 `ps -ef`
|
||||
|
||||
## 实现说明
|
||||
|
||||
- 两份脚本都只在 `ps -ef` 结果中匹配同时满足“包含脚本标记参数”和“`-jar` 指向目标 jar”这两个条件的 Java 进程
|
||||
- 进程筛选时继续忽略 `<defunct>` 记录,避免误判僵尸进程
|
||||
- 现有 PID 文件校验逻辑保持不变,本次只收敛“扫描当前是否已有进程”的实现方式
|
||||
|
||||
## 路径检查
|
||||
|
||||
- 已确认本次实施记录保存路径为 `doc/implementation-report-2026-04-09-start-script-ps-ef.md`
|
||||
|
||||
## 验证结果
|
||||
|
||||
- 已执行 `sh bin/prod/restart_java_test.sh`
|
||||
- 已执行 `sh bin/restart_java_backend_test.sh`
|
||||
- 已执行 `sh -n bin/prod/restart_java.sh && sh -n bin/restart_java_backend.sh`
|
||||
- 已确认测试中拉起的假 Java 进程在脚本收尾阶段自动停止并清理
|
||||
@@ -0,0 +1,37 @@
|
||||
# 2026-04-10 登录 Shell 默认使用 Node 25 实施记录
|
||||
|
||||
## 变更内容
|
||||
- 保持 `nvm` 默认别名为 `25`
|
||||
- 在 `~/.zprofile` 中补充 `nvm` 初始化,并在登录 shell 启动时自动执行 `nvm use default`
|
||||
|
||||
## 根因分析
|
||||
- `nvm alias default 25` 已经存在,但仅在交互式 shell 中可用
|
||||
- `zsh -lc` 启动的是登录非交互 shell,不会读取 `~/.zshrc`
|
||||
- 因此这类场景下 `node`、`npm`、`npx` 未进入 PATH,表现为 `npx` 启动失败
|
||||
|
||||
## 修改文件
|
||||
- `~/.zprofile`
|
||||
- `doc/implementation-report-2026-04-10-login-shell-default-node25.md`
|
||||
|
||||
## 验证项
|
||||
- 验证登录 shell 在不手动执行 `nvm use` 的情况下可直接识别 `node`
|
||||
- 验证登录 shell 在不手动执行 `nvm use` 的情况下可直接识别 `npx`
|
||||
- 验证 `nvm` 默认别名仍然指向 `25`
|
||||
|
||||
## 执行命令
|
||||
- `zsh -lc 'nvm alias default 25'`
|
||||
- `zsh -lc 'echo NODE=$(node -v); echo NPM=$(npm -v); echo NPX=$(npx -v); echo NODE_PATH=$(command -v node); echo NPX_PATH=$(command -v npx); echo NVM_CURRENT=$(nvm current); echo NVM_ALIAS=$(nvm alias default | tail -n 1)'`
|
||||
|
||||
## 验证结果
|
||||
- `nvm` 默认别名输出为 `default -> 25 (-> v25.9.0 *)`
|
||||
- 登录 shell 输出 `NODE=v25.9.0`
|
||||
- 登录 shell 输出 `NPM=11.12.1`
|
||||
- 登录 shell 输出 `NPX=11.12.1`
|
||||
- 登录 shell 输出 `NODE_PATH=/Users/wkc/.nvm/versions/node/v25.9.0/bin/node`
|
||||
- 登录 shell 输出 `NPX_PATH=/Users/wkc/.nvm/versions/node/v25.9.0/bin/npx`
|
||||
- 登录 shell 输出 `NVM_CURRENT=v25.9.0`
|
||||
- 登录 shell 输出 `NVM_ALIAS=default -> 25 (-> v25.9.0 *)`
|
||||
|
||||
## 结论
|
||||
- `zsh -lc` 场景下已默认切换到 Node `25.9.0`
|
||||
- `npx` 在登录 shell 中已可直接使用,无需先手动执行 `nvm use 25`
|
||||
BIN
doc/~$上虞利率测算接口文档.xlsx
Normal file
BIN
doc/~$上虞利率测算接口文档.xlsx
Normal file
Binary file not shown.
BIN
doc/上虞利率测算接口文档.xlsx
Normal file
BIN
doc/上虞利率测算接口文档.xlsx
Normal file
Binary file not shown.
Reference in New Issue
Block a user