From 4d60ccbba66426d5ef1bb1f4507a11d520ad1127 Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期三, 11 五月 2022 17:26:24 +0800
Subject: [PATCH] lct

---
 config/dev.env.js                                                                       |    8 
 src/components/Tab/Plot.vue                                                             |    4 
 src/views/doublePreventAction/hiddenDanger/inspectionTask/components/inpectionPoint.vue |    3 
 src/views/specialWorkManage/specialWork/taskInfo/index.vue                              |    4 
 src/views/specialWorkManage/specialWork/taskStatistics/components/workDetail.vue        |  197 ++++++++++++++++++++++++
 src/views/specialWorkManage/specialWork/taskStatistics/index.vue                        |  206 +++++++++++++++++++++++++
 6 files changed, 413 insertions(+), 9 deletions(-)

diff --git a/config/dev.env.js b/config/dev.env.js
index 567caf5..2086453 100644
--- a/config/dev.env.js
+++ b/config/dev.env.js
@@ -18,12 +18,12 @@
   //   IMG_API: '"http://220.171.99.118:4100/upload/"',
       // BASE_API: '"http://192.168.0.35:8006"',
       // // IMG_API: '"http://192.168.0.35:8006/upload/"',
-      BASE_API: '"http://192.168.0.35:8006"',
-      IMG_API: '"http://192.168.0.35:8006/upload/"',
+      // BASE_API: '"http://192.168.0.35:8006"',
+      // IMG_API: '"http://192.168.0.35:8006/upload/"',
       // BASE_API: '"http://192.168.0.62:8006"',
       // IMG_API: '"http://192.168.0.62:8006/upload/"',
-    // BASE_API: '"http://222.92.213.22:8006/zhongtai"',
-    // IMG_API: '"http://222.92.213.22:8006/zhongtai/upload/"',
+    BASE_API: '"http://222.92.213.22:8006/zhongtai"',
+    IMG_API: '"http://222.92.213.22:8006/zhongtai/upload/"',
     NANO_API: '"http://127.0.0.1:8081/zhongtaiexam"',
     // BASE_API: '"http://220.171.99.118:4101/api"',
     // IMG_API: '"http://220.171.99.118:4101/api/upload/"',
diff --git a/src/components/Tab/Plot.vue b/src/components/Tab/Plot.vue
index d062258..b9322b5 100644
--- a/src/components/Tab/Plot.vue
+++ b/src/components/Tab/Plot.vue
@@ -70,8 +70,8 @@
         >
             <p>请输入内容:</p>
             <el-input v-model="label.name" placeholder="请输入内容" />
-            <p>请输入内容:</p>
-            <el-select v-model="color" placeholder="请输入内容" >
+            <p>请选择风险等级:</p>
+            <el-select v-model="color" placeholder="请选择" >
                 <el-option
                 v-for="item in colorList"
                 :key="item.id"
