lyfO_o
2022-03-24 c251626c67a55dfa8305fd49a47a0a2aa00fc32f
src/views/hiddenDanger/statistics.vue
@@ -1,11 +1,13 @@
<template>
        <div class="app-container">
            <div style="margin: 10px">
                <span class="span-filter-label">作业编号</span>
                <el-input style="width: 160px" v-model="filter.filter.taskcode"></el-input>
                <span class="span-filter-label">状态</span>
                <span class="span-filter-label">单号</span>
                <el-input style="width: 140px" v-model="filter.filter.code" ></el-input>
                <span class="span-filter-label" >状态</span>
                <el-select
                    v-model="filter.filter.status"
                    clearable @clear="clearStatus"
                    class="filter-item"
                    style="width:120px;margin-bottom: 10px">
                    <el-option
@@ -17,8 +19,9 @@
                </el-select>
                <span class="span-filter-label">隐患等级</span>
                <el-select v-model="filter.filter.level"
                           clearable @clear="clearLevel"
                           style="width: 100px"
                           placeholder="请选择">
                           >
                    <el-option
                        v-for="item in levels"
                        :key="item.key"
@@ -28,12 +31,9 @@
                </el-select>
                <span class="span-filter-label">上报人</span>
                <el-input style="width: 140px" v-model="filter.filter.requestor" ></el-input>
                <span class="span-filter-label">负责人</span>
                <el-input style="width: 140px" v-model="filter.filter.principal"></el-input>
                <el-input style="width: 140px" v-model="filter.filter.requestorName" ></el-input>
                <span class="span-filter-label">整改人</span>
                <el-input style="width: 140px" v-model="filter.filter.supervisor"></el-input>
                <el-input style="width: 140px" v-model="filter.filter.rectifierName"></el-input>
                <el-button class="filter-item" style="margin-left: 10px;" type="primary" icon="el-icon-search"
                           @click="queryHandle"/>
            </div>
@@ -46,9 +46,10 @@
                    style="width: 100%;position: relative;top: -7px"
                >
                    <el-table-column label="待整改数" prop="2rectifynum" align="center" />
                    <el-table-column label="整改数量" prop="rectifynum" align="center"/>
                    <el-table-column label="完成数量" prop="completednum" align="center"/>
                    <el-table-column label="驳回总数" prop="rejectnum" align="center" />
                    <el-table-column label="上报总数" prop="reportnum" align="center" />
                    <el-table-column label="待验收数" prop="2acceptnum" align="center" />
                </el-table>
                <el-table
                    :key="tableKey"
@@ -59,18 +60,31 @@
                    style="width: 100%;"
                >
                    <el-table-column type="index" label="序号" align="center" width="80"/>
                    <el-table-column label="状态" prop="status" align="center" />
                    <el-table-column label="作业编号" prop="taskcode" align="center" />
                    <el-table-column label="单号" prop="code" align="center" />
                    <el-table-column label="状态" prop="status" align="center" >
                        <template slot-scope="scope">
                            <span >{{scope.row.status}}</span>
                            <span v-if="new Date(scope.row.rectifydeadline) < new Date() && scope.row.status  !== '已完成'" class="overdue-img">逾期</span>
                        </template>
                    </el-table-column>
                    <el-table-column label="隐患等级" prop="level" align="center" >
                        <template slot-scope="scope">
                            <el-tag :type="scope.row.level == '紧急'?'danger':'warning'">{{scope.row.level}}</el-tag>
                        </template>
                    </el-table-column>
                    <el-table-column label="上报人" prop="requestor" align="center" />
                    <el-table-column label="负责人" prop="principal" align="center" />
                    <el-table-column label="整改人" prop="supervisor" align="center" />
                    <el-table-column label="上报时间" prop="createtime" align="center" />
                    <el-table-column label="整改人" prop="rectifier" align="center" />
                    <el-table-column label="整改期限"   prop="rectifydeadline" align="center" >
                        <template slot-scope="scope">
                        <span v-bind:class="{'overdue':new Date(scope.row.rectifydeadline) < new Date() && scope.row.status  !== '已完成'}">{{scope.row.rectifydeadline}}
                        </span>
                        </template>
                    </el-table-column>
                    <el-table-column label="整改时间" prop="rectifytime" align="center" />
                    <el-table-column label="验收时间" prop="accepttime" align="center" />
                    <el-table-column label="创建时间" prop="createtime" align="center" />
                    <el-table-column label="操作" align="center" width="240" class-name="small-padding fixed-width">
                        <template slot-scope="scope">
                            <el-button  type="text" @click="viewHandle(scope.row)">查看</el-button>
