Browse Source

完善交回车辆二次销售

master
yunuo970428 1 year ago
parent
commit
e5e898dc8a
  1. 36
      anrui-riskcenter-ui/src/api/secondarysales/secondarysales.js
  2. 44
      anrui-riskcenter-ui/src/router/index.js
  3. 84
      anrui-riskcenter-ui/src/views/secondarysales/secondarysales.vue
  4. 469
      anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue
  5. 470
      anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue
  6. 709
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue
  7. 694
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue
  8. 651
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue
  9. 478
      anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue

36
anrui-riskcenter-ui/src/api/secondarysales/secondarysales.js

@ -4,7 +4,7 @@ export default {
// 查询分页列表
listPage: function(params) {
return request({
url: '/riskcenter/v1/loansubletapply/listPage',
url: '/riskcenter/v1/LoanSecondarySalesApply/listPage',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
@ -20,29 +20,23 @@ export default {
},
saveOrUpdate: function(data) {
return request({
url: '/riskcenter/v1/loansubletapply/saveSublet',
url: '/riskcenter/v1/LoanSecondarySalesApply/saveOrUpdate',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
})
},
init: function(data) {
return request({
url: '/riskcenter/v1/loansubletapply/subletInit',
method: 'get',
params: data
})
},
fetchBySid: function(data) {
return request({
url: '/riskcenter/v1/loansubletapply/subletDetails',
method: 'get',
params: data
url: '/riskcenter/v1/LoanSecondarySalesApply/details',
method: 'POST',
data: data,
headers: { 'Content-Type': 'application/json' }
})
},
deleteBySids: function(data) {
return request({
url: '/riskcenter/v1/loansubletapply/deleteBySids',
url: '/riskcenter/v1/LoanSecondarySalesApply/delBySids',
method: 'DELETE',
data: data,
headers: { 'Content-Type': 'application/json' }
@ -59,7 +53,7 @@ export default {
// 提交流程
submit: function(params) {
return request({
url: '/riskcenter/v1/loansubletapply/submit',
url: '/riskcenter/v1/LoanSecondarySalesApply/submitApply',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
@ -68,7 +62,7 @@ export default {
// 流程审批(同意)
complete: function(params) {
return request({
url: '/riskcenter/v1/loansubletapply/complete',
url: '/riskcenter/v1/LoanSecondarySalesApply/complete',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
@ -77,7 +71,7 @@ export default {
// 流程审批(加签)
delegate: function(params) {
return request({
url: '/riskcenter/v1/loansubletapply/delegate',
url: '/riskcenter/v1/LoanSecondarySalesApply/delegate',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
@ -86,7 +80,7 @@ export default {
// 流程审批(驳回)
reject: function(params) {
return request({
url: '/riskcenter/v1/loansubletapply/reject',
url: '/riskcenter/v1/LoanSecondarySalesApply/reject',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
@ -95,7 +89,7 @@ export default {
// 流程审批(终止)
breakProcess: function(params) {
return request({
url: '/riskcenter/v1/loansubletapply/breakProcess',
url: '/riskcenter/v1/LoanSecondarySalesApply/breakProcess',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
@ -104,7 +98,7 @@ export default {
// 流程审批(撤回)
revokeProcess: function(params) {
return request({
url: '/riskcenter/v1/loansubletapply/revokeProcess',
url: '/riskcenter/v1/LoanSecondarySalesApply/revokeProcess',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
@ -113,7 +107,7 @@ export default {
// 审批流程(同意)获取下一环节
getNextNodesForSubmit: function(data) {
return request({
url: '/riskcenter/v1/loansubletapply/getNextNodesForSubmit',
url: '/riskcenter/v1/LoanSecondarySalesApply/getNextNodesForSubmit',
method: 'get',
params: data
})
@ -121,7 +115,7 @@ export default {
// 审批流程(驳回)获取上一环节
getPreviousNodesForReject: function(data) {
return request({
url: '/riskcenter/v1/loansubletapply/getPreviousNodesForReject',
url: '/riskcenter/v1/LoanSecondarySalesApply/getPreviousNodesForReject',
method: 'get',
params: data
})

44
anrui-riskcenter-ui/src/router/index.js

@ -631,6 +631,22 @@ export const constantRoutes = [
}
]
},
{
path: '/secondarysales',
component: Layout,
redirect: '/secondarysales',
meta: {
title: '交回车辆二次销售'
},
children: [
{
path: '/secondarysales/secondarysales',
component: () => import('@/views/secondarysales/secondarysales.vue'),
name: 'SecondarySales',
meta: { title: '交回车辆二次销售', noCache: true }
}
]
},
{
path: '/secondarysublet',
component: Layout,
@ -1060,6 +1076,34 @@ export const constantRoutes = [
import('@/views/workFlow/jiaohuishuhuiFlow/surrenderforredemptionYiBan.vue'),
name: 'SurrenderForRedemptionYiBan'
},
// 交回车辆二次销售申请管理--编辑
{
path: '/ercixiaoshouFlow/secondarysalesEdit',
component: () =>
import('@/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue'),
name: 'SecondarySalesEdit'
},
// 交回车辆二次销售申请管理--待办
{
path: '/ercixiaoshouFlow/secondarysalesDaiBan',
component: () =>
import('@/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue'),
name: 'SecondarySalesDaiBan'
},
// 交回车辆二次销售申请管理--待办--风控中心处置岗填写车辆评估价
{
path: '/ercixiaoshouFlow/secondarysalesByPGJ',
component: () =>
import('@/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue'),
name: 'SecondarySalesByPGJ'
},
// 交回车辆二次销售申请管理--已办
{
path: '/ercixiaoshouFlow/secondarysalesYiBan',
component: () =>
import('@/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue'),
name: 'SecondarySalesYiBan'
},
// 交回车辆二次转租申请管理--编辑
{
path: '/ercizhuanzuFlow/secondarysubletEdit',

84
anrui-riskcenter-ui/src/views/secondarysales/secondarysales.vue

@ -10,23 +10,23 @@
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="分公司">
<el-input v-model="listQuery.params.company" placeholder="" clearable/>
<el-input v-model="listQuery.params.useOrgName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="申请部门">
<el-input v-model="listQuery.params.dept" placeholder="" clearable/>
<el-input v-model="listQuery.params.createDept" placeholder="" clearable/>
</el-form-item>
<el-form-item label="申请人">
<el-input v-model="listQuery.params.applyName" placeholder="" clearable/>
<el-input v-model="listQuery.params.createByName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="申请日期">
<el-date-picker v-model="listQuery.params.applyStartDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.createTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.applyEndDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.createTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="办结日期">
<el-date-picker v-model="listQuery.params.closingStartDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.closeDateStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.closingEndDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.closeDateEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="贷款合同编号">
<el-input v-model="listQuery.params.loanContractNo" placeholder="" clearable/>
@ -41,13 +41,13 @@
<el-input v-model="listQuery.params.bankContractNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="客户名称">
<el-input v-model="listQuery.params.customer" placeholder="" clearable/>
<el-input v-model="listQuery.params.customerName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="贷款人">
<el-input v-model="listQuery.params.borrowerName" placeholder="" clearable/>
<el-input v-model="listQuery.params.loanName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="欠款合计">
<el-input v-model="listQuery.params.borrowerName" placeholder="" clearable/>
<el-input v-model="listQuery.params.arrearsAll" placeholder="" clearable/>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -80,27 +80,27 @@
</el-table-column>
<el-table-column label="分公司" align="center" width="130">
<template slot-scope="scope">
<span>{{ scope.row.company }}</span>
<span>{{ scope.row.useOrgName }}</span>
</template>
</el-table-column>
<el-table-column label="申请部门" align="center" width="130">
<template slot-scope="scope">
<span>{{ scope.row.dept }}</span>
<span>{{ scope.row.createDept }}</span>
</template>
</el-table-column>
<el-table-column label="申请人" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.applyName }}</span>
<span>{{ scope.row.createByName }}</span>
</template>
</el-table-column>
<el-table-column label="申请日期" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.applyDate }}</span>
<span>{{ scope.row.createDate }}</span>
</template>
</el-table-column>
<el-table-column label="办结日期" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.closingDate }}</span>
<span>{{ scope.row.closeDate }}</span>
</template>
</el-table-column>
<el-table-column label="贷款合同编号" align="center" width="160">
@ -108,12 +108,12 @@
<span>{{ scope.row.loanContractNo }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="120">
<el-table-column label="车架号" align="center" min-width="120">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="车牌号" align="center" width="120">
<el-table-column label="车牌号" align="center" min-width="120">
<template slot-scope="scope">
<span>{{ scope.row.vehMark }}</span>
</template>
@ -130,27 +130,27 @@
</el-table-column>
<el-table-column label="客户名称" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.customer }}</span>
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="贷款人" align="center" min-width="100">
<el-table-column label="贷款人" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.borrowerName }}</span>
<span>{{ scope.row.loanName }}</span>
</template>
</el-table-column>
<el-table-column label="欠款合计" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.amount }}</span>
<span>{{ scope.row.arrearsAll }}</span>
</template>
</el-table-column>
<el-table-column label="车辆售价" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.amount }}</span>
<span>{{ scope.row.vehPrice }}</span>
</template>
</el-table-column>
<el-table-column label="预计亏损金额" align="center" width="140">
<template slot-scope="scope">
<span>{{ scope.row.amount }}</span>
<span>{{ scope.row.lossPrice }}</span>
</template>
</el-table-column>
</el-table>
@ -272,20 +272,21 @@ export default {
size: 5,
total: 0,
params: {
applyEndDate: '',
applyName: '',
applyStartDate: '',
bankContractNo: '',
bankName: '',
borrowerName: '',
closingEndDate: '',
closingStartDate: '',
company: '',
customer: '',
dept: '',
closeDateEnd: '',
closeDateStart: '',
createTimeEnd: '',
createTimeStart: '',
createByName: '',
createDept: '',
customerName: '',
loanContractNo: '',
loanName: '',
menuUrl: '',
orgPath: '',
arrearsAll: '',
useOrgName: '',
userSid: '',
vehMark: '',
vinNo: ''
@ -413,20 +414,21 @@ export default {
size: 5,
total: 0,
params: {
applyEndDate: '',
applyName: '',
applyStartDate: '',
bankContractNo: '',
bankName: '',
borrowerName: '',
closingEndDate: '',
closingStartDate: '',
company: '',
customer: '',
dept: '',
closeDateEnd: '',
closeDateStart: '',
createTimeEnd: '',
createTimeStart: '',
createByName: '',
createDept: '',
customerName: '',
loanContractNo: '',
loanName: '',
menuUrl: '',
orgPath: '',
arrearsAll: '',
useOrgName: '',
userSid: '',
vehMark: '',
vinNo: ''

469
anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue

@ -14,25 +14,25 @@
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">申请部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.dept }}</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.createDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请人</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyName }}</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.applyDate }}</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customer }}</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款人</div>
<el-form-item><span class="addinputInfo">{{ formobj.borrowerName }}</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.loanName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款合同编号</div>
@ -50,66 +50,78 @@
</el-col>
<el-col :span="8">
<div class="span-sty">停放地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.location }}</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.locationName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>二次销售车辆列表(含主车挂车)</div>
<el-button size="mini" type="primary" class="btntopblueline" @click="lookFinancial">金融方案</el-button>
</div>
<el-table :key="tableKey" :data="formobj.vinList" :index="index" border style="width: 100%">
<el-table :key="tableKey" :data="formobj.loanSecondarySalesVehVoList" :index="index" border style="width: 100%">
<el-table-column fixed width="80" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" width="80" align="center">
<template slot-scope="scope">
<el-button size="small" v-if="scope.row.vehType !== '主车'" type="danger" @click="delete(scope.$index)">删除</el-button>
<el-button size="small" type="danger" @click="delete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="100" />
<el-table-column prop="vehMark" label="车牌号" align="center" min-width="100"/>
<el-table-column prop="vehType" label="车辆类型" align="center" min-width="120"/>
<el-table-column prop="vehModel" label="车型" align="center" min-width="130"/>
<el-table-column prop="modelName" label="车型" align="center" min-width="130"/>
</el-table>
<div>车辆状况</div>
<div class="title">车辆状况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">是否年检</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
<el-form-item>
<el-radio-group class="addinputInfo" style="font-size: 1px" v-model="formobj.inspect">
<el-radio label="是"></el-radio>
<el-radio label="否"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">年检情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.inspectSituation" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">是否已出保</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
<el-form-item>
<el-radio-group class="addinputInfo" style="font-size: 1px" v-model="formobj.guaranteed">
<el-radio label="是"></el-radio>
<el-radio label="否"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">保险情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.insuranceSituation" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">首次登记日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.firstDate }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">当前行驶公里数</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
<el-form-item><el-input class="addinputInfo" style="width: 30%" v-model="formobj.kilometerDriven" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">其他况说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
<div class="span-sty">其他况说明</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.illustrate" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆照片</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.filesList" :key="index" :src="item" :preview-src-list="formobj.filesList"/>
</el-form-item>
</el-col>
</el-row>
<div class="title">已还与欠款情况</div>
@ -141,24 +153,150 @@
<el-form-item><span class="addinputInfo">{{ formobj.beOverdueMoneyAndPeriod }}</span></el-form-item>
</el-col>
</el-row>
<div>费用说明</div>
<div class="title">费用说明</div>
<el-row>
<el-col :span="8">
<div class="span-sty">欠款合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.arrearsAll }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.loanDeposit }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车辆售价</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.vehPrice" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">催收费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.collectionCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">风控中心车辆评估价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleEvaluation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方结清费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.bankSettleCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.bankSettleCostAssumeKey" placeholder="请选择" clearable filterable @change="bankSettleCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车辆违章费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.vehicleViolationCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.vehicleViolationCostAssumeKey" placeholder="请选择" clearable filterable @change="vehicleViolationCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">年检费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.inspectYearCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.inspectYearCostAssumeKey" placeholder="请选择" clearable filterable @change="inspectYearCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">保险费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.insureCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.insureCostAssumeKey" placeholder="请选择" clearable filterable @change="insureCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">过户费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.ownershipCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.ownershipCostAssumeKey" placeholder="请选择" clearable filterable @change="ownershipCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">停车费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.stopCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.stopCostAssumeKey" placeholder="请选择" clearable filterable @change="stopCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">其他费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.otherCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.otherCostAssumeKey" placeholder="请选择" clearable filterable @change="otherCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">费用说明</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.loanSecondarySalesCost.costDescription" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">预计亏损金额</div>
<el-form-item><el-input class="addinputInfo" style="width: 15%" @keyup.native="UpNumber" v-model="formobj.amount" clearable placeholder=""/></el-form-item>
<el-form-item><span class="addinputInfo">{{ lossPrice() }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">后续欠款处置方向</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.plan" clearable placeholder=""/></el-form-item>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.loanSecondarySalesCost.debtDisposal" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<uploadImg ref="uploadImg" class="addinputInfo" v-model="formobj.files" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
<uploadImg ref="uploadImg" class="addinputInfo" v-model="formobj.loanSecondarySalesCost.files" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item>
</el-col>
</el-row>
@ -171,12 +309,13 @@
</template>
<script>
import req from '@/api/surrenderforredemption/surrenderforredemption'
import req from '@/api/secondarysales/secondarysales'
import { typeValues } from '@/api/Common/dictcommons'
import uploadImg from '@/components/uploadFile/uploadImg'
import financialschemeInfo from '@/components/publicPage/financialschemeInfo'
export default {
name: 'SurrenderForRedemptionAdd',
name: 'SecondarySalesAdd',
components: {
uploadImg,
financialschemeInfo
@ -188,38 +327,74 @@ export default {
submitdisabled: false,
tableKey: 1,
index: 0,
bearer_list: [],
formobj: {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
amount: '',
applyDate: '',
applyName: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
borrowerName: '',
busVinSid: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customer: '',
dept: '',
deptSid: '',
fees: '',
feesShows: '',
files: [],
instanceId: '',
ledgerSid: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
location: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
bankSettleCostAssumeKey: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
inspectYearCostAssumeKey: '',
insureCost: '',
insureCostAssume: '',
insureCostAssumeKey: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
otherCostAssumeKey: '',
ownershipCost: '',
ownershipCostAssume: '',
ownershipCostAssumeKey: '',
stopCost: '',
stopCostAssume: '',
stopCostAssumeKey: '',
vehPrice: '',
vehicleEvaluation: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: '',
vehicleViolationCostAssumeKey: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
plan: '',
rksqSid: '',
procInstId: '',
salesOrderSid: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
vinList: [],
wheFundOccMoney: ''
},
rules: {}
@ -237,46 +412,149 @@ export default {
e.target.value = parseFloat(e.target.value)
}
},
init() {
typeValues({ type: 'costAssume' }).then((resp) => {
if (resp.success) {
this.bearer_list = resp.data
}
})
},
showAdd(row) {
this.viewTitle = '【新增】交回车辆赎回申请'
this.viewTitle = '【新增】交回车辆二次销售申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.redemptionInit({ ledgerSid: row.ledgerSid }).then((resp) => {
this.init()
const aa = []
aa.push(row.ledgerSid)
req.fetchBySid({ chooseSidList: aa, orgPath: window.sessionStorage.getItem('defaultOrgPath'), sid: '', userSid: window.sessionStorage.getItem('userSid') }).then((resp) => {
if (resp.success) {
this.formobj = resp.data
this.formobj.applyName = window.sessionStorage.getItem('name')
this.formobj.dept = window.sessionStorage.getItem('defaultOrgPathName').substring(window.sessionStorage.getItem('defaultOrgPathName').lastIndexOf('/') + 1)
this.formobj.deptSid = window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1)
this.formobj.userSid = window.sessionStorage.getItem('userSid')
this.formobj.orgPath = window.sessionStorage.getItem('defaultOrgPath')
var nowDate = new Date()
var date = {
year: nowDate.getFullYear(),
month: nowDate.getMonth() + 1,
day: nowDate.getDate()
}
this.formobj.applyDate = date.year + '-' + (date.month >= 10 ? date.month : '0' + date.month) + '-' + (date.day >= 10 ? date.day : '0' + date.day)
}
})
},
showEdit(row) {
this.viewTitle = '【编辑】交回车辆赎回申请'
this.viewTitle = '【编辑】交回车辆二次销售申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.fetchBySid({ sid: row.sid }).then((res) => {
this.init()
req.fetchBySid({ chooseSidList: [], orgPath: '', sid: row.sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstId
}
})
},
lookFinancial() {
this.viewState = 2
// this.$refs['divFinancial'].showInfo({ saleVehSid: this.formobj.busVinSid })
req.selectDetailss({ businessSid: this.formobj.salesOrderSid }).then((res) => {
if (res.success) {
this.viewState = 2
this.$refs['divFinancial'].showInfo(res.data, '03')
}
})
},
delete(index) {
this.formobj.vinList.splice(index, 1)
this.formobj.loanSecondarySalesVehVoList.splice(index, 1)
},
bankSettleCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.bankSettleCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.bankSettleCostAssume = ''
}
},
vehicleViolationCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume = ''
}
},
inspectYearCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.inspectYearCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.inspectYearCostAssume = ''
}
},
insureCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.insureCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.insureCostAssume = ''
}
},
ownershipCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.ownershipCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.ownershipCostAssume = ''
}
},
stopCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.stopCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.stopCostAssume = ''
}
},
otherCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.otherCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.otherCostAssume = ''
}
},
// = - - - -
lossPrice() {
let money = '0'
money = parseFloat(this.formobj.loanSecondarySalesCost.arrearsAll) - parseFloat(this.formobj.loanSecondarySalesCost.loanDeposit)
//
if (this.formobj.loanSecondarySalesCost.vehPrice !== '') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehPrice)
}
//
if (this.formobj.loanSecondarySalesCost.collectionCost !== '') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.collectionCost)
}
//
if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)
}
//
if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)
}
//
if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)
}
//
if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.insureCost)
}
//
if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)
}
//
if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.stopCost)
}
//
if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.otherCost)
}
this.formobj.loanSecondarySalesCost.lossPrice = money
return money
},
resetState() {
this.viewState = 1
@ -320,35 +598,70 @@ export default {
this.formobj = {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
amount: '',
applyDate: '',
applyName: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
borrowerName: '',
busVinSid: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customer: '',
dept: '',
deptSid: '',
fees: '',
feesShows: '',
files: [],
instanceId: '',
ledgerSid: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
location: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
bankSettleCostAssumeKey: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
inspectYearCostAssumeKey: '',
insureCost: '',
insureCostAssume: '',
insureCostAssumeKey: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
otherCostAssumeKey: '',
ownershipCost: '',
ownershipCostAssume: '',
ownershipCostAssumeKey: '',
stopCost: '',
stopCostAssume: '',
stopCostAssumeKey: '',
vehPrice: '',
vehicleEvaluation: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: '',
vehicleViolationCostAssumeKey: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
plan: '',
rksqSid: '',
procInstId: '',
salesOrderSid: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
vinList: [],
wheFundOccMoney: ''
}
this.submitdisabled = false

470
anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue

@ -0,0 +1,470 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">申请部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请人</div>
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款人</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanContractNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">资方合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">停放地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.locationName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>二次销售车辆列表(含主车挂车)</div>
<el-button size="mini" type="primary" class="btntopblueline" @click="lookFinancial">金融方案</el-button>
</div>
<el-table :key="tableKey" :data="formobj.loanSecondarySalesVehVoList" :index="index" border style="width: 100%">
<el-table-column fixed width="80" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="100" />
<el-table-column prop="vehMark" label="车牌号" align="center" min-width="100"/>
<el-table-column prop="vehType" label="车辆类型" align="center" min-width="120"/>
<el-table-column prop="modelName" label="车型" align="center" min-width="130"/>
</el-table>
<div class="title">车辆状况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">是否年检</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspect }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">年检情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspectSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">是否已出保</div>
<el-form-item><span class="addinputInfo">{{ formobj.guaranteed }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">保险情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.insuranceSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">首次登记日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.firstDate }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">当前行驶公里数</div>
<el-form-item><span class="addinputInfo">{{ formobj.kilometerDriven }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">其他车况说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.illustrate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆照片</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.filesList" :key="index" :src="item" :preview-src-list="formobj.filesList"/>
</el-form-item>
</el-col>
</el-row>
<div class="title">已还与欠款情况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">已还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">当前逾期金额/其中资金占用费</div>
<el-form-item><span class="addinputInfo">{{ formobj.currentBeMoney }}/{{ formobj.wheFundOccMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">未到期金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.unexpiredMoney }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">总期数/当前期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.nper }}/{{ formobj.currentPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">已还金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoneyConPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">逾期金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.beOverdueMoneyAndPeriod }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">费用说明</div>
<el-row>
<el-col :span="8">
<div class="span-sty">欠款合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.arrearsAll }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.loanDeposit }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车辆售价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">催收费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.collectionCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">风控中心车辆评估价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleEvaluation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方结清费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车辆违章费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">年检费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">过户费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">停车费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">其他费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCost }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCostAssume }}</span></el-form-item>
</el-col>
<el-col :span="8" class="tlineheightb">
<div class="span-sty">费用说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.costDescription }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">预计亏损金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.lossPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">后续欠款处置方向</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.debtDisposal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.loanSecondarySalesCost.files" :key="index" :src="item" :preview-src-list="formobj.loanSecondarySalesCost.files"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 查看车辆历史催收记录 -->
<financialschemeInfo v-show="viewState == 2" ref="divFinancial" @doback="resetState" />
</div>
</template>
<script>
import req from '@/api/secondarysales/secondarysales'
import financialschemeInfo from '@/components/publicPage/financialschemeInfo'
export default {
name: 'SecondarySalesInfo',
components: {
financialschemeInfo
},
data() {
return {
viewTitle: '',
viewState: 1,
tableKey: 1,
index: 0,
formobj: {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
insureCost: '',
insureCostAssume: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
ownershipCost: '',
ownershipCostAssume: '',
stopCost: '',
stopCostAssume: '',
vehicleEvaluation: '',
vehPrice: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
procInstId: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
wheFundOccMoney: ''
},
rules: {}
}
},
methods: {
showInfo(row) {
this.viewTitle = '交回车辆二次销售申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.fetchBySid({ chooseSidList: [], orgPath: '', sid: row.sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
if (this.formobj.loanSecondarySalesCost.files.length > 0) {
const bb = []
this.formobj.loanSecondarySalesCost.files.forEach((e) => {
bb.push(e.url)
})
this.formobj.loanSecondarySalesCost.files = bb
}
}
})
},
lookFinancial() {
req.selectDetailss({ businessSid: this.formobj.salesOrderSid }).then((res) => {
if (res.success) {
this.viewState = 2
this.$refs['divFinancial'].showInfo(res.data, '03')
}
})
},
resetState() {
this.viewState = 1
},
handleReturn() {
this.formobj = {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
insureCost: '',
insureCostAssume: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
ownershipCost: '',
ownershipCostAssume: '',
stopCost: '',
stopCostAssume: '',
vehicleEvaluation: '',
vehPrice: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
procInstId: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
wheFundOccMoney: ''
}
this.$emit('doback')
}
}
}
</script>
<style scoped>
.span-sty {
width: 200px !important;
}
.addinputInfo {
margin-left: 190px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content .addinputInfo {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

709
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue

@ -0,0 +1,709 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" @click="openCountersign('加签')"> </el-button>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<div class="">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">申请部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请人</div>
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款人</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanContractNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">资方合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">停放地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.locationName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>二次销售车辆列表(含主车挂车)</div>
<el-button size="mini" type="primary" class="btntopblueline" @click="lookFinancial">金融方案</el-button>
</div>
<el-table :key="tableKey" :data="formobj.loanSecondarySalesVehVoList" :index="index" border style="width: 100%">
<el-table-column fixed width="80" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="100" />
<el-table-column prop="vehMark" label="车牌号" align="center" min-width="100"/>
<el-table-column prop="vehType" label="车辆类型" align="center" min-width="120"/>
<el-table-column prop="modelName" label="车型" align="center" min-width="130"/>
</el-table>
<div class="title">车辆状况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">是否年检</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspect }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">年检情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspectSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">是否已出保</div>
<el-form-item><span class="addinputInfo">{{ formobj.guaranteed }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">保险情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.insuranceSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">首次登记日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.firstDate }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">当前行驶公里数</div>
<el-form-item><span class="addinputInfo">{{ formobj.kilometerDriven }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">其他车况说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.illustrate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆照片</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.filesList" :key="index" :src="item" :preview-src-list="formobj.filesList"/>
</el-form-item>
</el-col>
</el-row>
<div class="title">已还与欠款情况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">已还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">当前逾期金额/其中资金占用费</div>
<el-form-item><span class="addinputInfo">{{ formobj.currentBeMoney }}/{{ formobj.wheFundOccMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">未到期金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.unexpiredMoney }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">总期数/当前期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.nper }}/{{ formobj.currentPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">已还金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoneyConPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">逾期金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.beOverdueMoneyAndPeriod }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">费用说明</div>
<el-row>
<el-col :span="8">
<div class="span-sty">欠款合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.arrearsAll }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.loanDeposit }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车辆售价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">催收费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.collectionCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty"><span class="icon">*</span>风控中心车辆评估价</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.vehicleEvaluation" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方结清费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车辆违章费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">年检费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">过户费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">停车费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">其他费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCost }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCostAssume }}</span></el-form-item>
</el-col>
<el-col :span="8" class="tlineheightb">
<div class="span-sty">费用说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.costDescription }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">预计亏损金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.lossPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">后续欠款处置方向</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.debtDisposal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.loanSecondarySalesCost.files" :key="index" :src="item" :preview-src-list="formobj.loanSecondarySalesCost.files"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 查看车辆历史催收记录 -->
<financialschemeInfo v-show="viewState == 2" ref="divFinancial" @doback="resetState" />
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formadd" >
<el-row v-show="countersignLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span class="icon">*</span>加签人员:
</el-col>
<el-col :span="20">
<el-form-item>
<el-select v-model="countersign.assignee" placeholder="请选择" filterable>
<el-option v-for="item in options" :key="item.userSid" :label="item.staffName" :value="item.userSid">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" type="textarea" :autosize="{ minRows: 1, maxRows: 10}" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
</div>
</template>
<script>
import req from '@/api/secondarysales/secondarysales'
import { selectStaffListss } from '@/api/Common/dictcommons'
import financialschemeInfo from '../publicPage/financialschemeInfo'
export default {
name: 'SecondarySalesByPGJ',
components: {
financialschemeInfo
},
data() {
return {
viewTitle: '',
viewState: 1,
tableKey: 1,
index: 0,
formobj: {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
insureCost: '',
insureCostAssume: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
ownershipCost: '',
ownershipCostAssume: '',
stopCost: '',
stopCostAssume: '',
vehicleEvaluation: '',
vehPrice: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
procInstId: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
wheFundOccMoney: ''
},
rules: {},
options: [],
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
currentLink: true,
countersignLink: false,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: '',
vehicleEvaluation: ''
},
//
countersign: {
taskId: '',
assignee: '',
userSid: '',
instanceId: '',
views: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
// this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.countersign.taskId = obj.taskId
this.countersign.userSid = window.sessionStorage.getItem('userSid')
this.countersign.instanceId = obj.instanceId
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
UpNumber(e) {
e.target.value = e.target.value.replace(/[^0-9.]/g, '') // .
e.target.value = e.target.value.replace(/^00/, '0.') // 0
e.target.value = e.target.value.replace(/\.{2,}/g, '.') // .
e.target.value = e.target.value.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')
e.target.value = e.target.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3') //
if (e.target.value.indexOf('.') < 0 && e.target.value !== '' && e.target.value !== '-') {
// 0102
e.target.value = parseFloat(e.target.value)
}
},
showInfo(sid) {
this.viewTitle = '交回车辆二次销售申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.fetchBySid({ chooseSidList: [], orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
if (this.formobj.loanSecondarySalesCost.files.length > 0) {
const bb = []
this.formobj.loanSecondarySalesCost.files.forEach((e) => {
bb.push(e.url)
})
this.formobj.loanSecondarySalesCost.files = bb
}
}
})
selectStaffListss().then((res) => {
if (res.success) {
this.options = res.data
}
})
},
lookFinancial() {
req.selectDetailss({ businessSid: this.formobj.salesOrderSid }).then((res) => {
if (res.success) {
this.viewState = 2
this.$refs['divFinancial'].showInfo(res.data, '03')
}
})
},
resetState() {
this.viewState = 1
},
//
openCountersign(val) {
this.operation = val
this.currentLink = true
this.countersignLink = true
this.dialogList.comment = ''
req.getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openAgree(val) {
if (this.formobj.loanSecondarySalesCost.vehicleEvaluation === '') {
this.$message({ showClose: true, type: 'error', message: '风控中心车辆评估价不能为空' })
return
}
this.operation = val
this.currentLink = true
this.countersignLink = false
this.dialogList.comment = '同意'
req.getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid, vehicleEvaluation: this.formobj.loanSecondarySalesCost.vehicleEvaluation }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.countersignLink = false
this.dialogList.comment = ''
req.getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.countersignLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
} else if (this.operation === '加签') {
this.handleCountersign()
}
},
/** 加签 */
handleCountersign() {
if (this.countersign.assignee === '') {
this.$message({ showClose: true, type: 'error', message: '请选择加签人员' })
return
}
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
return
}
this.countersign.views = this.dialogList.comment
req.delegate(this.countersign).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
this.linkByParameter.vehicleEvaluation = this.formobj.loanSecondarySalesCost.vehicleEvaluation
req.complete(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
req.reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
req.breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.span-sty {
width: 200px !important;
}
.addinputInfo {
margin-left: 190px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content .addinputInfo {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.rowClass{
border-top: 1px solid #E0E3EB;
}
</style>

694
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue

@ -0,0 +1,694 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" @click="openCountersign('加签')"> </el-button>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<div class="">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">申请部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请人</div>
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款人</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanContractNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">资方合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">停放地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.locationName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>二次销售车辆列表(含主车挂车)</div>
<el-button size="mini" type="primary" class="btntopblueline" @click="lookFinancial">金融方案</el-button>
</div>
<el-table :key="tableKey" :data="formobj.loanSecondarySalesVehVoList" :index="index" border style="width: 100%">
<el-table-column fixed width="80" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="100" />
<el-table-column prop="vehMark" label="车牌号" align="center" min-width="100"/>
<el-table-column prop="vehType" label="车辆类型" align="center" min-width="120"/>
<el-table-column prop="modelName" label="车型" align="center" min-width="130"/>
</el-table>
<div class="title">车辆状况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">是否年检</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspect }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">年检情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspectSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">是否已出保</div>
<el-form-item><span class="addinputInfo">{{ formobj.guaranteed }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">保险情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.insuranceSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">首次登记日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.firstDate }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">当前行驶公里数</div>
<el-form-item><span class="addinputInfo">{{ formobj.kilometerDriven }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">其他车况说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.illustrate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆照片</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.filesList" :key="index" :src="item" :preview-src-list="formobj.filesList"/>
</el-form-item>
</el-col>
</el-row>
<div class="title">已还与欠款情况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">已还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">当前逾期金额/其中资金占用费</div>
<el-form-item><span class="addinputInfo">{{ formobj.currentBeMoney }}/{{ formobj.wheFundOccMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">未到期金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.unexpiredMoney }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">总期数/当前期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.nper }}/{{ formobj.currentPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">已还金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoneyConPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">逾期金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.beOverdueMoneyAndPeriod }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">费用说明</div>
<el-row>
<el-col :span="8">
<div class="span-sty">欠款合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.arrearsAll }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.loanDeposit }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车辆售价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">催收费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.collectionCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">风控中心车辆评估价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleEvaluation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方结清费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车辆违章费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">年检费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">过户费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">停车费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">其他费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCost }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCostAssume }}</span></el-form-item>
</el-col>
<el-col :span="8" class="tlineheightb">
<div class="span-sty">费用说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.costDescription }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">预计亏损金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.lossPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">后续欠款处置方向</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.debtDisposal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.loanSecondarySalesCost.files" :key="index" :src="item" :preview-src-list="formobj.loanSecondarySalesCost.files"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 查看车辆历史催收记录 -->
<financialschemeInfo v-show="viewState == 2" ref="divFinancial" @doback="resetState" />
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formadd" >
<el-row v-show="countersignLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span class="icon">*</span>加签人员:
</el-col>
<el-col :span="20">
<el-form-item>
<el-select v-model="countersign.assignee" placeholder="请选择" filterable>
<el-option v-for="item in options" :key="item.userSid" :label="item.staffName" :value="item.userSid">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>当前环节:</span>
</el-col>
<el-col :span="20">
<el-form-item><span>{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{rowClass:!currentLink}">
<el-col :span="4" class="tleftb">
<span>意见:</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw" type="textarea" :autosize="{ minRows: 1, maxRows: 10}" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
</div>
</template>
<script>
import req from '@/api/secondarysales/secondarysales'
import { selectStaffListss } from '@/api/Common/dictcommons'
import financialschemeInfo from '../publicPage/financialschemeInfo'
export default {
name: 'SecondarySalesDaiBan',
components: {
financialschemeInfo
},
data() {
return {
viewTitle: '',
viewState: 1,
tableKey: 1,
index: 0,
formobj: {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
insureCost: '',
insureCostAssume: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
ownershipCost: '',
ownershipCostAssume: '',
stopCost: '',
stopCostAssume: '',
vehicleEvaluation: '',
vehPrice: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
procInstId: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
wheFundOccMoney: ''
},
rules: {},
options: [],
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
currentLink: true,
countersignLink: false,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: '',
vehicleEvaluation: ''
},
//
countersign: {
taskId: '',
assignee: '',
userSid: '',
instanceId: '',
views: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
// this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.countersign.taskId = obj.taskId
this.countersign.userSid = window.sessionStorage.getItem('userSid')
this.countersign.instanceId = obj.instanceId
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.viewTitle = '交回车辆二次销售申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.fetchBySid({ chooseSidList: [], orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
if (this.formobj.loanSecondarySalesCost.files.length > 0) {
const bb = []
this.formobj.loanSecondarySalesCost.files.forEach((e) => {
bb.push(e.url)
})
this.formobj.loanSecondarySalesCost.files = bb
}
}
})
selectStaffListss().then((res) => {
if (res.success) {
this.options = res.data
}
})
},
lookFinancial() {
req.selectDetailss({ businessSid: this.formobj.salesOrderSid }).then((res) => {
if (res.success) {
this.viewState = 2
this.$refs['divFinancial'].showInfo(res.data, '03')
}
})
},
resetState() {
this.viewState = 1
},
//
openCountersign(val) {
this.operation = val
this.currentLink = true
this.countersignLink = true
this.dialogList.comment = ''
req.getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openAgree(val) {
this.operation = val
this.currentLink = true
this.countersignLink = false
this.dialogList.comment = '同意'
req.getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid, vehicleEvaluation: this.formobj.loanSecondarySalesCost.vehicleEvaluation }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.countersignLink = false
this.dialogList.comment = ''
req.getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey, businessSid: this.linkByParameter.businessSid }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.countersignLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
} else if (this.operation === '加签') {
this.handleCountersign()
}
},
/** 加签 */
handleCountersign() {
if (this.countersign.assignee === '') {
this.$message({ showClose: true, type: 'error', message: '请选择加签人员' })
return
}
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
return
}
this.countersign.views = this.dialogList.comment
req.delegate(this.countersign).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
this.linkByParameter.vehicleEvaluation = this.formobj.loanSecondarySalesCost.vehicleEvaluation
req.complete(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
req.reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
req.breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.span-sty {
width: 200px !important;
}
.addinputInfo {
margin-left: 190px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content .addinputInfo {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.rowClass{
border-top: 1px solid #E0E3EB;
}
</style>

651
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue

@ -0,0 +1,651 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate()">保存</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交</el-button>
</div>
</div>
<div class="">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">申请部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请人</div>
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款人</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanContractNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">资方合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">停放地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.locationName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>二次销售车辆列表(含主车挂车)</div>
<el-button size="mini" type="primary" class="btntopblueline" @click="lookFinancial">金融方案</el-button>
</div>
<el-table :key="tableKey" :data="formobj.loanSecondarySalesVehVoList" :index="index" border style="width: 100%">
<el-table-column fixed width="80" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" width="80" align="center">
<template slot-scope="scope">
<el-button size="small" type="danger" @click="delete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="100" />
<el-table-column prop="vehMark" label="车牌号" align="center" min-width="100"/>
<el-table-column prop="vehType" label="车辆类型" align="center" min-width="120"/>
<el-table-column prop="modelName" label="车型" align="center" min-width="130"/>
</el-table>
<div class="title">车辆状况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">是否年检</div>
<el-form-item>
<el-radio-group class="addinputInfo" style="font-size: 1px" v-model="formobj.inspect">
<el-radio label="是"></el-radio>
<el-radio label="否"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">年检情况</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.inspectSituation" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">是否已出保</div>
<el-form-item>
<el-radio-group class="addinputInfo" style="font-size: 1px" v-model="formobj.guaranteed">
<el-radio label="是"></el-radio>
<el-radio label="否"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">保险情况</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.insuranceSituation" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">首次登记日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.firstDate }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">当前行驶公里数</div>
<el-form-item><el-input class="addinputInfo" style="width: 30%" v-model="formobj.kilometerDriven" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">其他车况说明</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.illustrate" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆照片</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.filesList" :key="index" :src="item" :preview-src-list="formobj.filesList"/>
</el-form-item>
</el-col>
</el-row>
<div class="title">已还与欠款情况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">已还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">当前逾期金额/其中资金占用费</div>
<el-form-item><span class="addinputInfo">{{ formobj.currentBeMoney }}/{{ formobj.wheFundOccMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">未到期金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.unexpiredMoney }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">总期数/当前期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.nper }}/{{ formobj.currentPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">已还金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoneyConPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">逾期金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.beOverdueMoneyAndPeriod }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">费用说明</div>
<el-row>
<el-col :span="8">
<div class="span-sty">欠款合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.arrearsAll }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.loanDeposit }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车辆售价</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.vehPrice" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">催收费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.collectionCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">风控中心车辆评估价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleEvaluation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方结清费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.bankSettleCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.bankSettleCostAssumeKey" placeholder="请选择" clearable filterable @change="bankSettleCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车辆违章费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.vehicleViolationCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.vehicleViolationCostAssumeKey" placeholder="请选择" clearable filterable @change="vehicleViolationCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">年检费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.inspectYearCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.inspectYearCostAssumeKey" placeholder="请选择" clearable filterable @change="inspectYearCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">保险费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.insureCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.insureCostAssumeKey" placeholder="请选择" clearable filterable @change="insureCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">过户费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.ownershipCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.ownershipCostAssumeKey" placeholder="请选择" clearable filterable @change="ownershipCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">停车费</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.stopCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.stopCostAssumeKey" placeholder="请选择" clearable filterable @change="stopCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">其他费用</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="UpNumber" v-model="formobj.loanSecondarySalesCost.otherCost" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">承担方</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.loanSecondarySalesCost.otherCostAssumeKey" placeholder="请选择" clearable filterable @change="otherCostChange">
<el-option v-for="item in bearer_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">费用说明</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.loanSecondarySalesCost.costDescription" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">预计亏损金额</div>
<el-form-item><span class="addinputInfo">{{ lossPrice() }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">后续欠款处置方向</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.loanSecondarySalesCost.debtDisposal" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<uploadImg ref="uploadImg" class="addinputInfo" v-model="formobj.loanSecondarySalesCost.files" :limit="50" bucket="map" :upload-data="{ type: '0001' }"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 查看车辆历史催收记录 -->
<financialschemeInfo v-show="viewState == 2" ref="divFinancial" @doback="resetState" />
</div>
</template>
<script>
import req from '@/api/secondarysales/secondarysales'
import { typeValues } from '@/api/Common/dictcommons'
import uploadImg from '@/components/uploadFile/uploadImg'
import financialschemeInfo from '../publicPage/financialschemeInfo'
export default {
name: 'SecondarySalesEdit',
components: {
uploadImg,
financialschemeInfo
},
data() {
return {
viewTitle: '',
viewState: 1,
submitdisabled: false,
tableKey: 1,
index: 0,
bearer_list: [],
formobj: {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
bankSettleCostAssumeKey: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
inspectYearCostAssumeKey: '',
insureCost: '',
insureCostAssume: '',
insureCostAssumeKey: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
otherCostAssumeKey: '',
ownershipCost: '',
ownershipCostAssume: '',
ownershipCostAssumeKey: '',
stopCost: '',
stopCostAssume: '',
stopCostAssumeKey: '',
vehPrice: '',
vehicleEvaluation: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: '',
vehicleViolationCostAssumeKey: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
procInstId: '',
salesOrderSid: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
wheFundOccMoney: ''
},
rules: {}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
UpNumber(e) {
e.target.value = e.target.value.replace(/[^0-9.]/g, '') // .
e.target.value = e.target.value.replace(/^00/, '0.') // 0
e.target.value = e.target.value.replace(/\.{2,}/g, '.') // .
e.target.value = e.target.value.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')
e.target.value = e.target.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3') //
if (e.target.value.indexOf('.') < 0 && e.target.value !== '' && e.target.value !== '-') {
// 0102
e.target.value = parseFloat(e.target.value)
}
},
init() {
typeValues({ type: 'costAssume' }).then((resp) => {
if (resp.success) {
this.bearer_list = resp.data
}
})
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
showInfo(sid) {
this.viewTitle = '【编辑】交回车辆二次销售申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.init()
req.fetchBySid({ chooseSidList: [], orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstId
}
})
},
lookFinancial() {
req.selectDetailss({ businessSid: this.formobj.salesOrderSid }).then((res) => {
if (res.success) {
this.viewState = 2
this.$refs['divFinancial'].showInfo(res.data, '03')
}
})
},
delete(index) {
this.formobj.loanSecondarySalesVehVoList.splice(index, 1)
},
bankSettleCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.bankSettleCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.bankSettleCostAssume = ''
}
},
vehicleViolationCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume = ''
}
},
inspectYearCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.inspectYearCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.inspectYearCostAssume = ''
}
},
insureCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.insureCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.insureCostAssume = ''
}
},
ownershipCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.ownershipCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.ownershipCostAssume = ''
}
},
stopCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.stopCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.stopCostAssume = ''
}
},
otherCostChange(value) {
const choose = this.bearer_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {
this.formobj.loanSecondarySalesCost.otherCostAssume = choose[0].dictValue
} else {
this.formobj.loanSecondarySalesCost.otherCostAssume = ''
}
},
// = - - - -
lossPrice() {
let money = '0'
money = parseFloat(this.formobj.loanSecondarySalesCost.arrearsAll) - parseFloat(this.formobj.loanSecondarySalesCost.loanDeposit)
//
if (this.formobj.loanSecondarySalesCost.vehPrice !== '') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehPrice)
}
//
if (this.formobj.loanSecondarySalesCost.collectionCost !== '') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.collectionCost)
}
//
if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)
}
//
if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)
}
//
if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)
}
//
if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.insureCost)
}
//
if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)
}
//
if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.stopCost)
}
//
if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '公司') {
money = parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.otherCost)
}
this.formobj.loanSecondarySalesCost.lossPrice = money
return money
},
resetState() {
this.viewState = 1
},
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
// ()
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
} else {
this.submitdisabled = false
}
}).catch(() => {
this.submitdisabled = false
})
}
})
},
submit() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.submit(this.formobj).then((res) => {
if (res.success) {
this.$message({ showClose: true, type: 'success', message: '操作成功' })
// ()
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
} else {
this.submitdisabled = false
}
}).catch(() => {
this.submitdisabled = false
})
}
})
}
}
}
</script>
<style scoped>
.span-sty {
width: 200px !important;
}
.addinputInfo {
margin-left: 190px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 190px !important;
width: calc(100% - 185px);
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
</style>

478
anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue

@ -0,0 +1,478 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="danger" size="small" @click="openRevoke()">撤回</el-button>
</div>
</div>
<div class="">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty">申请部门</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDept }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请人</div>
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">申请日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.createDate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款人</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanContractNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">资方合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.bankContractNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">停放地点</div>
<el-form-item><span class="addinputInfo">{{ formobj.locationName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>二次销售车辆列表(含主车挂车)</div>
<el-button size="mini" type="primary" class="btntopblueline" @click="lookFinancial">金融方案</el-button>
</div>
<el-table :key="tableKey" :data="formobj.loanSecondarySalesVehVoList" :index="index" border style="width: 100%">
<el-table-column fixed width="80" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="100" />
<el-table-column prop="vehMark" label="车牌号" align="center" min-width="100"/>
<el-table-column prop="vehType" label="车辆类型" align="center" min-width="120"/>
<el-table-column prop="modelName" label="车型" align="center" min-width="130"/>
</el-table>
<div class="title">车辆状况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">是否年检</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspect }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">年检情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.inspectSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">是否已出保</div>
<el-form-item><span class="addinputInfo">{{ formobj.guaranteed }}</span></el-form-item>
</el-col>
<el-col :span="16" class="tlineheightb">
<div class="span-sty">保险情况</div>
<el-form-item><span class="addinputInfo">{{ formobj.insuranceSituation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">首次登记日期</div>
<el-form-item><span class="addinputInfo">{{ formobj.firstDate }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">当前行驶公里数</div>
<el-form-item><span class="addinputInfo">{{ formobj.kilometerDriven }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">其他车况说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.illustrate }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">车辆照片</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.filesList" :key="index" :src="item" :preview-src-list="formobj.filesList"/>
</el-form-item>
</el-col>
</el-row>
<div class="title">已还与欠款情况</div>
<el-row>
<el-col :span="8">
<div class="span-sty">已还金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">当前逾期金额/其中资金占用费</div>
<el-form-item><span class="addinputInfo">{{ formobj.currentBeMoney }}/{{ formobj.wheFundOccMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">未到期金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.unexpiredMoney }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">总期数/当前期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.nper }}/{{ formobj.currentPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">已还金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.alRepaidMoneyConPeriod }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">逾期金额换算期数</div>
<el-form-item><span class="addinputInfo">{{ formobj.beOverdueMoneyAndPeriod }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">费用说明</div>
<el-row>
<el-col :span="8">
<div class="span-sty">欠款合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.arrearsAll }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">贷款保证金</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.loanDeposit }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车辆售价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">催收费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.collectionCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">风控中心车辆评估价</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleEvaluation }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">资方结清费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.bankSettleCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">车辆违章费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.vehicleViolationCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">年检费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.inspectYearCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">保险费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.insureCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">过户费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.ownershipCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">停车费</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCost }}</span></el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.stopCostAssume }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">其他费用</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCost }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">承担方</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.otherCostAssume }}</span></el-form-item>
</el-col>
<el-col :span="8" class="tlineheightb">
<div class="span-sty">费用说明</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.costDescription }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">预计亏损金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.lossPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">后续欠款处置方向</div>
<el-form-item><span class="addinputInfo">{{ formobj.loanSecondarySalesCost.debtDisposal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">附件</div>
<el-form-item>
<el-image class="addinputInfo" style="width: 150px;height: 150px" v-for="(item, index) in formobj.loanSecondarySalesCost.files" :key="index" :src="item" :preview-src-list="formobj.loanSecondarySalesCost.files"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!-- 查看车辆历史催收记录 -->
<financialschemeInfo v-show="viewState == 2" ref="divFinancial" @doback="resetState" />
</div>
</template>
<script>
import req from '@/api/secondarysales/secondarysales'
import financialschemeInfo from '../publicPage/financialschemeInfo'
export default {
name: 'SecondarySalesYiBan',
components: {
financialschemeInfo
},
data() {
return {
viewTitle: '',
viewState: 1,
tableKey: 1,
index: 0,
formobj: {
alRepaidMoney: '',
alRepaidMoneyConPeriod: '',
bankContractNo: '',
bankName: '',
beOverdueMoneyAndPeriod: '',
createByName: '',
createDate: '',
createDept: '',
createDeptSid: '',
currentBeMoney: '',
currentPeriod: '',
customerName: '',
files: '',
filesList: [],
firstDate: '',
guaranteed: '',
illustrate: '',
inspect: '',
inspectSituation: '',
insuranceSituation: '',
kilometerDriven: '',
loanContractNo: '',
loanName: '',
loanSecondarySalesCost: {
arrearsAll: '',
bankSettleCost: '',
bankSettleCostAssume: '',
collectionCost: '',
costDescription: '',
debtDisposal: '',
files: [],
inspectYearCost: '',
inspectYearCostAssume: '',
insureCost: '',
insureCostAssume: '',
loanDeposit: '',
lossPrice: '',
otherCost: '',
otherCostAssume: '',
ownershipCost: '',
ownershipCostAssume: '',
stopCost: '',
stopCostAssume: '',
vehicleEvaluation: '',
vehPrice: '',
vehicleViolationCost: '',
vehicleViolationCostAssume: ''
},
loanSecondarySalesVehVoList: [],
locationName: '',
nper: '',
orgPath: '',
procInstId: '',
sid: '',
taskId: '',
unexpiredMoney: '',
useOrgSid: '',
userSid: '',
wheFundOccMoney: ''
},
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: ''
},
rules: {}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 500 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.viewTitle = '交回车辆二次销售申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.fetchBySid({ chooseSidList: [], orgPath: '', sid: sid, userSid: '' }).then((res) => {
if (res.success) {
this.formobj = res.data
if (this.formobj.loanSecondarySalesCost.files.length > 0) {
const bb = []
this.formobj.loanSecondarySalesCost.files.forEach((e) => {
bb.push(e.url)
})
this.formobj.loanSecondarySalesCost.files = bb
}
}
})
},
lookFinancial() {
req.selectDetailss({ businessSid: this.formobj.salesOrderSid }).then((res) => {
if (res.success) {
this.viewState = 2
this.$refs['divFinancial'].showInfo(res.data, '03')
}
})
},
resetState() {
this.viewState = 1
},
/** 确认撤回任务 */
openRevoke() {
this.$confirm('是否确认执行撤回操作', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleRevoke()
}).catch(() => {
this.$message({
type: 'info',
message: '已取消撤回'
})
})
},
/** 撤回任务 */
handleRevoke() {
req.revokeProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.span-sty {
width: 200px !important;
}
.addinputInfo {
margin-left: 190px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content .addinputInfo {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>
Loading…
Cancel
Save