From d4c8e63d9f4b111d97879b52f327535ef41c5cae Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期五, 16 九月 2022 16:28:29 +0800
Subject: [PATCH]  修改

---
 src/views/doublePreventAction/hiddenDanger/hiddenDangerReform/statistics/index.vue |  251 +++++++++++++++++++++++++++++++------------------
 1 files changed, 159 insertions(+), 92 deletions(-)

diff --git a/src/views/doublePreventAction/hiddenDanger/hiddenDangerReform/statistics/index.vue b/src/views/doublePreventAction/hiddenDanger/hiddenDangerReform/statistics/index.vue
index 1394757..eac3169 100644
--- a/src/views/doublePreventAction/hiddenDanger/hiddenDangerReform/statistics/index.vue
+++ b/src/views/doublePreventAction/hiddenDanger/hiddenDangerReform/statistics/index.vue
@@ -1,51 +1,50 @@
 <template>
     <div class="app-container">
         <div style="margin: 10px">
-
-            <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
-                    v-for="item in reportStatus"
-                    :key="item.key"
-                    :label="item.value"
-                    :value="item.key">
-                </el-option>
-            </el-select>
-            <span class="span-filter-label">隐患等级</span>
-            <el-select v-model="filter.filter.level"
-                       clearable @clear="clearLevel"
-                       style="width: 100px"
-            >
-                <el-option
-                    v-for="item in levels"
-                    :key="item.key"
-                    :label="item.value"
-                    :value="item.key">
-                </el-option>
-            </el-select>
-
-            <span class="span-filter-label">上报人</span>
-            <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.rectifierName"></el-input>
-
-            <span class="span-filter-label">隐患来源</span>
-            <el-select v-model="filter.filter.source" clearable   placeholder="请选择">
-                <el-option
-                    v-for="item in sources"
-                    :key="item.key"
-                    :label="item.value"
-                    :value="item.key">
-                </el-option>
-            </el-select>
+            <div class="basic_search">
+                <span>隐患状态:</span>
+                <el-select class="analyseUnit_box" v-model="filter.dangerStatus" placeholder="隐患状态" filterable clearable>
+                    <el-option v-for="item in dangerStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>隐患等级:</span>
+                <el-select class="analyseUnit_box" v-model="filter.dangerLevel" placeholder="隐患等级" filterable clearable>
+                    <el-option v-for="item in dangerLevelList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>隐患来源:</span>
+                <el-select class="analyseUnit_box" v-model="filter.dangerSource" placeholder="隐患来源" filterable clearable>
+                    <el-option v-for="item in dangerSourceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>隐患类型:</span>
+                <el-select class="analyseUnit_box" v-model="filter.dangerType" placeholder="隐患类型" filterable clearable>
+                    <el-option v-for="item in dangerTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>上报人:</span>
+                <el-select v-model="filter.registantName"  placeholder="请选择审批人" class="analyseUnit_box" clearable filterable>
+                    <el-option v-for="item in userList" :key="item.id" :value="item.id" :label="item.realname"></el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>整改人:</span>
+                <el-select v-model="filter.liablePersonName"  placeholder="请选择审批人" class="analyseUnit_box" clearable filterable>
+                    <el-option v-for="item in userList" :key="item.id" :value="item.id" :label="item.realname"></el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>验收人:</span>
+                <el-select v-model="filter.acceptPersonName"  placeholder="请选择审批人" class="analyseUnit_box" clearable filterable>
+                    <el-option v-for="item in userList" :key="item.id" :value="item.id" :label="item.realname"></el-option>
+                </el-select>
+            </div>
             <el-button class="filter-item" style="margin-left: 10px;" type="primary" icon="el-icon-search"
-                       @click="queryHandle"/>
+                       @click="hiddenDangerStatisticsList"/>
         </div>
         <div class="table_content" v-loading="listLoading">
             <el-table
@@ -55,11 +54,11 @@
                 highlight-current-row
                 style="width: 100%;position: relative;top: -7px"
             >
-                <el-table-column label="待整改数" prop="2rectifynum" 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-column label="整改中" prop="rectifying" align="center" />
+                <el-table-column label="待验收" prop="toAccept" align="center"/>
+                <el-table-column label="延期" prop="postpone" align="center" />
+                <el-table-column label="超期未整改" prop="overTime" align="center" />
+                <el-table-column label="已验收" prop="accepted" align="center" />
             </el-table>
             <el-table
                 :key="tableKey"
