裁决书管理的案件详情页

This commit is contained in:
gyj
2023-12-06 18:03:49 +08:00
parent 9f74eaea1b
commit fae93fdc00
2 changed files with 169 additions and 1 deletions
@@ -0,0 +1,122 @@
<template>
<div>
<el-dialog title="案件详情" :visible="showarchiveDetails" @close="cancel" :destroy-on-close="true" center>
<div class="loading" v-if="flagLoadingS">
<i class="el-icon-loading"></i>
</div>
<div v-else>
<!-- <div class="noData" v-if="noData">暂无数据!</div> -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="申请人案件证据资料" name="first"></el-tab-pane>
<el-tab-pane label="被申请人案件证据资料" name="second"></el-tab-pane>
<el-tab-pane label="裁决书附件" name="third"></el-tab-pane>
<el-tab-pane label="仲裁申请书" name="fourth"></el-tab-pane>
<el-tab-pane label="案件视频" name="five"></el-tab-pane>
<el-tab-pane label="庭审笔录" name="six"></el-tab-pane>
</el-tabs>
<div v-show="activeName=='first'">
<div v-for="(item,index) in detailsAwardNum.caseAttachList" :key="index" v-if="item.annexType==2" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,2) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='second'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==6" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,6) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='third'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==3" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,3) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='fourth'">
<div v-for="item in detailsAwardNum.caseAttachList" v-if="item.annexType==1" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="isNoData(detailsAwardNum.caseAttachList,1) == 0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='five'">
<video style="background-color: #181717;width: 350px;height: 200px;margin: 10px;" :src="headPath + item.annexPath" v-for="(item,index) in videoList" :key="index" controls="controls"></video>
<el-empty v-if="videoList == null || videoList.length ==0" description="暂无数据"></el-empty>
</div>
<div v-show="activeName=='six'">
<div v-for="(item,index) in trialTranscripts" :key="index" style="margin-top:10px;">
<el-link target="_blank" type="primary" :href="fileURL+item.annexPath">{{item.annexName}}</el-link>
</div>
<el-empty v-if="trialTranscripts == null || trialTranscripts.length ==0" description="暂无数据"></el-empty>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
props: ["showarchiveDetails","detailsAwardNum","videoList","flagLoadingS","trialTranscripts"],
components: {
},
data() {
return {
activeName: 'first',
fileURL: window.location.origin + "/API",
headPath:window.location.origin + "/API",
noData: false,
// myData:[],
// videoLists:[]
};
},
created(){
},
methods: {
isNoData(data,type){
let resNumber = 0
if(data){
let list = data.filter(item => item.annexType == type)
if(list){
resNumber = list.length
}
}
return resNumber
},
handleClick(tab, event) {
},
cancel() {
this.$emit("cancelDetail");
// this.activeName ="first"
},
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-dialog__body {
height: 500px !important;
overflow: auto !important;
}
::v-deep .el-dialog {
width: 800px;
background: #ffffff;
border-radius: 20px;
}
.loading {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
.el-icon-loading {
font-size: 50px;
}
}
</style>
+47 -1
View File
@@ -84,6 +84,7 @@
<el-button size="mini" type="text" icon="el-icon-edit" <el-button size="mini" type="text" icon="el-icon-edit"
v-if="scope.row.caseStatus == 16 && checkPermi(['awardManagement:list:file']) && btnStatus" v-if="scope.row.caseStatus == 16 && checkPermi(['awardManagement:list:file']) && btnStatus"
@click="showCasefilingModel(scope.row, 6)">案件归档</el-button> @click="showCasefilingModel(scope.row, 6)">案件归档</el-button>
<el-button size="mini" type="text" icon="el-icon-tickets" @click="detailsAwardList(scope.row)">案件详情</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -102,6 +103,10 @@
<operateDialog :queryParams="queryParams" :operateStatus="operateStatus" :operateVisable="operateVisable" <operateDialog :queryParams="queryParams" :operateStatus="operateStatus" :operateVisable="operateVisable"
@getcaseApply="getList" :operateTitle="operateTitle" @cancelOperate="cancelOperate" :operateData="operateData"> @getcaseApply="getList" :operateTitle="operateTitle" @cancelOperate="cancelOperate" :operateData="operateData">
</operateDialog> </operateDialog>
<!-- 裁决书案件详情 -->
<detailsAward :showarchiveDetails="showarchiveDetails" @cancelDetail="cancelDetail" :detailsAwardNum="detailsAwardNum" :videoList="videoList"
:flagLoadingS="flagLoadingS" :trialTranscripts="trialTranscripts"
></detailsAward>
</div> </div>
</template> </template>
@@ -121,11 +126,20 @@ import paymentdetailsDialog from "./components/paymentdetailsDialog.vue";
import mailawardDialog from './components/MailawardDialog.vue'; import mailawardDialog from './components/MailawardDialog.vue';
import expressDeliveryDialog from './components/expressDeliveryDialog.vue'; import expressDeliveryDialog from './components/expressDeliveryDialog.vue';
import operateDialog from '@/views/caseManagement/components/operateDialog.vue' import operateDialog from '@/views/caseManagement/components/operateDialog.vue'
import detailsAward from './components/detailsAward.vue'
import { getDicts } from '@/api/system/dict/data.js' import { getDicts } from '@/api/system/dict/data.js'
import { videoList } from "@/api/caseFiling/caseFiling";
import {attachListByCaseId} from "@/api/caseManagement/caseManagement"
export default { export default {
name: "paymentList", name: "paymentList",
dicts: ["case_status"], dicts: ["case_status"],
components: { paymentdetailsDialog, mailawardDialog, expressDeliveryDialog, operateDialog }, components: {
paymentdetailsDialog,
mailawardDialog,
expressDeliveryDialog,
operateDialog,
detailsAward
},
data() { data() {
return { return {
queryParams: { queryParams: {
@@ -152,6 +166,9 @@ export default {
rules: {}, rules: {},
dataList: [], dataList: [],
detailform: {}, //缴费详情数据 detailform: {}, //缴费详情数据
detailsAwardNum:{},//裁决书数据
videoList:"", //视频数据
trialTranscripts:[],//庭审笔录
openDialog: false, //缴费详情数据弹框 openDialog: false, //缴费详情数据弹框
flag: null, flag: null,
openMailawardDialog: false, //送达裁决书页面 openMailawardDialog: false, //送达裁决书页面
@@ -159,10 +176,13 @@ export default {
showDelivery: false, //快递信息弹框 showDelivery: false, //快递信息弹框
deliveryDataArr: [],//快递信息数据 deliveryDataArr: [],//快递信息数据
flagLoading: true, flagLoading: true,
flagLoadingS: true,
operateVisable: false, operateVisable: false,
operateData: {}, operateData: {},
operateStatus: 0, operateStatus: 0,
operateTitle: "", operateTitle: "",
// 裁决书详情
showarchiveDetails: false,
selectCaseStatusList: [ selectCaseStatusList: [
{ {
label: "待办案件", label: "待办案件",
@@ -193,6 +213,9 @@ export default {
methods: { methods: {
cancelOperate() { cancelOperate() {
this.operateVisable = false; this.operateVisable = false;
},
cancelDetail(){
this.showarchiveDetails = false;
}, },
operateClick(type) { operateClick(type) {
this.operateVisable = true; this.operateVisable = true;
@@ -347,8 +370,31 @@ export default {
getDetail(parms) { getDetail(parms) {
caseApplicationDetail(parms).then((res) => { caseApplicationDetail(parms).then((res) => {
this.detailform = res.data; this.detailform = res.data;
this.detailsAwardNum = res.data;
console.log(this.detailsAwardNum)
}); });
}, },
// 裁决书详情
detailsAwardList(row){
this.showarchiveDetails = true
this.getDetail({ id: row.id })
this.getvideoList({ caseId: row.id })
this.getAttachListByCaseId({caseAppliId:row.id,annexType:11})
this.flagLoadingS = false
},
// 根据id查询视频列表
getvideoList(data){
videoList(data).then(res => {
this.videoList = res.data;
})
},
//根据案件id和类型查询附件
getAttachListByCaseId(data){
attachListByCaseId(data).then(res =>{
this.trialTranscripts = res.data;
})
}
}, },
}; };
</script> </script>