Merge branch 'main' of http://139.155.124.81:8088/cloud-mediate/mediate-manage-web
This commit is contained in:
commit
bf06677cad
@ -204,8 +204,14 @@ export default {
|
||||
// 关联案件-详情
|
||||
async handleRelevance(item) {
|
||||
try {
|
||||
voiceCall.caseMatch({caseId: item.id, callingSessionId: this.acceptDialog.sessionId, phone: this.incomingCallPhone}).then(res => {
|
||||
// console.log(res,'---关联案件')
|
||||
let mainCaseId = null
|
||||
if(item.jointDebt == 1){
|
||||
mainCaseId = item.mainCaseId
|
||||
}
|
||||
else{
|
||||
mainCaseId = item.id
|
||||
}
|
||||
voiceCall.caseMatch({caseId: mainCaseId, callingSessionId: this.acceptDialog.sessionId, phone: this.incomingCallPhone}).then(res => {
|
||||
this.$router.push(`/mediation-page?sourcePage=sourcePage&caseId=${item.id}`);
|
||||
})
|
||||
} catch (error) {
|
||||
|
||||
@ -139,7 +139,7 @@ let formaDate = (value, fmt) => {
|
||||
|
||||
let secondsToMinutes = (value) => {
|
||||
|
||||
if(value == 0 || value == ''|| value == null){return ''}
|
||||
if(value == 0 || value == ''|| value == null){return '0秒'}
|
||||
const minutes = Math.floor(value / 60);
|
||||
const seconds = value % 60;
|
||||
if(minutes > 0)
|
||||
|
||||
@ -33,7 +33,7 @@
|
||||
</el-table-column>
|
||||
<el-table-column label="沟通时长" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.linkedType == 1">通话{{scope.linkedDuration}}秒</span>
|
||||
<span v-if="scope.row.linkedType == 1">通话{{itemrecord.linkedDuration | secondsToMinutes}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="mediator" label="操作人" show-overflow-tooltip ></el-table-column>
|
||||
|
||||
@ -335,7 +335,7 @@
|
||||
<el-table :data="fileList" :height="300">
|
||||
<el-table-column type="index" label="序号" width="55"></el-table-column>
|
||||
<el-table-column prop="materialType" label="材料类型" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column prop="name" label="文件名称" show-overflow-tooltip></el-table-column>
|
||||
<!-- <el-table-column prop="name" label="文件名称" show-overflow-tooltip></el-table-column> -->
|
||||
<el-table-column prop="createBy" label="上传人" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="上传时间" show-overflow-tooltip>
|
||||
<template slot-scope="scope">
|
||||
@ -381,9 +381,9 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="handleBy" label="操作人" show-overflow-tooltip></el-table-column>
|
||||
<el-table-column label="操作时间" show-overflow-tooltip >
|
||||
<el-table-column label="操作时间" width="230" >
|
||||
<template slot-scope="scope">
|
||||
<span >{{ scope.row.handleTime | formaDate("yyyy-MM-dd hh:mm:ss") }}</span>
|
||||
<span style="width: 100%;display: block;">{{ scope.row.handleTime | formaDate("yyyy-MM-dd hh:mm:ss") }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
@ -466,7 +466,7 @@ export default {
|
||||
H: ''
|
||||
}],
|
||||
caseId: '',
|
||||
baseInfo: {},
|
||||
baseInfo: {debtorEntityList:[],casePkg:{}},
|
||||
fileList: [],
|
||||
fileType: [{label: '身份证件', value: 1}, {label: '金融许可证', value: 2}, {
|
||||
label: '营业执照',
|
||||
@ -510,8 +510,7 @@ export default {
|
||||
if (this.$route.query.caseId != undefined) {
|
||||
this.caseId = this.$route.query.caseId;
|
||||
this.getCaseInfoById();//获取详情
|
||||
this.getmediate_record()
|
||||
this.getCaseLogsList()
|
||||
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@ -588,16 +587,18 @@ export default {
|
||||
} else {
|
||||
this.caseId = res.id.toString()
|
||||
}
|
||||
|
||||
this.getmediate_record()
|
||||
this.getCaseLogsList()
|
||||
|
||||
this.getCoobligation()
|
||||
this.getFileCaseList()
|
||||
this.getLitigantByCaseId()
|
||||
this.getplanlist()
|
||||
this.getProofList()
|
||||
this.getWritCaseList()
|
||||
}
|
||||
|
||||
})
|
||||
this.getCoobligation()
|
||||
this.getFileCaseList()
|
||||
this.getLitigantByCaseId()
|
||||
this.getplanlist()
|
||||
this.getProofList()
|
||||
this.getWritCaseList()
|
||||
|
||||
},
|
||||
|
||||
// 共债数据
|
||||
@ -667,7 +668,12 @@ export default {
|
||||
// 还款凭证
|
||||
getProofList() {
|
||||
this.ProofList = []
|
||||
api.gettraceProof_list({caseId: this.caseId}).then(res => {
|
||||
let data_json = {caseId: this.caseId}
|
||||
if(this.baseInfo.jointDebt == 1){
|
||||
data_json ={mainCaseId: this.baseInfo.mainCaseId}
|
||||
}
|
||||
|
||||
api.gettraceProof_list(data_json).then(res => {
|
||||
if (!res.code) {
|
||||
res.forEach(item =>{
|
||||
if(item.status.code == 2){ this.ProofList.push(item)}
|
||||
|
||||
@ -75,8 +75,8 @@
|
||||
<el-table-column label="操作" width="200">
|
||||
<template slot-scope="scope">
|
||||
<div class="flex-row align-items-center">
|
||||
<el-button size="mini" v-if="scope.row.status.code == 1" @click="handleEnterqueue(scope.row)">进入外呼队列</el-button>
|
||||
<el-button size="mini" v-if="scope.row.status.code == 1" @click="handleBackCase(scope.row)">取消</el-button>
|
||||
<el-button size="mini" v-if="scope.row.status.code == 1 && scope.row.notCalledCount >0" @click="handleEnterqueue(scope.row)">进入外呼队列</el-button>
|
||||
<el-button size="mini" v-if="scope.row.status.code == 1 && scope.row.notCalledCount >0" @click="handleBackCase(scope.row)">取消</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<div class="pt-8 border-b-solid-lighter-1">
|
||||
<div class="height-30 flex-row align-items-center justify-content-between mb-24">
|
||||
<div class="f18 color-text-primary">筛选</div>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer border-solid-lighter-1 p-8 border-radius-8" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
</div>
|
||||
<el-collapse-transition>
|
||||
<el-row :gutter="56">
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<div class="pt-8 border-b-solid-lighter-1">
|
||||
<div class="height-30 flex-row align-items-center justify-content-between mb-24">
|
||||
<div class="f18 color-text-primary">筛选</div>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer border-solid-lighter-1 p-8 border-radius-8" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
</div>
|
||||
<el-collapse-transition>
|
||||
<el-row :gutter="56">
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<div class="pt-8 border-b-solid-lighter-1">
|
||||
<div class="height-30 flex-row align-items-center justify-content-between mb-24">
|
||||
<div class="f18 color-text-primary">筛选</div>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer border-solid-lighter-1 p-8 border-radius-8" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
</div>
|
||||
<el-collapse-transition>
|
||||
<el-row :gutter="56">
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<div class="pt-8 border-b-solid-lighter-1">
|
||||
<div class="height-30 flex-row align-items-center justify-content-between mb-24">
|
||||
<div class="f18 color-text-primary">筛选</div>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
<span v-if="this.DialogDetail.id != undefined" class="f-weight500 f16 cursor-pointer border-solid-lighter-1 p-8 border-radius-8" @click="$emit('update:DialogDetail', null)"><i class="el-icon-back"></i>返回</span>
|
||||
</div>
|
||||
<el-collapse-transition>
|
||||
<el-row :gutter="56">
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
</div>
|
||||
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<!-- <el-col :span="24">
|
||||
<div class="flex-row-center align-items-center height-40 mb-24">
|
||||
<span class="tabs__search-criteria-title flex-shrink-0 pr-16" style="width:100px">签字有效时间</span>
|
||||
<el-select v-model="ObjectInfo.deadNum"
|
||||
@ -34,7 +34,7 @@
|
||||
<el-option label="5天" value="5"></el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
|
||||
|
||||
</el-row>
|
||||
|
||||
@ -457,6 +457,8 @@ export default {
|
||||
|
||||
this.mediaterecordpm.caseId = this.caseId
|
||||
this.eventDialog.caseId = this.caseId
|
||||
this.eventDialog.jointDebt = this.thisCaseInfo.jointDebt
|
||||
this.eventDialog.mainCaseId = this.thisCaseInfo.mainCaseId
|
||||
|
||||
this.getCaseInfoById();//获取详情
|
||||
this.getAgentList()
|
||||
|
||||
@ -488,6 +488,7 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
handleBeforeUnload(event) {
|
||||
console.log(this.sessionId,'this.sessionId')
|
||||
// 刷新及离开挂断电话
|
||||
if(this.calling){
|
||||
window.tccc.Call.hungUp({sessionId: this.sessionId})
|
||||
@ -600,7 +601,14 @@ export default {
|
||||
// })
|
||||
},
|
||||
handleBack() {
|
||||
// this.$route.query.sourcePage == 'mediationManagement'
|
||||
if(this.timerInterval) { //如果定时器还在运行 或者直接关闭,不用判断
|
||||
clearInterval(this.timerInterval); //关闭
|
||||
}
|
||||
if (this.videoCallInterval) {
|
||||
clearInterval(this.videoCallInterval)
|
||||
}
|
||||
this.handleBeforeUnload()
|
||||
setTimeout(() => {
|
||||
if(this.timerInterval) { //如果定时器还在运行 或者直接关闭,不用判断
|
||||
clearInterval(this.timerInterval); //关闭
|
||||
}
|
||||
@ -610,7 +618,10 @@ export default {
|
||||
if(this.calling){
|
||||
window.tccc.Call.hungUp({sessionId: this.sessionId})
|
||||
}
|
||||
this.$router.push('/mediation-management')
|
||||
this.$router.push('/mediation-management')
|
||||
}, 500);
|
||||
// this.$route.query.sourcePage == 'mediationManagement'
|
||||
// this.$router.push('/mediation-management')
|
||||
},
|
||||
// 获取调解记录
|
||||
getmediate_record() {
|
||||
@ -625,10 +636,12 @@ export default {
|
||||
handleChangeMediation(resultStatus){
|
||||
let data={
|
||||
id:this.caseId,
|
||||
mediateStatus:resultStatus
|
||||
mediateStatus:resultStatus,
|
||||
caseStatus:this.baseInfo.caseStatus
|
||||
}
|
||||
|
||||
let resultmsg = '成功'
|
||||
if(resultStatus == 4){resultmsg = '失败'}
|
||||
if(resultStatus == 6){resultmsg = '失败'}
|
||||
this.$confirm("请确定是否将案件标记为"+resultmsg+"?", "提示", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
@ -751,7 +764,7 @@ export default {
|
||||
this.startTimer()
|
||||
}
|
||||
} catch (err) {
|
||||
this.$message.error('呼叫失败' + err.message)
|
||||
this.$message.error('呼叫失败,请确定是否已分配坐席!')
|
||||
console.log('呼叫失败',err.message)
|
||||
this.calling = false
|
||||
this.callingFail()
|
||||
@ -834,9 +847,9 @@ export default {
|
||||
this.isMute = true
|
||||
this.$message.success('已静音')
|
||||
} catch (err) {
|
||||
// console.log(err,'errerrerrerr')
|
||||
// 静音失败
|
||||
this.$message.error('静音失败')
|
||||
console.log(err,'静音失败')
|
||||
// 静音失败
|
||||
this.$message.error('静音失败')
|
||||
}
|
||||
},
|
||||
// 取消静音
|
||||
|
||||
@ -235,7 +235,12 @@ import api from "@/services/caseManagement";
|
||||
})
|
||||
},
|
||||
getProofList(){
|
||||
api.gettraceProof_list({caseId:this.eventDialog.caseId}).then(async res => {
|
||||
let data_json = {caseId: this.eventDialog.caseId}
|
||||
if(this.eventDialog.jointDebt == 1){
|
||||
data_json ={mainCaseId: this.eventDialog.mainCaseId}
|
||||
}
|
||||
|
||||
api.gettraceProof_list(data_json).then(async res => {
|
||||
if(!res.code){
|
||||
await this.getpreviewfull(res)
|
||||
}
|
||||
|
||||
@ -50,7 +50,7 @@
|
||||
</div>
|
||||
<!-- 电话 -->
|
||||
<div v-if="itemrecord.linkedWay == 1" class="flex-row align-items-center pt-6">
|
||||
<div v-if="itemrecord.linkedType == 1">通话{{itemrecord.linkedDuration}}秒</div>
|
||||
<div v-if="itemrecord.linkedType == 1">通话{{itemrecord.linkedDuration | secondsToMinutes}}</div>
|
||||
<el-divider v-if="itemrecord.linkedType == 1" direction="vertical"></el-divider>
|
||||
<div class="text-center cursor-pointer" v-for="(item,index) in itemrecord.files" :key="index" @click="handleCaseShowFile(item)">
|
||||
<i class="f14 el-icon-video-play"></i> 播放录音 {{index > 0 ? index : ''}}
|
||||
@ -122,9 +122,8 @@
|
||||
<div class="timeline-layout-w-records mt-8 mb-8">
|
||||
<div class="flex-column align-items-start">
|
||||
<div>
|
||||
<span v-for="(itemperson,index) in itemrecord.linkedPersonInfo" :key="index">
|
||||
<span v-for="(itemperson,index) in itemrecord.linkedPersonInfo" :key="index" style="float: left;margin-bottom: 2px;">
|
||||
{{ itemperson.name}}
|
||||
{{ itemrecord.linkedWay == 1 ? itemperson.phone :''}}
|
||||
<el-tag class="mr-8" size="small" effect="plain" style="height: 22px;">{{itemperson.type}}</el-tag>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@ -58,11 +58,15 @@
|
||||
<a class="color-86909C f12 pt-6 pb-6">{{item.handleBy}} {{ $util.formatDate(item.handleTime, 'YYYY-MM-DD HH:mm:ss')}}</a>
|
||||
<div class="flex-row align-items-center color-86909C" v-if="(item.signList.length > 0 || item.unsignList.length > 0)&&(item.signStatus != null && (item.signStatus.code != 1))">
|
||||
<div>签字</div>
|
||||
<div style="width: 240px; display: block;">
|
||||
<div style="width: 240px; display: block;padding-top: 4px;">
|
||||
<div class="flex-row" v-for="(item1, index1) in item.unsignList" :key="index1" style="float: left;margin-bottom: 5px;">
|
||||
<el-tag v-if="item1.signStatus.code == 2" class="ml-4" size="small" type="success" effect="plain">{{item1.signName}}</el-tag>
|
||||
<el-tag v-if="item1.signStatus.code == 0" class="ml-4" size="small" type="info" effect="plain">{{item1.signName}}</el-tag>
|
||||
</div>
|
||||
<div class="flex-row" v-for="(item1, index1) in item.signList" :key="index1" style="float: left;margin-bottom: 5px;">
|
||||
<el-tag v-if="item1.signStatus.code == 3" class="ml-4" size="small" type="success" effect="plain">{{item1.signName}}</el-tag>
|
||||
<el-tag v-if="item1.signStatus.code == 0" class="ml-4" size="small" type="info" effect="plain">{{item1.signName}}</el-tag>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <el-tag class="ml-4" size="small" type="success" effect="plain"
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<div class="flex-row justify-content-between align-items-center pb-16 border-b-solid-lighter-1"
|
||||
v-for="(item, index) in missedCallData.list" :key="index">
|
||||
<div class="width70">
|
||||
<div class="color-000 f-weight600 f16">{{item.contact}}</div>
|
||||
<div class="color-000 f-weight600 f16">{{item.phone}}</div>
|
||||
<div class="f12">来电时间:{{ formatDate(item.createAt, 'YYYY-MM-DD HH:mm:ss') }}</div>
|
||||
</div>
|
||||
<el-button size="small" type="primary" @click="handleMissedCallCase(item)">查看相关案件</el-button>
|
||||
|
||||
@ -14,12 +14,12 @@
|
||||
<el-col :span="24">
|
||||
<div class="mb-24 officelist">
|
||||
<el-checkbox-group v-model="ObjectInfo.fileTypes">
|
||||
<el-checkbox border v-for="(item,index) in officeOptions" :label="item.type" :key="index" :disabled="item.documentStaus.code != 2 ? true : false">{{ item.documentType.desc }}</el-checkbox>
|
||||
<el-checkbox border v-for="(item,index) in officeOptions" :label="item.type" :key="index" :disabled="item.documentStaus.code == 2 ? ((item.signStatus != null && (item.signStatus.code == 0 ||item.signStatus.code == 2 || item.signStatus.code == 3)) ? true :false) : true">{{ item.documentType.desc }}</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</div>
|
||||
<!-- :disabled="item.documentStaus.code != 2 ? true : false" -->
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<!-- <el-col :span="24">
|
||||
<div class="flex-row-center align-items-center height-40">
|
||||
<span class="tabs__search-criteria-title flex-shrink-0 pr-16" style="width:100px">签字有效时间</span>
|
||||
<el-select v-model="ObjectInfo.deadNum" size="small"
|
||||
@ -31,7 +31,7 @@
|
||||
<el-option label="5天" value="5"></el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
</el-row>
|
||||
</el-collapse-transition>
|
||||
</div>
|
||||
|
||||
@ -328,11 +328,11 @@ const caseManagementApi = {
|
||||
},
|
||||
// 今日呼叫统计
|
||||
callingTodayCount: data => {
|
||||
return service.service.post(`${apiAdmin}api/trace/calling/todayCount`, data)
|
||||
return service.service.post(`${apiAdmin}api/trace/calling/todayCount`, data, {hideLoading:true})
|
||||
},
|
||||
// 当前调解员案件列表
|
||||
callingCaseList: data => {
|
||||
return service.service.post(`${apiAdmin}api/trace/calling/caseList`, data)
|
||||
return service.service.post(`${apiAdmin}api/trace/calling/caseList`, data, {hideLoading:true})
|
||||
},
|
||||
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@ const systemLogApi = {
|
||||
//========================start::用户管理======================================
|
||||
// 用户管理
|
||||
getUserList: data => {
|
||||
return service.service.post(`${apiAdmin}system/user/getUserList`, data)
|
||||
return service.service.post(`${apiAdmin}system/user/getUserList`, data, {hideLoading:true})
|
||||
},
|
||||
// 删除用户管理
|
||||
deleteUserById: data => {
|
||||
|
||||
@ -19,7 +19,7 @@ const api = {
|
||||
},
|
||||
// 呼叫未接列表
|
||||
notAnswerList: data => {
|
||||
return service.service.post(`${apiAdmin}call/notAnswerList`, data)
|
||||
return service.service.post(`${apiAdmin}call/notAnswerList`, data,{hideLoading:true})
|
||||
},
|
||||
}
|
||||
export default api;
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
/* 防止重复点击 */
|
||||
let clickTimer = 0
|
||||
|
||||
function clickThrottle(interval = 1500) {
|
||||
function clickThrottle(interval = 500) {
|
||||
let now = +new Date(); // 获取当前时间的时间戳
|
||||
let timer = clickTimer; // 记录触发事件的事件戳
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user