@@ -70,41 +69,44 @@
                 style="width: 100%;"
             >
                 <el-table-column type="index" label="序号" align="center" width="80"/>
-                <el-table-column label="单号" prop="code" align="center" />
-                <el-table-column label="状态" prop="status" align="center" >
+                <el-table-column prop="dangerDesc" label="隐患情况描述" show-overflow-tooltip min-width="150px"></el-table-column>
+                <el-table-column prop="dangerSource" label="隐患来源" show-overflow-tooltip min-width="150px">
                     <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>
+                        {{ parseNumber(scope.row.dangerSource, '隐患来源') }}
                     </template>
                 </el-table-column>
-                <el-table-column label="隐患等级" prop="level" align="center" >
+                <el-table-column prop="dangerLevel" label="隐患等级" show-overflow-tooltip min-width="150px" align="center">
                     <template slot-scope="scope">
-                        <el-tag :type="scope.row.level == '重大隐患'?'danger':'warning'">{{scope.row.level}}</el-tag>
+                        <el-tag :type="scope.row.dangerLevel === 1 ? 'warning' : 'danger'">
+                            {{ parseNumber(scope.row.dangerLevel, '隐患等级') }}
+                        </el-tag>
                     </template>
                 </el-table-column>
-                <el-table-column label="隐患来源" prop="source" align="center" >
+                <el-table-column prop="dangerType" label="隐患类型" show-overflow-tooltip min-width="150px">
                     <template slot-scope="scope">
-                        <span>{{sources.find(item=>item.key === scope.row.source).value}}</span>
+                        {{ parseNumber(scope.row.dangerType, '隐患类型') }}
                     </template>
                 </el-table-column>
-                <el-table-column label="上报人" prop="requestor" 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" >
+                <el-table-column prop="dangerReason" label="隐患产生原因分析" show-overflow-tooltip min-width="150px"></el-table-column>
+                <el-table-column prop="dangerResult" label="隐患可能导致后果" show-overflow-tooltip min-width="150px" 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>
+                        <el-tag :type="scope.row.dangerResult === 1 ? 'success' : scope.row.dangerResult === 2 ? 'info' : scope.row.dangerResult === 3 ? 'warning' : 'danger'"> {{ parseNumber(scope.row.dangerResult, '隐患可能导致后果') }}</el-tag>
                     </template>
                 </el-table-column>
-                <el-table-column label="整改时间" prop="rectifytime" align="center" />
-                <el-table-column label="验收时间" prop="accepttime" align="center" />
-
-
-                <el-table-column label="操作" align="center" width="240" class-name="small-padding fixed-width">
+                <el-table-column prop="liablePerson" label="整改责任人" show-overflow-tooltip min-width="150px"></el-table-column>
+                <el-table-column prop="cost" label="整改资金" show-overflow-tooltip min-width="150px"></el-table-column>
+                <el-table-column prop="dangerStatus" label="隐患整改状态" show-overflow-tooltip min-width="150px" align="center">
                     <template slot-scope="scope">
-                        <el-button  type="text" @click="viewHandle(scope.row)">查看</el-button>
+                        <el-tag :type="scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'">
+                            {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}
+                        </el-tag>
                     </template>
                 </el-table-column>
+<!--                <el-table-column label="操作" align="center" width="240" class-name="small-padding fixed-width" fixed="right">-->
+<!--                    <template slot-scope="scope" >-->
+<!--                        <el-button  type="text" @click="viewHandle(scope.row)">查看</el-button>-->
+<!--                    </template>-->
+<!--                </el-table-column>-->
             </el-table>
             <br>
 
@@ -133,6 +135,7 @@
 <script>
     import { hiddenDangerStatisticsList} from '@/api/hiddenDanger';
     import reportView from "../components/reportView";
