<template> <div> <!-- 流转记录 --> <div class="record"> <el-row class="table-title"> <el-col :span="6"><div class="title-header"><i class="el-icon-tickets"/>事件流转记录</div></el-col> </el-row> <el-table v-loading="processRecordLoading" :data="processRecordList" border size="small" max-height="250"> <el-table-column v-for="column in processRecordColumns" :key="column.value" :label="column.text" :width="column.width" :align="column.align?column.align:'center'"> <template slot-scope="scope"> <span>{{ scope.row[column.value] }}</span> </template> </el-table-column> </el-table> </div> <!-- 督办记录 --> <div class="record"> <el-row class="table-title"> <el-col :span="6"><div class="title-header"><i class="el-icon-tickets"/>事件督办记录</div></el-col> </el-row> <el-table v-loading="superviseLoading" :data="superviseList" border size="small" max-height="250"> <el-table-column v-for="column in superviseColumns" :key="column.value" :label="column.text" :width="column.width" :align="column.align?column.align:'center'"> <template slot-scope="scope"> <span>{{ scope.row[column.value] }}</span> </template> </el-table-column> </el-table> </div> <!-- 催办记录 --> <div class="record"> <el-row class="table-title"> <el-col :span="6"><div class="title-header"><i class="el-icon-tickets"/>事件催办记录</div></el-col> </el-row> <el-table v-loading="urgeRecordLoading" :data="urgeRecordLsit" border size="small" max-height="250"> <el-table-column v-for="column in urgeRecordColumns" :key="column.value" :label="column.text" :width="column.width" :align="column.align?column.align:'center'"> <template slot-scope="scope"> <span>{{ scope.row[column.value] }}</span> </template> </el-table-column> </el-table> </div> <!-- 延期记录 --> <div class="record"> <el-row class="table-title"> <el-col :span="6"><div class="title-header"><i class="el-icon-tickets"/>事件延期记录</div></el-col> </el-row> <el-table v-loading="delayRecordLoading" :data="delayRecordList" border size="small" max-height="250"> <el-table-column v-for="column in delayRecordColumns" :key="column.value" :label="column.text" :width="column.width" :align="column.align?column.align:'center'"> <template slot-scope="scope"> <span>{{ scope.row[column.value] }}</span> </template> </el-table-column> </el-table> </div> <!-- 监察记录 --> <div class="record"> <el-row class="table-title"> <el-col :span="6"><div class="title-header"><i class="el-icon-tickets"/>事件监察记录</div></el-col> </el-row> <el-table v-loading="monitorLoading" :data="monitorList" border size="small" max-height="250"> <el-table-column v-for="column in monitorColumns" :key="column.value" :label="column.text" :width="column.width" :align="column.align?column.align:'center'"> <template slot-scope="scope"> <span>{{ scope.row[column.value] }}</span> </template> </el-table-column> </el-table> </div> <!-- 上报请示记录 --> <div class="record"> <el-row class="table-title"> <el-col :span="6"><div class="title-header"><i class="el-icon-tickets"/>上报请示记录</div></el-col> </el-row> <el-table v-loading="reportRecordLoading" :data="reportRecordList" border size="small" max-height="250"> <el-table-column v-for="column in reportRecordColumns" :key="column.value" :label="column.text" :width="column.width" :align="column.align?column.align:'center'"> <template slot-scope="scope"> <span>{{ scope.row[column.value] }}</span> </template> </el-table-column> </el-table> </div> </div> </template> <script> import { historicalRecords } from '@/api/process' import { delayRecords } from '@/api/caseDelay' import { urgeRecords } from '@/api/caseUrge' import { reportRecords } from '@/api/caseReport' import { superviseRecords } from '@/api/caseSupervise' import { monitorRecords } from '@/api/caseMonitor' export default { name: 'CaseRecord', props: { processId: { type: String, default: '' }, id: { type: String, default: '' } }, data() { return { processRecordList: [], processRecordColumns: [ { text: '处理操作', value: 'operationTypeName', align: 'center' }, { text: '执行部门', value: 'deptName', align: 'center' }, { text: '执行人', value: 'userName', align: 'center' }, { text: '处理时间', value: 'time', align: 'center' }, { text: '备注', value: 'remarks', align: 'center' } ], processRecordLoading: false, delayRecordList: [], delayRecordColumns: [ { text: '申请人', value: 'applyUserName', align: 'center' }, { text: '申请理由', value: 'applyReason', align: 'center' }, { text: '延期时间', value: 'delayTime', align: 'center' }, { text: '申请状态', value: 'applyStateName', align: 'center' }, { text: '申请时间', value: 'applyTime', align: 'center' } ], delayRecordLoading: false, urgeRecordLsit: [], urgeRecordColumns: [ { text: '催办人', value: 'urgeUserName', align: 'center' }, { text: '催办环节', value: 'stateName', align: 'center' }, { text: '当时处理者', value: 'processUserName', align: 'center' }, { text: '催办内容', value: 'urgeContent', align: 'center' }, { text: '催办时间', value: 'urgeTime', align: 'center' } ], urgeRecordLoading: false, reportRecordList: [], reportRecordColumns: [ { text: '请示人', value: 'reportUserName', align: 'center' }, { text: '请示内容', value: 'reportContent', align: 'center' }, { text: '请示时间', value: 'reportTime', align: 'center' }, { text: '处理人', value: 'processUserName', align: 'center' }, { text: '处理状态', value: 'processStateName', align: 'center' }, { text: '处理方式', value: 'processTypeName', align: 'center' }, { text: '处理时间', value: 'processTime', align: 'center' }, { text: '处理结果', value: 'processContent', align: 'center' } ], reportRecordLoading: false, superviseList: [], superviseColumns: [ { text: '申请人', value: 'applyPersonName', align: 'center' }, { text: '督办内容', value: 'urgeContent', align: 'center' }, { text: '申请时间', value: 'applyTime', align: 'center' }, { text: '督办类型', value: 'urgeType', align: 'center' }, { text: '审核状态', value: 'checkStatus', align: 'center' }, { text: '审核人', value: 'checkPersonName', align: 'center' }, { text: '审核时间', value: 'checkTime', align: 'center' }, { text: '审核驳回原因', value: 'checkRejectReason', align: 'center' }, { text: '督办状态', value: 'urgeStatus', align: 'center' }, { text: '督办人', value: 'urgePersonName', align: 'center' }, { text: '督办时间', value: 'urgeTime', align: 'center' }, { text: '督办结果', value: 'urgeResult', align: 'center' } ], superviseLoading: false, monitorList: [], monitorColumns: [ { text: '申请人', value: 'applyPersonName', align: 'center' }, { text: '监察内容', value: 'superviseContent', align: 'center' }, { text: '申请时间', value: 'applyTime', align: 'center' }, { text: '审核状态', value: 'checkStatus', align: 'center' }, { text: '审核人', value: 'checkPersonName', align: 'center' }, { text: '审核时间', value: 'checkTime', align: 'center' }, { text: '审核驳回原因', value: 'checkRejectReason', align: 'center' }, { text: '监察状态', value: 'superviseStatus', align: 'center' }, { text: '监察人', value: 'supervisePersonName', align: 'center' }, { text: '监察结果', value: 'superviseResult', align: 'center' } ], monitorLoading: false } }, mounted() { this.fetchProcessRecords() this.fetchDelayRecords() this.fetchUrgeRecords() this.fetchReportRecords() this.fetchSuperviseRecords() this.fetchMonitorecords() }, methods: { fetchProcessRecords() { this.processRecordLoading = true historicalRecords(this.processId).then(res => { this.processRecordList = res.data this.processRecordLoading = false }) }, fetchDelayRecords() { this.delayRecordLoading = true delayRecords(this.id).then(res => { this.delayRecordList = res.data this.delayRecordLoading = false }) }, fetchUrgeRecords() { this.urgeRecordLoading = true urgeRecords(this.id).then(res => { this.urgeRecordLsit = res.data this.urgeRecordLoading = false }) }, fetchReportRecords() { this.reportRecordLoading = true reportRecords(this.id).then(res => { this.reportRecordList = res.data this.reportRecordLoading = false }) }, fetchSuperviseRecords() { this.superviseLoading = true superviseRecords(this.id).then(res => { this.superviseList = res.data this.superviseLoading = false }) }, fetchMonitorecords() { this.monitorLoading = true monitorRecords(this.id).then(res => { this.monitorList = res.data this.monitorLoading = false }) } } } </script> <style lang="scss" scoped> .table-title{ background-color:rgba(243, 243, 243, 1); height: 46px; .title-header{ line-height:46px; color: #606266; font-size: 15px; i{ margin-left: 5px; margin-right: 5px; } } } .record{ margin-bottom: 40px; } </style>