Browse Source

完善还款计划表--增加导出功能、列表增加部分字段、办理页面增加其中一台车不同功能

master
yunuo970428 12 months ago
parent
commit
36d6553a5d
  1. 10
      anrui-riskcenter-ui/src/api/repaymentschedule/repaymentschedule.js
  2. 90
      anrui-riskcenter-ui/src/views/repaymentschedule/repaymentschedule.vue
  3. 130
      anrui-riskcenter-ui/src/views/repaymentschedule/repaymentscheduleAdd.vue

10
anrui-riskcenter-ui/src/api/repaymentschedule/repaymentschedule.js

@ -51,5 +51,15 @@ export default {
data: data,
headers: { 'Content-Type': 'application/json' }
})
},
// 导出
exportExcel(data) {
return request({
url: '/buscenter/v1/bussalesorderloancontract/exportExcel',
method: 'post',
responseType: 'blob', // 表明返回服务器返回的数据类型
data: data,
headers: { 'Content-Type': 'application/json' }
})
}
}

90
anrui-riskcenter-ui/src/views/repaymentschedule/repaymentschedule.vue

@ -31,6 +31,16 @@
<el-form-item label="金融产品">
<el-input v-model="listQuery.params.policyName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="生成状态">
<el-select v-model="listQuery.params.builded" placeholder="请选择" clearable>
<el-option v-for="item in builded_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"></el-option>
</el-select>
</el-form-item>
<el-form-item label="生成日期">
<el-date-picker v-model="listQuery.params.createStartDate" :picker-options="pickerStartData(listQuery.params.createEndDate)" 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.createEndDate" :picker-options="pickerEndData(listQuery.params.createStartDate)" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" size="small" @click="handleFilter">查询
@ -55,16 +65,21 @@
<!-- <el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column prop="builded" label="是否已生成还款计划表" align="center" width="200"/>
<el-table-column prop="builded" label="生成状态" align="center" width="100"/>
<el-table-column prop="repaymentCreateTime" label="生成日期" align="center" width="100"/>
<el-table-column prop="useOrgName" label="分公司" align="center" width="120"/>
<el-table-column prop="orgName" label="销售部门" align="center" width="120"/>
<el-table-column prop="staffName" label="销售专员" align="center" width="100"/>
<el-table-column prop="loanContractNo" label="消贷合同编号" align="center" width="160"/>
<el-table-column prop="borrowerName" label="贷款人" align="center" width="100"/>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="100"/>
<el-table-column prop="vinNo" label="车架号" align="center" min-width="180"/>
<el-table-column prop="cwDeptNo" label="财务部门编码" align="center" width="120"/>
<el-table-column prop="bankName" label="资方" align="center" width="100"/>
<el-table-column prop="bankContractNo" label="资方合同号" align="center" width="160"/>
<el-table-column prop="policyName" label="金融产品" align="center" width="300"/>
<el-table-column prop="mainAmount" label="主产品还款总金额" align="center" width="160"/>
<el-table-column prop="otherAmount" label="其它融还款总金额" align="center" width="160"/>
<el-table-column prop="amountAll" label="还款总计" align="center" width="120"/>
</el-table>
</div>
<!--End 主页面主要部分-->
@ -120,6 +135,13 @@ export default {
btnKey: 'downloadRepaymentPlan',
btnLabel: '下载还款计划表'
},
{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'doExport',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
@ -134,6 +156,16 @@ export default {
tableKey: 0,
list: [],
sids: [],
builded_list: [
{
dictKey: '1',
dictValue: '是'
},
{
dictKey: '0',
dictValue: '否'
}
],
state_list: [],
multipleSelection: [],
FormLoading: false,
@ -153,7 +185,10 @@ export default {
loanContractNo: '',
borrowerName: '',
bankName: '',
policyName: ''
policyName: '',
createStartDate: '',
createEndDate: '',
builded: ''
}
}
}
@ -177,6 +212,18 @@ export default {
})
},
methods: {
//
pickerStartData(newtime) {
return {
disabledDate(time) { return time.getTime() > new Date(newtime) - 1000 * 60 * 60 * 24 }
}
},
//
pickerEndData(newtime) {
return {
disabledDate(time) { return time.getTime() < new Date(newtime) - 1000 * 60 * 60 * 24 }
}
},
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
@ -198,6 +245,9 @@ export default {
case 'doClose':
this.doClose()
break
case 'doExport':
this.doExport()
break
default:
break
}
@ -262,7 +312,10 @@ export default {
loanContractNo: '',
borrowerName: '',
bankName: '',
policyName: ''
policyName: '',
createStartDate: '',
createEndDate: '',
builded: ''
}
}
this.getList()
@ -319,6 +372,35 @@ export default {
this.$message({ showClose: true, type: 'error', message: '请至少选择一条记录进行下载操作' })
}
},
doExport() {
if (this.listQuery.params.createStartDate === '' || this.listQuery.params.createEndDate === '') {
this.$message({ showClose: true, type: 'error', message: '查询条件中的生成日期请选择开始日期和截止日期' })
return
}
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.exportExcel(this.listQuery.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '消贷合同列表' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
toInfo(row) {
this.viewState = 3
this.$refs['divInfo'].showInfo(row)

130
anrui-riskcenter-ui/src/views/repaymentschedule/repaymentscheduleAdd.vue

@ -98,6 +98,45 @@
</el-col>
</el-row>
</div>
<div v-if="different">
<el-row>
<el-col :span="24">
<el-form-item style="text-align: right"><el-checkbox style="margin-right: 5px" v-model="formobj.isDifferent" />其中一台车不同</el-form-item>
</el-col>
</el-row>
<div v-if="formobj.isDifferent">
<div class="title">主金融产品<span>{{ (formobj.policyName) }}</span></div>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>首期月还</div>
<el-form-item prop="singleMainFirstRepay"><el-input class="addinputInfo addinputw" v-model="formobj.singleMainFirstRepay" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>期间月还</div>
<el-form-item prop="singleMainMidRepay"><el-input class="addinputInfo addinputw" v-model="formobj.singleMainMidRepay" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>末期月还</div>
<el-form-item prop="singleMainLastRepay"><el-input class="addinputInfo addinputw" v-model="formobj.singleMainLastRepay" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<div class="title">其它融<span>({{ formobj.otherPolicyName }})</span></div>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>首期月还</div>
<el-form-item prop="singleOtherFirstRepay"><el-input class="addinputInfo addinputw" v-model="formobj.singleOtherFirstRepay" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>期间月还</div>
<el-form-item prop="singleOtherMidRepay"><el-input class="addinputInfo addinputw" v-model="formobj.singleOtherMidRepay" clearable placeholder=""/></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>末期月还</div>
<el-form-item prop="singleOtherLastRepay"><el-input class="addinputInfo addinputw" v-model="formobj.singleOtherLastRepay" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
</div>
</div>
</el-form>
</div>
</div>
@ -182,9 +221,76 @@ export default {
}
}
}
var singleMainFirstRepay = (rule, value, callback) => {
if (value === '') {
callback(new Error('主金融产品期间月还不能为空'))
} else {
if (value == '0') {
callback(new Error('主金融产品期间月还不能为零'))
} else {
callback()
}
}
}
var singleMainMidRepay = (rule, value, callback) => {
if (value === '') {
callback(new Error('主金融产品期间月还不能为空'))
} else {
if (value == '0') {
callback(new Error('主金融产品期间月还不能为零'))
} else {
callback()
}
}
}
var singleMainLastRepay = (rule, value, callback) => {
if (value === '') {
callback(new Error('主金融产品末期月还不能为空'))
} else {
if (value == '0') {
callback(new Error('主金融产品末期月还不能为零'))
} else {
callback()
}
}
}
var singleOtherFirstRepay = (rule, value, callback) => {
if (value === '') {
callback(new Error('其它融首期月还不能为空'))
} else {
if (value == '0') {
callback(new Error('其它融首期月还不能为零'))
} else {
callback()
}
}
}
var singleOtherMidRepay = (rule, value, callback) => {
if (value === '') {
callback(new Error('其它融期间月还不能为空'))
} else {
if (value == '0') {
callback(new Error('其它融期间月还不能为零'))
} else {
callback()
}
}
}
var singleOtherLastRepay = (rule, value, callback) => {
if (value === '') {
callback(new Error('其它融末期月还不能为空'))
} else {
if (value == '0') {
callback(new Error('其它融末期月还不能为零'))
} else {
callback()
}
}
}
return {
viewState: 1,
submitdisabled: false,
different: false,
formobj: {
salesOrderSid: '',
solutionsSid: '',
@ -208,6 +314,13 @@ export default {
otherMidRepay: '',
otherLastRepay: '',
isOtherPolicy: '',
isDifferent: false,
singleMainFirstRepay: '',
singleMainMidRepay: '',
singleMainLastRepay: '',
singleOtherFirstRepay: '',
singleOtherMidRepay: '',
singleOtherLastRepay: '',
userSid: '',
solutionsDetailsssVo: []
},
@ -219,6 +332,12 @@ export default {
otherFirstRepay: [{ required: true, validator: otherFirstRepay, trigger: 'blur' }],
otherMidRepay: [{ required: true, validator: otherMdRepay, trigger: 'blur' }],
otherLastRepay: [{ required: true, validator: otherLastRepay, trigger: 'blur' }],
singleMainFirstRepay: [{ required: true, validator: singleMainFirstRepay, trigger: 'blur' }],
singleMainMidRepay: [{ required: true, validator: singleMainMidRepay, trigger: 'blur' }],
singleMainLastRepay: [{ required: true, validator: singleMainLastRepay, trigger: 'blur' }],
singleOtherFirstRepay: [{ required: true, validator: singleOtherFirstRepay, trigger: 'blur' }],
singleOtherMidRepay: [{ required: true, validator: singleOtherMidRepay, trigger: 'blur' }],
singleOtherLastRepay: [{ required: true, validator: singleOtherLastRepay, trigger: 'blur' }],
otherBankNo: [{ required: true, message: '其它融资方合同号不能为空', trigger: 'blur' }],
otherRepayDate: [{ required: true, message: '其它融首期还款日不能为空', trigger: 'change' }]
}
@ -232,6 +351,9 @@ export default {
req.loanCreateSchedule({ salesOrderSid: sid }).then((res) => {
if (res.success) {
this.formobj = res.data
if (parseInt(this.formobj.vehCount) > 1) {
this.different = true
}
}
})
},
@ -295,10 +417,18 @@ export default {
otherMidRepay: '',
otherLastRepay: '',
isOtherPolicy: '',
isDifferent: false,
singleMainFirstRepay: '',
singleMainMidRepay: '',
singleMainLastRepay: '',
singleOtherFirstRepay: '',
singleOtherMidRepay: '',
singleOtherLastRepay: '',
userSid: '',
solutionsDetailsssVo: []
}
this.submitdisabled = false
this.different = false
this.$emit('doback')
}
}

Loading…
Cancel
Save