+    import {safetyInspectionItemName} from "../../../../../api/safetySelfInspection";
     export default {
         name: 'statistics',
         components:{
@@ -144,37 +147,64 @@
                 tableKey: 0,
                 tableData:[],
                 showData:[],
-                levels:[
-                    {"key":"URGENT","value":"重大隐患"},
-                    {"key":"COMMON","value":"一般隐患"},
+                userList:[],
+                dangerLevelList: [
+                    { id: 1, name: '一般隐患' },
+                    { id: 2, name: '重大隐患' }
                 ],
-                sources:[
-                    {"key":1,"value":"隐患上报"},
-                    {"key":2,"value":"巡检上报"},
+                dangerSourceList: [
+                    { id: 1, name: '日常排查' },
+                    { id: 2, name: '综合性排查' },
+                    { id: 3, name: '专业性排查' },
+                    { id: 4, name: '季节性排查' },
+                    { id: 5, name: '重点时段及节假日前排查' },
+                    { id: 6, name: '事故类比排查' },
+                    { id: 7, name: '复产复工前排查' },
+                    { id: 8, name: '外聘专家诊断式排查' },
+                    { id: 9, name: '管控措施失效' },
+                    { id: 10, name: '其他' }
                 ],
-                reportStatus:[
-                    {"key":"TORECTIFY","value":"待整改"},
-                    {"key":"TOACCEPT","value":"整改待验收"},
-                    {"key":"REJECTED","value":"驳回待整改"},
-                    {"key":"COMPLETED","value":"已完成"},
+                dangerStatusList: [
+                    { id: 0, name: '整改中' },
+                    { id: 1, name: '待验收' },
+                    { id: 2, name: '延期整改' },
+                    { id: 4, name: '超期未整改' },
+                    { id: 9, name: '已验收' }
+                ],
+                dangerTypeList: [
+                    { id: 1, name: '安全' },
+                    { id: 2, name: '工艺' },
+                    { id: 3, name: '电气' },
+                    { id: 4, name: '仪表' },
+                    { id: 5, name: '消防' },
+                    { id: 6, name: '总图' },
+                    { id: 7, name: '设备' },
+                    { id: 8, name: '其他' }
+                ],
+                dangerResultList: [
+                    { id: 1, name: '无' },
+                    { id: 2, name: '轻伤' },
+                    { id: 3, name: '重伤' },
+                    { id: 4, name: '死亡' }
                 ],
                 recordTotal:0,
                 filter:{
                     pageIndex:1,
                     pageSize:10,
-                    filter:{
-                        code:'',
-                        status:null,
-                        level:null,
-                        requestorName:'',
-                        rectifierName:'',
-                        source:''
-                    }
+                    serialCode:'',
+                    dangerLevel:'',
+                    dangerType:'',
+                    dangerSource:'',
+                    dangerStatus:'',
+                    acceptPersonName:'',
+                    liablePersonName:'',
+                    registantName:'',
                 }
 
             }},
         created(){
             this.hiddenDangerStatisticsList()
+            this.getUserData()
         },
         methods:{
             handleSizeChange: function (val) {
@@ -199,9 +229,9 @@
                 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)]
+                            this.tableData = res.data.data.records
+                            this.recordTotal = res.data.data.total
+                            this.showData = [(res.data.data.extension)]
                         }
                         else{
                             this.$message({ message: res.data.message, type: 'warning'});
@@ -221,7 +251,34 @@
             },
             clearStatus(){
                 this.filter.filter.status = null
-            }
+            },
+
+
+            parseNumber(value, type){
+                if (type === '隐患来源') {
+                    return this.dangerSourceList.find((item) => item.id === value).name;
+                } else if (type === '隐患等级') {
+                    return this.dangerLevelList.find((item) => item.id === value).name;
+                } else if (type === '隐患类型') {
+                    return this.dangerTypeList.find((item) => item.id === value).name;
+                } else if (type === '隐患整改状态') {
+                    return this.dangerStatusList.find((item) => item.id === value).name;
+                } else {
+                    return this.dangerResultList.find((item) => item.id === value).name;
+                }
+            },
+
+            async getUserData() {
+                let res = await safetyInspectionItemName()
+                if(res.data.code === '200'){
+                    this.userList = res.data.result
+                }else{
+                    this.$message({
+                        message:res.data.message,
+                        type:'warning'
+                    })
+                }
+            },
 
 
         }
@@ -251,4 +308,14 @@
 
     }
 
+    .basic_search{
+        display:inline-block;
+        padding-bottom: 10px;
+    }
+    .analyseUnit_input{
+        width:90%;
+    }
+    .analyseUnit_box{
+        width:200px;
+    }
 </style>

--
Gitblit v1.9.2