Commit f26a783f authored by caimeng's avatar caimeng

协议条件有很多

parent 72d12d9f
......@@ -27,7 +27,7 @@
<el-table-column prop="planFu" label="服务费" ></el-table-column>
<el-table-column prop="planXi" label="利息" ></el-table-column>
<el-table-column prop="derateAmt" label="申请减免金额" ></el-table-column>
<el-table-column prop="gmtCreated" label="计划还款时间" :formatter="dateFormat" ></el-table-column>
<el-table-column prop="gmtCreated" label="计划还款时间" :formatter="transDateFormat" ></el-table-column>
<el-table-column prop="applyDesc" label="申请原因" ></el-table-column>
<el-table-column prop="applyUser" label="申请人" ></el-table-column>
<el-table-column label="操作">
......@@ -194,14 +194,7 @@
return array;
},
/*日期*/
dateFormat: function (row, column) {
var date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
//还款类型
typyFormat: function (row, column) {
......
......@@ -36,7 +36,7 @@
<el-table-column prop="bankAccount" label="还款银行账号"></el-table-column>
<el-table-column prop="cardBankName" label="还款银行账户名称"></el-table-column>
<el-table-column prop="backedAmt" label="还款金额" ></el-table-column>
<el-table-column prop="backedDate" label="还款时间" :formatter="dateFormat" ></el-table-column>
<el-table-column prop="backedDate" label="还款时间" :formatter="transDateFormat" ></el-table-column>
<el-table-column prop="statusStr" label="还款单状态" ></el-table-column>
<el-table-column prop="creator" label="创建人"></el-table-column>
<el-table-column label="操作">
......@@ -171,14 +171,7 @@
return array;
},
/*日期*/
dateFormat: function (row, column) {
var date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
//还款类型
typyFormat: function (row, column) {
......
......@@ -39,7 +39,7 @@
<el-table-column prop="cardOwnerAccount" label="收款银行卡"></el-table-column>
<el-table-column prop="openBankName" label="银行名"></el-table-column>
<el-table-column prop="statusStr" label="借款单状态"></el-table-column>
<el-table-column prop="gmtCreated" label="借款时间" :formatter="dateFormat"></el-table-column>
<el-table-column prop="gmtCreated" label="借款时间" :formatter="transDateFormat"></el-table-column>
<el-table-column prop="memo" label="备注"></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
......@@ -276,14 +276,7 @@ export default {
return array;
},
/*日期*/
dateFormat: function (row, column) {
var date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
//还款类型
typyFormat: function (row, column) {
......
......@@ -33,7 +33,7 @@
<div class="grid-content bg-purple">客户编号:{{loanRemindDetails.planAndBackVo.clientNo}}
</div>
</el-col>
</el-row>
<el-row :gutter="20">
......@@ -49,7 +49,7 @@
<div class="grid-content bg-purple">还款账户:{{loanRemindDetails.planAndBackVo.bankOwner}}</div>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="6">
......@@ -59,20 +59,20 @@
<div class="grid-content bg-purple">还款类型:{{loanRemindDetails.planAndBackVo.backedTypeStr}}
</div>
</el-col>
</el-row>
</el-collapse-item>
<el-collapse-item title="还款明细" name="3">
<el-table :data="loanBackedList" style="width: 100%" :default-sort="{prop: 'date', order: 'descending'}" :highlight-current-row="true" >
<el-table :data="loanBackedList" style="width: 100%" :default-sort="{prop: 'date', order: 'descending'}" :highlight-current-row="true" >
<el-table-column prop="planIndex" label="还款期数" ></el-table-column>
<el-table-column prop="planAmt" label="计划还款金额" ></el-table-column>
<el-table-column prop="planBen" label="计划还款本金" ></el-table-column>
<el-table-column prop="planFu" label="计划还款服务费" ></el-table-column>
<el-table-column prop="planXi" label="计划还款利息" ></el-table-column>
<el-table-column prop="planDate" label="计划还款时间" :formatter="dateFormat" sortable ></el-table-column>
<el-table-column prop="planDate" label="计划还款时间" :formatter="transDateFormat" sortable ></el-table-column>
<el-table-column prop="backedAmt" label="还款金额" ></el-table-column>
<el-table-column prop="backedBen" label="本金" ></el-table-column>
<el-table-column prop="backedFu" label="服务费" ></el-table-column>
......@@ -81,12 +81,12 @@
<el-table-column prop="statusStr" label="还款状态" ></el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item title="还款计划" name="4">
<el-table :data="loanCountBackList" style="width: 100%" :default-sort="{prop: 'date', order: 'descending'}" :highlight-current-row="true" >
<el-table :data="loanCountBackList" style="width: 100%" :default-sort="{prop: 'date', order: 'descending'}" :highlight-current-row="true" >
<el-table-column prop="planIndex" label="还款期数" ></el-table-column>
<el-table-column prop="planNo" label="计划还款编号" ></el-table-column>
<el-table-column prop="clientName" label="客户姓名" ></el-table-column>
......@@ -97,18 +97,18 @@
<el-table-column prop="planFu" label="计划还款服务费" ></el-table-column>
<el-table-column prop="planXi" label="计划还款利息" ></el-table-column>
<el-table-column prop="statusStr" label="还款计划状态" ></el-table-column>
<el-table-column prop="planDate" label="计划还款时间" :formatter="dateFormat" sortable ></el-table-column>
<el-table-column prop="planDate" label="计划还款时间" :formatter="transDateFormat" sortable ></el-table-column>
</el-table>
</el-collapse-item>
</el-collapse>
</div>
</div>
</template>
......@@ -160,7 +160,7 @@
resultStr: ""
},
},
byhLoan:{
loanAmt:'',
......@@ -210,8 +210,8 @@
if(res.data.result.planVo != null){
this.loanCountBackList = res.data.result.planVo ;
}
})
},
......@@ -228,7 +228,7 @@
})
},
//折叠情况
handleChange(val) {
......@@ -238,13 +238,6 @@
return moment(param).format("YYYY-MM-DD");
},
dateFormat: function (row, column) {
var date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD")
},
//还款类型
typyFormat: function (row, column) {
......
......@@ -17,7 +17,7 @@
</el-col>
</el-row>
</el-collapse-item>
<el-collapse-item title="申请信息" name="3">
<el-row :gutter="20">
<el-col :span="6">
......@@ -34,11 +34,11 @@
<el-col :span="6">
<div class="grid-content bg-purple">合同金额:{{ loanRemindDetails.applyVo.loanAmt }}</div>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="6">
<div class="grid-content bg-purple">放款金额:{{loanRemindDetails.applyVo.raiseAmt}}</div>
</el-col>
......@@ -52,7 +52,7 @@
<div class="grid-content bg-purple">期数:{{loanRemindDetails.applyVo.loanLimit}}</div>
</el-col>
</el-row>
</el-collapse-item>
<el-collapse-item title="还款计划" name="4">
......@@ -68,10 +68,10 @@
<el-table-column prop="planFu" label="计划还款服务费" ></el-table-column>
<el-table-column prop="planXi" label="计划还款利息" ></el-table-column>
<el-table-column prop="statusStr" label="计划还款状态" ></el-table-column>
<el-table-column prop="planDate" label="计划还款时间" :formatter="dateFormat" ></el-table-column>
<el-table-column prop="planDate" label="计划还款时间" :formatter="transDateFormat" ></el-table-column>
</el-table>
</div>
</el-collapse-item>
</el-collapse-item>
<el-collapse-item title="还款情况" name="5">
<div>
......@@ -87,20 +87,20 @@
<el-table-column prop="cardBankAccount" label="银行账户" ></el-table-column>
<el-table-column prop="bankOwner" label="还款银行账户" ></el-table-column>
<el-table-column prop="bankAccount" label="还款银行账号" ></el-table-column>
<el-table-column prop="backedDate" label="还款时间" :formatter="dateFormat" ></el-table-column>
<el-table-column prop="backedDate" label="还款时间" :formatter="transDateFormat" ></el-table-column>
<el-table-column prop="resultStr" label="还款结果" ></el-table-column>
<el-table-column prop="creator" label="创建人" ></el-table-column>
<el-table-column prop="memo" label="备注" ></el-table-column>
</el-table>
</div>
</el-collapse-item>
</el-collapse-item>
</el-collapse>
</div>
</div>
</template>
......@@ -193,7 +193,7 @@
serviceAmt: "",
contractAmt:""
}
},
byhLoan:{
loanAmt:'',
......@@ -252,11 +252,11 @@
planDateEnd: this.$route.query.planDateEnd,
}
})
},
/** 加载数据 */
remindData (params) {
},
//折叠情况
handleChange(val) {
......@@ -266,13 +266,6 @@
return moment(param).format("YYYY-MM-DD");
},
dateFormat: function (row, column) {
var date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD")
},
// 计算小数
accAdd(arg1,arg2){
......
......@@ -57,11 +57,11 @@
<el-table-column prop="bizTypeStr" label="项目类型"></el-table-column>
<el-table-column prop="clientNo" label="客户编号"></el-table-column>
<el-table-column prop="cardOwnerName" label="姓名"></el-table-column>
<el-table-column prop="loanCreateTime" label="申请时间" :formatter="dateFormat" sortable
<el-table-column prop="loanCreateTime" label="申请时间" :formatter="transDateFormat" sortable
></el-table-column>
<el-table-column prop="raiseAmt" label="放款金额"></el-table-column>
<el-table-column prop="cardBankAccount" label="放款银行卡"></el-table-column>
<el-table-column prop="raiseDate" label="放款时间" :formatter="dateFormat" sortable
<el-table-column prop="raiseDate" label="放款时间" :formatter="transDateFormat" sortable
></el-table-column>
<el-table-column prop="resultStr" label="放款结果"></el-table-column>
<el-table-column prop="confirmDesc" label="确认信息"></el-table-column>
......@@ -322,15 +322,7 @@ export default {
return return_hash;
},
//显示日期
dateFormat: function (row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD");
},
//重置
reset() {
......
......@@ -264,14 +264,7 @@ export default {
return array;
},
/*日期*/
dateFormat: function (row, column) {
var date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD")
},
//产品名称
productNameFormat: function (row, column) {
......
......@@ -413,14 +413,6 @@ export default {
return moment(date).format("YYYY-MM-DD ") + row.backedTime
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
/*日期*/
collectDateFormat: function (row, column) {
......
......@@ -75,7 +75,7 @@
<el-table-column align="center" prop="finishContent" label="处理意见"></el-table-column>
<el-table-column align="center" prop="clientName" label="客户姓名"></el-table-column>
<el-table-column align="center" prop="clientCell" label="手机号"></el-table-column>
<el-table-column align="center" prop="gmtCreated" label="反馈时间" :formatter="dateFormat"></el-table-column>
<el-table-column align="center" prop="gmtCreated" label="反馈时间" :formatter="transDateFormat"></el-table-column>
<el-table-column align="center" prop="feedType" label="反馈类型"></el-table-column>
<!-- <el-table-column align="center" prop="feedProduct" label="产品名称" :formatter="productNameFormat" ></el-table-column> -->
<el-table-column align="center" prop="feedSource" label="来源" :formatter="feedSourceFormat"></el-table-column>
......
......@@ -123,7 +123,7 @@
align="center"
prop="gmtCreated"
label="绑定时间"
:formatter="dateFormat"
:formatter="transDateFormat"
></el-table-column>
<el-table-column align="center" label="操作">
<template slot-scope="scope">
......@@ -339,14 +339,6 @@ export default {
headerStyle() {
return "tableHeaderStyle";
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property];
if (date === undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD HH:mm:ss");
},
// 查看绑卡记录
ownerBankBind(row, com, title) {
this.activeComponents = com;
......
......@@ -496,14 +496,6 @@ export default {
return row.cardBankAccount + "(" + row.cardBankName + ")";
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property];
if (date === undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD HH:mm:ss");
},
/*日期*/
dateFormats: function (row, column) {
let date = row[column.property];
if (date === undefined) {
......
......@@ -32,7 +32,7 @@
<el-table-column prop="finishContent" align="center" label="处理意见"></el-table-column>
<el-table-column prop="feedStatus" align="center" label="状态" :formatter="serviceFormat"></el-table-column>
<el-table-column prop="creater" align="center" label="处理人"></el-table-column>
<el-table-column prop="gmtCreated" align="center" label="记录时间" :formatter="dateFormat"></el-table-column>
<el-table-column prop="gmtCreated" align="center" label="记录时间" :formatter="transDateFormat"></el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button type="text" size="small" @click="updateQueDialog(scope.row)">修改</el-button>
......@@ -177,14 +177,6 @@ export default {
}
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date === undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
/*日期*/
dateFormats: function (row, column) {
let date = row[column.property]
if (date === undefined) {
......
......@@ -43,7 +43,7 @@
align="center"
prop="sendTime"
width="150"
:formatter="dateFormat"
:formatter="transDateFormat"
label="发送时间"
></el-table-column>
</el-table>
......@@ -110,14 +110,6 @@ export default {
this.data = result.data;
this.form.total = result.total;
}
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date === undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
handleClose() {
this.$emit("handleClose");
......@@ -144,4 +136,4 @@ export default {
align-items: center;
justify-content: center;
}
</style>
\ No newline at end of file
</style>
......@@ -12,7 +12,7 @@
style="width: 100%;">
<el-table-column align="center" prop="typeStr" label="操作类型"></el-table-column>
<el-table-column align="center" prop="memo" label="备注"></el-table-column>
<el-table-column align="center" prop="gmtCreated" label="操作时间" :formatter="dateFormat"></el-table-column>
<el-table-column align="center" prop="gmtCreated" label="操作时间" :formatter="transDateFormat"></el-table-column>
</el-table>
</div>
<div class="pages">
......@@ -84,14 +84,6 @@ export default {
}
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date === undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
/*日期*/
dateFormats: function (row, column) {
let date = row[column.property]
if (date === undefined) {
......
......@@ -14,7 +14,7 @@
:data="records"
stripe
style="width: 100%;">
<el-table-column align="center" prop="gmtCreated" label="签约时间" :formatter="dateFormat"></el-table-column>
<el-table-column align="center" prop="gmtCreated" label="签约时间" :formatter="transDateFormat"></el-table-column>
<el-table-column align="center" prop="operaterDesc" label="备注"></el-table-column>
</el-table>
</div>
......
......@@ -135,14 +135,6 @@ export default {
return row.cardBankAccount + "(" + row.cardBankName + ")";
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date === undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
/*日期*/
dateFormats: function (row, column) {
let date = row[column.property]
if (date === undefined) {
......
......@@ -133,14 +133,6 @@ export default {
return row.cardBankAccount + "(" + row.cardBankName + ")";
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date === undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
/*日期*/
dateFormats: function (row, column) {
let date = row[column.property]
if (date === undefined) {
......
......@@ -14,8 +14,8 @@
<el-table-column align="center" prop="refundAmt" label="退款金额"></el-table-column>
<el-table-column align="center" prop="refundStatusDesc" label="退款单状态"></el-table-column>
<el-table-column align="center" prop="creator" label="创建人"></el-table-column>
<el-table-column align="center" prop="gmtCreated" label="创建时间" :formatter="dateFormat"></el-table-column>
<el-table-column align="center" prop="gmtModified" label="更新时间" :formatter="dateFormat"></el-table-column>
<el-table-column align="center" prop="gmtCreated" label="创建时间" :formatter="transDateFormat"></el-table-column>
<el-table-column align="center" prop="gmtModified" label="更新时间" :formatter="transDateFormat"></el-table-column>
<el-table-column :show-overflow-tooltip="true" align="center" prop="customerMemo" label="退款说明"></el-table-column>
<el-table-column :show-overflow-tooltip="true" align="center" prop="memo" label="退款方式"></el-table-column>
</el-table>
......@@ -120,14 +120,6 @@ export default {
return moment(date).format("YYYY-MM-DD ") + row.backedTime
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date === undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
/*日期*/
dateFormats: function (row, column) {
let date = row[column.property]
if (date === undefined) {
......
......@@ -109,14 +109,6 @@ export default {
}
return this.$enumUtils.toMsg('CollectFeedStatue', status);
},
/*日期*/
dateFormat: function (row, column) {
let date = row[column.property]
if (date === undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD HH:mm:ss")
},
collectDateFormat: function (row, column) {
let date = row.collectContact.created;
if (date === undefined || date == null) {
......
......@@ -4,6 +4,10 @@
<div class="b-header-inner">
<h3>{{ title }}</h3>
</div>
<div class="b-header-extra">
<slot></slot>
</div>
</div>
</template>
......@@ -14,7 +18,7 @@ export default {
}
</script>
<style lang="less" scoped>
<style scoped>
.block-header {
display: flex;
......@@ -28,10 +32,10 @@ export default {
}
.b-header-inner {
flex:1;
display: flex;
align-items: center;
}
.b-header-inner::before {
content: "";
background-color: #155bd4;
......@@ -48,4 +52,12 @@ export default {
margin: 0;
padding: 0;
}
.b-header-extra{
flex:1;
display: flex;
align-items: center;
justify-content: flex-end;
}
</style>
......@@ -43,7 +43,7 @@
<el-table-column prop="cardOwnerName" label="银行账户主名"></el-table-column>
<el-table-column prop="cardOwnerMobile" label="银行卡电话号码"></el-table-column>
<el-table-column prop="cardBankAccount" label="银行卡号"></el-table-column>
<el-table-column prop="backedDate" label="还款时间" :formatter="dateFormat"></el-table-column>
<el-table-column prop="backedDate" label="还款时间" :formatter="transDateFormat"></el-table-column>
<el-table-column prop="confirmDesc" label="确认意见"></el-table-column>
</el-table>
</div>
......@@ -147,14 +147,7 @@ export default {
this.loanBackedList = res.data.data.records;
})
},
/*日期*/
dateFormat: function (row, column) {
var date = row[column.property]
if (date == undefined) {
return ''
}
return moment(date).format("YYYY-MM-DD")
},
//还款单状态
statusFormat: function (row, column) {
......
......@@ -6,7 +6,7 @@
<el-table-column type="index" width="60"></el-table-column>
<el-table-column prop="operatorBean.userName" sortable label="操作人"></el-table-column>
<el-table-column prop="operateType" sortable label="联系类型" :formatter="operateTypeFormat"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="联系时间" :formatter="dateFormat"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="联系时间" :formatter="transDateFormat"></el-table-column>
<el-table-column prop="loanNo" sortable label="借款编号"></el-table-column>
<el-table-column prop="operateDesc" sortable label="操作内容"></el-table-column>
</el-table>
......@@ -48,13 +48,6 @@ export default {
})
.catch(err => this.$$msg.err(err))
},
dateFormat: function (row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD HH:mm:ss");
},
operateTypeFormat: function (row, column) {
var operateType = row[column.property];
return this.$enumUtils.toMsg('ClientContactTypeEnum', operateType);
......
......@@ -39,7 +39,7 @@
<el-table-column prop="bindStatus" sortable label="状态" :formatter="statusFormat"></el-table-column>
<el-table-column v-if="openUserFlag" prop="useFlag" sortable label="今日放款卡"
:formatter="useFlagFormat"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="创建时间" :formatter="dateFormat"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="创建时间" :formatter="transDateFormat"></el-table-column>
<el-table-column v-if="openUserFlag" label="操作">
<template slot-scope="scope">
<el-button v-if="$permissionUtils.btnPermission('stickCard')" type="text" size="small"
......@@ -189,13 +189,6 @@ export default {
this.loadSearchData()
},
dateFormat: function (row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD HH:mm:ss");
},
useFlagFormat: function (row, column) {
var useFlag = row['useFlag'];
var returnStr = " ";
......
......@@ -22,7 +22,7 @@
<el-table-column prop="countFail" sortable label="失败数"></el-table-column>
<el-table-column prop="status" sortable label="状态" :formatter="statusFormat"></el-table-column>
<el-table-column prop="originDesc" sortable label="特征"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="创建时间" :formatter="dateFormat"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="创建时间" :formatter="transDateFormat"></el-table-column>
</el-table>
</div>
......@@ -115,13 +115,7 @@
visible: true,
};
},
dateFormat: function (row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD HH:mm:ss");
},
statusFormat: function (row, column) {
var status = row['status'];
return this.$enumUtils.toMsg('OriginIndexStateEnum', status);
......
......@@ -11,7 +11,7 @@
<el-table-column prop="originIndex" sortable label="客户批次号"></el-table-column>
<el-table-column prop="originDesc" sortable label="特征描述"></el-table-column>
<el-table-column prop="countSum" sortable label="客户总数"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="创建日期" :formatter="dateFormat"></el-table-column>
<el-table-column prop="gmtCreated" sortable label="创建日期" :formatter="transDateFormat"></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button type="text" size="small" @click="distributionBatch(scope.row)">分配批次</el-button>
......@@ -100,13 +100,7 @@
})
.catch(err => this.$$msg.err(err))
},
dateFormat: function (row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD");
},
/** 处理分页操作*/
handleCurrentChange() {
this.loadGroupingData();
......
......@@ -37,7 +37,7 @@
<el-table-column prop="bizGroup" sortable label="销售组"></el-table-column>
<el-table-column prop="groupDesc" sortable label="分配描述"></el-table-column>
<el-table-column prop="creator" sortable label="创建人"></el-table-column>
<el-table-column prop="gmtCreated" :formatter="dateFormat" sortable
<el-table-column prop="gmtCreated" :formatter="transDateFormat" sortable
label="创建日期"></el-table-column>
</el-table>
</div>
......@@ -135,13 +135,7 @@ export default {
this.$$msg.err(err)
})
},
dateFormat: function (row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD");
},
/** 关闭处理 */
handleClose() {
this.visible = false;
......
......@@ -25,7 +25,7 @@
<el-table-column prop="ownerMobile" label="预留手机号码" :formatter="nullFormat"></el-table-column>
<el-table-column prop="openSubBankName" label="支行信息" :formatter="nullFormat"></el-table-column>
<el-table-column prop="useFlag" label="状态" :formatter="useFlagFormat"></el-table-column>
<el-table-column prop="gmtCreated" label="创建时间" :formatter="dateFormat"></el-table-column>
<el-table-column prop="gmtCreated" label="创建时间" :formatter="transDateFormat"></el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button v-if="$permissionUtils.btnPermission('stickCard')" type="text" size="small"
......@@ -164,13 +164,7 @@
},
dateFormat: function (row, column) {
var date = row[column.property];
if (date == undefined) {
return "";
}
return moment(date).format("YYYY-MM-DD HH:mm:ss");
},
//业务组列表
lendBankCardList(record){
......
......@@ -22,7 +22,7 @@
<el-table-column prop="loginName" sortable label="登录用户"></el-table-column>
<el-table-column prop="userCell" sortable label="手机号码"></el-table-column>
<el-table-column prop="userName" sortable label="用户姓名"></el-table-column>
<el-table-column prop="lastLogin" :formatter="dateFormat" sortable label="最近登陆时间"></el-table-column>
<el-table-column prop="lastLogin" :formatter="transDateFormat" sortable label="最近登陆时间"></el-table-column>
<el-table-column align="center" prop="status" label="状态" :formatter="statusFormat"></el-table-column>
<el-table-column prop="memo" sortable label="备注信息"></el-table-column>
<el-table-column label="操作">
......
......@@ -11,7 +11,7 @@ export default {
return this.$enumUtils.toMsg('UserStatusEnum', status);
},
// 格式化时间
dateFormat: function (row, column) {
transDateFormat: function (row, column) {
const date = row[column.property];
if (date === undefined) return "";
return moment(date).format("YYYY-MM-DD HH:mm:ss");
......
......@@ -30,90 +30,90 @@ export default new Router({
mode: 'hash',
// mode: 'history',
routes: [
{ path: '/', redirect: '/login' },
{ path: '/login', name: 'Login', meta: { title: '登录', filter: false }, component: Login },
{path: '/', redirect: '/login'},
{path: '/login', name: 'Login', meta: {title: '登录', filter: false}, component: Login},
{
path: '/index',
name: 'Index',
component: Index,
meta: { title: '首页' },
meta: {title: '首页'},
children: [{
path: '/system/bankCardMaintenance',
name: 'BankCardMaintenance',
component: BankCardMaintenance,
meta: { title: '银行卡维护', filter: true }
},
path: '/system/bankCardMaintenance',
name: 'BankCardMaintenance',
component: BankCardMaintenance,
meta: {title: '银行卡维护', filter: true}
},
{
path: '/system/UserManagement',
name: 'UserManagement',
component: UserManagement,
meta: { title: '用户管理', filter: true }
meta: {title: '用户管理', filter: true}
},
{
path: '/system/CustomerDistribution',
name: 'CustomerDistribution',
component: CustomerDistribution,
meta: { title: '批次分配', filter: true }
meta: {title: '批次分配', filter: true}
},
{
path: '/system/DistributionBatchDialog',
name: 'DistributionBatchDialog',
component: DistributionBatchDialog,
meta: { title: '分配批次', filter: true }
meta: {title: '分配批次', filter: true}
},
{
path: '/system/LendBankCardList',
name: 'LendBankCardList',
component: LendBankCardList,
meta: { title: '出借人管理', filter: true }
meta: {title: '出借人管理', filter: true}
},
{
path: '/system/DutyBizGroupsListDialog',
name: 'DutyBizGroupsListDialog',
component: DutyBizGroupsListDialog,
meta: { title: '业务组列表', filter: true }
meta: {title: '业务组列表', filter: true}
},
{
path: '/byh/ByhPlanRemindDetails',
name: 'ByhPlanRemindDetails',
component: ByhPlanRemindDetails,
meta: { title: '还款计划详情', filter: true }
meta: {title: '还款计划详情', filter: true}
},
{
path: '/byh/ByhPlanRemindDetailNew',
name: 'ByhPlanRemindDetailNew',
component: ByhPlanRemindDetailNew,
meta: { title: '还款详情', filter: true }
meta: {title: '还款详情', filter: true}
},
{
path: '/byh/ByhLoanBackedDetails',
name: 'ByhLoanBackedDetails',
component: ByhLoanBackedDetails,
meta: { title: '还款详情', filter: true }
meta: {title: '还款详情', filter: true}
},
{
path: '/byh/ByhService',
name: 'ByhService',
component: ByhService,
meta: { title: '客服管理', filter: true }
meta: {title: '客服管理', filter: true}
},
{
path: '/byh/Controlswitch',
name: 'Controlswitch',
component: Controlswitch,
meta: { title: '亲家管理', filter: true }
meta: {title: '亲家管理', filter: true}
},
{
path: '/byh/ByhServiceDetail',
name: 'ByhServiceDetail',
component: ByhServiceDetail,
meta: { title: '客服详情', filter: true }
meta: {title: '客服详情', filter: true}
},
{
path: '/byh/ServiceProblem',
name: 'ServiceProblem',
component: ServiceProblem,
meta: { title: '意见反馈', filter: true }
meta: {title: '意见反馈', filter: true}
},
{
......@@ -134,35 +134,43 @@ export default new Router({
filter: true
}
},
{
path: '/byh/DerateCreate',
name: 'DerateCreate',
component: DerateCreate,
meta: { title: '减免单管理', filter: true }
},
{
path: '/byh/CreateLrdDerate',
name: 'CreateLrdDerate',
component: CreateLrdDerate,
meta: {
title: '创建百灵美选减免单',
filter: true
}
},
meta: {title: '减免单管理', filter: true}
},
{
path: '/byh/CreateLrdDerate',
name: 'CreateLrdDerate',
component: CreateLrdDerate,
meta: {
title: '创建百灵美选减免单',
filter: true
}
},
{
path: '/byh/RiskLevelList',
name: 'RiskLevelList',
component: resolve => require(['../components/byh/RiskLevelList.vue'], resolve),
meta: { title: '风险客户', filter: true }
meta: {title: '风险客户', filter: true}
},
{
path: '/byh/CreateRefund',
name: 'CreateRefund',
component: resolve => require(['../components/byh/CreateRefund.vue'], resolve),
meta: { title: '创建退款单', filter: true }
meta: {title: '创建退款单', filter: true}
},
{
path: '/custom/SignAgreement',
name: 'SignAgreement',
component: resolve => require(['../views/custom/SignAgreement.vue'], resolve),
meta: {
title: '协议签署',
filter: true
}
},
]
}
]
})
\ No newline at end of file
})
<template>
<div class="page-byh-service">
<block-header title="搜索"/>
<div class="page-search">
<el-form size="small" label-suffix=":" :inline="true" label-width="80px" ref="refForm" :model="form"
class="demo-form-inline">
<el-form-item prop="loanNo" label="借款编号">
<el-input
clearable
v-model.trim="form.loanNo"
@keyup.enter.native="onSubmit"
placeholder="请输入"></el-input>
</el-form-item>
<template v-if="EnumList.length">
<el-form-item prop="protocolType" label="协议类型">
<el-select clearable v-model="form.protocolType" @change="handleChange" clearable placeholder="请选择产品">
<el-option
v-for="item in EnumList"
:key="item.protocolType"
:label="item.protocolTypeName"
:value="item.protocolType"></el-option>
</el-select>
</el-form-item>
</template>
<el-form-item>
<el-button type="primary" @click="onSubmit">查询</el-button>
<el-button @click="onReset('refForm')">清空</el-button>
</el-form-item>
</el-form>
</div>
<!-- 列表 -->
<block-header title="协议列表">
<el-button type="primary" @click="handleCreateAgreement" icon="el-icon-plus" size="small">生成协议</el-button>
</block-header>
<div class="p-table">
<el-table border
:highlight-current-row="true"
:header-row-class-name="headerStyle" size="small" :data="list" stripe style="width: 100%;">
<el-table-column align="center" prop="tempName" label="模板名称"></el-table-column>
<el-table-column align="center" prop="protocolTypeName" label="协议类型"></el-table-column>
<el-table-column align="center" width="80" prop="clientName" label="客户姓名"></el-table-column>
<el-table-column align="center" prop="loanNo" label="借款编号"></el-table-column>
<el-table-column align="center" label="协议模板">
<template slot-scope="scope">
<span v-if="!scope.row.templateResponseList"></span>
<ul v-else>
<li v-for="(item,index) in scope.row.templateResponseList" :key="index">
<a class="link-active" :href="item.templateUrl"
target="_blank">{{ item.templateName }}({{ item.isSign === 'true' ? '已签署' : '未签署' }})</a>
</li>
</ul>
</template>
</el-table-column>
<el-table-column align="center" label="承诺书">
<template slot-scope="scope">
<span v-if="!scope.row.realTemplateResponse"></span>
<div v-else>
<a v-if="scope.row.realTemplateResponse.isSign==='true'" class="link-active"
:href="scope.row.realTemplateResponse.templateUrl" target="_blank">已签署</a>
<a v-else :href="scope.row.realTemplateResponse.templateUrl" class="link-null" target="_blank">未签署</a>
</div>
</template>
</el-table-column>
<el-table-column align="center" width="80" label="签署地址">
<template slot-scope="scope">
<a target="_blank"
:href="'http://m.jqtianxia.cn/sign_agreement/index.html#/login?loanNo='+scope.row.loanNo">点击预览</a>
</template>
</el-table-column>
<el-table-column align="center" label="附件">
<template slot-scope="scope">
<div v-if="!scope.row.annexUrl"></div>
<div v-else>
<span>1</span>
</div>
</template>
</el-table-column>
<el-table-column align="center" label="状态">
<template slot-scope="scope">
<div v-if="scope.row.invalid==='true'">生效中</div>
<div v-else>已作废</div>
</template>
</el-table-column>
<el-table-column align="center" width="90" prop="gmtCreated" :formatter="transDateFormat"
label="创建时间"></el-table-column>
<el-table-column align="center" width="90" prop="urlEffectiveTime" :formatter="transDateFormat"
label="有效时间"></el-table-column>
<el-table-column align="center" width="90" prop="urlEffectiveStr"
label="链接状态">
<template slot-scope="scope">
<div v-if="scope.row.urlEffectiveStr==='true'">链接有效</div>
<div v-else>链接过期</div>
</template>
</el-table-column>
<el-table-column align="center" label="操作">
<template v-if="scope.row.invalid==='true'" slot-scope="scope">
<el-button type="text" size="small" @click="handleCancel(scope.row)">协议作废</el-button>
<el-button v-if="scope.row.urlEffectiveStr!=='true'" type="text" size="small"
@click="handleDelay(scope.row)">延时
</el-button>
</template>
</el-table-column>
</el-table>
</div>
<!-- 生成协议弹框 -->
<template v-if="SignVisible">
<CreateAgreement
:enum-list="EnumList"
:dialog-visible="SignVisible"
@handleCallback="init"
@handleClose="SignVisible = false"/>
</template>
<!-- 延时弹框 -->
<template v-if="delayVisible">
<el-dialog title="链接有效期延时" width="35%" :visible.sync="delayVisible">
<el-form label-suffix=":" label-width="110px" :rules="delayRules" :model="delayForm">
<el-form-item prop="effectiveTime" label="延期时间">
<el-date-picker v-model="delayForm.effectiveTime" type="datetime" :picker-options="pickerOptions"
value-format="yyyy-MM-dd HH:mm:ss" placeholder="选择日期时间">
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="delayVisible = false">取 消</el-button>
<el-button type="primary" @click="delaySubmit">确 定</el-button>
</div>
</el-dialog>
</template>
</div>
</template>
<script>
import CreateAgreement from "./com/CreateAgreement";
export default {
name: "SignAgreement",
components: {
CreateAgreement
},
data() {
return {
delayVisible: false,
SignVisible: false,
EnumList: [],
total: 1,
list: [],
delayRules: {
effectiveTime: [
{required: true, message: "请选择时间", trigger: 'blur'}
],
},
form: {
"current": 1,
"size": 10,
"loanNo": "",
"protocolType": ""
},
delayItem: null,
delayForm: {
clientNo: "",
loanNo: "",
protocolType: "",
effectiveTime: '',
},
pickerOptions: {
disabledDate(time) {
return time.getTime() < Date.now();
},
selectableRange: "00:00:00 - 23:59:59",
}
}
},
created() {
// 初始化协议枚举
this.initAgreementEnum();
// 初始化列表
this.init();
},
methods: {
/** 表格样式 */
headerStyle() {
return "tableHeaderStyle";
},
/** 生成协议 */
handleCreateAgreement() {
this.SignVisible = true;
},
/** 初始化协议列表 **/
async init() {
try {
const params = this.form
const form = Object.assign({}, params)
const res = await this.$$post('/protocol/selectProtocolList', {...form})
if (res.status === 200 && res.data.success) {
const {data, total} = res.data.result
this.list = data;
this.total = total
} else {
this.$message.error(res.data.message);
}
} catch (err) {
this.$Message.error(err || '系统异常');
console.log(err, '初始化协议列表错误')
}
},
/** 初始化协议枚举列表*/
async initAgreementEnum() {
try {
const res = await this.$$get('/protocol/selectProtocolEnumList')
if (res.status === 200 && res.data.success) {
this.EnumList = res.data.result;
} else {
this.$message.error(res.data.message);
}
} catch (err) {
this.$message.error(res || '初始化协议枚举列表报错');
}
},
/** 协议作废 */
async handleCancel(row) {
// 加个确认弹框
this.$confirm("是否确认作废协议?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "primary",
}).then(async () => {
try {
const {clientNo, loanNo} = row
const params = {clientNo, loanNo}
const res = await this.$$post('/protocol/cancelProtocol', {...params})
if (res.status === 200 && res.data.success) {
this.$message.success('操作成功!');
await this.init()
} else {
this.$message.error(res.data.message);
}
} catch (err) {
this.$message.error(res || '初始化协议枚举列表报错');
}
}).catch(() => {
this.$message({
type: "info",
message: "已取消",
});
});
},
/** 延期弹框 */
handleDelay(row) {
const {loanNo, clientNo, protocolType} = row;
this.delayForm.loanNo = loanNo;
this.delayForm.clientNo = clientNo;
this.delayForm.protocolType = protocolType;
this.delayVisible = true;
},
/** 延期提交 */
async delaySubmit() {
try {
const form = this.delayForm
const res = await this.$$post('/protocol/urlDelayed', {...form})
if (res.status === 200 && res.data.success) {
this.$message.success('操作成功!');
await this.init()
} else {
this.$message.error(res.data.message);
}
} catch (err) {
this.$message.error(res || '延期失败');
}
},
/** 搜索提交 */
onSubmit() {
this.init()
},
/** 处理分页操作*/
handleCurrentChange() {
this.loanApplyList = this.backedData()
},
handleChange() {
}
}
}
</script>
<style scoped>
.link-active, .link-null {
text-decoration: none;
}
.link-active {
color: #155bd4;
}
ul, li {
list-style: none;
margin: 0;
padding: 0;
}
</style>
<template>
<el-dialog
:close-on-click-modal="false"
:close-on-press-escape="false"
title="生成协议链接"
center
width="50%"
:visible.sync="DialogVisible"
:before-close="handleCancel"
>
<div class="box-agreement">
<el-form label-suffix=":" :rules="rules" label-width="110px" :model="form" ref="form">
<el-row>
<el-col :span="16">
<template v-if="EnumList && EnumList.length">
<el-form-item prop="protocolType" label="协议类型">
<el-select style="width: 100%" @change="handleChangeProtocolType" clearable v-model="form.protocolType"
clearable
placeholder="请选择产品">
<el-option
v-for="item in EnumList"
:key="item.protocolType"
:label="item.protocolTypeName"
:value="item.protocolType"></el-option>
</el-select>
</el-form-item>
</template>
<template v-if="form.protocolType && form.protocolType!=='ZDBG_SILENT_SIGNED'">
<el-form-item prop="templateCode" label="模板名称">
<el-select style="width: 100%" clearable v-model="form.templateCode" clearable
placeholder="请选择协议模板">
<el-option
v-for="item in TemplateList"
:key="item.templateCode"
:label="item.templateName"
:value="item.templateCode"></el-option>
</el-select>
</el-form-item>
</template>
<el-form-item prop="isUploadProve" label="上传证明">
<el-radio-group v-model="form.isUploadProve">
<el-radio :label="true"></el-radio>
<el-radio :label="false"></el-radio>
</el-radio-group>
</el-form-item>
<!--账单变更-静默签-->
<template v-if="form.protocolType==='ZDBG_SILENT_SIGNED'">
<el-form-item prop="loanNo" label="借款编号">
<el-row>
<el-col :span="16">
<el-input placeholder="请输入借款编号" v-model="form.loanNo"></el-input>
</el-col>
<el-col :offset="2" v-if="form.protocolType && form.protocolType==='ZDBG_SILENT_SIGNED'" :span="6">
<div style="display: flex; justify-content: flex-end">
<el-button type="primary" @click="handleQueryLoan">查询</el-button>
</div>
</el-col>
</el-row>
</el-form-item>
<template v-if="LoanInfo">
<el-form-item style="margin-bottom: 0" label="服务费金额">
<div>{{ LoanInfo.splitServiceAmt }}</div>
</el-form-item>
<el-form-item style="margin-bottom: 0" label="服务费期数">
<div>{{ LoanInfo.splitPlanIndex }}</div>
</el-form-item>
<el-form-item style="margin-bottom: 0" label="融单费金额">
<div>{{ LoanInfo.splitBurdenAmt }}</div>
</el-form-item>
<el-form-item style="margin-bottom: 0" label="融单费期数">
<div>{{ LoanInfo.splitPlanIndex }}</div>
</el-form-item>
</template>
</template>
<!--金钱手签-->
<template v-else>
<!--借款编号-->
<el-form-item prop="loanNo" label="借款编号">
<el-input placeholder="请输入借款编号" v-model="form.loanNo"></el-input>
</el-form-item>
<!--减免协议-->
<template v-if="form.templateCode.indexOf('reduction')!==-1">
<el-form-item prop="reductionAmount" label="减免金额">
<el-input placeholder="请输入金额" v-model="form.reductionAmount"></el-input>
</el-form-item>
</template>
<!--退费申请-->
<template v-if="form.templateCode.indexOf('refund')!==-1">
<el-form-item prop="refundAmount" label="退费金额">
<el-input placeholder="请输入金额" v-model="form.refundAmount"></el-input>
</el-form-item>
<div v-if="form.templateCode==='dr-refund'">
<el-form-item prop="clientName" label="账户名称">
<el-input placeholder="请输入" v-model="form.clientName"></el-input>
</el-form-item>
<el-form-item prop="bankName" label="开户银行">
<el-input placeholder="请输入" v-model="form.bankName"></el-input>
</el-form-item>
<el-form-item prop="bankAccount" label="银行账号">
<el-input placeholder="请输入" v-model="form.bankAccount"></el-input>
</el-form-item>
</div>
</template>
<!--延期还款申请书-->
<template v-if="form.templateCode.indexOf('repayment')!==-1">
<el-form-item prop="extensionPlan" label="延期方案">
<el-input type="textarea" maxlength="300"
show-word-limit placeholder="请输入" v-model="form.extensionPlan"></el-input>
</el-form-item>
</template>
</template>
</el-col>
</el-row>
</el-form>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="handleCancel">取 消</el-button>
<el-button type="primary" @click="onSubmit">确 定</el-button>
</div>
</el-dialog>
</template>
<script>
export default {
name: "CreateAgreement",
props: {
DialogVisible: {
type: Boolean,
required: true,
},
EnumList: {
type: Array,
required: true,
}
},
data() {
return {
TemplateList: [],
LoanInfo: null,
rules: {
protocolType: [
{required: true, message: "请选择协议类型", trigger: 'change'}
],
loanNo: [
{required: true, message: "请输入借款编号", trigger: 'blur'}
],
templateCode: [
{required: true, message: "请选择模板", trigger: 'change'}
],
isUploadProve: [
{required: true, message: "请选择是否需要证明", trigger: 'change'}
],
refundAmount: [
{required: true, message: "请输入退费金额", trigger: 'blur'}
],
extensionPlan: [
{required: true, message: "请输入延期方案", trigger: 'blur'}
],
reductionAmount: [
{required: true, message: "请输入减免金额", trigger: 'blur'}
],
clientName: [
{required: true, message: "请输入账户名称", trigger: 'blur'}
],
bankName: [
{required: true, message: "请输入开户银行", trigger: 'blur'}
],
bankAccount: [
{required: true, message: "请输入银行账户", trigger: 'blur'}
],
},
form: {
bankAccount: "", // 银行卡号
bankName: "", // 银行
clientName: "", // 客户名称
extensionPlan: "",
isUploadProve: "",
loanNo: "",
protocolType: "",
reductionAmount: "",
refundAmount: "",
splitBurdenAmt: "",
splitServiceAmt: "",
splitSumIndex: '',
templateCode: ""
}
};
},
async created() {
},
methods: {
/** 取消 && 关闭弹框 */
handleCancel() {
this.$emit('handleClose')
},
/** 根据借款编号查询信息 */
async handleQueryLoan() {
if (!this.form.loanNo) {
this.$message.error('请输入借款编号');
return
}
try {
const loanNo = this.form.loanNo
const res = await this.$$get('/protocol/getCanChangePlan', {loanNo})
if (res.status === 200 && res.data.success) {
const result = res.data.result;
this.form.splitBurdenAmt = result.splitBurdenAmt + ''
this.form.splitSumIndex = result.splitSumIndex
this.form.splitServiceAmt = result.splitServiceAmt + ''
this.LoanInfo = res.data.result;
} else {
this.$message.error(res.data.message);
}
} catch (err) {
this.$message.error(res || '初始化协议枚举列表报错');
}
},
/** 协议类型下拉回调*/
handleChangeProtocolType(val) {
console.log(val)
this.form.templateCode = ''
this.EnumList.forEach(item => {
if (item.protocolType === val) {
this.TemplateList = item.responseList
}
})
},
/** 提交数据 */
onSubmit() {
this.$refs['form'].validate(async (valid) => {
if (!valid) {
return false
}
try {
const params = this.form
const res = await this.$$post('/protocol/createProtocol', {...params})
if (res.status === 200 && res.data.success) {
this.$message.success('操作成功!');
this.$emit('handleCallback')
setTimeout(() => {
this.handleCancel()
}, 1500)
} else {
this.$message.error(res.data.message);
}
} catch (err) {
this.$message.error(res || '初始化协议枚举列表报错');
}
})
}
},
};
</script>
<style lang="less" scoped>
.el-dialog__title {
font-size: 30px;
font-weight: 700;
}
.box-agreement {
height: 375px;
overflow: auto;
box-sizing: border-box;
padding: 0 50px;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment