|
|
|
|
@ -3,11 +3,45 @@
|
|
|
|
|
<!-- 查询配置 -->
|
|
|
|
|
<div style="padding: 0px 20px 20px 20px;background: #EFF2F9;">
|
|
|
|
|
<el-row :gutter="20" class='elrows'>
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<el-card class="box-card" style="margin: 20px 0">
|
|
|
|
|
<div slot="header" class="clearfix">
|
|
|
|
|
<span>年度任务计划执行情况</span>
|
|
|
|
|
<DatePicker placeholder="选择所属年份" placement="bottom"
|
|
|
|
|
style="width: 130px; float: right" type="year" @on-change="changeYear"></DatePicker>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card">
|
|
|
|
|
<div class="progress-card-item">
|
|
|
|
|
<div class="progress-card-item__num">50
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card-item__label">计划任务/活动数</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card-item">
|
|
|
|
|
<div class="progress-card-item__num">30
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card-item__label">当前执行数量</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card-item">
|
|
|
|
|
<div class="progress-card-item__num">20
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card-item__label">剩余数量</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card-item">
|
|
|
|
|
<div class="progress-card-item__num">
|
|
|
|
|
60%
|
|
|
|
|
</div>
|
|
|
|
|
<div class="progress-card-item__label">进展率</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</router-link>
|
|
|
|
|
</el-card>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<div ref="lxTable" class="table-tree">
|
|
|
|
|
<div style="padding: 15px;background-color: #fff;display: flex;align-items: center;" class="form-sub-title">
|
|
|
|
|
|
|
|
|
|
<el-link type="primary" style="font-size:18px;margin-right:5px" href="/admin/#/lawsfile/index/article_1">最新动态</el-link>
|
|
|
|
|
<el-link type="primary" style="font-size:18px;margin-right:5px"
|
|
|
|
|
href="/admin/#/lawsfile/index/article_1">动态信息</el-link>
|
|
|
|
|
<p class="no-redirect">浏览最近上传的文件</p>
|
|
|
|
|
</div>
|
|
|
|
|
<el-table :data="tableData" stripe class="v-table" height="300px" style="width: 100%">
|
|
|
|
|
@ -34,7 +68,7 @@
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<div ref="lxTable" class="table-tree">
|
|
|
|
|
<div style="padding: 15px;background-color: #fff;" class="form-sub-title">
|
|
|
|
|
<el-link type="primary" style="font-size:18px" href="/admin/#/lawsfile/index/article_2">安全之窗</el-link>
|
|
|
|
|
<el-link type="primary" style="font-size:18px" href="/admin/#/lawsfile/index/article_2">规章制度</el-link>
|
|
|
|
|
<p class="no-redirect"></p>
|
|
|
|
|
</div>
|
|
|
|
|
<el-table :data="lawData" stripe class="v-table" height="300px" style="width: 100%">
|
|
|
|
|
@ -60,7 +94,7 @@
|
|
|
|
|
<el-col :span="24">
|
|
|
|
|
<div ref="lxTable" stripe class="table-tree">
|
|
|
|
|
<div style="padding: 15px;background-color: #fff;padding-bottom:5px;" class="form-sub-title">
|
|
|
|
|
<el-link type="primary" href="#/lawsfile/articleview" style="font-size:18px">待办事项</el-link>
|
|
|
|
|
<el-link type="primary" href="#/lawsfile/articleview" style="font-size:18px">我的任务</el-link>
|
|
|
|
|
</div>
|
|
|
|
|
<div style="height:370px;background-color: #fff;padding: 15px;padding-top:0">
|
|
|
|
|
<el-tabs v-model="daliyName">
|
|
|
|
|
@ -72,8 +106,8 @@
|
|
|
|
|
<div style="height:310px">
|
|
|
|
|
<el-table :data="auditList" style="width: 100%" class='v-table' border height='300px'>
|
|
|
|
|
|
|
|
|
|
<el-table-column v-for="item in missionTable" :label="item.label" :fixed='item.fixed' :align='item.align'
|
|
|
|
|
:width='item.width' :prop="item.prop">
|
|
|
|
|
<el-table-column v-for="item in missionTable" :label="item.label" :fixed='item.fixed'
|
|
|
|
|
:align='item.align' :width='item.width' :prop="item.prop">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-if="item.formatter">
|
|
|
|
|
{{item.formatter(scope.row,scope.row,scope.row[item.prop])}}
|
|
|
|
|
@ -131,7 +165,8 @@
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column fixed="right" align='center' label="操作" width="180" header-align="center">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<Button style="margin-right:5px;margin-bottom:5px;" type="primary" size="small" @click="checkUnits(scope.row.id,'check')">审核</Button>
|
|
|
|
|
<Button style="margin-right:5px;margin-bottom:5px;" type="primary" size="small"
|
|
|
|
|
@click="checkUnits(scope.row.id,'check')">审核</Button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
|
@ -146,8 +181,8 @@
|
|
|
|
|
<div style="height:310px">
|
|
|
|
|
<el-table :data="myselfList" style="width: 100%" class='v-table' border height='300px'>
|
|
|
|
|
|
|
|
|
|
<el-table-column v-for="item in missionTable" :label="item.label" :fixed='item.fixed' :align='item.align'
|
|
|
|
|
:width='item.width' :prop="item.prop">
|
|
|
|
|
<el-table-column v-for="item in missionTable" :label="item.label" :fixed='item.fixed'
|
|
|
|
|
:align='item.align' :width='item.width' :prop="item.prop">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<span v-if="item.formatter">
|
|
|
|
|
{{item.formatter(scope.row,scope.row,scope.row[item.prop])}}
|
|
|
|
|
@ -205,7 +240,8 @@
|
|
|
|
|
</el-table-column>
|
|
|
|
|
<el-table-column fixed="right" align='center' label="操作" width="180" header-align="center">
|
|
|
|
|
<template slot-scope="scope">
|
|
|
|
|
<Button type="primary" size="small" style="margin-right:5px;margin-bottom:5px;" @click="$refs['addPatrol'].mission_id=scope.row.id,$refs['addPatrol'].isShow=true,$refs['addPatrol'].type='add'">提交检查</Button>
|
|
|
|
|
<Button type="primary" size="small" style="margin-right:5px;margin-bottom:5px;"
|
|
|
|
|
@click="$refs['addPatrol'].mission_id=scope.row.id,$refs['addPatrol'].isShow=true,$refs['addPatrol'].type='add'">提交检查</Button>
|
|
|
|
|
</template>
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
|
@ -382,12 +418,12 @@
|
|
|
|
|
tableData: [],
|
|
|
|
|
|
|
|
|
|
daliyName: 'first',
|
|
|
|
|
auditList:[],
|
|
|
|
|
myselfList:[],
|
|
|
|
|
patrolList:[],
|
|
|
|
|
auditTotal:0,
|
|
|
|
|
myselfTotal:0,
|
|
|
|
|
patrolTotal:0,
|
|
|
|
|
auditList: [],
|
|
|
|
|
myselfList: [],
|
|
|
|
|
patrolList: [],
|
|
|
|
|
auditTotal: 0,
|
|
|
|
|
myselfTotal: 0,
|
|
|
|
|
patrolTotal: 0,
|
|
|
|
|
dailytableData: [],
|
|
|
|
|
lawData: [],
|
|
|
|
|
dangerData: [],
|
|
|
|
|
@ -414,7 +450,7 @@
|
|
|
|
|
label: "标题",
|
|
|
|
|
prop: 'name',
|
|
|
|
|
align: 'left',
|
|
|
|
|
fixed:'left',
|
|
|
|
|
fixed: 'left',
|
|
|
|
|
width: 240
|
|
|
|
|
}, {
|
|
|
|
|
label: "状态",
|
|
|
|
|
@ -423,7 +459,7 @@
|
|
|
|
|
formatter: (cell, data, value, index) => {
|
|
|
|
|
return value == 1 ? '开展中' : (value == 2 ? '不通过' : (value == 0 ? '待审核' : ''))
|
|
|
|
|
}
|
|
|
|
|
},{
|
|
|
|
|
}, {
|
|
|
|
|
label: "开始日期",
|
|
|
|
|
prop: 'start_date',
|
|
|
|
|
width: 180,
|
|
|
|
|
@ -436,7 +472,8 @@
|
|
|
|
|
prop: 'type',
|
|
|
|
|
width: 180,
|
|
|
|
|
formatter: (cell, data, value, index) => {
|
|
|
|
|
return value == 1 ? '专项任务' : (value == 2 ? '文件学习培训' : (value == 3 ? '事件隐患任务' : (value == 4 ? '科室任务' : '')))
|
|
|
|
|
return value == 1 ? '专项任务' : (value == 2 ? '文件学习培训' : (value == 3 ? '事件隐患任务' : (value == 4 ? '科室任务' :
|
|
|
|
|
'')))
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
label: "任务类别",
|
|
|
|
|
@ -457,151 +494,146 @@
|
|
|
|
|
prop: '_names',
|
|
|
|
|
width: 360,
|
|
|
|
|
algn: 'left',
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
}
|
|
|
|
|
customFn: (row) => {}
|
|
|
|
|
|
|
|
|
|
}],
|
|
|
|
|
statusList:[{
|
|
|
|
|
id:-1,
|
|
|
|
|
value:'已撤回'
|
|
|
|
|
},{
|
|
|
|
|
id:0,
|
|
|
|
|
value:'待审核'
|
|
|
|
|
},{
|
|
|
|
|
id:1,
|
|
|
|
|
value:'待领导确认'
|
|
|
|
|
},{
|
|
|
|
|
id:2,
|
|
|
|
|
value:'已分发,待接收'
|
|
|
|
|
},{
|
|
|
|
|
id:3,
|
|
|
|
|
value:'已接收'
|
|
|
|
|
},{
|
|
|
|
|
id:4,
|
|
|
|
|
value:'提交整改'
|
|
|
|
|
},{
|
|
|
|
|
id:5,
|
|
|
|
|
value:'已整改'
|
|
|
|
|
},{
|
|
|
|
|
id:6,
|
|
|
|
|
value:'不通过'
|
|
|
|
|
},{
|
|
|
|
|
id:7,
|
|
|
|
|
value:'整改不通过,重新整改'
|
|
|
|
|
},{
|
|
|
|
|
id:8,
|
|
|
|
|
value:'部门退回'
|
|
|
|
|
},{
|
|
|
|
|
id:9,
|
|
|
|
|
value:'待领导确认整改'
|
|
|
|
|
statusList: [{
|
|
|
|
|
id: -1,
|
|
|
|
|
value: '已撤回'
|
|
|
|
|
}, {
|
|
|
|
|
id: 0,
|
|
|
|
|
value: '待审核'
|
|
|
|
|
}, {
|
|
|
|
|
id: 1,
|
|
|
|
|
value: '待领导确认'
|
|
|
|
|
}, {
|
|
|
|
|
id: 2,
|
|
|
|
|
value: '已分发,待接收'
|
|
|
|
|
}, {
|
|
|
|
|
id: 3,
|
|
|
|
|
value: '已接收'
|
|
|
|
|
}, {
|
|
|
|
|
id: 4,
|
|
|
|
|
value: '提交整改'
|
|
|
|
|
}, {
|
|
|
|
|
id: 5,
|
|
|
|
|
value: '已整改'
|
|
|
|
|
}, {
|
|
|
|
|
id: 6,
|
|
|
|
|
value: '不通过'
|
|
|
|
|
}, {
|
|
|
|
|
id: 7,
|
|
|
|
|
value: '整改不通过,重新整改'
|
|
|
|
|
}, {
|
|
|
|
|
id: 8,
|
|
|
|
|
value: '部门退回'
|
|
|
|
|
}, {
|
|
|
|
|
id: 9,
|
|
|
|
|
value: '待领导确认整改'
|
|
|
|
|
}],
|
|
|
|
|
patrolTable:[{
|
|
|
|
|
label:"任务专题",
|
|
|
|
|
prop:'mission.name',
|
|
|
|
|
align:'left',
|
|
|
|
|
fixed:'left',
|
|
|
|
|
width:240
|
|
|
|
|
},{
|
|
|
|
|
label:"检查日期",
|
|
|
|
|
prop:'date',
|
|
|
|
|
width:180,
|
|
|
|
|
},{
|
|
|
|
|
label:"状态",
|
|
|
|
|
prop:'status',
|
|
|
|
|
width:180,
|
|
|
|
|
formatter:(cell,data,value,index)=>{
|
|
|
|
|
for(var item of this.statusList){
|
|
|
|
|
if(item.id==value){
|
|
|
|
|
patrolTable: [{
|
|
|
|
|
label: "任务专题",
|
|
|
|
|
prop: 'mission.name',
|
|
|
|
|
align: 'left',
|
|
|
|
|
fixed: 'left',
|
|
|
|
|
width: 240
|
|
|
|
|
}, {
|
|
|
|
|
label: "检查日期",
|
|
|
|
|
prop: 'date',
|
|
|
|
|
width: 180,
|
|
|
|
|
}, {
|
|
|
|
|
label: "状态",
|
|
|
|
|
prop: 'status',
|
|
|
|
|
width: 180,
|
|
|
|
|
formatter: (cell, data, value, index) => {
|
|
|
|
|
for (var item of this.statusList) {
|
|
|
|
|
if (item.id == value) {
|
|
|
|
|
return item.value
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},{
|
|
|
|
|
label:"问题类型",
|
|
|
|
|
prop:'ask.value',
|
|
|
|
|
width:180,
|
|
|
|
|
},{
|
|
|
|
|
label:"地点",
|
|
|
|
|
prop:'site.name',
|
|
|
|
|
width:180,
|
|
|
|
|
},{
|
|
|
|
|
label:"问题图片",
|
|
|
|
|
prop:'files',
|
|
|
|
|
width:240,
|
|
|
|
|
}, {
|
|
|
|
|
label: "问题类型",
|
|
|
|
|
prop: 'ask.value',
|
|
|
|
|
width: 180,
|
|
|
|
|
}, {
|
|
|
|
|
label: "地点",
|
|
|
|
|
prop: 'site.name',
|
|
|
|
|
width: 180,
|
|
|
|
|
}, {
|
|
|
|
|
label: "问题图片",
|
|
|
|
|
prop: 'files',
|
|
|
|
|
width: 240,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
let arr = []
|
|
|
|
|
return ( <div style = {
|
|
|
|
|
return ( < div style = {
|
|
|
|
|
{
|
|
|
|
|
whiteSpace:'normal'
|
|
|
|
|
whiteSpace: 'normal'
|
|
|
|
|
}
|
|
|
|
|
}>{
|
|
|
|
|
row.files.map(item=>{
|
|
|
|
|
} > {
|
|
|
|
|
row.files.map(item => {
|
|
|
|
|
arr.push(item.url)
|
|
|
|
|
return (
|
|
|
|
|
<el-image
|
|
|
|
|
style={
|
|
|
|
|
return ( <el-image style = {
|
|
|
|
|
{
|
|
|
|
|
width:'60px',
|
|
|
|
|
height:'60px',
|
|
|
|
|
marginLeft:'5px'
|
|
|
|
|
width: '60px',
|
|
|
|
|
height: '60px',
|
|
|
|
|
marginLeft: '5px'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
src = {
|
|
|
|
|
item.url
|
|
|
|
|
}
|
|
|
|
|
preview-src-list={
|
|
|
|
|
preview-src-list = {
|
|
|
|
|
arr
|
|
|
|
|
}
|
|
|
|
|
></el-image>)
|
|
|
|
|
} >
|
|
|
|
|
</el-image>)
|
|
|
|
|
})
|
|
|
|
|
} <
|
|
|
|
|
/div>)
|
|
|
|
|
}
|
|
|
|
|
</div>)
|
|
|
|
|
}
|
|
|
|
|
},{
|
|
|
|
|
label:"计划完成日期",
|
|
|
|
|
prop:'plan_end_date',
|
|
|
|
|
width:180,
|
|
|
|
|
},{
|
|
|
|
|
label:"整改完成日期",
|
|
|
|
|
prop:'fix_end_date',
|
|
|
|
|
width:180,
|
|
|
|
|
},{
|
|
|
|
|
label:"整改图片",
|
|
|
|
|
prop:'fix_files',
|
|
|
|
|
width:240,
|
|
|
|
|
}, {
|
|
|
|
|
label: "计划完成日期",
|
|
|
|
|
prop: 'plan_end_date',
|
|
|
|
|
width: 180,
|
|
|
|
|
}, {
|
|
|
|
|
label: "整改完成日期",
|
|
|
|
|
prop: 'fix_end_date',
|
|
|
|
|
width: 180,
|
|
|
|
|
}, {
|
|
|
|
|
label: "整改图片",
|
|
|
|
|
prop: 'fix_files',
|
|
|
|
|
width: 240,
|
|
|
|
|
customFn: (row) => {
|
|
|
|
|
let arr = []
|
|
|
|
|
return ( <div style = {
|
|
|
|
|
return ( < div style = {
|
|
|
|
|
{
|
|
|
|
|
whiteSpace:'normal'
|
|
|
|
|
whiteSpace: 'normal'
|
|
|
|
|
}
|
|
|
|
|
}>{
|
|
|
|
|
row.fix_files.map(item=>{
|
|
|
|
|
} > {
|
|
|
|
|
row.fix_files.map(item => {
|
|
|
|
|
arr.push(item.url)
|
|
|
|
|
return (
|
|
|
|
|
<el-image
|
|
|
|
|
style={
|
|
|
|
|
return ( <el-image style = {
|
|
|
|
|
{
|
|
|
|
|
width:'60px',
|
|
|
|
|
height:'60px',
|
|
|
|
|
marginLeft:'5px'
|
|
|
|
|
width: '60px',
|
|
|
|
|
height: '60px',
|
|
|
|
|
marginLeft: '5px'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
src = {
|
|
|
|
|
item.url
|
|
|
|
|
}
|
|
|
|
|
preview-src-list={
|
|
|
|
|
preview-src-list = {
|
|
|
|
|
arr
|
|
|
|
|
}
|
|
|
|
|
></el-image>)
|
|
|
|
|
}>
|
|
|
|
|
</el-image>)
|
|
|
|
|
})
|
|
|
|
|
} <
|
|
|
|
|
/div>)
|
|
|
|
|
}
|
|
|
|
|
</div>)
|
|
|
|
|
}
|
|
|
|
|
},{
|
|
|
|
|
label:"上报人",
|
|
|
|
|
prop:'admin.name',
|
|
|
|
|
width:180,
|
|
|
|
|
}, {
|
|
|
|
|
label: "上报人",
|
|
|
|
|
prop: 'admin.name',
|
|
|
|
|
width: 180,
|
|
|
|
|
}],
|
|
|
|
|
lawcolumns: [{
|
|
|
|
|
field: "created_at",
|
|
|
|
|
@ -679,7 +711,7 @@
|
|
|
|
|
let tableHeight = clientHeight - lxHeader_height - topHeight - paginationHeight - 20;
|
|
|
|
|
that.tableHeight = tableHeight;
|
|
|
|
|
},
|
|
|
|
|
checkUnits(id,type){
|
|
|
|
|
checkUnits(id, type) {
|
|
|
|
|
this.$refs.checkUnit.id = id
|
|
|
|
|
this.$refs.checkUnit.type = type
|
|
|
|
|
this.$refs.checkUnit.isShow = true
|
|
|
|
|
@ -777,37 +809,37 @@
|
|
|
|
|
// reject(error)
|
|
|
|
|
// })
|
|
|
|
|
},
|
|
|
|
|
getAuditList(){
|
|
|
|
|
getAuditList() {
|
|
|
|
|
// 我的审批
|
|
|
|
|
listunit({
|
|
|
|
|
page:1,
|
|
|
|
|
page_size:5,
|
|
|
|
|
myself_audit:1,
|
|
|
|
|
audit_status:0
|
|
|
|
|
}).then(res=>{
|
|
|
|
|
page: 1,
|
|
|
|
|
page_size: 5,
|
|
|
|
|
myself_audit: 1,
|
|
|
|
|
audit_status: 0
|
|
|
|
|
}).then(res => {
|
|
|
|
|
this.auditList = res.data
|
|
|
|
|
this.auditTotal = res.total
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
getMyselfList(){
|
|
|
|
|
getMyselfList() {
|
|
|
|
|
// 我的任务
|
|
|
|
|
listunit({
|
|
|
|
|
page:1,
|
|
|
|
|
page_size:5,
|
|
|
|
|
myself:1,
|
|
|
|
|
audit_status:1
|
|
|
|
|
}).then(res=>{
|
|
|
|
|
page: 1,
|
|
|
|
|
page_size: 5,
|
|
|
|
|
myself: 1,
|
|
|
|
|
audit_status: 1
|
|
|
|
|
}).then(res => {
|
|
|
|
|
this.myselfList = res.data
|
|
|
|
|
this.myselfTotal = res.total
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 检查整改
|
|
|
|
|
getPatrolList(){
|
|
|
|
|
getPatrolList() {
|
|
|
|
|
listpatrol({
|
|
|
|
|
page:1,
|
|
|
|
|
page_size:5,
|
|
|
|
|
myself:1
|
|
|
|
|
}).then(res=>{
|
|
|
|
|
page: 1,
|
|
|
|
|
page_size: 5,
|
|
|
|
|
myself: 1
|
|
|
|
|
}).then(res => {
|
|
|
|
|
this.patrolList = res.data
|
|
|
|
|
this.patrolTotal = res.total
|
|
|
|
|
})
|
|
|
|
|
@ -863,6 +895,26 @@
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
|
|
|
|
|
|
.progress-card {
|
|
|
|
|
display: flex;
|
|
|
|
|
|
|
|
|
|
&-item {
|
|
|
|
|
text-align: center;
|
|
|
|
|
flex: 1;
|
|
|
|
|
|
|
|
|
|
&__label {
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
&__num {
|
|
|
|
|
font-size: 20px;
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
|
|
|
|
padding: 6px 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
::v-deep .elrows {
|
|
|
|
|
.el-col {
|
|
|
|
|
padding: 10px !important
|
|
|
|
|
|