|
|
<template>
|
|
|
<div class="L-task-info">
|
|
|
<div class="info-left" id="L-size-main">
|
|
|
<div class="content-info" id="L-header">
|
|
|
<div class="info-title">任务详情</div>
|
|
|
<div class="teshu-top-info">
|
|
|
<div class="top-info">
|
|
|
<el-row class="top-row">
|
|
|
<!-- <el-col :span="8">
|
|
|
任务编号:<span>{{ titleInfoObj.id }}</span>
|
|
|
</el-col> -->
|
|
|
<el-col :span="8">
|
|
|
任务名称:<span>{{ titleInfoObj.taskName }}</span>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
任务状态:<span>{{ taskstatus(titleInfoObj.taskStatus) }}</span>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
任务期限:<span>{{ titleInfoObj.taskDeadline }}</span>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
任务下发时间:<span>{{ titleInfoObj.taskTime }}</span>
|
|
|
</el-col>
|
|
|
<el-col :span="16">
|
|
|
核查资产类型:<span>{{ listTow.join(",") }}</span>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="info-cut-off-rule" id="L-tab">
|
|
|
<div class="left-tab" :class="index == 1 ? 'active-tab' : ''" @click="activeTab(1)">资产核查信息</div>
|
|
|
<div :class="index == 2 ? 'active-tab' : ''" @click="activeTab(2)">单位完成情况</div>
|
|
|
</div>
|
|
|
<div class="info-bottom-box">
|
|
|
<el-form :inline="true" :model="formInline" size="small" class="demo-form-inline" v-if="index == 1">
|
|
|
<el-row>
|
|
|
<el-col :span="7">
|
|
|
<el-form-item label="核查单位:">
|
|
|
<el-input v-model="formInline.dwmc" placeholder="请输入"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<!-- <el-col :span="9">
|
|
|
<el-form-item label="系统类型:">
|
|
|
<el-select v-model="formInline.xtlx" placeholder="请选择">
|
|
|
<el-option v-for="dict in dict.type.zc_xtlx" :key="dict.label" :label="dict.label"
|
|
|
:value="dict.value">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col> -->
|
|
|
<el-col :span="7">
|
|
|
<el-form-item label="审核状态:">
|
|
|
<el-select v-model="formInline.status" placeholder="请选择">
|
|
|
<el-option label="待核查" value="0">
|
|
|
</el-option>
|
|
|
<el-option label="待审核" value="1">
|
|
|
</el-option>
|
|
|
<el-option label="审核通过" value="3">
|
|
|
</el-option>
|
|
|
<el-option label="审核不通过" value="4">
|
|
|
</el-option>
|
|
|
<!-- <el-option label="已关停" value="5">
|
|
|
</el-option> -->
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="4">
|
|
|
<el-form-item>
|
|
|
<el-button size="mini" type="primary" @click="handleQuery()">查询</el-button>
|
|
|
<el-button size="mini" @click="resetQuery()">重置</el-button>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<el-form :inline="true" :model="formInlineTwo" size="small" class="demo-form-inline" v-if="index == 2">
|
|
|
<el-row>
|
|
|
<el-col :span="7">
|
|
|
<el-form-item label="单位名称:">
|
|
|
<el-input v-model="formInlineTwo.dwmc" placeholder="请输入"></el-input>
|
|
|
<!-- <el-select v-model="formInline.unit" placeholder="请选择"> -->
|
|
|
<!-- <el-option
|
|
|
v-for="dict in dict.type.bms_approval_status"
|
|
|
:key="dict.value"
|
|
|
:label="dict.label"
|
|
|
:value="dict.value">
|
|
|
</el-option> -->
|
|
|
<!-- </el-select> -->
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="7">
|
|
|
<el-form-item label="完成状态:">
|
|
|
<el-select v-model="formInlineTwo.taskStatus" placeholder="请选择">
|
|
|
|
|
|
<el-option label="进行中" value="1">
|
|
|
</el-option>
|
|
|
<el-option label="正常完成" value="2">
|
|
|
</el-option>
|
|
|
<el-option label="超期完成" value="3">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="4">
|
|
|
<el-form-item>
|
|
|
<el-button size="mini" type="primary" @click="handleQuery()">查询</el-button>
|
|
|
<el-button size="mini" @click="resetQuery()">重置</el-button>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<section v-if="index == 1">
|
|
|
<el-tabs v-model="activeName" @tab-click="handleClick">
|
|
|
<el-tab-pane :label="item.conent" :name="item.lable" :xtmcName="item.xtmcName"
|
|
|
v-for="item in chanckListTow">
|
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
|
<el-table v-loading="loading" :data="tableData" :height="tabHeader" :row-class-name="tableRowClassName">
|
|
|
<el-table-column type="index" width="50" label="序号" align="center" />
|
|
|
<!-- <el-table-column label="资产编号" key="id" width="200px" prop="id" align="center" /> -->
|
|
|
<el-table-column :label="xtmcName" key="xtmc" prop="xtmc" align="center" />
|
|
|
<!-- <el-table-column label="系统类型" key="xtlx" prop="xtlx" align="center">
|
|
|
<template slot-scope="scope" >
|
|
|
<div v-if='scope.row.xtlx'>
|
|
|
<dict-tag :options="dict.type.zc_xtlx" :value="scope.row.xtlx" />
|
|
|
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column> -->
|
|
|
<el-table-column label="核查单位" key="zcdwmc" prop="zcdwmc" align="center" />
|
|
|
<el-table-column label="审核状态" key="status" width="200px" prop="status" class-name="table-status"
|
|
|
align="center">
|
|
|
<template slot-scope="scope">
|
|
|
<span v-if="scope.row.status == 0" style="color: #e6a230;">
|
|
|
待核查
|
|
|
</span>
|
|
|
<span v-if="scope.row.status == 1" style="color: #E6A23C;">
|
|
|
待审核
|
|
|
</span>
|
|
|
<span v-if="scope.row.status == 3" style="color: #67C23A;">
|
|
|
审核通过
|
|
|
</span>
|
|
|
<span v-if="scope.row.status == 4" style="color: #F56C6C;">
|
|
|
审核不通过
|
|
|
</span>
|
|
|
<span v-if="scope.row.status == 5" style="color: #F56C6C;">
|
|
|
已关停
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="操作" prop="userId" class-name="table-operation" align="center">
|
|
|
<template slot-scope="scope">
|
|
|
<div style="display: flex;align-items: center;justify-content: center;">
|
|
|
<div style="display: flex;align-items: center;cursor: pointer;" @click="goInfo(1, scope.row)"
|
|
|
v-if="scope.row.status != 1 || ($route.query.pageType == 'look' || $route.meta.pageType == 'look')">
|
|
|
<img src="@/assets/images/icon-ck@2x.png" alt="" style="width: 20px;margin-right: 5px;">
|
|
|
<span class="look-info" style="color: #1485EF;">查看</span>
|
|
|
</div>
|
|
|
<div style="display: flex;align-items: center;cursor: pointer;margin-left: 5px;"
|
|
|
@click="goInfo(2, scope.row)"
|
|
|
v-if="$route.query.pageType == 'info' || $route.meta.pageType == 'info'"
|
|
|
v-show='scope.row.status == 1'>
|
|
|
<img src="@/assets/images/icon-shenhe@2x.png" alt="" style="width: 15px;margin-right: 5px;">
|
|
|
<span class="look-info" style="color: #1485EF;">审核</span>
|
|
|
</div>
|
|
|
<div style="display: flex;align-items: center;cursor: pointer;margin-left: 5px;"
|
|
|
@click="goInfo(3, scope.row)" v-show='scope.row.status == 4'>
|
|
|
<img src="@/assets/images/icon-ck@2x.png" alt="" style="width: 20px;margin-right: 5px;">
|
|
|
<span class="look-info" style="color: #1485EF;">查看原因</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
</section>
|
|
|
<section v-if="index == 2" class="shuangchongbox">
|
|
|
<div class="shuangchongboxleftbox" :class="isshow ? '' : 'shuangchongboxleftboxShow'">
|
|
|
<div style="margin-bottom: 10px;">
|
|
|
<el-button size="mini" type="primary" @click="daochu()">导出</el-button>
|
|
|
</div>
|
|
|
<el-table v-loading="loading" :data="tableDataTwo" :height="tabHeader" :max-height="tabHeader"
|
|
|
:row-class-name="tableRowClassName" style="width: 100%">
|
|
|
<el-table-column type="index" width="50" label="序号" align="center" />
|
|
|
<el-table-column label="单位名称" key="dwmc" width="150px" prop="dwmc" align="center" />
|
|
|
<el-table-column label="完成状态" key="taskStatus" prop="taskStatus" class-name="table-status" align="center">
|
|
|
<template slot-scope="scope">
|
|
|
<span v-if="scope.row.taskStatus == 0" style="color: #F56C6C;">
|
|
|
已关闭
|
|
|
</span>
|
|
|
<span v-if="scope.row.taskStatus == 1" style="color: #E6A23C;">
|
|
|
进行中
|
|
|
</span>
|
|
|
<span v-if="scope.row.taskStatus == 2" style="color: #67C23A;">
|
|
|
正常完成
|
|
|
</span>
|
|
|
<span v-if="scope.row.taskStatus == 3" style="color:#67C23A;">
|
|
|
超期完成
|
|
|
</span>
|
|
|
<span v-if="scope.row.taskStatus == 4" style="color: #F56C6C;">
|
|
|
审核不通过
|
|
|
</span>
|
|
|
<span v-if="scope.row.taskStatus == 5" style="color: #F56C6C;">
|
|
|
审核驳回
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="核查资产数量" key="total" width="120px" prop="total" align="center" />
|
|
|
<el-table-column label="待核查数量" key="total" width="120px" prop="notChecked" align="center" />
|
|
|
<el-table-column label="待审批数量" key="total" width="120px" prop="dsp" align="center" />
|
|
|
<el-table-column label="完成数量" key="checked" prop="checked" align="center">
|
|
|
<!-- <template slot-scope="scope">
|
|
|
<dict-tag :options="dict.type.project_middle_type" :value="scope.row.projectMiddleType"/>
|
|
|
</template> -->
|
|
|
</el-table-column>
|
|
|
<!-- <el-table-column label="未完成数量" key="wwcsl" prop="notChecked" align="center" /> -->
|
|
|
<el-table-column label="审核退回次数" key="wwcsl" width="180px" prop="shthcs" align="center" />
|
|
|
<el-table-column label="完成比例" key="checkedRatio" prop="checkedRatio" align="center">
|
|
|
<template slot-scope="scope">
|
|
|
<span style="color: #192A92;">{{ scope.row.checkedRatio }}%</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
</div>
|
|
|
<div class="shouqiwenzi" @click="shouqiisis">{{ isshow ? "收起" : '展开' }}>></div>
|
|
|
<div v-show="isshow" class="myEcharts" id="myEcharts" ref="myEcharts" :style="{ height: tabHeader }">
|
|
|
<!-- 123 -->
|
|
|
</div>
|
|
|
</section>
|
|
|
<my-pagination id="L-pagination" :total="total" :page="pagination.current" :limit="pagination.size"
|
|
|
@pagination="getPagination" :current-page.sync="pagination.current"></my-pagination>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="info-right" v-if="$route.query.pageType == 'look' || $route.meta.pageType == 'look'">
|
|
|
<div class="info-title">任务流程节点</div>
|
|
|
<div class="timeline">
|
|
|
<div class="timeline-items" v-for="(item, index) in timeLineData">
|
|
|
<div class="left-box">
|
|
|
<img class="main-img" :src="returnidimg(item.assetName)" alt="">
|
|
|
<!-- <img class="main-img" v-if="item.status == 2" src="" alt="">
|
|
|
<img class="main-img" v-if="item.status == 3" src="" alt="">
|
|
|
<img class="main-img" v-if="item.status == 4" src="" alt=""> -->
|
|
|
<img class="icon-jt" v-if="(index + 1) != timeLineData.length" src="@/assets/images/icon-jt@2x.png" alt="">
|
|
|
</div>
|
|
|
<div class="right-box">
|
|
|
<span class="span-title">{{ item.assetName }}:</span>
|
|
|
<span class="span-time">{{ item.xfTime }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
<my-dialog title="查看原因" ref="liebiaoDialog" @close="importClose" class="taskDialogBox" width="40%">
|
|
|
<el-descriptions>
|
|
|
<el-descriptions-item label="不通过原因">
|
|
|
{{ chakanyuanyin }}
|
|
|
</el-descriptions-item>
|
|
|
</el-descriptions>
|
|
|
</my-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
import myPagination from "@/views/components/Pagination/index.vue"
|
|
|
import { getassetTaskid, geassetTaskcHc, assetTaskdwHc, assetLcpage, assetTaskdwHcBl } from "@/api/renwuApi/index.js"
|
|
|
import myDialog from "@/views/components/myDialog/index.vue"
|
|
|
import * as echarts from 'echarts';
|
|
|
|
|
|
export default {
|
|
|
dicts: ['zc_xtlx'],
|
|
|
components: { myPagination, myDialog },
|
|
|
data() {
|
|
|
return {
|
|
|
index: 1,
|
|
|
formInline: {
|
|
|
xtlx: "",
|
|
|
},
|
|
|
formInlineTwo: {
|
|
|
dwmc: "",
|
|
|
taskStatus: ""
|
|
|
},
|
|
|
total: 0,
|
|
|
pagination: {
|
|
|
current: 1,
|
|
|
size: 10,
|
|
|
},
|
|
|
tableData: [
|
|
|
|
|
|
],
|
|
|
tableDataTwo: [
|
|
|
|
|
|
],
|
|
|
loading: false,
|
|
|
tabHeader: undefined,
|
|
|
timeLineData: [],
|
|
|
titleInfoObj: {},
|
|
|
chakanyuanyin: "",
|
|
|
activeName: "0",
|
|
|
xtmcName: "系统名称",
|
|
|
chanckList: [
|
|
|
{
|
|
|
lable: "0",
|
|
|
conent: "web资产",
|
|
|
xtmcName: "系统名称",
|
|
|
},
|
|
|
{
|
|
|
lable: "1",
|
|
|
conent: "小程序资产",
|
|
|
xtmcName: "小程序名称",
|
|
|
},
|
|
|
{
|
|
|
lable: "2",
|
|
|
conent: "公众号资产",
|
|
|
xtmcName: "公众号名称",
|
|
|
},
|
|
|
{
|
|
|
lable: "3",
|
|
|
conent: "电子邮件资产",
|
|
|
xtmcName: "电子邮箱后缀",
|
|
|
},
|
|
|
{
|
|
|
lable: "4",
|
|
|
conent: "移动应用程序资产",
|
|
|
xtmcName: "移动应用程序名称",
|
|
|
},
|
|
|
],
|
|
|
chanckListTow: [],
|
|
|
listTow: [],
|
|
|
option: null,
|
|
|
myChart: null,
|
|
|
isshow: true,
|
|
|
echartsdata: [
|
|
|
{ value: 0, name: '进行中', taskStatus: "1" },
|
|
|
{ value: 0, name: '正常完成', taskStatus: "2" },
|
|
|
{ value: 0, name: '超期完成', taskStatus: "3" },
|
|
|
]
|
|
|
}
|
|
|
},
|
|
|
mounted() {
|
|
|
this.cancalDebounce();
|
|
|
window.addEventListener('resize', this.cancalDebounce);
|
|
|
// 获取详情
|
|
|
this.titleInfo()
|
|
|
//获取流程节点数据
|
|
|
this.assetLcpageList()
|
|
|
//获取饼状图数据
|
|
|
this.getEchartsdata()
|
|
|
|
|
|
},
|
|
|
destroyed() {
|
|
|
window.removeEventListener('resize', this.cancalDebounce);
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
|
shouqiisis() {
|
|
|
console.log(123);
|
|
|
this.isshow = !this.isshow
|
|
|
// this.myEchartsis()
|
|
|
},
|
|
|
// 导出按钮
|
|
|
daochu() {
|
|
|
this.formInlineTwo.taskId = this.$route.query.id
|
|
|
this.download('/unit/assetTask/export', {
|
|
|
...this.formInlineTwo
|
|
|
}, `单位完成情况${new Date().getTime()}.xlsx`)
|
|
|
},
|
|
|
//切换资产核查tab
|
|
|
handleClick(tab, event) {
|
|
|
this.formInline = {
|
|
|
xtlx: "",
|
|
|
}
|
|
|
this.activeName = tab.name
|
|
|
this.xtmcName = tab.$attrs.xtmcName,
|
|
|
localStorage.setItem("activeName", this.activeName)
|
|
|
|
|
|
this.handleQuery()
|
|
|
},
|
|
|
//返回图片
|
|
|
returnidimg(iswenzi) {
|
|
|
// let obj = {
|
|
|
// '下发':require('@/assets/images/rwxf.png'),
|
|
|
// "提交":require('@/assets/images/wctj.png'),
|
|
|
// "驳回,不通过":require('@/assets/images/shbh.png'),
|
|
|
// "审核通过":require('@/assets/images/shtg.png'),
|
|
|
// }
|
|
|
|
|
|
let listsna = [
|
|
|
{
|
|
|
name: "下发",
|
|
|
imgdata: require('@/assets/images/rwxf.png'),
|
|
|
}, {
|
|
|
name: "提交",
|
|
|
imgdata: require('@/assets/images/wctj.png'),
|
|
|
}, {
|
|
|
name: "不通过",
|
|
|
imgdata: require('@/assets/images/shbh.png'),
|
|
|
}, {
|
|
|
name: "审核通过",
|
|
|
imgdata: require('@/assets/images/shtg.png'),
|
|
|
}, {
|
|
|
name: "驳回",
|
|
|
imgdata: require('@/assets/images/shbh.png'),
|
|
|
}
|
|
|
]
|
|
|
let item = listsna.find(item => iswenzi.includes(item.name))
|
|
|
if (item) {
|
|
|
return item.imgdata
|
|
|
} else {
|
|
|
return require('@/assets/images/wctj.png')
|
|
|
}
|
|
|
|
|
|
},
|
|
|
//获取流程
|
|
|
assetLcpageList() {
|
|
|
let obj = {
|
|
|
taskId: this.$route.query.id || this.$route.meta.id
|
|
|
}
|
|
|
assetLcpage(obj).then(res => {
|
|
|
this.timeLineData = res.data
|
|
|
})
|
|
|
},
|
|
|
importClose() { },
|
|
|
|
|
|
goInfo(type, row) {
|
|
|
// 查看
|
|
|
if (type == 1) {
|
|
|
this.$router.push({
|
|
|
name: 'taskAuditInfo', query: {
|
|
|
pageType: "look",
|
|
|
taskId: row.taskId,
|
|
|
assetId: row.id,
|
|
|
type: this.activeName,
|
|
|
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
//审核
|
|
|
if (type == 2) {
|
|
|
this.$router.push({
|
|
|
name: 'taskAuditInfo', query: {
|
|
|
pageType: "change",
|
|
|
taskId: row.taskId,
|
|
|
assetId: row.id,
|
|
|
type: this.activeName,
|
|
|
zcdwmc: row.zcdwmc,
|
|
|
taskInfo: 'taskInfo'
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
//查看不通过原因
|
|
|
if (type == 3) {
|
|
|
this.chakanyuanyin = row.btgyy
|
|
|
this.$refs.liebiaoDialog.open()
|
|
|
|
|
|
}
|
|
|
// getassetTaskid(row.id)
|
|
|
|
|
|
},
|
|
|
taskstatus(id) {
|
|
|
if (id) {
|
|
|
let obj = {
|
|
|
0: "已关闭",
|
|
|
1: "进行中",
|
|
|
2: "正常完成", 3: "超期完成", 4: "正常完成", 5: "审核驳回"
|
|
|
}
|
|
|
return obj[id]
|
|
|
} else {
|
|
|
return "-"
|
|
|
}
|
|
|
},
|
|
|
titleInfoObjtype(type = "0,1") {
|
|
|
console.log(type);
|
|
|
let list = type.split(",")
|
|
|
this.listTow = []
|
|
|
this.chanckListTow = []
|
|
|
this.chanckList.forEach(res => {
|
|
|
list.forEach(element => {
|
|
|
if (element == res.lable) {
|
|
|
this.listTow.push(res.conent)
|
|
|
this.chanckListTow.push(res)
|
|
|
}
|
|
|
});
|
|
|
})
|
|
|
this.activeName = this.chanckListTow[0].lable
|
|
|
// this.xtmcName = tab.$attrs.xtmcName
|
|
|
|
|
|
if (localStorage.getItem("activeName")) {
|
|
|
this.activeName = localStorage.getItem("activeName")
|
|
|
localStorage.setItem("activeName", this.activeName)
|
|
|
}
|
|
|
let listname = this.chanckListTow.filter(item => item.lable == this.activeName)
|
|
|
if (listname) {
|
|
|
this.xtmcName = listname[0].xtmcName
|
|
|
|
|
|
}
|
|
|
this.handleQuery();
|
|
|
|
|
|
},
|
|
|
titleInfo() {
|
|
|
// console.log(this.$route.query);
|
|
|
getassetTaskid(this.$route.query.id || this.$route.meta.id).then(res => {
|
|
|
if (res.code == 200) {
|
|
|
this.titleInfoObj = res.data
|
|
|
this.titleInfoObjtype(this.titleInfoObj.type)
|
|
|
}
|
|
|
})
|
|
|
|
|
|
},
|
|
|
// 重置
|
|
|
resetQuery() {
|
|
|
this.activeName = this.chanckListTow[0].lable
|
|
|
this.xtmcName = "系统名称",
|
|
|
|
|
|
this.pagination = {
|
|
|
current: 1,
|
|
|
size: 10,
|
|
|
type: this.activeName,
|
|
|
}
|
|
|
if (this.index == 1) {
|
|
|
this.formInline = {
|
|
|
xtlx: "",
|
|
|
type: this.activeName,
|
|
|
|
|
|
}
|
|
|
this.getList();
|
|
|
} else if (this.index == 2) {
|
|
|
this.formInlineTwo = {
|
|
|
dwmc: "",
|
|
|
taskStatus: ""
|
|
|
}
|
|
|
this.getListTwo();
|
|
|
}
|
|
|
},
|
|
|
// 查询
|
|
|
handleQuery() {
|
|
|
this.pagination = {
|
|
|
current: 1,
|
|
|
size: 10,
|
|
|
type: this.activeName,
|
|
|
}
|
|
|
if (this.index == 1) {
|
|
|
this.pagination = { ...this.pagination, ...this.formInline };
|
|
|
this.getList();
|
|
|
} else if (this.index == 2) {
|
|
|
this.pagination = { ...this.pagination, ...this.formInlineTwo };
|
|
|
this.getListTwo();
|
|
|
}
|
|
|
},
|
|
|
// 获取页码
|
|
|
getPagination(pages) {
|
|
|
this.pagination.current = pages.page;
|
|
|
this.pagination.size = pages.limit;
|
|
|
if (this.index == 1) {
|
|
|
this.getList();
|
|
|
} else if (this.index == 2) {
|
|
|
this.getListTwo();
|
|
|
}
|
|
|
},
|
|
|
// 切换tab
|
|
|
activeTab(id) {
|
|
|
this.pagination.current = 1;
|
|
|
this.pagination.size = 10;
|
|
|
this.total = 0
|
|
|
this.index = id
|
|
|
console.log(id);
|
|
|
|
|
|
this.resetQuery()
|
|
|
if (id == 2) {
|
|
|
setTimeout(() => {
|
|
|
this.myEchartsis()
|
|
|
|
|
|
}, 100);
|
|
|
|
|
|
}
|
|
|
},
|
|
|
getList() {
|
|
|
this.loading = true
|
|
|
this.pagination.taskId = this.$route.query.id || this.$route.meta.id
|
|
|
geassetTaskcHc(this.pagination).then(res => {
|
|
|
this.tableData = res.data.records
|
|
|
this.total = res.data.total
|
|
|
this.loading = false
|
|
|
|
|
|
})
|
|
|
},
|
|
|
getListTwo() {
|
|
|
this.loading = true
|
|
|
this.pagination.taskId = this.$route.query.id || this.$route.meta.id
|
|
|
assetTaskdwHc(this.pagination).then(res => {
|
|
|
this.tableDataTwo = res.data.records
|
|
|
this.total = res.data.total
|
|
|
this.loading = false
|
|
|
})
|
|
|
},
|
|
|
//获取Echarts数据
|
|
|
getEchartsdata() {
|
|
|
assetTaskdwHcBl({ taskId: this.$route.query.id }).then(res => {
|
|
|
if (res.code == 200) {
|
|
|
let datalsit = res.data
|
|
|
this.echartsdata.forEach(res => {
|
|
|
datalsit.forEach(datares => {
|
|
|
if (res.taskStatus == datares.taskStatus) {
|
|
|
res.value = datares.count
|
|
|
}
|
|
|
|
|
|
})
|
|
|
})
|
|
|
// this.echartsdata = this.echartsdata.filter(item => item.value != "");
|
|
|
}
|
|
|
|
|
|
})
|
|
|
},
|
|
|
myEchartsis() {
|
|
|
// var chartDom = document.querySelector('.myEcharts');
|
|
|
console.log(this.$refs.myEcharts);
|
|
|
|
|
|
this.myChart = echarts.init(this.$refs.myEcharts);
|
|
|
this.option = {
|
|
|
|
|
|
legend: {
|
|
|
top: 'bottom'
|
|
|
},
|
|
|
toolbox: {
|
|
|
show: true,
|
|
|
},
|
|
|
tooltip: {
|
|
|
trigger: 'item',
|
|
|
formatter: '{b}:{c}({d}%)'
|
|
|
},
|
|
|
series: [
|
|
|
{
|
|
|
name: 'Access From',
|
|
|
type: 'pie',
|
|
|
radius: '50%',
|
|
|
data: this.echartsdata,
|
|
|
|
|
|
emphasis: {
|
|
|
itemStyle: {
|
|
|
shadowBlur: 10,
|
|
|
shadowOffsetX: 0,
|
|
|
shadowColor: 'rgba(0, 0, 0, 0.5)'
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
]
|
|
|
};
|
|
|
|
|
|
this.option && this.myChart.setOption(this.option);
|
|
|
this.myChart.on('click', (params) => {
|
|
|
// params 包含了事件的数据和图表的信息
|
|
|
console.log(params.data.taskStatus);
|
|
|
this.formInlineTwo.taskStatus = params.data.taskStatus
|
|
|
this.handleQuery()
|
|
|
// 可以在这里添加你的逻辑,比如弹窗显示详细信息等
|
|
|
});
|
|
|
|
|
|
},
|
|
|
// 修改table背景色
|
|
|
tableRowClassName({ row, rowIndex }) {
|
|
|
if (rowIndex % 2 !== 0) {
|
|
|
return 'evenNumber-row';
|
|
|
}
|
|
|
return '';
|
|
|
},
|
|
|
// 屏幕尺寸变化
|
|
|
cancalDebounce() {
|
|
|
const element = document.getElementById('L-size-main'); // 通过元素的 ID 获取元素
|
|
|
const header = document.getElementById('L-header'); // 通过元素的 ID 获取元素
|
|
|
const tab = document.getElementById('L-tab'); // 通过元素的 ID 获取元素
|
|
|
const pagination = document.getElementById('L-pagination'); // 通过元素的 ID 获取元素
|
|
|
const elementHeight = element.offsetHeight;
|
|
|
const headerHeight = header.offsetHeight;
|
|
|
const paginationtHeight = pagination.offsetHeight;
|
|
|
const tabHeight = tab.offsetHeight;
|
|
|
this.tabHeader = elementHeight - headerHeight - paginationtHeight - tabHeight - 160;
|
|
|
|
|
|
}
|
|
|
},
|
|
|
beforeRouteEnter(to, from, next) {
|
|
|
if (to.query.pageType == 'info') {
|
|
|
to.meta.title = '任务审核'
|
|
|
to.meta.pageType = to.query.pageType
|
|
|
to.meta.id = to.query.id
|
|
|
} else if (to.query.pageType == 'look') {
|
|
|
to.meta.title = '任务详情'
|
|
|
to.meta.pageType = to.query.pageType
|
|
|
to.meta.id = to.query.id
|
|
|
}
|
|
|
next();
|
|
|
},
|
|
|
}
|
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
|
::v-deep .el-timeline {
|
|
|
padding-left: 0;
|
|
|
font-size: 12px;
|
|
|
}
|
|
|
|
|
|
::v-deep .el-form-item__label {
|
|
|
padding-right: 3px;
|
|
|
}
|
|
|
|
|
|
.look-info {}
|
|
|
|
|
|
::v-deep .el-dialog {
|
|
|
margin-top: 20vh !important;
|
|
|
}
|
|
|
|
|
|
.shuangchongbox {
|
|
|
width: 100%;
|
|
|
display: flex;
|
|
|
position: relative;
|
|
|
|
|
|
.shuangchongboxleftbox {
|
|
|
width: 70%;
|
|
|
}
|
|
|
|
|
|
.shuangchongboxleftboxShow {
|
|
|
width: 100%;
|
|
|
}
|
|
|
|
|
|
.myEcharts {
|
|
|
width: 30%;
|
|
|
// height: 100%;
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
.shouqiwenzi {
|
|
|
position: absolute;
|
|
|
top: 10px;
|
|
|
right: -30px;
|
|
|
width: 100px;
|
|
|
font-size: 14px;
|
|
|
font-weight: bold;
|
|
|
color: #409EFF;
|
|
|
cursor: pointer;
|
|
|
z-index: 999;
|
|
|
|
|
|
}
|
|
|
</style>
|