添加议价池模块

This commit is contained in:
wkc
2026-01-22 09:58:21 +08:00
parent a0fd1d0e4e
commit b3b331c86c
6 changed files with 494 additions and 1 deletions

View File

@@ -0,0 +1,100 @@
<template>
<el-card class="bargaining-pool-card">
<div slot="header" class="card-header">
<span class="card-title">议价池</span>
</div>
<el-descriptions :column="4" border size="small">
<el-descriptions-item label="网点议价池">
{{ displayBranchPool }}
</el-descriptions-item>
<el-descriptions-item label="支行议价池">
{{ displaySubBranchPool }}
</el-descriptions-item>
<el-descriptions-item label="私域池">
{{ displayPrivateDomainPool }}
</el-descriptions-item>
<el-descriptions-item label="超利分成">
{{ displayExcessProfitShare }}
</el-descriptions-item>
</el-descriptions>
</el-card>
</template>
<script>
export default {
name: "BargainingPoolDisplay",
props: {
branchPool: {
type: [Number, String],
default: 0
},
subBranchPool: {
type: [Number, String],
default: 0
},
privateDomainPool: {
type: [Number, String],
default: 0
},
excessProfitShare: {
type: [Number, String],
default: 0
}
},
computed: {
displayBranchPool() {
const value = this.branchPool
if (value === null || value === undefined || value === '') {
return '0'
}
return value
},
displaySubBranchPool() {
const value = this.subBranchPool
if (value === null || value === undefined || value === '') {
return '0'
}
return value
},
displayPrivateDomainPool() {
const value = this.privateDomainPool
if (value === null || value === undefined || value === '') {
return '0'
}
return value
},
displayExcessProfitShare() {
const value = this.excessProfitShare
if (value === null || value === undefined || value === '') {
return '0'
}
return value
}
}
}
</script>
<style lang="scss" scoped>
.bargaining-pool-card {
::v-deep .el-card__header {
padding: 16px 20px;
background-color: #fafafa;
border-bottom: 1px solid #ebeef5;
}
.card-header {
display: flex;
align-items: center;
.card-title {
font-size: 16px;
font-weight: 500;
color: #303133;
}
}
::v-deep .el-card__body {
padding: 20px;
}
}
</style>

View File

@@ -101,6 +101,14 @@
:retail-output="retailOutput"
:corp-output="corpOutput"
/>
<!-- 议价池卡片 -->
<BargainingPoolDisplay
:branch-pool="bargainingPool && bargainingPool.branchPool"
:sub-branch-pool="bargainingPool && bargainingPool.subBranchPool"
:private-domain-pool="bargainingPool && bargainingPool.privateDomainPool"
:excess-profit-share="bargainingPool && bargainingPool.excessProfitShare"
/>
</div>
</div>
</div>
@@ -109,11 +117,13 @@
<script>
import { getWorkflow } from "@/api/loanPricing/workflow"
import ModelOutputDisplay from "./components/ModelOutputDisplay.vue"
import BargainingPoolDisplay from "./components/BargainingPoolDisplay.vue"
export default {
name: "LoanPricingWorkflowDetail",
components: {
ModelOutputDisplay
ModelOutputDisplay,
BargainingPoolDisplay
},
data() {
return {
@@ -121,6 +131,7 @@ export default {
workflowDetail: null,
retailOutput: null,
corpOutput: null,
bargainingPool: null,
activeTab: 'basic'
}
},
@@ -142,6 +153,7 @@ export default {
this.workflowDetail = response.data.loanPricingWorkflow
this.retailOutput = response.data.modelRetailOutputFields
this.corpOutput = response.data.modelCorpOutputFields
this.bargainingPool = response.data.bargainingPool
this.loading = false
}).catch(error => {
this.$modal.msgError("获取流程详情失败:" + (error.message || "未知错误"))