diff --git a/doc/2026-04-15-流程详情模型输出平铺展示前端实施记录.md b/doc/2026-04-15-流程详情模型输出平铺展示前端实施记录.md
new file mode 100644
index 0000000..91a9ea7
--- /dev/null
+++ b/doc/2026-04-15-流程详情模型输出平铺展示前端实施记录.md
@@ -0,0 +1,21 @@
+# 流程详情模型输出平铺展示前端实施记录
+
+## 变更日期
+- 2026-04-15
+
+## 变更范围
+- 前端页面:`ruoyi-ui/src/views/loanPricing/workflow/components/ModelOutputDisplay.vue`
+
+## 实施内容
+- 将流程详情页“模型输出”区域的 `tab` 切换结构改为按分组顺序平铺展示。
+- 按页面最新要求调整分组顺序,当前展示顺序为“基本信息”在前,“测算结果”紧跟其后。
+- 保留个人客户、企业客户原有字段、分组顺序和格式化逻辑,不调整接口入参、出参和父组件传值。
+- 移除仅用于 tab 默认选中的本地状态与监听逻辑,简化组件展示职责。
+
+## 影响说明
+- 本次仅涉及前端展示层,不涉及后端接口、数据库脚本和业务计算逻辑。
+- 用户进入流程详情页后,可直接连续查看全部模型输出内容,无需逐个切换页签。
+
+## 验证计划
+- 使用项目既有 Node 环境执行前端生产构建,确认编译通过。
+- 本地打开流程详情页,检查个人客户与企业客户两类模型输出均按分组平铺展示。
diff --git a/ruoyi-ui/src/views/loanPricing/workflow/components/ModelOutputDisplay.vue b/ruoyi-ui/src/views/loanPricing/workflow/components/ModelOutputDisplay.vue
index 4aa649d..efb725b 100644
--- a/ruoyi-ui/src/views/loanPricing/workflow/components/ModelOutputDisplay.vue
+++ b/ruoyi-ui/src/views/loanPricing/workflow/components/ModelOutputDisplay.vue
@@ -3,11 +3,11 @@
-
+
-
-
+
+
基本信息
{{ retailOutput.custIsn || '-' }}
{{ retailOutput.custName || '-' }}
@@ -15,10 +15,23 @@
{{ retailOutput.idNum || '-' }}
{{ retailOutput.baseLoanRate || '-' }} %
-
+
-
-
+
+
测算结果
+
+ {{ retailOutput.totalBp || '-' }}
+ {{ retailOutput.calculateRate || '-' }} %
+ {{ retailOutput.loanRateHistory || '-' }}
+ {{ retailOutput.minRateProduct || '-' }}
+ {{ retailOutput.smoothRange || '-' }}
+ {{ retailOutput.finalCalculateRate || '-' }} %
+ {{ retailOutput.referenceRate || '-' }} %
+
+
+
+
+
忠诚度分析
{{ formatBoolean(retailOutput.isFirstLoan) }}
{{ retailOutput.faithDay || '-' }}
@@ -28,20 +41,20 @@
{{ retailOutput.bpAge || '-' }}
{{ retailOutput.totalBpLoyalty || '-' }}
-
+
-
-
+
+
贡献度分析
{{ retailOutput.balanceAvg || '-' }}
{{ retailOutput.loanAvg || '-' }}
{{ retailOutput.derivationRate || '-' }}
{{ retailOutput.totalBpContribution || '-' }}
-
+
-
-
+
+
关联度分析
{{ formatBoolean(retailOutput.midPerCard) }}
{{ formatBoolean(retailOutput.midPerPass) }}
@@ -58,10 +71,10 @@
{{ retailOutput.bpMid || '-' }}
{{ retailOutput.totoalBpRelevance || '-' }}
-
+
-
-
+
+
贷款特征
{{ retailOutput.applyAmt || '-' }}
{{ retailOutput.bpLoanAmount || '-' }}
@@ -74,10 +87,10 @@
{{ formatBoolean(retailOutput.collThirdParty) }}
{{ retailOutput.bpCollateral || '-' }}
-
+
-
-
+
+
风险度分析
{{ formatBoolean(retailOutput.greyCust) }}
{{ formatBoolean(retailOutput.prinOverdue) }}
@@ -86,26 +99,14 @@
{{ retailOutput.bpGreyOverdue || '-' }}
{{ retailOutput.totoalBpRisk || '-' }}
-
+
-
-
-
- {{ retailOutput.totalBp || '-' }}
- {{ retailOutput.calculateRate || '-' }} %
- {{ retailOutput.loanRateHistory || '-' }}
- {{ retailOutput.minRateProduct || '-' }}
- {{ retailOutput.smoothRange || '-' }}
- {{ retailOutput.finalCalculateRate || '-' }} %
- {{ retailOutput.referenceRate || '-' }} %
-
-
-
-
+
+
基本信息
{{ corpOutput.custIsn || '-' }}
{{ corpOutput.custName || '-' }}
@@ -113,10 +114,18 @@
{{ corpOutput.idNum || '-' }}
{{ corpOutput.baseLoanRate || '-' }} %
-
+
-
-
+
+
测算结果
+
+ {{ corpOutput.totalBp || '-' }}
+ {{ corpOutput.calculateRate || '-' }} %
+
+
+
+
+
忠诚度分析
{{ formatBoolean(corpOutput.isFirstLoan) }}
{{ corpOutput.faithDay || '-' }}
@@ -124,20 +133,20 @@
{{ corpOutput.bpAgeLoan || '-' }}
{{ corpOutput.totalBpLoyalty || '-' }}
-
+
-
-
+
+
贡献度分析
{{ corpOutput.balanceAvg || '-' }}
{{ corpOutput.loanAvg || '-' }}
{{ corpOutput.derivationRate || '-' }}
{{ corpOutput.totalBpContribution || '-' }}
-
+
-
-
+
+
关联度分析
{{ formatBoolean(corpOutput.midEntConnect) }}
{{ formatBoolean(corpOutput.midEntEffect) }}
@@ -153,10 +162,10 @@
{{ corpOutput.bpPayroll || '-' }}
{{ corpOutput.totoalBpRelevance || '-' }}
-
+
-
-
+
+
企业类别
{{ formatBoolean(corpOutput.isCleanEnt) }}
{{ formatBoolean(corpOutput.hasSettleAcct) }}
@@ -165,10 +174,10 @@
{{ formatBoolean(corpOutput.isTechEnt) }}
{{ corpOutput.bpEntType || '-' }}
-
+
-
-
+
+
贷款特征
{{ corpOutput.loanTerm || '-' }}
{{ corpOutput.bpLoanTerm || '-' }}
@@ -178,10 +187,10 @@
{{ formatBoolean(corpOutput.collThirdParty) }}
{{ corpOutput.bpCollateral || '-' }}
-
+
-
-
+
+
风险度分析
{{ formatBoolean(corpOutput.greyCust) }}
{{ formatBoolean(corpOutput.prinOverdue) }}
@@ -190,17 +199,10 @@
{{ corpOutput.bpGreyOverdue || '-' }}
{{ corpOutput.totoalBpRisk || '-' }}
-
+
-
-
-
- {{ corpOutput.totalBp || '-' }}
- {{ corpOutput.calculateRate || '-' }} %
-
-
-
+
@@ -221,24 +223,6 @@ export default {
default: null
}
},
- data() {
- return {
- activeTab: ''
- }
- },
- watch: {
- custType: {
- immediate: true,
- handler(val) {
- // 根据客户类型设置默认 tab
- if (val === '个人') {
- this.activeTab = 'retail-basic'
- } else if (val === '企业') {
- this.activeTab = 'corp-basic'
- }
- }
- }
- },
methods: {
/** 格式化布尔值为中文 */
formatBoolean(value) {
@@ -279,8 +263,20 @@ export default {
padding: 20px;
}
- ::v-deep .el-tabs__header {
- margin-bottom: 20px;
+ .model-output-sections {
+ display: flex;
+ flex-direction: column;
+ gap: 20px;
+ }
+
+ .model-section {
+ .section-title {
+ margin: 0 0 12px;
+ font-size: 15px;
+ font-weight: 500;
+ color: #303133;
+ line-height: 1.4;
+ }
}
// BP 值样式