Merge branch 'main' into 'stg'
Main See merge request cloud-mediate/mediate-manage-web!13
This commit is contained in:
commit
0e3caa9b9f
@ -73,12 +73,14 @@
|
||||
</el-table-column>
|
||||
<el-table-column label="跟进情况" width="140">
|
||||
<template slot-scope="scope">
|
||||
{{$util.getTelephoneTypeData(scope.row.linkedSituation).label}}
|
||||
{{scope.row.linkedSituation != null ? $util.getTelephoneTypeData(scope.row.linkedSituation).label :''}}
|
||||
<!-- {{$util.getTelephoneTypeData(scope.row.linkedSituation).label}} -->
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="调解进度" width="140">
|
||||
<template slot-scope="scope">
|
||||
{{ materialTypeOptions.find(item => item.value == scope.row.mediateStatus).label }}
|
||||
{{scope.row.mediateStatus != null ? materialTypeOptions.find(item => item.value == scope.row.mediateStatus).label : ''}}
|
||||
<!-- {{ materialTypeOptions.find(item => item.value == scope.row.mediateStatus).label }} -->
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="沟通对象" width="350" show-overflow-tooltip>
|
||||
@ -593,6 +595,7 @@ export default {
|
||||
this.communicationRecord.push(item)
|
||||
})
|
||||
})
|
||||
console.log(this.communicationRecord,'this.communicationRecord')
|
||||
// this.communicationRecord = res
|
||||
}
|
||||
})
|
||||
|
||||
@ -165,7 +165,6 @@ import apipk from "@/services/casePackageManagement";
|
||||
|
||||
handleSubmit(){
|
||||
if(!this.$clickThrottle()) { return }//防止重复点击
|
||||
|
||||
this.$refs.ruleFormBase.validate((valid) => {
|
||||
if (valid){
|
||||
let data = {
|
||||
@ -176,9 +175,7 @@ import apipk from "@/services/casePackageManagement";
|
||||
this.$parent.getCaseInfoList(1)
|
||||
this.$message.success("批量导入案件成功,导入错误案件请在错误修复里面进行查看!");
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
@ -216,7 +216,13 @@ import caseapi from "@/services/caseManagement";
|
||||
}).catch(() => {});
|
||||
},
|
||||
handleCaseShow(scope){
|
||||
this.fileDialog = {showfile:{url:scope.row.proofUrl},filelist:[]}
|
||||
|
||||
//还款凭证相关
|
||||
this.$fetchApi.viewFullFile({path: scope.row.proofUrl}).then((res) => {
|
||||
this.fileDialog = {showfile: {url: res}, filelist: []}
|
||||
});
|
||||
|
||||
// this.fileDialog = {showfile:{url:scope.row.proofUrl},filelist:[]}
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
@ -121,8 +121,62 @@
|
||||
<div class="descriptions-t-item-l color-86909C">{{item.name}}:</div>
|
||||
<div class="descriptions-t-item-r">{{item.fieldValue}}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="descriptions-t mt-16">
|
||||
<div class="f16 f-weight600 descriptions-t-title">案件信息</div>
|
||||
<div class="flex-row descriptions-t-item">
|
||||
<div class="descriptions-t-item-l color-86909C">案件包名称:</div>
|
||||
<div class="descriptions-t-item-r">{{baseInfo.casePkg.pkgName}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item bgColor-F7F8FA">
|
||||
<div class="descriptions-t-item-l color-86909C">金融机构:</div>
|
||||
<div class="descriptions-t-item-r">{{baseInfo.casePkg.entrustingAgencyName}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item">
|
||||
<div class="descriptions-t-item-l color-86909C">委案开始日期:</div>
|
||||
<div class="descriptions-t-item-r">{{baseInfo.casePkg.planStartTime}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item bgColor-F7F8FA">
|
||||
<div class="descriptions-t-item-l color-86909C">委案结束日期:</div>
|
||||
<div class="descriptions-t-item-r">{{baseInfo.casePkg.planEndTime}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item">
|
||||
<div class="descriptions-t-item-l color-86909C">委案渠道:</div>
|
||||
<div class="descriptions-t-item-r">{{baseInfo.casePkg.channel}}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="descriptions-t mt-16">
|
||||
<div class="f16 f-weight600 descriptions-t-title">代理人信息</div>
|
||||
<div v-for="(item,index) in AgentData" :key="index">
|
||||
<div class="flex-row descriptions-t-item">
|
||||
<div class="descriptions-t-item-l color-86909C">姓名:</div>
|
||||
<div class="descriptions-t-item-r">{{item.name}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item bgColor-F7F8FA">
|
||||
<div class="descriptions-t-item-l color-86909C">身份证号:</div>
|
||||
<div class="descriptions-t-item-r">{{item.cardNo}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item">
|
||||
<div class="descriptions-t-item-l color-86909C">手机号码:</div>
|
||||
<div class="descriptions-t-item-r">{{item.phone}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item bgColor-F7F8FA">
|
||||
<div class="descriptions-t-item-l color-86909C">电子邮箱:</div>
|
||||
<div class="descriptions-t-item-r">{{item.mail}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item">
|
||||
<div class="descriptions-t-item-l color-86909C">地址:</div>
|
||||
<div class="descriptions-t-item-r">{{item.addr}}</div>
|
||||
</div>
|
||||
<div class="flex-row descriptions-t-item bgColor-F7F8FA">
|
||||
<div class="descriptions-t-item-l color-86909C">代理人类型:</div>
|
||||
<div class="descriptions-t-item-r">{{item.type}}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- 共债 -->
|
||||
@ -306,6 +360,7 @@
|
||||
</template>
|
||||
<script>
|
||||
import api from "@/services/caseManagement";
|
||||
import contactPerson from "@/services/contactPerson";
|
||||
export default {
|
||||
components: {
|
||||
showFile: () => import('../../../components/showFile.vue'),//
|
||||
@ -340,6 +395,7 @@ export default {
|
||||
visiblemediatRecordObj:null,
|
||||
eventDialog: {caseId: ''},
|
||||
leftActive: 1,
|
||||
AgentData:[],
|
||||
fileList: [],
|
||||
mediationRecord: [],//调解记录
|
||||
baseInfo: {},//基本信息
|
||||
@ -381,6 +437,7 @@ export default {
|
||||
this.eventDialog.caseId = this.caseId
|
||||
|
||||
this.getCaseInfoById();//获取详情
|
||||
this.getAgentList()
|
||||
this.getmediate_record()
|
||||
},
|
||||
beforeDestroy() {
|
||||
@ -389,6 +446,21 @@ export default {
|
||||
// }
|
||||
},
|
||||
methods: {
|
||||
// 代理人列表数据
|
||||
getAgentList() {
|
||||
let dataJson = {
|
||||
size: 9999,
|
||||
current: 1,
|
||||
caseId: this.caseId
|
||||
}
|
||||
|
||||
contactPerson.agentPage(dataJson).then(res => {
|
||||
if (!res.code) {
|
||||
this.AgentData = res.records
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
debtorEntityCardNo(datalist, len) {
|
||||
let datacardno = ''
|
||||
let dataphone = ''
|
||||
|
||||
@ -46,7 +46,7 @@
|
||||
</upload-file>
|
||||
</el-form-item>
|
||||
<el-form-item label="">
|
||||
<el-button @click="AddFlag = false" size="small">取消</el-button>
|
||||
<el-button @click="AddFlag = false;fileList=[]" size="small">取消</el-button>
|
||||
<el-button type="primary" @click="handleSubmitRepayment()" size="small">保存</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@ -115,8 +115,8 @@
|
||||
</el-form>
|
||||
<span slot="reference" class="color-86909C"><i class="el-icon-medal"></i> 效验</span>
|
||||
</el-popover>
|
||||
<span class="color-86909C ml-16" v-if="proofitem.status.code != 1" @click="updateClick(index,proofitem)"><i class="el-icon-edit"></i> 编辑</span>
|
||||
<span class="color-86909C ml-16" v-if="proofitem.status.code != 1" @click="DeleteClick(proofitem)"><i class="el-icon-delete"></i> 删除</span>
|
||||
<span class="color-86909C ml-16 cursor-pointer" v-if="proofitem.status.code != 1" @click="updateClick(index,proofitem)"><i class="el-icon-edit"></i> 编辑</span>
|
||||
<span class="color-86909C ml-16 cursor-pointer" v-if="proofitem.status.code != 1" @click="DeleteClick(proofitem)"><i class="el-icon-delete"></i> 删除</span>
|
||||
</div>
|
||||
</div>
|
||||
</el-form>
|
||||
@ -265,6 +265,7 @@ import api from "@/services/caseManagement";
|
||||
updateClick(index,proofitem){
|
||||
this.updateRow = index;
|
||||
this.repaymentObj = proofitem
|
||||
this.repaymentObj.mediaPath = [proofitem.proofUrl]
|
||||
this.fileList = [{url: proofitem.proofUrl,fileName:'上传'}]
|
||||
},
|
||||
// 效验
|
||||
@ -319,6 +320,7 @@ import api from "@/services/caseManagement";
|
||||
this.repaymentObj.updateAt =undefined
|
||||
this.repaymentObj.updateBy =undefined
|
||||
this.repaymentObj.uploaderName =undefined
|
||||
this.repaymentObj.proofUrl = this.repaymentObj.mediaPath[0]
|
||||
api.gettraceProof_edit(this.repaymentObj).then(res => {
|
||||
if(!res.code){
|
||||
this.updateRow = -1
|
||||
|
||||
@ -3,8 +3,9 @@
|
||||
<div class="mb-16 flex-row justify-content-between">
|
||||
<span class="f-weight500 f18">还款计划</span>
|
||||
<span class="cursor-pointer" v-if="planList.length == 0" @click="updateFlag = true"><i class="el-icon-plus"></i> 添加还款计划</span>
|
||||
<span class="cursor-pointer" v-else @click="updateFlag = true"><i class="el-icon-plus"></i> 编辑还款计划</span>
|
||||
<span class="cursor-pointer" v-else @click="UpdatePlanClick"><i class="el-icon-plus"></i> 编辑还款计划</span>
|
||||
</div>
|
||||
|
||||
<div v-if="planList.length >0 && !updateFlag" class="case-detail-des flex-column mb-16 p-16 border-radius-8">
|
||||
<div class="flex-column justify-content-between">
|
||||
<el-form ref="ruleFormRepayment"
|
||||
@ -47,7 +48,8 @@
|
||||
type="date"
|
||||
placeholder="选择先还日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd">
|
||||
format="yyyy-MM-dd"
|
||||
:picker-options="pickerOptions">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="repaymentObj.type == 'MIX'" label="分期部分金额" prop="productTypeId">
|
||||
@ -93,7 +95,8 @@
|
||||
type="date"
|
||||
placeholder="选择日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd">
|
||||
format="yyyy-MM-dd"
|
||||
:picker-options="pickerOptions">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注说明" prop="remark">
|
||||
@ -150,7 +153,8 @@
|
||||
type="date"
|
||||
placeholder="选择先还日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd">
|
||||
format="yyyy-MM-dd"
|
||||
:picker-options="pickerOptions">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="repaymentObj.type == 'MIX'" label="分期部分金额" prop="productTypeId">
|
||||
@ -196,7 +200,8 @@
|
||||
type="date"
|
||||
placeholder="选择日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
format="yyyy-MM-dd">
|
||||
format="yyyy-MM-dd"
|
||||
:picker-options="pickerOptions">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注说明" prop="remark">
|
||||
@ -208,7 +213,7 @@
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="">
|
||||
<el-button @click="updateFlag = false" size="small">取消</el-button>
|
||||
<el-button @click="cancelPlanClick" size="small">取消</el-button>
|
||||
<el-button type="primary" @click="handleSubmitRepayment()" size="small">保存</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
@ -230,18 +235,40 @@ import api from "@/services/caseManagement";
|
||||
},
|
||||
},
|
||||
data() {
|
||||
|
||||
var validatePass2 = (rule, value, callback) => {
|
||||
if (value === '') {
|
||||
callback(new Error('请输入分期前偿还金额'));
|
||||
} else if (!/^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0.\d{1,2}$/.test(value)) {
|
||||
callback(new Error('只能输入2位小数金额'));
|
||||
} else if (value > this.repaymentObj.totalAmount) {
|
||||
} else if (value*1 > this.repaymentObj.totalAmount*1) {
|
||||
callback(new Error('分期前偿还金额不能大于还款金额!'));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
var validatePass3 = (rule, value, callback) => {
|
||||
if (value === '') {
|
||||
callback(new Error('请选择还款截止日期'));
|
||||
} else if (this.repaymentObj.partDate != '' && this.repaymentObj.partDate != undefined) {
|
||||
let date1 = new Date(value);//还款截止日期
|
||||
let date2 = new Date(this.repaymentObj.partDate);//分期前偿还日期
|
||||
let timestamp1 = date1.getTime();
|
||||
let timestamp2 = date2.getTime();
|
||||
if(timestamp2 > timestamp1)
|
||||
{
|
||||
callback(new Error('还款截止日期不能小于分期前偿还日期!'));
|
||||
}
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
return {
|
||||
pickerOptions: {
|
||||
disabledDate(v) {
|
||||
return v.getTime() < new Date().getTime() - 86400000;// - 86400000是否包括当天
|
||||
}
|
||||
},
|
||||
updateFlag:false,
|
||||
repaymentObj:{type:'ALL'},
|
||||
RepaymentOptions:[{label:'一次性还款',value:'ALL'},{label:'全部分期',value:'STAGES'},{label:'部分先还加分期',value:'MIX'},{label:'其他',value:'OTHER'}],
|
||||
@ -253,8 +280,11 @@ import api from "@/services/caseManagement";
|
||||
{ required: true, message: '请输入还款金额', trigger: 'change',},
|
||||
{ pattern: /^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0.\d{1,2}$/, message: '请输入2位小数金额', trigger: ['blur', 'change']}
|
||||
],
|
||||
// paybackDate: [
|
||||
// { required: true, message: '请选择还款截止日期', trigger: 'change',},
|
||||
// ],
|
||||
paybackDate: [
|
||||
{ required: true, message: '请选择还款截止日期', trigger: 'change',},
|
||||
{ required: true, validator: validatePass3, trigger: 'change',},
|
||||
],
|
||||
stagesDay: [
|
||||
{ required: true, message: '请选择每期还款日期', trigger: 'change',},
|
||||
@ -274,7 +304,8 @@ import api from "@/services/caseManagement";
|
||||
{ pattern: /^[1-9]\d*$/, message: '只能输入正整数', trigger: ['blur', 'change']}
|
||||
],
|
||||
},
|
||||
planList:[]
|
||||
planList:[],
|
||||
oldrepaymentObj:{},
|
||||
|
||||
};
|
||||
},
|
||||
@ -321,9 +352,17 @@ import api from "@/services/caseManagement";
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
// 编辑
|
||||
UpdatePlanClick()
|
||||
{
|
||||
this.updateFlag = true
|
||||
this.oldrepaymentObj = JSON.parse(JSON.stringify(this.repaymentObj))
|
||||
},
|
||||
// 取消保存,还原数据
|
||||
cancelPlanClick(){
|
||||
this.updateFlag = false
|
||||
this.repaymentObj = JSON.parse(JSON.stringify(this.oldrepaymentObj))
|
||||
},
|
||||
//
|
||||
handleClose() {
|
||||
this.$emit('update:eventTraDialog', null)
|
||||
|
||||
@ -361,10 +361,6 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
getCaseInfoList(val){
|
||||
this.getCaseapkList(2)
|
||||
this.getCaseInfoList()
|
||||
},
|
||||
// 所有案件包数据
|
||||
getCaseapkList(type =1){
|
||||
workApi.getmy_case_pkg({size:100,current:1}).then(res => {
|
||||
@ -385,7 +381,12 @@
|
||||
})
|
||||
},
|
||||
// 列表数据
|
||||
getCaseInfoList(){
|
||||
getCaseInfoList(val){
|
||||
console.log(val,'getCaseInfoListgetCaseInfoListgetCaseInfoList')
|
||||
if(val == 1){
|
||||
this.getCaseapkList(2)
|
||||
}
|
||||
|
||||
pkapi.getCasePkgQuery({current:1,size:100,pkgName:this.queryParamFP.pkgName}).then(res => {
|
||||
if (!res.code) {
|
||||
this.tableData = res.records;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user