文件材料相关
This commit is contained in:
parent
096334862b
commit
29d6b89210
@ -57,7 +57,6 @@ import api from "@/services/caseManagement";
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getShowFileType(url){
|
getShowFileType(url){
|
||||||
console.log(this.$util.getFileType(url),'v')
|
|
||||||
if(this.$util.getFileType(url) === 'image') {
|
if(this.$util.getFileType(url) === 'image') {
|
||||||
// 如果是图片,直接显示图片
|
// 如果是图片,直接显示图片
|
||||||
this.fileType = 'image'
|
this.fileType = 'image'
|
||||||
|
|||||||
@ -292,25 +292,18 @@
|
|||||||
<div v-if="navactive == 2 " class="layout-tabs-content-box flex-row padding-0 f14">
|
<div v-if="navactive == 2 " class="layout-tabs-content-box flex-row padding-0 f14">
|
||||||
<div class="pt-8 border-b-solid-lighter-1 background-color-fff border-radius-4 p-16 width100">
|
<div class="pt-8 border-b-solid-lighter-1 background-color-fff border-radius-4 p-16 width100">
|
||||||
<div class="flex-column">
|
<div class="flex-column">
|
||||||
<div class="case-detail-label f-weight500 f16">案件材料<a><i class="el-icon-plus"></i>上传材料</a></div>
|
<div class="case-detail-label f-weight500 f16">案件材料<a @click="caseFileVisible={caseId:caseId}"><i class="el-icon-plus"></i>上传材料</a></div>
|
||||||
<div class="case-detail-des">
|
<div class="case-detail-des">
|
||||||
<el-table :data="fileList" :height="300">
|
<el-table :data="fileList" :height="300">
|
||||||
<el-table-column type="index" label="序号" width="55"></el-table-column>
|
<el-table-column type="index" label="序号" width="55"></el-table-column>
|
||||||
<el-table-column label="材料类型" width="170">
|
<el-table-column prop="materialType" label="材料类型" show-overflow-tooltip></el-table-column>
|
||||||
<template slot-scope="scope">
|
|
||||||
<div class="flex-row align-items-center">
|
|
||||||
{{ getfileType(scope.row) }}
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</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 prop="createAt" label="上传时间" show-overflow-tooltip></el-table-column>
|
<el-table-column prop="createAt" label="上传时间" show-overflow-tooltip></el-table-column>
|
||||||
<!-- <el-table-column prop="url" label="上传人" show-overflow-tooltip ></el-table-column> -->
|
|
||||||
<el-table-column label="操作" width="170">
|
<el-table-column label="操作" width="170">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div class="flex-row align-items-center">
|
<div class="flex-row align-items-center">
|
||||||
<el-button size="mini" @click="handleCaseAllocation(scope)">删除</el-button>
|
<el-button size="mini" @click="handleCaseDelete(scope)">删除</el-button>
|
||||||
<el-button size="mini" @click="handleCaseShow(scope,fileList)">查看</el-button>
|
<el-button size="mini" @click="handleCaseShow(scope,fileList)">查看</el-button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -366,21 +359,29 @@
|
|||||||
<CaseTraceDialog v-if="CaseTraceDialog" :eventTraDialog.sync="CaseTraceDialog"/>
|
<CaseTraceDialog v-if="CaseTraceDialog" :eventTraDialog.sync="CaseTraceDialog"/>
|
||||||
<!-- 文件预览 -->
|
<!-- 文件预览 -->
|
||||||
<showFile v-if="fileDialog" :fileDialog.sync="fileDialog"/>
|
<showFile v-if="fileDialog" :fileDialog.sync="fileDialog"/>
|
||||||
|
<!-- 案件材料上传 -->
|
||||||
|
<caseFileDialog v-if="caseFileVisible" :eventDialog.sync="caseFileVisible"/>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import api from "@/services/caseManagement";
|
import api from "@/services/caseManagement";
|
||||||
import contactPerson from "@/services/contactPerson";
|
import contactPerson from "@/services/contactPerson";
|
||||||
import {stubString} from "lodash";
|
import cmapi from "@/services/caseMaterial";
|
||||||
import {subtract} from "lodash";
|
|
||||||
|
// import {stubString} from "lodash";
|
||||||
|
// import {subtract} from "lodash";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
showFile: () => import('../../../components/showFile.vue'),//
|
showFile: () => import('../../../components/showFile.vue'),//
|
||||||
CaseTraceDialog: () => import('../components/CaseTraceDialog.vue'),//各种案件追踪记录
|
CaseTraceDialog: () => import('../components/CaseTraceDialog.vue'),//各种案件追踪记录
|
||||||
|
|
||||||
|
caseFileDialog: () => import('../../mediation-page/components/caseFileDialog'),//案件材料上传
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
caseFileVisible:null,
|
||||||
CaseTraceDialog: null,
|
CaseTraceDialog: null,
|
||||||
fileDialog: null,
|
fileDialog: null,
|
||||||
eventTraDialog: null,
|
eventTraDialog: null,
|
||||||
@ -458,27 +459,51 @@ export default {
|
|||||||
if (item != undefined) return item.label
|
if (item != undefined) return item.label
|
||||||
return '-'
|
return '-'
|
||||||
},
|
},
|
||||||
|
// 删除证据材料
|
||||||
|
handleCaseDelete(scope){
|
||||||
|
this.$confirm("请确定是否删除这些数据?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
}).then(() => {
|
||||||
|
if(!this.$clickThrottle()) { return }//防止重复点击
|
||||||
|
cmapi.deleteCaseFileById({id:scope.row.id}).then((res) => {
|
||||||
|
this.$message.success("成功");
|
||||||
|
this.getFileCaseList()
|
||||||
|
|
||||||
|
});
|
||||||
|
}).catch(() => {});
|
||||||
|
},
|
||||||
handleCaseShow(scope, filelist) {
|
handleCaseShow(scope, filelist) {
|
||||||
if (filelist == undefined) {
|
if (filelist == undefined) {
|
||||||
this.fileDialog = {showfile: {url: scope.row.proofUrl}, filelist: []}
|
this.fileDialog = {showfile: {url: scope.row.proofUrl}, filelist: []}
|
||||||
} else {
|
} else {
|
||||||
|
// this.fileDialog = {showfile: {url: scope.row.url}, filelist: []}
|
||||||
this.fileDialog = {showfile: scope.row, filelist: filelist}
|
this.fileDialog = {showfile: scope.row, filelist: filelist}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
debtorEntityCardNo(datalist, len) {
|
debtorEntityCardNo(datalist, len) {
|
||||||
let datacardno = ''
|
let datacardno = ''
|
||||||
let dataphone = ''
|
let dataphone = ''
|
||||||
datalist.forEach((item, index) => {
|
if(datalist!=undefined)
|
||||||
if (index == 0) {
|
{
|
||||||
datacardno = item.cardNo
|
datalist.forEach((item, index) => {
|
||||||
dataphone = item.phone
|
if (index == 0) {
|
||||||
} else {
|
datacardno = item.cardNo
|
||||||
datacardno += ',' + item.cardNo
|
dataphone = item.phone
|
||||||
dataphone += ',' + item.phone
|
} else {
|
||||||
}
|
datacardno += ',' + item.cardNo
|
||||||
})
|
dataphone += ',' + item.phone
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
return {cardNo: datacardno.substring(0, len), phone: dataphone.substring(0, len)};
|
return {cardNo: datacardno.substring(0, len), phone: dataphone.substring(0, len)};
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return ''
|
||||||
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
// 获取详情
|
// 获取详情
|
||||||
getCaseInfoById() {
|
getCaseInfoById() {
|
||||||
@ -487,22 +512,25 @@ export default {
|
|||||||
console.log(res, 'res')
|
console.log(res, 'res')
|
||||||
if (!res.code) {
|
if (!res.code) {
|
||||||
this.baseInfo = res
|
this.baseInfo = res
|
||||||
|
|
||||||
// 材料
|
|
||||||
// console.log('获取图片',res.caseFileEntityList)
|
|
||||||
// let caseFileEntityList = []
|
|
||||||
// res.caseFileEntityList.forEach((item)=>{
|
|
||||||
// caseFileEntityList.push({name:item.name,fileName:item.name,url:item.url})
|
|
||||||
// })
|
|
||||||
_that.fileList = res.caseFileEntityList
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
this.getFileCaseList()
|
||||||
this.getLitigantByCaseId()
|
this.getLitigantByCaseId()
|
||||||
this.getplanlist()
|
this.getplanlist()
|
||||||
this.getProofList()
|
this.getProofList()
|
||||||
},
|
},
|
||||||
|
// 获取证据材料
|
||||||
|
getFileCaseList() {
|
||||||
|
cmapi.getCaseFileList({caseId:this.caseId}).then(res => {
|
||||||
|
if (!res.code) {
|
||||||
|
this.fileList = res.records
|
||||||
|
|
||||||
|
_that.fileList = res.caseFileEntityList
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
getLitigantByCaseId() {
|
getLitigantByCaseId() {
|
||||||
let dataJson = {
|
let dataJson = {
|
||||||
size: 9999,
|
size: 9999,
|
||||||
|
|||||||
238
src/pages/case-mistake/components/importPackageDialog.vue
Normal file
238
src/pages/case-mistake/components/importPackageDialog.vue
Normal file
@ -0,0 +1,238 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-dialog
|
||||||
|
:title="importCaseDialog.title"
|
||||||
|
:visible="true"
|
||||||
|
width="580px"
|
||||||
|
append-to-body
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
@close="handleClose">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- 基本信息 -->
|
||||||
|
<div>
|
||||||
|
<div class="p-h-24">
|
||||||
|
<el-form ref="ruleFormBase"
|
||||||
|
:model="baseInfo"
|
||||||
|
:rules="rulesClient"
|
||||||
|
label-width="150px"
|
||||||
|
class="demo-ruleForm">
|
||||||
|
<el-row type="flex" align="middle" class="mt-16">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="案件包名" prop="pkgName">
|
||||||
|
<el-select v-model="baseInfo.pkgid" placeholder="请选择案件包"
|
||||||
|
class="width100" @change="pkgChange">
|
||||||
|
<el-option
|
||||||
|
v-for="item in CasepackageList"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.pkgName"
|
||||||
|
:value="item.id">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="委案机构" prop="entrustingAgencyName">
|
||||||
|
<el-input
|
||||||
|
v-model.trim="baseInfo.entrustingAgencyName"
|
||||||
|
placeholder="请输入委案机构"
|
||||||
|
disabled
|
||||||
|
maxlength="25"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="委案渠道" prop="channel">
|
||||||
|
<el-input
|
||||||
|
v-model.trim="baseInfo.channel"
|
||||||
|
placeholder="请输入委案渠道"
|
||||||
|
maxlength="25"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="委案日期" prop="planStartTime">
|
||||||
|
<el-date-picker class="width100"
|
||||||
|
disabled
|
||||||
|
v-model="baseInfo.planStartTime"
|
||||||
|
type="date"
|
||||||
|
value-format="yyyy-MM-dd HH:mm:ss"
|
||||||
|
placeholder="选择委案日期">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="委案期限(月)" prop="months">
|
||||||
|
<el-input-number v-model="baseInfo.months" disabled :min="0" :max="100" class="width100"></el-input-number>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row type="flex" align="middle">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="上传文件" prop="fileInfo">
|
||||||
|
<upload-import :file-list="fileList" :max-count="1"
|
||||||
|
:show-file-name="true"
|
||||||
|
accept=".xls,.xlsx"
|
||||||
|
@handleUploadFile="handleUploadFile">
|
||||||
|
</upload-import>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<span slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="handleClose">取消</el-button>
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
@click="handleSubmit">确认导入
|
||||||
|
</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import apipk from "@/services/casePackageManagement";
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
uploadImport:() => import('@/components/uploadImportPackage.vue'),//导入上传
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
importCaseDialog: {
|
||||||
|
type: Object,
|
||||||
|
default: () => {
|
||||||
|
return {}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
baseInfo:{
|
||||||
|
pkgid:'',
|
||||||
|
pkgName:'',//案件包名
|
||||||
|
entrustingAgencyName:'',//金融机构名称
|
||||||
|
planStartTime:'',//委案时间
|
||||||
|
months:1,//委案期限
|
||||||
|
fileInfo:null,
|
||||||
|
channel:'',
|
||||||
|
|
||||||
|
},
|
||||||
|
rulesClient: {
|
||||||
|
pkgName: [
|
||||||
|
{ required: true, message: '请输入案件包名', trigger: 'change',},
|
||||||
|
],
|
||||||
|
planStartTime: [
|
||||||
|
{ required: true, message: '请输入委案时间', trigger: 'change',},
|
||||||
|
],
|
||||||
|
months: [
|
||||||
|
{ required: true, message: '请输入委案期限', trigger: 'change',},
|
||||||
|
],
|
||||||
|
channel: [
|
||||||
|
{ required: true, message: '请输入委案渠道', trigger: 'change',},
|
||||||
|
],
|
||||||
|
fileInfo: [
|
||||||
|
{ required: true, message: '请上传文件', trigger: 'change',},
|
||||||
|
],
|
||||||
|
|
||||||
|
},
|
||||||
|
financialProductsTypeOptions:[],//金融产品类型
|
||||||
|
fileList:[],//证据材料
|
||||||
|
CasepackageList:[]
|
||||||
|
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getCasepkgList()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
pkgChange(){
|
||||||
|
let packitem = this.CasepackageList.find(item =>{
|
||||||
|
return this.baseInfo.pkgid == item.id
|
||||||
|
})
|
||||||
|
this.baseInfo.pkgName = packitem.pkgName
|
||||||
|
this.baseInfo.entrustingAgencyName = packitem.entrustingAgencyName
|
||||||
|
this.baseInfo.planStartTime = packitem.planStartTime
|
||||||
|
this.baseInfo.channel = packitem.channel
|
||||||
|
this.baseInfo.months = this.monthDifference(new Date(packitem.planStartTime),new Date(packitem.planEndTime))
|
||||||
|
},
|
||||||
|
monthDifference(date1,date2) {
|
||||||
|
let months;
|
||||||
|
months = (date2.getFullYear() - date1.getFullYear()) * 12;
|
||||||
|
months -= date1.getMonth();
|
||||||
|
months += date2.getMonth();
|
||||||
|
return months <= 0 ? 0 : months;
|
||||||
|
},
|
||||||
|
// 案件包列表数据
|
||||||
|
getCasepkgList(){
|
||||||
|
apipk.getCasePkgQuery({current:1,size:500}).then(res => {
|
||||||
|
if (!res.code) {
|
||||||
|
this.CasepackageList = res.records;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSubmit(){
|
||||||
|
if(!this.$clickThrottle()) { return }//防止重复点击
|
||||||
|
|
||||||
|
this.$refs.ruleFormBase.validate((valid) => {
|
||||||
|
if (valid){
|
||||||
|
let data = {
|
||||||
|
...this.baseInfo,//基本信息
|
||||||
|
}
|
||||||
|
apipk.CasePkgimport(data).then(res => {
|
||||||
|
this.handleClose()
|
||||||
|
this.$parent.getCaseInfoList(1)
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
},
|
||||||
|
// 上传
|
||||||
|
handleUploadFile(JsonData){
|
||||||
|
|
||||||
|
console.log('获取上传文件信息',JsonData.uploadFileRes)
|
||||||
|
let fileitem = JSON.parse(JSON.stringify(JsonData.fileList))
|
||||||
|
this.fileList = fileitem.map((item,i) => {
|
||||||
|
let time = this.$util.getTimestamp()
|
||||||
|
let fileType = this.$util.getFileExtension(item.url)
|
||||||
|
let fileName = `${time}.${fileType}`
|
||||||
|
return {
|
||||||
|
url: item.url,
|
||||||
|
fileName:fileName,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if(fileitem.length == 0 ){
|
||||||
|
this.baseInfo.fileInfo = null
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
this.baseInfo.fileInfo = JsonData.uploadFileRes
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
handleClose() {
|
||||||
|
this.$emit('update:importCaseDialog', null)
|
||||||
|
},
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.dialog-content{
|
||||||
|
padding: 16px 24px;
|
||||||
|
// max-height:500px
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
363
src/pages/case-mistake/index.vue
Normal file
363
src/pages/case-mistake/index.vue
Normal file
@ -0,0 +1,363 @@
|
|||||||
|
<template>
|
||||||
|
<div class="layout-content-wrap">
|
||||||
|
<div class="navigation-bar flex-row mb-16">
|
||||||
|
<img src="../../assets/image/Link.png" height="22" alt="">
|
||||||
|
<a>/</a>
|
||||||
|
<a>案件错误修复</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="layout-tabs-content-box background-color-fff border-radius-4">
|
||||||
|
<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="f22 color-text-primary">筛选</div>
|
||||||
|
</div>
|
||||||
|
<el-collapse-transition>
|
||||||
|
<div v-show="showSearch">
|
||||||
|
<el-row :gutter="56">
|
||||||
|
<el-col :span="6">
|
||||||
|
<div class="flex-row-center align-items-center height-40 mb-24">
|
||||||
|
<span class="tabs__search-criteria-title flex-shrink-0 pr-16">案件包名称</span>
|
||||||
|
<el-select v-model="queryParam.pkgName" placeholder="请选择案件包"
|
||||||
|
class="width100" >
|
||||||
|
<el-option
|
||||||
|
v-for="item in CasepackageList"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.pkgName"
|
||||||
|
:value="item.id">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="14">
|
||||||
|
<div class="flex-row align-items-center justify-content-end">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="4" >
|
||||||
|
<div class="flex-row align-items-center justify-content-end">
|
||||||
|
<el-button @click="hanldeReset">重置</el-button>
|
||||||
|
<el-button type="primary" @click="handleSearch">搜索</el-button>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
|
||||||
|
<el-row :gutter="56">
|
||||||
|
|
||||||
|
</el-row>
|
||||||
|
</div>
|
||||||
|
</el-collapse-transition>
|
||||||
|
</div>
|
||||||
|
<!-- table -->
|
||||||
|
<div class="pt-8">
|
||||||
|
<div class="height-56 flex-row align-items-center justify-content-between">
|
||||||
|
<div class="f22 color-text-primary">列表</div>
|
||||||
|
<div class="flex-row">
|
||||||
|
<el-button size="small" type="primary" @click="handleImport">导入案件</el-button>
|
||||||
|
<el-button size="small" @click="handleAddForm">导出错误案件</el-button>
|
||||||
|
<el-button size="small" @click="handleDelete">清空错误案件</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div >
|
||||||
|
<el-table :data="tableData" :height="`${contentHeight}`"
|
||||||
|
@selection-change="handleSelectionChange">
|
||||||
|
<el-table-column type="index" label="序号" width="55"></el-table-column>
|
||||||
|
<!-- <el-table-column type="selection" width="55" ></el-table-column> -->
|
||||||
|
<el-table-column prop="pkgName" label="案件包名称" show-overflow-tooltip ></el-table-column>
|
||||||
|
<el-table-column prop="entrustingAgencyName" label="委案机构" show-overflow-tooltip ></el-table-column>
|
||||||
|
<el-table-column prop="channel" label="被申请人姓名" show-overflow-tooltip ></el-table-column>
|
||||||
|
<el-table-column prop="channel" label="被申请人手机号码" show-overflow-tooltip ></el-table-column>
|
||||||
|
<el-table-column prop="months" label="身份证号码" show-overflow-tooltip ></el-table-column>
|
||||||
|
<el-table-column prop="caseTotal" label="金融产品名称" show-overflow-tooltip ></el-table-column>
|
||||||
|
<el-table-column prop="assignTotal" label="合同名称" show-overflow-tooltip ></el-table-column>
|
||||||
|
<el-table-column prop="assignTotal" label="委托时逾期天数" show-overflow-tooltip ></el-table-column>
|
||||||
|
<!-- <el-table-column prop="assignTotal" label="合同名称" show-overflow-tooltip ></el-table-column> -->
|
||||||
|
<el-table-column prop="assignTotal" label="当前逾期金额" show-overflow-tooltip ></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="text-center pt-16">
|
||||||
|
<el-pagination
|
||||||
|
@size-change="getCaseInfoList"
|
||||||
|
@current-change="getCaseInfoList"
|
||||||
|
:current-page="queryParam.current"
|
||||||
|
:page-size="queryParam.size"
|
||||||
|
layout="total, prev, pager, next, jumper"
|
||||||
|
:total="total">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 导入 -->
|
||||||
|
<importPackageDialog v-if="importCaseDialog" :importCaseDialog.sync="importCaseDialog" />
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import cpkapi from "@/services/casePackageManagement";
|
||||||
|
import api from "@/services/casePackageManagement";
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
importPackageDialog: () => import('./components/importPackageDialog'),//导入
|
||||||
|
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
activeName:'all',
|
||||||
|
showSearch: true,
|
||||||
|
queryDate: '',
|
||||||
|
activeUsage: '',
|
||||||
|
|
||||||
|
mediateStatusData:[],//所有案件状态枚举
|
||||||
|
financialProductsTypeOptions:[],//金融产品类型
|
||||||
|
departmentOptions:[],//区域
|
||||||
|
queryParam: {
|
||||||
|
pkgName:'',//案件包名称
|
||||||
|
entrustingAgencyName: '',//委案机构
|
||||||
|
endTime: '',//结束时间
|
||||||
|
beginTime:'',//开始时间
|
||||||
|
willEnd:'',
|
||||||
|
current:1,
|
||||||
|
size:10,
|
||||||
|
},
|
||||||
|
usageOption: ['今日','昨日', '近一周', '近一月', '近半年', '近一年'],
|
||||||
|
tableData: [],
|
||||||
|
total:0,
|
||||||
|
uniqueSelection:[],
|
||||||
|
caseAllocationDialog:null,//案件分配弹框
|
||||||
|
importCaseDialog:null,//导入
|
||||||
|
addCaseDialog:null,//新增
|
||||||
|
editCaseDrawer:null,//编辑
|
||||||
|
CasepackageList:[],
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getCasepkgList()
|
||||||
|
this.getCaseInfoList(1)
|
||||||
|
},
|
||||||
|
computed:{
|
||||||
|
// 获取抽屉drawer的内容高度
|
||||||
|
contentHeight(){
|
||||||
|
let oh = document.documentElement.clientHeight;
|
||||||
|
if(this.showSearch){
|
||||||
|
return oh-56-48-366-32
|
||||||
|
|
||||||
|
}else{
|
||||||
|
return oh-56-48-175-32
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
jumpUrl (url) {
|
||||||
|
this.$router.push(url);
|
||||||
|
},
|
||||||
|
// 案件包列表数据
|
||||||
|
getCasepkgList(){
|
||||||
|
cpkapi.getCasePkgQuery({current:1,size:500}).then(res => {
|
||||||
|
if (!res.code) {
|
||||||
|
this.CasepackageList = res.records;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 导入
|
||||||
|
handleImport(){
|
||||||
|
this.importCaseDialog={
|
||||||
|
title:'批量导入案件',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 批量删除
|
||||||
|
handleBatchDelete(){
|
||||||
|
if(this.uniqueSelection.length==0){
|
||||||
|
this.$message.warning("请先选择你要删除的列表数据");
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.$confirm("请确定是否删除这些数据?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
}).then(() => {
|
||||||
|
if(!this.$clickThrottle()) { return }//防止重复点击
|
||||||
|
|
||||||
|
let data = {
|
||||||
|
ids:this.uniqueSelection
|
||||||
|
}
|
||||||
|
api.deleteCaseBatch(data).then((res) => {
|
||||||
|
|
||||||
|
this.$message.success("成功");
|
||||||
|
this.getCaseInfoList(1)
|
||||||
|
|
||||||
|
});
|
||||||
|
}).catch(() => {});
|
||||||
|
},
|
||||||
|
// 单条删除
|
||||||
|
handleDelete(scope){
|
||||||
|
this.$confirm("请确定是否删除此条数据?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
}).then(() => {
|
||||||
|
if(!this.$clickThrottle()) { return }//防止重复点击
|
||||||
|
// api.CasePkgdeleteById({id:scope.row.id}).then((res) => {
|
||||||
|
|
||||||
|
// this.$message.success("删除成功");
|
||||||
|
// this.getCaseInfoList(1)
|
||||||
|
|
||||||
|
// });
|
||||||
|
}).catch(() => {});
|
||||||
|
},
|
||||||
|
//撤回分案
|
||||||
|
handleBackCase(scope){
|
||||||
|
this.$confirm("请确定是否撤回分案?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
}).then(() => {
|
||||||
|
if(!this.$clickThrottle()) { return }//防止重复点击
|
||||||
|
api.postpkgquash({id:scope.row.id}).then((res) => {
|
||||||
|
this.$message.success("撤回分案成功");
|
||||||
|
this.getCaseInfoList(1)
|
||||||
|
|
||||||
|
});
|
||||||
|
}).catch(() => {});
|
||||||
|
},
|
||||||
|
// 新增
|
||||||
|
handleAddForm(){
|
||||||
|
this.addCaseDialog={
|
||||||
|
title:'新增案件',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 案件分配
|
||||||
|
handleCaseAllocation(scope){
|
||||||
|
if((scope.row.caseTotal - scope.row.assignTotal) <= 0)
|
||||||
|
{
|
||||||
|
this.$message({
|
||||||
|
showClose: true,
|
||||||
|
message: '该案件包没有待分配的案件!',
|
||||||
|
type: 'warning'
|
||||||
|
});
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
this.caseAllocationDialog={
|
||||||
|
title:'案件分配',
|
||||||
|
ObjectInfo:scope.row
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 编辑
|
||||||
|
handleEdit(scope){
|
||||||
|
this.editCaseDrawer={
|
||||||
|
title:'编辑案件',
|
||||||
|
data:scope.row,
|
||||||
|
currentPage:this.queryParam.current
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 列表数据
|
||||||
|
getCaseInfoList(val){
|
||||||
|
|
||||||
|
|
||||||
|
this.queryParam.planBegin = this.queryParam.beginTime
|
||||||
|
this.queryParam.planEnd = this.queryParam.endTime
|
||||||
|
this.queryParam.current = val
|
||||||
|
api.getCasePkgQuery(this.queryParam).then(res => {
|
||||||
|
if (!res.code) {
|
||||||
|
this.tableData = res.records;
|
||||||
|
this.total = res.total;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleToggleSearch() {
|
||||||
|
this.showSearch = !this.showSearch
|
||||||
|
},
|
||||||
|
// 重置
|
||||||
|
hanldeReset() {
|
||||||
|
for (let key in this.queryParam) {
|
||||||
|
this.queryParam[key] = ''
|
||||||
|
}
|
||||||
|
this.queryParam.current = 1
|
||||||
|
this.queryParam.size = 10
|
||||||
|
},
|
||||||
|
handleSearch() {
|
||||||
|
this.queryParam.size = 10;
|
||||||
|
this.queryParam.current = 1;
|
||||||
|
this.getCaseInfoList(1)
|
||||||
|
},
|
||||||
|
handleClickUsage(item) {
|
||||||
|
this.activeUsage = item
|
||||||
|
this.setDateFast()
|
||||||
|
},
|
||||||
|
handleChangeDate() {
|
||||||
|
this.activeUsage = ''
|
||||||
|
if(this.queryDate === null) {
|
||||||
|
this.setDateFast()
|
||||||
|
}else {
|
||||||
|
this.queryParam.beginTime = this.$util.getDayStart(this.queryDate[0])
|
||||||
|
this.queryParam.endTime = this.$util.getDayEnd(this.queryDate[1])
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
setDateFast() {
|
||||||
|
switch (this.activeUsage) {
|
||||||
|
case "今日":
|
||||||
|
let todayObj = this.$util.getToday()
|
||||||
|
this.queryParam.beginTime = todayObj.todayStart
|
||||||
|
this.queryParam.endTime = todayObj.todayEnd
|
||||||
|
break
|
||||||
|
case "昨日":
|
||||||
|
let yesterdayObj = this.$util.getYesterday()
|
||||||
|
this.queryParam.beginTime = yesterdayObj.beginTime
|
||||||
|
this.queryParam.endTime = yesterdayObj.endTime
|
||||||
|
break
|
||||||
|
case "近一周":
|
||||||
|
let rangeWeek = this.$util.getRecentWeeks()
|
||||||
|
this.queryParam.beginTime = rangeWeek.recentWeekStart
|
||||||
|
this.queryParam.endTime = rangeWeek.todayEnd
|
||||||
|
break
|
||||||
|
case "近一月":
|
||||||
|
let rangeMonth = this.$util.getRecentMonths()
|
||||||
|
this.queryParam.beginTime = rangeMonth.recentMonthStart
|
||||||
|
this.queryParam.endTime = rangeMonth.todayEnd
|
||||||
|
break
|
||||||
|
case "近半年":
|
||||||
|
let rangeMonths = this.$util.getRecentMonths(6)
|
||||||
|
console.log('近半年:', rangeMonths)
|
||||||
|
this.queryParam.beginTime = rangeMonths.recentMonthStart
|
||||||
|
this.queryParam.endTime = rangeMonths.todayEnd
|
||||||
|
break
|
||||||
|
case "近一年":
|
||||||
|
let rangeYear = this.$util.getRecentYears()
|
||||||
|
this.queryParam.beginTime = rangeYear.recentYearStart
|
||||||
|
this.queryParam.endTime = rangeYear.todayEnd
|
||||||
|
break
|
||||||
|
default:
|
||||||
|
this.queryParam.beginTime = ''
|
||||||
|
this.queryParam.endTime = ''
|
||||||
|
this.queryDate = ''
|
||||||
|
break
|
||||||
|
}
|
||||||
|
if(this.queryParam.beginTime && this.queryParam.endTime) {
|
||||||
|
this.queryDate = [this.queryParam.beginTime, this.queryParam.endTime]
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
handleSelectionChange(val){
|
||||||
|
console.log('获取val',val)
|
||||||
|
this.uniqueSelection = []
|
||||||
|
val.forEach((row)=>{
|
||||||
|
this.uniqueSelection.push(row.id)
|
||||||
|
})
|
||||||
|
console.log('uniqueSelection',this.uniqueSelection)
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style scoped>
|
||||||
|
.el-badge{
|
||||||
|
top: 3px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -97,7 +97,7 @@
|
|||||||
<div class="flex-row">
|
<div class="flex-row">
|
||||||
<el-button size="small" type="primary" @click="handleImport">批量导入案件</el-button>
|
<el-button size="small" type="primary" @click="handleImport">批量导入案件</el-button>
|
||||||
<el-button size="small" @click="handleAddForm">添加案件</el-button>
|
<el-button size="small" @click="handleAddForm">添加案件</el-button>
|
||||||
<el-button size="small" @click="handleBatchDelete">错误修复</el-button>
|
<el-button size="small" @click="jumpUrl(`/case-mistake`)">错误修复</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@ -40,7 +40,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="flex-row justify-content-between align-items-center border-t-solid-lighter-1 p-16 cursor-pointer" @click="handleChangePersonal">
|
<div class="flex-row justify-content-between align-items-center border-t-solid-lighter-1 p-16 cursor-pointer" @click="handleChangePersonal">
|
||||||
<div class="f16 color-text-regular">个人信息</div>
|
<div class="f16 color-text-regular">个人信息</div>
|
||||||
<div class="f16 color-text-secondary">查看<i class="el-icon-arrow-right"></i></div>
|
<div class="f16 color-text-secondary">查看信息<i class="el-icon-arrow-right"></i></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="border-t-solid-lighter-1 p-16 f16 color-1960F4 text-center cursor-pointer" @click="handleLoginOut()">退出登录</div>
|
<div class="border-t-solid-lighter-1 p-16 f16 color-1960F4 text-center cursor-pointer" @click="handleLoginOut()">退出登录</div>
|
||||||
</div>
|
</div>
|
||||||
@ -413,7 +413,7 @@
|
|||||||
.show-info-wrap{
|
.show-info-wrap{
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 320px;
|
width: 320px;
|
||||||
height: 248px;
|
// height: 248px;
|
||||||
background-color: $color-white;
|
background-color: $color-white;
|
||||||
top:8px;
|
top:8px;
|
||||||
right: 16px;
|
right: 16px;
|
||||||
|
|||||||
@ -121,7 +121,7 @@ export default {
|
|||||||
if (valid) {
|
if (valid) {
|
||||||
this.repaymentObj.caseId = this.eventDialog.caseId;
|
this.repaymentObj.caseId = this.eventDialog.caseId;
|
||||||
caseMaterial.addCaseFile(this.repaymentObj).then(res => {
|
caseMaterial.addCaseFile(this.repaymentObj).then(res => {
|
||||||
this.$parent.getList()
|
this.$parent.getFileCaseList()
|
||||||
this.handleClose()
|
this.handleClose()
|
||||||
this.$message.success("操作成功");
|
this.$message.success("操作成功");
|
||||||
})
|
})
|
||||||
|
|||||||
@ -69,7 +69,7 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
async created() {
|
async created() {
|
||||||
await this.getList();
|
await this.getFileCaseList();
|
||||||
},
|
},
|
||||||
methods:{
|
methods:{
|
||||||
reg_img(item) {
|
reg_img(item) {
|
||||||
@ -96,7 +96,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 列表数据
|
// 列表数据
|
||||||
getList() {
|
getFileCaseList() {
|
||||||
let dataJson = {
|
let dataJson = {
|
||||||
size: 9999,
|
size: 9999,
|
||||||
current: 1,
|
current: 1,
|
||||||
@ -137,7 +137,7 @@ export default {
|
|||||||
let data = {id: item.id}
|
let data = {id: item.id}
|
||||||
caseMaterial.deleteCaseFileById(data).then((res) => {
|
caseMaterial.deleteCaseFileById(data).then((res) => {
|
||||||
this.$message.success("成功");
|
this.$message.success("成功");
|
||||||
this.getList()
|
this.getFileCaseList()
|
||||||
});
|
});
|
||||||
}).catch(() => {});
|
}).catch(() => {});
|
||||||
},
|
},
|
||||||
|
|||||||
@ -37,6 +37,12 @@ const routes = [
|
|||||||
component: () => import("@/pages/case-package"),
|
component: () => import("@/pages/case-package"),
|
||||||
meta: { title: "案件包管理", icon: 'menu-case-management' },
|
meta: { title: "案件包管理", icon: 'menu-case-management' },
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/case-mistake",
|
||||||
|
name: "/case-mistake",
|
||||||
|
component: () => import("@/pages/case-mistake"),
|
||||||
|
meta: { title: "错误修复", icon: 'menu-case-management' },
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: "/case-management",
|
path: "/case-management",
|
||||||
name: "/case-management",
|
name: "/case-management",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user