调解员案件管理
This commit is contained in:
parent
91086344e0
commit
3e73a924a5
@ -475,9 +475,12 @@ import { values } from "lodash";
|
||||
},
|
||||
|
||||
created() {
|
||||
if (this.$route.query.dataKey != undefined) {
|
||||
if (this.$route.query.pkgId != undefined) {
|
||||
this.queryParam.pkgId = this.$route.query.pkgId;
|
||||
}
|
||||
if (this.$route.query.pkgName != undefined) {
|
||||
this.queryParam.pkgName = this.$route.query.pkgName;
|
||||
}
|
||||
this.getCaseInfoList(1)
|
||||
},
|
||||
computed:{
|
||||
|
||||
@ -97,31 +97,87 @@
|
||||
</div>
|
||||
|
||||
<div >
|
||||
<el-table :data="tableData" :height="`${contentHeight}`"
|
||||
@selection-change="handleSelectionChange">
|
||||
<el-table :data="tableData" :height="`${contentHeight}`" >
|
||||
<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="planStartTime" label="委案日期" show-overflow-tooltip >
|
||||
<el-table-column label="委案开始日期" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span >{{ scope.row.planStartTime | formaDate("yyyy-MM-dd") }}</span>
|
||||
</template>
|
||||
</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="resultStatus" label="待分案" show-overflow-tooltip >
|
||||
<el-table-column label="委案结束日期" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span >{{ scope.row.caseTotal - scope.row.assignTotal}}</span>
|
||||
<span >{{ scope.row.planEndTime | formaDate("yyyy-MM-dd") }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="assignTotal" label="已分案" show-overflow-tooltip ></el-table-column>
|
||||
<el-table-column label="操作" width="190">
|
||||
<!-- <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 label="在办数量" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.caseStatus" :key="index">
|
||||
{{ item.status == 2 ? (scope.row.caseTotal - item.count):'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="办结数量" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.caseStatus" :key="index">
|
||||
{{ item.status == 2 ? item.count:'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column label="未触达" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.mediateStatus" :key="index">
|
||||
{{ item.status == 0 ? item.count:'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="调解中" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.mediateStatus" :key="index">
|
||||
{{ item.status == 1 ? item.count:'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="已达成方案" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.mediateStatus" :key="index">
|
||||
{{ item.status == 2 ? item.count:'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="已签署协议" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.mediateStatus" :key="index">
|
||||
{{ item.status == 3 ? item.count:'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="调解成功数量" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.mediateStatus" :key="index">
|
||||
{{ item.status == 5 ? item.count:'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="调解失败" show-overflow-tooltip >
|
||||
<template slot-scope="scope">
|
||||
<span v-for="(item,index) in scope.row.mediateStatus" :key="index">
|
||||
{{ item.status == 4 ? item.count:'' }}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- 产品类别、委案时间、委案期限、剩余调解天数、在案数量、结案数量、调解成功数量(签署调解协议即为成功)、调解失败等 -->
|
||||
<el-table-column label="操作" width="180">
|
||||
<template slot-scope="scope">
|
||||
<div class="flex-row align-items-center">
|
||||
<el-button size="mini" @click="jumpUrl(`/case-management?dataKey=casepack&pkgId=${scope.row.id}`)">查看</el-button>
|
||||
<el-button size="mini" v-if="scope.row.assignTotal == 0" @click="handleDe1lete(scope)">办结</el-button>
|
||||
<el-button size="mini" @click="jumpUrl(`/mediation-management?pkgId=${scope.row.id}&pkgName=${scope.row.pkgName}`)">查看案件</el-button>
|
||||
<el-button size="mini" @click="handleDe1lete(scope)">办结</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@ -141,15 +197,7 @@
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- 导入 -->
|
||||
<importPackageDialog v-if="importCaseDialog" :importCaseDialog.sync="importCaseDialog" />
|
||||
<!-- 新增 -->
|
||||
<addCaseDialog v-if="addCaseDialog" :addCaseDialog.sync="addCaseDialog" />
|
||||
|
||||
<!-- 编辑 -->
|
||||
<!-- <editCaseDrawer v-if="editCaseDrawer" :editCaseDrawer.sync="editCaseDrawer"/> -->
|
||||
<!-- 案件分配-->
|
||||
<caseAllocationDialog v-if="caseAllocationDialog" :caseAllocationDialog.sync="caseAllocationDialog" />
|
||||
|
||||
</div>
|
||||
</template>
|
||||
@ -157,10 +205,6 @@
|
||||
import api from "@/services/casePackageManagement";
|
||||
export default {
|
||||
components: {
|
||||
importPackageDialog: () => import('./components/importPackageDialog'),//导入
|
||||
addCaseDialog: () => import('./components/addCaseDialog'),//新增
|
||||
// editCaseDrawer: () => import('./components/editCaseDrawer'),//编辑
|
||||
caseAllocationDialog: () => import('./components/caseAllocationDialog'),//案件分配
|
||||
|
||||
},
|
||||
data() {
|
||||
@ -185,19 +229,11 @@ import api from "@/services/casePackageManagement";
|
||||
usageOption: ['今日','昨日', '近一周', '近一月', '近半年', '近一年'],
|
||||
tableData: [],
|
||||
total:0,
|
||||
uniqueSelection:[],
|
||||
caseAllocationDialog:null,//案件分配弹框
|
||||
importCaseDialog:null,//导入
|
||||
addCaseDialog:null,//新增
|
||||
editCaseDrawer:null,//编辑
|
||||
orglist:[],//委案机构
|
||||
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
this.getOrgList()
|
||||
this.getCaseInfoList(1)
|
||||
},
|
||||
@ -224,107 +260,12 @@ import api from "@/services/casePackageManagement";
|
||||
}
|
||||
})
|
||||
},
|
||||
// 导入
|
||||
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 => {
|
||||
api.postquery_by_case(this.queryParam).then(res => {
|
||||
if (!res.code) {
|
||||
this.tableData = res.records;
|
||||
this.total = res.total;
|
||||
@ -405,16 +346,6 @@ import api from "@/services/casePackageManagement";
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
handleSelectionChange(val){
|
||||
console.log('获取val',val)
|
||||
this.uniqueSelection = []
|
||||
val.forEach((row)=>{
|
||||
this.uniqueSelection.push(row.id)
|
||||
})
|
||||
console.log('uniqueSelection',this.uniqueSelection)
|
||||
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -121,7 +121,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row type="flex" align="middle">
|
||||
<!-- <el-row type="flex" align="middle">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="负责人" prop="deptFlag">
|
||||
<el-switch
|
||||
@ -133,7 +133,7 @@
|
||||
</el-switch>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-row> -->
|
||||
|
||||
|
||||
</el-form>
|
||||
@ -175,8 +175,7 @@ export default {
|
||||
deptId:'',
|
||||
deptIds:[],
|
||||
type: 2,
|
||||
status:1,
|
||||
identity:3
|
||||
status:1
|
||||
},
|
||||
rulesClient: {
|
||||
password: [
|
||||
@ -216,10 +215,17 @@ export default {
|
||||
handleSubmit(){
|
||||
if(!this.$clickThrottle()) { return }
|
||||
let _this=this;
|
||||
console.log(_this.userInfo,'_this.userInfo')
|
||||
this.$refs.ruleForm.validate(async(valid) => {
|
||||
if (valid) {
|
||||
_this.userInfo.username = _this.userInfo.phone;
|
||||
|
||||
if(_this.userInfo.teamId!=''){
|
||||
_this.userInfo.deptId = _this.userInfo.teamId;
|
||||
}
|
||||
else
|
||||
{
|
||||
_this.userInfo.deptId = _this.userInfo.regionId;
|
||||
}
|
||||
if(Object.keys(this.addOrEditUserConfig.data).length>0)
|
||||
{
|
||||
api.updateUserById(_this.userInfo).then(res => {
|
||||
@ -315,7 +321,7 @@ export default {
|
||||
},
|
||||
regionChange(type){
|
||||
this.teamOptions = []
|
||||
if(type != 0){ this.userInfo.teamId = '' }
|
||||
if(type != 0){ this.userInfo.teamId = null }
|
||||
if(this.userInfo.regionId != '')
|
||||
{
|
||||
api.getDeptList({current: 1,size: 100,companyId:this.$store.state.userinfo.companyId,pid:this.userInfo.regionId}).then(res => {
|
||||
@ -335,9 +341,21 @@ export default {
|
||||
|
||||
if(Object.keys(this.addOrEditUserConfig.data).length>0)
|
||||
{
|
||||
this.userInfo = JSON.parse(JSON.stringify(this.addOrEditUserConfig.data));
|
||||
this.userInfo.regionId = '0'
|
||||
this.userInfo.teamId = ''
|
||||
let dataJson=JSON.parse(JSON.stringify(this.addOrEditUserConfig.data));
|
||||
this.userInfo.id = dataJson.id;
|
||||
this.userInfo.deptId = dataJson.deptId;
|
||||
this.userInfo.email = dataJson.email;
|
||||
this.userInfo.phone = dataJson.phone;
|
||||
this.userInfo.realName = dataJson.realName;
|
||||
this.userInfo.remark = dataJson.remark;
|
||||
this.userInfo.roleIds = dataJson.roleIds;
|
||||
this.userInfo.regionId = '';
|
||||
this.userInfo.teamId = '';
|
||||
// this.userInfo.regionId = '0'
|
||||
// this.userInfo.teamId = ''
|
||||
// this.userInfo.teamId = ''
|
||||
// {"deptId":10,"email":"","headUrl":"","id":46,"identity":2,"phone":"18381082759","realName":"熊静霞",
|
||||
// "remark":"","resources":[],"roleIds":[11],"showName":"熊静霞","status":1,"tenantKey":"","type":2,"typeName":"","updateAt":"2024-12-24 05:58:23","updateBy":46,"username":"18381082759","regionId":"10","teamId":""}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -30,6 +30,12 @@ const caseManagementApi = {
|
||||
return service.service.post(`${apiMediate}case_pkg/orgs`, data)
|
||||
},
|
||||
|
||||
// 调解人员的案件包
|
||||
postquery_by_case: data => {
|
||||
return service.service.post(`${apiMediate}case_pkg/query-by-case`, data)
|
||||
},
|
||||
|
||||
|
||||
|
||||
//========================end::案件包管理======================================
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user