@@ -81,9 +95,9 @@
                <el-pagination
                    v-show="recordTotal>0"
                    :current-page="currentPage"
                    :current-page="filter.pageIndex"
                    :page-sizes="[10, 20, 30, 50]"
                    :page-size="pageSize"
                    :page-size="filter.pageSize"
                    :total="recordTotal"
                    layout="total, sizes, prev, pager, next, jumper"
                    background
@@ -119,26 +133,22 @@
          {"key":"URGENT","value":"紧急"},
          {"key":"COMMON","value":"一般"},
        ],
        reportStatus:[
          {"key":"","value":"全部"},
          {"key":"UNCONFIRMED","value":"未确认"},
          {"key":"CONFIRMED","value":"确认未整改"},
          {"key":"REJECT","value":"已驳回"},
          {"key":"RECTIFIED","value":"已整改"},
        ],
        pageSize:6,
        currentPage:1,
          reportStatus:[
              {"key":"TORECTIFY","value":"待整改"},
              {"key":"TOACCEPT","value":"整改待验收"},
              {"key":"REJECTED","value":"驳回待整改"},
              {"key":"COMPLETED","value":"已完成"},
          ],
        recordTotal:0,
        filter:{
          pageIndex:1,
          pageSize:6,
          pageSize:10,
          filter:{
            taskcode:'',
            status:"",
            requestor:"",
            principal:"",
            supervisor:"",
            level:""
              code:'',
              status:null,
              level:null,
              requestorName:'',
              rectifierName:'',
          }
        }
@@ -148,17 +158,17 @@
    },
    methods:{
      handleSizeChange: function (val) {
        this.pageSize = val
        this.filter.pageSize = val
        this.filter.pageIndex = 1
        this.hiddenDangerStatisticsList()
      },
      handleCurrentChange: function (val) {
        this.currentPage = val
        this.filter.pageIndex = val
        this.hiddenDangerStatisticsList()
      },
      queryHandle(){
        this.hiddenDangerStatisticsList()
          this.filter.pageIndex = 1
          this.hiddenDangerStatisticsList()
      },
      viewHandle(row){
        this.$refs.reportView.showDialog('查看',row)
@@ -166,26 +176,33 @@
      hiddenDangerStatisticsList() {
        this.listLoading = true
        hiddenDangerStatisticsList(this.filter).then(res=>{
          this.listLoading = false
          if (res.status === 200) {
            if (res.data.code === '200') {
              this.tableData =  res.data.result.records
              this.pageSize = res.data.result.size
              this.currentPage = res.data.result.current
              this.recordTotal = res.data.result.total
               this.showData = [(res.data.result.extension)]
        hiddenDangerStatisticsList(this.filter)
            .then(res=>{
                if (res.data.code === '200') {
                    this.tableData = res.data.result.records
                    this.recordTotal = res.data.result.total
                    this.showData = [(res.data.result.extension)]
                }
                else{
                    this.$message({ message: res.data.message, type: 'warning'});
                }
            }
          }else{
            this.$message({
              message: '接口错误',
              type: 'warning'
            });
          }
        })
      }
            .catch(err=>{
                console.log(err)
                this.$message({ message: '接口错误', type: 'warning'});
            })
            .finally(()=>{
                this.listLoading = false
            })
      },
        clearLevel(){
          this.filter.filter.level = null
        },
        clearStatus(){
            this.filter.filter.status = null
        }
    }
  }
@@ -194,4 +211,24 @@
<style scoped>
    .overdue{
        color: red;
    }
    .overdue-img{
        position: fixed;
        background-color: #f56c6c;
        border-radius: 4px;
        color: #fff;
        display: inline-block;
        font-size: 12px;
        height: 21px;
        line-height: 18px;
        text-align: center;
        white-space: nowrap;
        border: 1px solid #fff;
        transform: scale(0.8);
        padding: 1px 3px 0 3px;
    }
</style>