Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
God 1 year ago
parent
commit
05c25ffcb7
  1. 11
      anrui-riskcenter-ui/src/api/advancerequest/advancerequest.js
  2. 17
      anrui-riskcenter-ui/src/api/overduevehicle/overduevehicle.js
  3. 6
      anrui-riskcenter-ui/src/router/index.js
  4. 240
      anrui-riskcenter-ui/src/views/advancerequest/advancedetails.vue
  5. 105
      anrui-riskcenter-ui/src/views/overduevehicle/overduevehicleByRisk.vue
  6. 12
      anrui-riskcenter-ui/src/views/overduevehicle/vehiclecollectionentry.vue

11
anrui-riskcenter-ui/src/api/advancerequest/advancerequest.js

@ -1,7 +1,7 @@
import request from '@/utils/request'
export default {
// 查询分页列表
// 垫款申请--查询分页列表
listPage: function(params) {
return request({
url: '/riskcenter/v1/loanbepadsincereapply/listPage',
@ -10,6 +10,15 @@ export default {
headers: { 'Content-Type': 'application/json' }
})
},
// 垫款明细查询--分页列表
dkListPage: function(params) {
return request({
url: '/riskcenter/v1/loanbepadsincereapply/dkListPage',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
})
},
saveOrUpdate: function(data) {
return request({
url: '/riskcenter/v1/loanbepadsincereapply/save',

17
anrui-riskcenter-ui/src/api/overduevehicle/overduevehicle.js

@ -28,6 +28,23 @@ export default {
headers: { 'Content-Type': 'application/json' }
})
},
// 初始化--实际还款人
initReaRepayment: function(data) {
return request({
url: '/riskcenter/v1/Loanbeoverdueveh/initReaRepayment',
method: 'post',
params: data
})
},
// 保存--实际还款人
maintReaRepayment: function(data) {
return request({
url: '/buscenter/v1/bussalesordervehicle/maintReaRepayment',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
})
},
// 初始化
init: function(data) {
return request({

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

@ -392,6 +392,12 @@ export const constantRoutes = [
component: () => import('@/views/advancerequest/advancerequest.vue'),
name: 'AdvanceRequest',
meta: { title: '垫款申请管理', noCache: true }
},
{
path: '/advancerequest/advancedetails',
component: () => import('@/views/advancerequest/advancedetails.vue'),
name: 'AdvanceDetails',
meta: { title: '垫款明细查询', noCache: true }
}
]
},

240
anrui-riskcenter-ui/src/views/advancerequest/advancedetails.vue

@ -0,0 +1,240 @@
<template>
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="垫款明细查询" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<!--Start查询列表部分-->
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<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.useOrgName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="销售部门">
<el-input v-model="listQuery.params.deptName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="垫款申请编号">
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="贷款合同编号">
<el-input v-model="listQuery.params.loanContractNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="车架号">
<el-input v-model="listQuery.params.vinNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="资方">
<el-input v-model="listQuery.params.bankName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="资方合同编号">
<el-input v-model="listQuery.params.bankContractNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="客户名称">
<el-input v-model="listQuery.params.custName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="贷款人">
<el-input v-model="listQuery.params.borrowerName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="期数">
<el-input v-model="listQuery.params.period" placeholder="" clearable/>
</el-form-item>
<el-form-item label="付款账户名称">
<el-input v-model="listQuery.params.paymentAccount" placeholder="" clearable/>
</el-form-item>
<el-form-item label="资方收款账户名称">
<el-input v-model="listQuery.params.bankCollectionAcc" placeholder="" clearable/>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" size="small" @click="handleFilter">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" size="small" @click="handleReset">重置</el-button>
</div>
</div>
</div>
<!--End查询列表部分-->
<div class="listtop">
<div class="tit">垫款明细列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" :border="true" style="width: 100%;">
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column prop="useOrgName" label="分公司" width="180px" align="center" />
<el-table-column prop="deptName" label="销售部门" width="180px" align="center" />
<el-table-column prop="billNo" label="垫款申请编号" width="180px" align="center" />
<el-table-column prop="loanContractNo" label="贷款合同编号" width="180px" align="center" />
<el-table-column prop="vinNo" label="车架号" width="180px" align="center" />
<el-table-column prop="bankName" label="资方" width="180px" align="center" />
<el-table-column prop="bankContractNo" label="资方合同编号" width="180px" align="center" />
<el-table-column prop="customerName" label="客户名称" width="180px" align="center" />
<el-table-column prop="borrowerName" label="贷款人" width="180px" align="center" />
<el-table-column prop="period" label="期数" width="180px" align="center" />
<el-table-column prop="sysBeMoney" label="平台逾期月还" width="180px" align="center" />
<el-table-column prop="bankBeMoney" label="资方逾期月还" width="180px" align="center" />
<el-table-column prop="bankBeInter" label="资方逾期利息" width="180px" align="center" />
<el-table-column prop="padMoney" label="垫款金额" width="180px" align="center" />
<el-table-column prop="paymentAccount" label="付款账户名称" width="180px" align="center" />
<el-table-column prop="paymentNum" label="付款账号" width="180px" align="center" />
<el-table-column prop="bankCollectionAcc" label="资方收款账户名称" width="180px" align="center" />
<el-table-column prop="bankCollectionNum" label="资方收款账号" width="180px" align="center" />
<el-table-column prop="remarks" label="备注" min-width="200" header-align="center" align="left" />
</el-table>
</div>
<!--End 主页面主要部分-->
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<!--End查询列表部分-->
</div>
</div>
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/advancerequest/advancerequest'
export default {
name: 'AdvanceDetails',
components: {
Pagination,
pageye,
ButtonBar
},
data() {
return {
btndisabled: false,
btnList: [
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
list: [],
sids: [], // SIDs
FormLoading: false,
listLoading: false,
//
listQuery: {
current: 1,
size: 10,
total: 0,
params: {
bankCollectionAcc: '',
bankName: '',
billNo: '',
borrowerName: '',
custName: '',
loanContractNo: '',
menuUrl: '',
orgPath: '',
paymentAccount: '',
period: '',
useOrgName: '',
userSid: '',
vinNo: ''
}
}
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doClose':
this.doClose()
break
default:
break
}
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.dkListPage(this.listQuery).then(response => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 10,
total: 0,
params: {
bankCollectionAcc: '',
bankName: '',
billNo: '',
borrowerName: '',
custName: '',
loanContractNo: '',
menuUrl: '',
orgPath: '',
paymentAccount: '',
period: '',
useOrgName: '',
userSid: '',
vinNo: ''
}
}
this.getList()
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
</script>
<style scoped>
</style>

105
anrui-riskcenter-ui/src/views/overduevehicle/overduevehicleByRisk.vue

@ -106,6 +106,57 @@
<collectionmeasuresAdd v-show="viewState == 3" ref="divCollection" @doback="resetState" @reloadlist="getList"/>
<!-- 查看车辆历史催收记录 -->
<vehiclecollectionrecords v-show="viewState == 4" ref="divRecords" @doback="resetState"/>
<!-- 维护还款操作人 -->
<el-dialog title="录入实际还款人" :visible.sync="dialogVisible" width="70%">
<el-form ref="form_obj" :model="formobj" class="formadd">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="5" class="tleftb">
<span>车架号</span>
</el-col>
<el-col :span="7">
<el-form-item><span>{{ formobj.vinNo }}</span></el-form-item>
</el-col>
<el-col :span="5" class="tleftb">
<span>车牌号</span>
</el-col>
<el-col :span="7">
<el-form-item><span>{{ formobj.carNum }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="5" class="tleftb">
<span>客户名称</span>
</el-col>
<el-col :span="7">
<el-form-item><span>{{ formobj.custName }}</span></el-form-item>
</el-col>
<el-col :span="5" class="tleftb">
<span>贷款人</span>
</el-col>
<el-col :span="7">
<el-form-item><span>{{ formobj.borrerName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="5" class="tleftb">
<span>实际还款人名称</span>
</el-col>
<el-col :span="7">
<el-form-item><el-input v-model="formobj.reaRepaymentName" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="5" class="tleftb">
<span>实际还款人电话</span>
</el-col>
<el-col :span="7">
<el-form-item><el-input v-model="formobj.reaRepaymentPhone" clearable placeholder="" /></el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer" style="text-align: center">
<el-button type="primary" size="small" @click="handleSave()">保存</el-button>
<el-button size="small" @click="dialogVisible = false">关闭</el-button>
</div>
</el-dialog>
</div>
</template>
@ -131,7 +182,15 @@ export default {
data() {
return {
btndisabled: false,
dialogVisible: false,
btnList: [
{
type: 'primary',
size: 'small',
icon: '',
btnKey: 'toMaintain',
btnLabel: '维护还款操作人'
},
{
type: 'primary',
size: 'small',
@ -204,6 +263,15 @@ export default {
collectionStartDate: '',
collectionEndDate: ''
}
},
formobj: {
borrerName: '',
carNum: '',
custName: '',
reaRepaymentName: '',
reaRepaymentPhone: '',
saleVehSid: '',
vinNo: ''
}
}
},
@ -227,6 +295,9 @@ export default {
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'toMaintain':
this.toMaintain()
break
case 'toCollection':
this.toCollection()
break
@ -304,6 +375,40 @@ export default {
this.viewState = 4
this.$refs['divRecords'].showInfo(row)
},
toMaintain() {
if (this.sids.length === 1) {
this.dialogVisible = true
this.formobj = {
borrerName: '',
carNum: '',
custName: '',
reaRepaymentName: '',
reaRepaymentPhone: '',
saleVehSid: '',
vinNo: ''
}
req.initReaRepayment({ saleVehSid: this.sids[0] }).then((resp) => {
if (resp.success) {
this.formobj = resp.data
}
})
} else {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行操作' })
}
},
handleSave() {
if (this.formobj.reaRepaymentName === '' || this.formobj.reaRepaymentPhone === '') {
this.$message({ showClose: true, type: 'error', message: '实际还款人名称和电话不能为空' })
return
}
req.maintReaRepayment(this.formobj).then((res) => {
if (res.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.dialogVisible = false
this.getList()
}
})
},
toCollection() {
if (this.sids.length === 1) {
this.viewState = 2

12
anrui-riskcenter-ui/src/views/overduevehicle/vehiclecollectionentry.vue

@ -31,10 +31,15 @@
<div class="title">车辆列表</div>
<el-table :key="tableKey" :data="formobj.loanBeCollectionRecordVehInitList" :index="index" border style="width: 100%">
<el-table-column fixed width="80" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed width="80" label="操作" align="center">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="handleDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column fixed prop="vinNo" label="车架号" align="center" width="100" />
<el-table-column prop="carNum" label="车牌号" align="center" width="100" />
<el-table-column prop="custName" label="客户名称" align="center" width="100" />
<el-table-column prop="custPhone" label="联系电话" align="center" width="100" />
<el-table-column prop="custNameAndPhone" label="客户及电话" align="center" width="140" />
<el-table-column prop="reaRepaymentNameAndPhone" label="实际还款人及电话" align="center" width="170" />
<el-table-column prop="loanContractNo" label="贷款合同号" align="center" width="140"/>
<el-table-column prop="bankName" label="资方" align="center" width="100" />
<el-table-column prop="firstBeDate" label="首次逾期日期" align="center" width="140" />
@ -319,6 +324,9 @@ export default {
}
})
},
handleDelete(index) {
this.formobj.loanBeCollectionRecordVehInitList.splice(index, 1)
},
collectionTypeChange(value) {
const choose = this.collectionType_list.filter((item) => item.dictKey === value)
if (choose.length > 0 && choose !== null) {

Loading…
Cancel
Save