diff --git a/src/views/doublePreventAction/hiddenDanger/inspectionTask/components/inpectionPoint.vue b/src/views/doublePreventAction/hiddenDanger/inspectionTask/components/inpectionPoint.vue
index 083b51d..4b84299 100644
--- a/src/views/doublePreventAction/hiddenDanger/inspectionTask/components/inpectionPoint.vue
+++ b/src/views/doublePreventAction/hiddenDanger/inspectionTask/components/inpectionPoint.vue
@@ -75,6 +75,7 @@
                 this.controlActionVisible = false
             },
             async receiveRiskControlId(value) {
+                debugger
                 this.controlActionVisible  = false
                 if(this.title === '新建巡检计划设定'){
                     if(value){
@@ -85,7 +86,7 @@
                         //     }
                         // })))
                             if(this.inspectionPointData.findIndex(item => item.id === value.id) === -1) {
-                                this.inspectionPointData.push({id:value.id,content:value.riskMeasureDesc})
+                                this.inspectionPointData.push({id:value.id,content:value.troubleshootContent})
                                 this.$emit('giveToForm',this.inspectionPointData)
                             }
                         }
diff --git a/src/views/specialWorkManage/specialWork/taskInfo/index.vue b/src/views/specialWorkManage/specialWork/taskInfo/index.vue
index 7dc60ad..b7c337a 100644
--- a/src/views/specialWorkManage/specialWork/taskInfo/index.vue
+++ b/src/views/specialWorkManage/specialWork/taskInfo/index.vue
@@ -22,10 +22,10 @@
                 </el-input>
             </div>
             <div class="basic_search">
-                <span>作业类型:</span>
+                <span>作业级别:</span>
                 <el-select v-model="listQuery.level" clearable style="width:200px">
                     <el-option
-                        v-for="item in taskTypeList"
+                        v-for="item in levelList"
                         :key="item.id"
                         :value="item.id"
                         :label="item.name"
diff --git a/src/views/specialWorkManage/specialWork/taskStatistics/components/workDetail.vue b/src/views/specialWorkManage/specialWork/taskStatistics/components/workDetail.vue
new file mode 100644
index 0000000..7869d6e
--- /dev/null
+++ b/src/views/specialWorkManage/specialWork/taskStatistics/components/workDetail.vue
@@ -0,0 +1,197 @@
+<template>
+    <el-dialog :title="title" :visible.sync="troubleDetailVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="70%">
+        <div class="app-container">
+            <div class="table_content">
+                <el-table
+                    v-loading="listLoading"
+                    :key="tableKey"
+                    :data="troubleDetailData"
+                    border
+                    fit
+                    highlight-current-row
+                    style="width: 100%;"
+                >
+                    <el-table-column type="index" label="序号" align="center" width="80"/>
+                    <el-table-column label="单位名称" prop="unit" align="center">
+                    </el-table-column>
+                    <el-table-column label="单位代码" prop="code" align="center">
+                    </el-table-column>
+                    <el-table-column label="申请人" prop="applicant" align="center">
+                    </el-table-column>
+                    <el-table-column label="施工单位" prop="constructionunit" align="center">
+                    </el-table-column>
+                    <el-table-column label="作业内容" prop="area" align="center">
+                    </el-table-column>
+                    <el-table-column label="开始时间" prop="starttime" align="center">
+                    </el-table-column>
+                    <el-table-column label="结束时间" prop="endtime" align="center">
+                    </el-table-column>
+                    <el-table-column label="作业级别" prop="level" align="center">
+                        <template slot-scope="scope">
+                            <div v-for="item in levelList">
+                                <div v-if="scope.row.level === item.id">
+                                    <span>{{item.name}}</span>
+                                    <!--                                <el-tag v-if="scope.row.level ===0" type="success">{{item.name}}</el-tag>-->
+                                    <!--                                <el-tag v-if="scope.row.level ===1" type="warning">{{item.name}}</el-tag>-->
+                                    <!--                                <el-tag v-if="scope.row.level ===2" type="danger">{{item.name}}</el-tag>-->
+                                </div>
+                            </div>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="任务审批状态" prop="status" align="center">
+                        <template slot-scope="scope">
+                            <div v-for="item in statusList">
+                                <div v-if="scope.row.status === item.id">
+                                    <span>{{item.name}}</span>
+                                </div>
+                            </div>
+                        </template>
+                    </el-table-column>
+                    <el-table-column label="作业状态" prop="flag" align="center">
+                        <template slot-scope="scope">
+                            <div v-for="item in flagList">
+                                <div v-if="scope.row.flag === item.id">
+                                    <span>{{item.name}}</span>
+                                </div>
+                            </div>
+                        </template>
+                    </el-table-column>
+                </el-table>
+                <br>
+                <el-pagination
+                    v-show="recordTotal>0"
+                    :current-page="currentPage"
+                    :page-sizes="[10, 20, 30, 50]"
+                    :page-size="pageSize"
+                    :total="recordTotal"
+                    layout="total, sizes, prev, pager, next, jumper"
+                    background
+                    style="float:right;"
+                    @size-change="handleSizeChange"
+                    @current-change="handleCurrentChange"
+                />
+                <br>
+            </div>
+            <el-dialog :visible.sync="dialogVisible" :append-to-body="true">
+                <img width="100%" :src="dialogImageUrl" alt="">
+            </el-dialog>
+        </div>
+    </el-dialog>
+</template>
+
+<script>
+    import { mapGetters } from 'vuex'
+    import { getWorkDetailList } from '@/api/troubleStatistics'
+    import { computePageCount } from '@/utils'
+
+    export default {
+        name: 'index',
+        filters: {
+            parseMain(type){
+                if(type === 1){
+                    return "是"
+                }else if(type === 0){
+                    return "否"
+                }
+            },
+        },
+        computed: {
+            ...mapGetters([
+                'userType'
+            ])
+        },
+        data() {
+            return {
+                tableKey: 0,
+                troubleDetailData: [],
+                levelList:[{id:2,name:'特级'},{id:1,name:'一级'},{id:0,name:'二级'},],
+                statusList:[
+                    {id:0,name:'已驳回'},
+                    {id:1,name:'未提交'},
+                    {id:2,name:'已提交'},
+                    {id:3,name:'施工单位已确认'},
+                    {id:4,name:'动火部位负责人审批通过'},
+                    {id:5,name:'相关部门审批通过'},
+                    {id:6,name:'安全部门审批通过'},
+                    {id:7,name:'审批通过'},
+                ],
+                flagList:[
+                    {id:0,name:'待提交'},
+                    {id:1,name:'作业中止'},
+                    {id:2,name:'等待检查'},
+                    {id:3,name:'等待开始'},
+                    {id:4,name:'作业中'},
+                    {id:5,name:'作业完成'},
+                ],
+                listLoading: false,
+                pageSize: 10,
+                recordTotal: 0,
+                currentPage: 1,
+                pageTotal: 0,
+                title:'',
+                company:'',
+                starttime:'',
+                endtime:'',
+                status:'',
+                flag:'',
+                troubleDetailVisible:false,
+                dialogImageUrl:'',
+                dialogVisible:false,
+            }
+        },
+        created() {
+        },
+        methods: {
+            showTroubleDetail(company,status,flag,starttime,endtime,type){
+                this.troubleDetailVisible = true
+                this.starttime = starttime
+                this.status = status
+                this.flag = flag
+                this.endtime = endtime
+                this.company = company
+                this.type = type
+                this.getTroubleData()
+            },
+            async getTroubleData(){
+                this.listLoading = true
+                let params = {}
+                params['pageIndex'] = this.currentPage
+                params['pageSize'] = this.pageSize
+                params['company'] = this.company
+                params['starttime'] = this.starttime
+                params['endtime'] = this.endtime
+                params['status'] = this.status
+                params['flag'] = this.flag
+                params['type'] = this.type
+                let res = await getWorkDetailList(params)
+                if(res.data.code === '200'){
+                    this.recordTotal = res.data.result.totalCount
+                    this.pageSize = res.data.result.pageSize
+                    this.pageTotal = computePageCount(res.data.result.totalCount, res.data.result.pageSize)
+                    this.currentPage = res.data.result.pageIndex
+                    this.troubleDetailData = res.data.result.result
+                }else{
+                }
+                this.listLoading = false
+            },
+            reportResources(file){
+                this.dialogImageUrl = file.url;
+                this.dialogVisible = true;
+            },
+            handleSizeChange(val){
+                this.pageSize = val
+                this.getTroubleData()
+            },
+            handleCurrentChange(val){
+                this.currentPage = val
+                this.getTroubleData()
+            },
+        }
+    }
+</script>
+<style scoped>
+    .basic_search{
+        display:inline-block;
+        padding-bottom: 10px;
+    }
+</style>
diff --git a/src/views/specialWorkManage/specialWork/taskStatistics/index.vue b/src/views/specialWorkManage/specialWork/taskStatistics/index.vue
new file mode 100644
index 0000000..538e3c0
--- /dev/null
+++ b/src/views/specialWorkManage/specialWork/taskStatistics/index.vue
@@ -0,0 +1,206 @@
+<template>
+    <div class="app-container">
+        <div class="filter-container">
+            <div class="basic_search">
+                <span>单位名称:</span>
+                <el-input v-model="company" style="width:150px" @change="getTroubleData">
+                </el-input>
+            </div>
+            <div class="basic_search">
+                <span>作业状态:</span>
+                <el-select v-model="status" style="width:150px" clearable @change="getTroubleData">
+                    <el-option
+                    v-for="item in statusList"
+                    :key="item.id"
+                    :label="item.name"
+                    :value="item.id"
+                    >
+                    </el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>审批状态:</span>
+                <el-select v-model="flag" style="width:150px" clearable @change="getTroubleData">
+                    <el-option
+                        v-for="item in flagList"
+                        :key="item.id"
+                        :label="item.name"
+                        :value="item.id"
+                    >
+                    </el-option>
+                </el-select>
+            </div>
+            <div class="basic_search">
+                <span>开始时间:</span>
+                <el-date-picker
+                    @change="getTroubleData"
+                    v-model="starttime"
+                    align="right"
+                    value-format="yyyy-MM-dd"
+                    placeholder="开始时间">
+                </el-date-picker>
+            </div>
+            <div class="basic_search">
+                <span>结束时间:</span>
+                <el-date-picker
+                    @change="getTroubleData"
+                    v-model="endtime"
+                    align="right"
+                    value-format="yyyy-MM-dd"
+                    placeholder="开始时间">
+                </el-date-picker>
+            </div>
+            <el-button style="margin-left: 10px;" type="primary" icon="el-icon-refresh" @click="refreshHandle">搜索</el-button>
+        </div>
+        <div class="table_content">
+            <el-table
+                v-loading="listLoading"
+                :key="tableKey"
+                :data="troubleData"
+                border
+                fit
+                highlight-current-row
+                style="width: 100%;"
+            >
+                <el-table-column label="单位名称" prop="constructionunit" align="center">
+                </el-table-column>
+                <el-table-column label="作业类型" prop="type" align="center">
+                </el-table-column>
+                <el-table-column label="作业数量" prop="countNum" align="center">
+                </el-table-column>
+                <el-table-column label="操作" align="center" width="280" class-name="small-padding fixed-width">
+                    <template slot-scope="scope">
+                        <el-button type="text" @click="showTroubleDetail(scope.row)">详情</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <br>
+            <el-pagination
+                v-show="recordTotal>0"
+                :current-page="currentPage"
+                :page-sizes="[10, 20, 30, 50]"
+                :page-size="pageSize"
+                :total="recordTotal"
+                layout="total, sizes, prev, pager, next, jumper"
+                background
+                style="float:right;"
+                @size-change="handleSizeChange"
+                @current-change="handleCurrentChange"
+            />
+            <br>
+            <work-detail ref="workDetail"></work-detail>
+        </div>
+    </div>
+</template>
+
+<script>
+    import workDetail from './components/workDetail'
+    import { mapGetters } from 'vuex'
+    import { computePageCount } from '@/utils'
+    import { getWorkList } from '@/api/troubleStatistics'
+
+    export default {
+        name: 'index',
+        filters: {
+            parseMain(type){
+                if(type === 1){
+                    return "是"
+                }else if(type === 0){
+                    return "否"
+                }
+            },
+        },
+        components:{
+            workDetail
+        },
+        computed: {
+            ...mapGetters([
+                'userType'
+            ])
+        },
+        data() {
+            return {
+                tableKey: 0,
+                troubleData: [],
+                statusList:[
+                    {id:0,name:'已驳回'},
+                    {id:1,name:'未提交'},
+                    {id:2,name:'已提交'},
+                    {id:3,name:'施工单位已确认'},
+                    {id:4,name:'动火部位负责人审批通过'},
+                    {id:5,name:'相关部门审批通过'},
+                    {id:6,name:'安全部门审批通过'},
+                    {id:7,name:'审批通过'},
+                ],
+                flagList:[
+                    {id:0,name:'待提交'},
+                    {id:1,name:'作业中止'},
+                    {id:2,name:'等待检查'},
+                    {id:3,name:'等待开始'},
+                    {id:4,name:'作业中'},
+                    {id:5,name:'作业完成'},
+                ],
+                listLoading: false,
+                pageSize: 10,
+                recordTotal: 0,
+                currentPage: 1,
+                pageTotal: 0,
+                company:'',
+                starttime:'',
+                endtime:'',
+                status:'',
+                flag:'',
+            }
+        },
+        created() {
+            this.getTroubleData()
+        },
+        methods: {
+            async getTroubleData(){
+                this.listLoading = true
+                let params = {}
+                params['pageIndex'] = this.currentPage
+                params['pageSize'] = this.pageSize
+                params['company'] = this.company
+                params['starttime'] = this.starttime
+                params['endtime'] = this.endtime
+                params['status'] = this.status
+                params['flag'] = this.flag
+                let res = await getWorkList(params)
+                if(res.data.code === '200'){
+                    this.recordTotal = res.data.result.totalCount
+                    this.pageSize = res.data.result.pageSize
+                    this.pageTotal = computePageCount(res.data.result.totalCount, res.data.result.pageSize)
+                    this.currentPage = res.data.result.pageIndex
+                    this.troubleData = res.data.result.result
+                }else{
+                    this.$message({
+                        message:res.data.message,
+                        type:'warning'
+                    })
+                }
+                this.listLoading = false
+            },
+            showTroubleDetail(val){
+                this.$refs.workDetail.showTroubleDetail(val.constructionunit,this.status,this.flag,this.starttime,this.endtime,val.type)
+            },
+            refreshHandle(){
+                this.getTroubleData()
+            },
+            handleSizeChange(val){
+                this.pageSize = val
+                this.getTroubleData()
+            },
+            handleCurrentChange(val){
+                this.currentPage = val
+                this.getTroubleData()
+            },
+        }
+    }
+</script>
+<style scoped>
+    .basic_search{
+        display:inline-block;
+        padding-bottom: 10px;
+    }
+</style>

--
Gitblit v1.9.2