Files
Arbitrate-Frontend/src/views/awardManagement/listofAwards.vue
T

315 lines
14 KiB
Vue
Raw Normal View History

2023-09-18 21:55:43 +08:00
<template>
<div class="app-container">
2023-09-21 14:34:10 +08:00
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="案件编号" prop="caseNum">
<el-input v-model="queryParams.caseNum" placeholder="请输入案件编号" clearable @keyup.enter.native="handleQuery" />
</el-form-item>
<el-form-item label="案件状态" prop="caseStatus">
<el-select v-model="queryParams.caseStatus" placeholder="请选择案件状态" clearable
@keyup.enter.native="handleQuery">
2023-10-20 17:25:58 +08:00
<el-option v-for="dict in caseStatus" :key="dict.dictSort" :label="dict.dictLabel"
:value="dict.dictSort"></el-option>
2023-09-21 14:34:10 +08:00
</el-select>
</el-form-item>
2023-09-25 18:10:01 +08:00
<!-- <el-form-item label="开庭日期" prop="hearDate">
2023-09-21 14:34:10 +08:00
<el-date-picker v-model="queryParams.hearDate" type="daterange" range-separator="至" start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
2023-09-25 18:10:01 +08:00
</el-form-item> -->
2023-09-21 14:34:10 +08:00
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
2023-10-24 16:27:30 +08:00
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="operateClick(3)"
v-hasPermi="['caseManagement:list:check']">案件批量归档</el-button>
</el-col>
</el-row>
2023-09-21 14:34:10 +08:00
<el-table v-loading="loading" :data="dataList" style="width: 100%">
<el-table-column label="序号" type="index" align="center">
<template slot-scope="scope">
<span>{{
(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1
}}</span>
</template>
</el-table-column>
<el-table-column label="案件编号" align="center" prop="caseNum" :show-overflow-tooltip="true" />
<el-table-column label="案件标的" align="center" prop="caseSubjectAmount" />
2023-09-25 18:10:01 +08:00
<el-table-column label="开庭日期" align="center" prop="hearDate" :show-overflow-tooltip="true" />
2023-09-21 14:34:10 +08:00
<!-- 缴费人 -->
2023-10-08 16:51:59 +08:00
<!-- <el-table-column label="案件状态" align="center" prop="caseStatusName" /> -->
<el-table-column label="案件状态" align="center" prop="caseStatusName">
2023-10-20 17:25:58 +08:00
<template slot-scope="scope">
<el-tag type="success">{{ scope.row.caseStatusName }}</el-tag>
</template>
2023-10-08 16:51:59 +08:00
</el-table-column>
2023-09-21 14:34:10 +08:00
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
2023-10-20 17:25:58 +08:00
<el-button size="mini" type="text" icon="el-icon-reading"
v-if="scope.row.filearbitraUrl && scope.row.filearbitraUrl !== ''"
@click="showModel(scope.row, 0)">查看裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 11 && checkPermi(['awardManagement:list:check'])"
@click="showModel(scope.row, 1)">核查</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 12 && checkPermi(['awardManagement:list:confirmaward'])"
@click="showModel(scope.row, 2)">确认裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 13 && checkPermi(['awardManagement:list:sign'])"
@click="showModel(scope.row, 3)">签名</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 14 && checkPermi(['awardManagement:list:signprint'])"
@click="showaffixModel(scope.row, 4)">用印申请</el-button>
<!-- v-if="scope.row.caseStatus > 15" -->
<el-button size="mini" type="text" icon="el-icon-truck"
v-if="scope.row.caseStatus > 15 && checkPermi(['delivery:list:detail'])"
@click="showDeliveryModel(scope.row, 4)">快递信息</el-button>
<!-- v-if="scope.row.caseStatus == 15" 送达裁决书 -->
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 15 && checkPermi(['awardManagement:list:sendaward'])"
@click="showMailaward(scope.row)">送达裁决书</el-button>
<el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 16 && checkPermi(['awardManagement:list:file'])"
@click="showCasefilingModel(scope.row, 6)">案件归档</el-button>
2023-09-21 14:34:10 +08:00
</template>
</el-table-column>
</el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList(queryParams)" />
<!-- 弹窗 -->
<paymentdetailsDialog :openDialog="openDialog" :detailform="detailform" :title="title" :flag="flag"
@cancelpaymentdetails="cancelpaymentdetails" @updataList="updataList"></paymentdetailsDialog>
2023-09-27 10:55:09 +08:00
<!-- 送达裁决书页面 -->
2023-10-20 17:25:58 +08:00
<mailawardDialog :openMailawardDialog="openMailawardDialog" @closeMailaward="closeMailaward"
@updataList="updataList" :mailawardata="mailawardata"></mailawardDialog>
2023-10-08 16:51:59 +08:00
<!-- 快递信息页面 -->
2023-10-20 17:25:58 +08:00
<expressDeliveryDialog :showDelivery="showDelivery" :deliveryDataArr="deliveryDataArr"
@closeDeliveryModel="closeDeliveryModel" :flagLoading="flagLoading"></expressDeliveryDialog>
2023-10-24 16:27:30 +08:00
<!-- 批量操作弹窗 -->
<operateDialog :queryParams="queryParams" :operateStatus="operateStatus" :operateVisable="operateVisable"
@getcaseApply="getList" :operateTitle="operateTitle" @cancelOperate="cancelOperate"
:operateData="operateData">
</operateDialog>
2023-09-18 21:55:43 +08:00
</div>
</template>
2023-09-21 14:34:10 +08:00
2023-09-18 21:55:43 +08:00
<script>
2023-09-21 14:34:10 +08:00
import {
caseApplicationList,
caseApplicationDetail,
adjudicationLogistics,
adjudicationCaseFile,
2023-10-13 18:43:31 +08:00
adjudicationStamp,
selectSignUrl,
selectSealUrl,
selectSignSealUrl
2023-09-21 14:34:10 +08:00
} from "@/api/awardManagement/awardManagement";
import paymentdetailsDialog from "./components/paymentdetailsDialog.vue";
2023-09-27 10:55:09 +08:00
import mailawardDialog from './components/MailawardDialog.vue';
2023-10-08 16:51:59 +08:00
import expressDeliveryDialog from './components/expressDeliveryDialog.vue';
2023-10-24 16:27:30 +08:00
import operateDialog from '@/views/caseManagement/components/operateDialog.vue'
2023-10-20 17:25:58 +08:00
import { getDicts } from '@/api/system/dict/data.js'
2023-09-21 14:34:10 +08:00
export default {
name: "paymentList",
dicts: ["case_status"],
2023-10-24 16:27:30 +08:00
components: { paymentdetailsDialog, mailawardDialog, expressDeliveryDialog,operateDialog },
2023-09-21 14:34:10 +08:00
data() {
return {
queryParams: {
pageNum: 1,
pageSize: 10,
},
2023-10-20 17:25:58 +08:00
caseStatus: [],
2023-09-21 14:34:10 +08:00
// 遮罩层
loading: false,
// 总条数
total: 0,
// 表格数据
list: [],
// 弹出层标题
title: "",
payTitle: "",
// 是否显示弹出层
open: false,
openPay: false,
// 弹出层内容
form: {},
// 校验表单
rules: {},
dataList: [],
detailform: {}, //缴费详情数据
openDialog: false, //缴费详情数据弹框
flag: null,
2023-09-27 10:55:09 +08:00
openMailawardDialog: false, //送达裁决书页面
mailawardata: {}, //裁决书送达界面数据
2023-10-08 16:51:59 +08:00
showDelivery: false, //快递信息弹框
deliveryDataArr: [],//快递信息数据
flagLoading: true,
2023-10-24 16:27:30 +08:00
operateVisable: false,
operateData:{},
operateStatus:0,
operateTitle:""
2023-09-21 14:34:10 +08:00
};
},
created() {
2023-10-20 17:25:58 +08:00
getDicts("case_status").then(res => {
this.caseStatus = res.data;
let params = this.$route.params.status;
if (params) {
this.queryParams.caseStatus = params;
}
this.queryParams.caseStatusList = [11, 12, 13, 14, 15, 16]
this.getList(this.queryParams);
})
2023-09-25 18:10:01 +08:00
// 裁决书列表不显示 生成裁决书
// this.queryParams.caseStatusList = [10, 11, 12, 13, 14, 15, 16]
2023-09-21 14:34:10 +08:00
},
methods: {
2023-10-24 16:27:30 +08:00
cancelOperate() {
this.operateVisable = false;
},
operateClick(type) {
this.operateVisable = true;
if (type == 0) {
this.operateTitle = '批量提交';
this.operateStatus = 0;
} else if (type == 1) {
this.operateTitle = '批量删除';
this.operateStatus = 1;
} else if (type == 2) {
this.operateTitle = '批量立案申请';
this.operateStatus = 2;
} else if (type == 3) {
this.operateTitle = '批量归档';
this.operateStatus = 3;
}
},
2023-10-13 18:43:31 +08:00
updataList() {
2023-09-21 14:34:10 +08:00
this.getList(this.queryParams);
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList(this.queryParams);
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 查询列表数据
getList(parms) {
this.loading = true;
caseApplicationList(parms).then((response) => {
this.dataList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// model框显示
showModel(row, type) {
2023-10-13 18:43:31 +08:00
2023-09-21 14:34:10 +08:00
switch (type) {
2023-10-14 16:47:32 +08:00
case 0:
selectSignSealUrl({ id: row.id }).then(res => {
let url = res.data.filearbitraUrl;
window.open(url)
})
2023-10-14 16:47:32 +08:00
break;
2023-09-21 14:34:10 +08:00
case 1:
2023-10-13 18:43:31 +08:00
this.getDetail({ id: row.id });
this.openDialog = true;
2023-09-21 14:34:10 +08:00
this.title = "核验裁决书";
this.flag = 1;
break;
case 2:
2023-10-13 18:43:31 +08:00
this.getDetail({ id: row.id });
this.openDialog = true;
2023-09-21 14:34:10 +08:00
this.title = "审核裁决书";
this.flag = 2;
break;
case 3:
2023-10-13 18:43:31 +08:00
// this.title = "裁决书签名";
// this.flag = 3;
selectSignUrl({ id: row.id }).then(res => {
let url = res.data.signUrl;
window.open(url)
})
2023-09-21 14:34:10 +08:00
break;
default:
break;
}
},
// 关闭弹窗
cancelpaymentdetails() {
this.openDialog = false;
},
2023-10-08 11:28:27 +08:00
// 用印申请
showaffixModel(row) {
this.$modal.confirm('是否进行用印申请?')
.then(function () {
2023-10-13 18:43:31 +08:00
// return adjudicationStamp({ id: row.id });
selectSealUrl({ id: row.id }).then(res => {
let url = res.data.sealUrl;
window.open(url)
})
})
// .then(() => {
// this.getList(this.queryParams);
// this.$modal.msgSuccess("用印成功!");
// })
.catch(function () {
});
2023-10-08 11:28:27 +08:00
},
2023-10-08 16:51:59 +08:00
// 快递信息弹框
showDeliveryModel(row) {
2023-10-13 18:43:31 +08:00
console.log(row, '快递');
2023-10-08 16:51:59 +08:00
this.showDelivery = true
2023-10-13 18:43:31 +08:00
this.getadjudicationLogistics({ id: row.id })
2023-10-08 16:51:59 +08:00
},
closeDeliveryModel() {
this.showDelivery = false
},
// 查询物流信息
getadjudicationLogistics(val) {
this.flagLoading = true;
adjudicationLogistics(val).then((res) => {
this.deliveryDataArr = res.data
this.flagLoading = false
2023-10-08 16:51:59 +08:00
})
},
// 案件归档
showCasefilingModel(row) {
this.$modal.confirm('是否确认立即进行案件扫描?').then(
function () {
2023-10-20 17:25:58 +08:00
// return adjudicationCaseFile({ id: row.id })
2023-10-24 16:27:30 +08:00
return adjudicationCaseFile({ ids: [row.id] })
}
).then(() => {
this.getList(this.queryParams);
this.$modal.msgSuccess("归档成功!");
2023-10-13 18:43:31 +08:00
}).catch(function () { })
},
2023-09-27 10:55:09 +08:00
// 送达裁决书弹框
showMailaward(row) {
this.mailawardata = row;
this.openMailawardDialog = true
},
// 关闭送达裁决书弹框
closeMailaward(row) {
this.openMailawardDialog = false
},
2023-09-21 14:34:10 +08:00
/** 查询详情 */
getDetail(parms) {
caseApplicationDetail(parms).then((res) => {
this.detailform = res.data;
});
},
},
};
2023-09-18 21:55:43 +08:00
</script>
2023-09-21 14:34:10 +08:00
<style lang="scss" scoped></style>