Browse Source

新增化验室水质管理

tengmingxue 2 years ago
parent
commit
e6e459da5c

+ 49 - 0
src/api/dcApi/assayMngApi.js

@@ -0,0 +1,49 @@
+/*
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2022-11-02 17:14:07
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2022-11-02 17:19:22
+ * @FilePath: \dcWaterService\src\api\dcApi\assayMngApi.js
+ * @Description: 化验室管理API文档
+ */
+import request from '@/utils/request'
+// data作为请求主体被发送的数据,只适用于这些请求方法 'PUT', 'POST', 和 'PATCH',
+// params即将与请求一起发送的 URL 参数。必须是一个无格式对象(plain object)或 URLSearchParams 对象get,delete
+// 数据中台业务接口
+// #region 接口登记
+// 新增采样地点
+export function addSampleplaced(data) {
+  return request({
+    url: '/water-quality/sampleplaced',
+    method: 'post',
+    data
+  })
+}
+
+//分页查询采样点接口
+export function getSampleplacedPage(params) {
+    return request({
+      url: '/water-quality/sampleplaced/page',
+      method: 'get',
+      params
+    })
+}
+
+
+//修改采样点接口
+export function editSampleplaced(data) {
+  return request({
+    url: `/water-quality/sampleplaced`,
+    method: 'put',
+    data
+  })
+}
+
+// 删除采样点接口
+export function deleteSampleplaced(params) {
+  return request({
+    url: `/water-quality/sampleplaced/deleteByIds`,
+    method: 'delete',
+    params
+  })
+}

+ 4 - 1
src/router/_import.js

@@ -132,5 +132,8 @@ const map = {
   // 数据中台
   dataCenterRegister: () => import('@/views/currentSystem/dataCenter/order/register/index'), // 接口入住
   dataCenterMonitorRegister: () => import('@/views/currentSystem/dataCenter/monitoring/register/index'), // 性能监控
-  dataCenterWorkList: () => import('@/views/currentSystem/dataCenter/WorkList/work/index') // 接口日志
+  dataCenterWorkList: () => import('@/views/currentSystem/dataCenter/WorkList/work/index'), // 接口日志
+
+  //化验室水质管理系统
+  samplingLocation: () => import('@/views/dcSystem/assayWaterQuality/configManage/samplingLocation/index'), // 采样点
 }

+ 0 - 106
src/views/currentSystem/dashboard/index 20210713.vue

@@ -1,106 +0,0 @@
-<template>
-  <div class="dashboard">
-    <div class="hander">
-       <user-doc style="flex: 1; height: 100%;"> </user-doc>
-      <!-- <el-button type="primary" icon="el-icon-share" @click="handleReport()" >进入</el-button> -->
-    </div>
-    <div class="top" v-if="topShow" style="margin-top: 1%">
-      <todos style="flex: 1 1 34%; height: 100%;" v-if="validateAuth('todo')" />
-       <!-- <alarm style="flex: 1 0 65%; height: 100%;" v-if="validateAuth('alarm')" /> -->
-      <alarm :style="{flex: '1 1 65%', height: '100%',marginLeft:(validateAuth('todo')) ? '1%':'0%'}" v-if="validateAuth('alarm')" />
-    </div>
-    <div class="bottom" style="margin-top: 1%">
-      <el-button type="primary" icon="el-icon-share" @click="handleReport()">进入系统</el-button>
-
-      <!-- <marketing v-if="validateAuth('marketing')" style="margin-top: 1%"></marketing>
-      <hotline-manage v-if="validateAuth('hotlineManage')" style="margin-top: 1%"></hotline-manage>
-      <production-operations v-if="validateAuth('productionOperations')" style="margin-top: 1%"></production-operations>
-      <pipe-nets v-if="validateAuth('pipeNets')" style="margin-top: 1%"></pipe-nets> --> 
-    </div>
-  </div>
-</template>
-
-<script>
-import UserDoc from './components/UserDoc'
-import Todos from './components/Todo'
-import Alarm from './components/Alarm'
-// import Marketing from './components/Marketing'
-// import HotlineManage from './components/HotlineManage'
-// import ProductionOperations from './components/ProductionOperations'
-// import PipeNets from "./components/PipeNets";
-import auth from './mixins/DashboardAuth'
-export default {
-  components: { UserDoc, Todos, Alarm },
-  mixins: [auth],
-  computed: {
-    topShow() {
-      return this.validateAuth('todo') || this.validateAuth('alarm')
-    }
-  },
-  methods: {
-    handleReport(){
-      const sideBarShow = this.$store.state.app.sidebar.show
-      if (sideBarShow) this.$store.dispatch('app/toggleSideBarShow', false)
-      this.$router.push('/dashboard/report')
-      this.defaultActiveIndex = ""
-    }
-  }
-}
-</script>
-
-<style lang="scss" scoped>
-.dashboard {
-  height: calc(100vh - 64px);
-  background: #eff0f5;
-  box-sizing: border-box;
-  padding: 12px;
-  overflow-x: hidden;
-  &::-webkit-scrollbar {
-    width: 4px;
-    background: white;
-  }
-  &::-webkit-scrollbar-corner,
-  &::-webkit-scrollbar-thumb,
-  &::-webkit-scrollbar-track {
-    border-radius: 4px;
-  }
-  &::-webkit-scrollbar-corner,
-  &::-webkit-scrollbar-track {
-    /* 滚动条轨道 */
-    background-color: rgba(180, 160, 120, 0.1);
-    box-shadow: inset 0 0 1px rgba(180, 160, 120, 0.5);
-  }
-  &::-webkit-scrollbar-thumb {
-    /* 滚动条手柄 */
-    background-color: #cccccc;
-  }
-  .hander{
-    width: 100%;
-    height: 36%;
-    display: flex;
-    justify-content: space-between;
-    align-items: center;
-  }
-  .top {
-    width: 100%;
-    height: 50%;
-    display: flex;
-    justify-content: space-between;
-    align-items: center;
-  }
-
-  .topitem{
-    flex:1;
-  }
-  .bottom {
-    flex: 1;
-    flex-direction: column;
-    justify-content:flex-end;
-    background: #ffffff;
-    border-radius: 6px;
-    padding: 10px;
-    box-sizing: border-box;
-    text-align: right;
-  }
-}
-</style>

+ 0 - 90
src/views/currentSystem/dashboard/index_20210712.vue

@@ -1,90 +0,0 @@
-<template>
-  <div class="dashboard">
-    <div class="top">
-      <el-button type="primary" icon="el-icon-share" @click="handleReport()" >进入</el-button>
-    </div>
-    <div class="top" v-if="topShow">
-      <todos style="flex: 1 1 34%; height: 100%;" v-if="validateAuth('todo')" />
-       <!-- <alarm style="flex: 1 0 65%; height: 100%;" v-if="validateAuth('alarm')" /> -->
-      <alarm :style="{flex: '1 1 65%', height: '100%',marginLeft:(validateAuth('todo')) ? '1%':'0%'}" v-if="validateAuth('alarm')" />
-    </div>
-    <div class="bottom">
-      <marketing v-if="validateAuth('marketing')" style="margin-top: 1%"></marketing>
-      <hotline-manage v-if="validateAuth('hotlineManage')" style="margin-top: 1%"></hotline-manage>
-      <production-operations v-if="validateAuth('productionOperations')" style="margin-top: 1%"></production-operations>
-      <pipe-nets v-if="validateAuth('pipeNets')" style="margin-top: 1%"></pipe-nets>
-    </div>
-  </div>
-</template>
-
-<script>
-import Todos from './components/Todo'
-import Alarm from './components/Alarm'
-import Marketing from './components/Marketing'
-import HotlineManage from './components/HotlineManage'
-import ProductionOperations from './components/ProductionOperations'
-import PipeNets from "./components/PipeNets";
-import auth from './mixins/DashboardAuth'
-export default {
-  components: { Todos, Alarm, Marketing, HotlineManage, ProductionOperations, PipeNets },
-  mixins: [auth],
-  computed: {
-    topShow() {
-      return this.validateAuth('todo') || this.validateAuth('alarm')
-    }
-  },
-  methods: {
-    handleReport(){
-      alert("进入")
-      const sideBarShow = this.$store.state.app.sidebar.show
-      if (sideBarShow) this.$store.dispatch('app/toggleSideBarShow', false)
-      this.$router.push('/dashboard/report')
-      this.defaultActiveIndex = ""
-    
-    }
-  }
-}
-</script>
-
-<style lang="scss" scoped>
-.dashboard {
-  height: calc(100vh - 64px);
-  background: #eff0f5;
-  box-sizing: border-box;
-  padding: 12px;
-  overflow-x: hidden;
-  &::-webkit-scrollbar {
-    width: 4px;
-    background: white;
-  }
-  &::-webkit-scrollbar-corner,
-  &::-webkit-scrollbar-thumb,
-  &::-webkit-scrollbar-track {
-    border-radius: 4px;
-  }
-  &::-webkit-scrollbar-corner,
-  &::-webkit-scrollbar-track {
-    /* 滚动条轨道 */
-    background-color: rgba(180, 160, 120, 0.1);
-    box-shadow: inset 0 0 1px rgba(180, 160, 120, 0.5);
-  }
-  &::-webkit-scrollbar-thumb {
-    /* 滚动条手柄 */
-    background-color: #cccccc;
-  }
-  .top {
-    width: 100%;
-    height: 53.5%;
-    display: flex;
-    justify-content: space-between;
-    align-items: center;
-  }
-
-  .topitem{
-    flex:1;
-  }
-  .bottom {
-    flex: 1;
-  }
-}
-</style>

+ 0 - 0
src/views/dcSystem/assayWaterQuality/assayManage/collectRecord/index.vue


+ 39 - 0
src/views/dcSystem/assayWaterQuality/configManage/assayConfig/index.vue

@@ -0,0 +1,39 @@
+<!--
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2022-11-02 16:33:00
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2022-11-02 16:41:54
+ * @FilePath: \dcWaterService\src\views\dcSystem\assayWaterQuality\configManage\samplingLocation\index.vue
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+-->
+<template>
+    <div class="assayConfig-container">
+      <!-- 化验项配置 -->
+    </div>
+  </template>
+  
+  <script>
+  export default {
+    name: 'assayConfig',
+    data() {
+      return {
+        userId: ''
+      }
+    },
+    computed: {
+      
+    },
+    watch: {
+      
+    },
+    methods: {
+     
+    }
+  }
+  </script>
+  
+  <style lang="scss" scoped>
+
+
+  </style>
+  

+ 39 - 0
src/views/dcSystem/assayWaterQuality/configManage/assayDic/index.vue

@@ -0,0 +1,39 @@
+<!--
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2022-11-02 16:33:00
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2022-11-02 17:03:44
+ * @FilePath: \dcWaterService\src\views\dcSystem\assayWaterQuality\configManage\samplingLocation\index.vue
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+-->
+<template>
+    <div class="assayDictionaries-container">
+      <!-- 化验项字典 -->
+    </div>
+  </template>
+  
+  <script>
+  export default {
+    name: 'assayDictionaries',
+    data() {
+      return {
+        userId: ''
+      }
+    },
+    computed: {
+      
+    },
+    watch: {
+      
+    },
+    methods: {
+     
+    }
+  }
+  </script>
+  
+  <style lang="scss" scoped>
+
+
+  </style>
+  

+ 16 - 0
src/views/dcSystem/assayWaterQuality/configManage/index.vue

@@ -0,0 +1,16 @@
+<!--
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2022-11-02 16:55:44
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2022-11-02 16:55:54
+ * @FilePath: \dcWaterService\src\views\dcSystem\assayWaterQuality\configManage\index.vue
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+-->
+<template>
+    <div>
+      <keep-alive>
+        <router-view />
+      </keep-alive>
+    </div>
+</template>
+  

+ 39 - 0
src/views/dcSystem/assayWaterQuality/configManage/reportCategory/index.vue

@@ -0,0 +1,39 @@
+<!--
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2022-11-02 16:33:00
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2022-11-02 16:36:44
+ * @FilePath: \dcWaterService\src\views\dcSystem\assayWaterQuality\configManage\samplingLocation\index.vue
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+-->
+<template>
+    <div class="reportCategroy-container">
+      <!-- 报告类别 -->
+    </div>
+  </template>
+  
+  <script>
+  export default {
+    name: 'reportCategroy',
+    data() {
+      return {
+        userId: ''
+      }
+    },
+    computed: {
+      
+    },
+    watch: {
+      
+    },
+    methods: {
+     
+    }
+  }
+  </script>
+  
+  <style lang="scss" scoped>
+
+
+  </style>
+  

+ 452 - 0
src/views/dcSystem/assayWaterQuality/configManage/samplingLocation/index.vue

@@ -0,0 +1,452 @@
+<!--
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2022-11-02 16:33:00
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2022-11-03 11:59:16
+ * @FilePath: \dcWaterService\src\views\dcSystem\assayWaterQuality\configManage\samplingLocation\index.vue
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+-->
+<template>
+  <div class="samplingLocation-container">
+    <!-- 采样地点管理 -->
+    <el-row>
+      <el-form
+        style="
+          display: flex;
+          flex-wrap: wrap;
+          justify-content: flex-start;
+          align-items: flex-start;
+        "
+      >
+        <el-form-item
+          label="采样点名称:"
+          style="width: 300px; display: inline-block; margin-bottom: 6px"
+        >
+          <el-input
+            v-model="samplePlaceName"
+            size="mini"
+            placeholder="请输入采样点名称"
+            style="width: 200px"
+          />
+        </el-form-item>
+        <el-form-item
+          label="统计日期:"
+          prop="times"
+          style="display: inline-block; width: 440px; margin-bottom: 6px"
+        >
+          <el-date-picker
+            v-model="times"
+            size="mini"
+            type="daterange"
+            align="right"
+            unlink-panels
+            range-separator="至"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            format="yyyy-MM-dd"
+            value-format="yyyy-MM-dd"
+          />
+        </el-form-item>
+        <el-form-item
+          style="display: inline-block; width: 300px; margin-bottom: 6px"
+        >
+          <el-button size="mini" type="primary" @click="queryLocation"
+            >查询</el-button
+          >
+
+          <el-button size="mini" type="primary" @click="addLocation"
+            >新增</el-button
+          >
+          <el-button size="mini" type="primary" @click="exportData"
+            >导出</el-button
+          >
+        </el-form-item>
+      </el-form>
+    </el-row>
+    <div style="height: calc(100% - 35px)">
+      <el-table
+        id="siteMonitor"
+        v-loading="loading"
+        class="mapTable"
+        :data="locationData"
+        :total="pageInfo.total"
+        border
+        height="calc(100% - 40px)"
+      >
+        <el-table-column type="index" align="center" width="50" label="序号" />
+        <el-table-column
+          prop="id"
+          align="center"
+          label="样点编号"
+          sortable="custom"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="samplePlaceName"
+          align="center"
+          label="采样点名称"
+          sortable="custom"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="samplePlacePointX"
+          align="center"
+          label="采样点X坐标"
+          sortable="custom"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="samplePlacePointY"
+          align="center"
+          label="采样点Y坐标"
+          sortable="custom"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="createUser"
+          align="center"
+          label="采样点创建人"
+          sortable="custom"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="createTime"
+          align="center"
+          label="创建时间"
+          sortable="custom"
+          show-overflow-tooltip
+        >
+        </el-table-column>
+        <el-table-column
+          prop="updateUser"
+          align="center"
+          label="修改人"
+          sortable="custom"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          prop="updateTime"
+          align="center"
+          label="修改时间"
+          sortable="custom"
+          show-overflow-tooltip
+        >
+        </el-table-column>
+        <el-table-column label="操作" width="160" align="center">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              @click="showInfo(scope.row)"
+              icon="el-icon-document"
+              title="详情"
+            />
+            <el-button
+              type="text"
+              @click="showYearInfo(scope.row)"
+              icon="el-icon-edit"
+              title="修改"
+            />
+            <el-button
+              type="text"
+              style="color: red"
+              @click="deleteLocation(scope.row)"
+              icon="el-icon-delete"
+              title="删除"
+            />
+          </template>
+        </el-table-column>
+      </el-table>
+      <el-row style="margin-top: 0px">
+        <el-col :span="24">
+          <el-pagination
+            ref="pagination"
+            small
+            layout="total, sizes, prev, pager, next, jumper"
+            :pager-count="5"
+            :current-page="pageInfo.current"
+            :page-sizes="[40, 80, 120, 200]"
+            style="margin-top: 4px"
+            :page-size="pageInfo.size"
+            :total="pageInfo.total"
+            @size-change="handleSizeChange"
+            @current-change="handleCurrentChange"
+          />
+        </el-col>
+      </el-row>
+    </div>
+    <el-dialog
+      :title="dialogTitle"
+      :visible.sync="dialogVisible"
+      v-if="dialogVisible"
+      width="50%"
+    >
+      <div style="width: 100%; height: auto">
+        <el-form
+          ref="ruleForm"
+          :model="ruleForm"
+          :rules="rules"
+          label-width="120px"
+        >
+          <el-row type="flex" justify="space-between" :gutter="10">
+            <el-col :span="12">
+              <el-form-item label="采样点名称:" prop="samplePlaceName">
+                <el-input
+                  v-model="ruleForm.samplePlaceName"
+                  placeholder="请输入采样点名称"
+                  size="small"
+                  :disabled="editState"
+                />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row type="flex" justify="space-between" :gutter="10">
+            <el-col :span="12">
+              <el-form-item label="经度:" prop="pointLon">
+                <el-input
+                  v-model="ruleForm.pointLon"
+                  placeholder="请输入经度"
+                  size="small"
+                  :disabled="editState"
+                />
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="纬度:" prop="pointLat">
+                <el-input
+                  v-model="ruleForm.pointLat"
+                  placeholder="请输入纬度"
+                  style="width: calc(100% - 60px)"
+                  size="small"
+                  :disabled="editState"
+                />
+                <el-button
+                  icon="el-icon-map-location"
+                  style="width: 50px; margin-bottom: 5px"
+                  type="primary"
+                  size="small"
+                  @click="location()"
+                  :disabled="editState"
+                />
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <el-row type="flex" justify="space-between" :gutter="10">
+            <el-col :span="24">
+              <div style="height: 400px; width: 100%">
+                <tf-map ref="tfMap"></tf-map>
+              </div>
+            </el-col>
+          </el-row>
+        </el-form>
+      </div>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible = false" size="mini">取 消</el-button>
+        <el-button type="primary" @click="commit" size="mini">确定</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+  
+<script>
+import {
+  addSampleplaced,
+  getSampleplacedPage,
+  deleteSampleplaced,
+} from "@/api/dcApi/assayMngApi";
+import { Dialog } from "element-ui";
+import tfMap from "@/views/dcSystem/common/tfMap.vue";
+export default {
+  components: { tfMap },
+  name: "samplingLocation",
+  data() {
+    return {
+      dialogTitle: "新增",
+      dialogVisible: false,
+      editState:false,
+      samplePlaceName: "",
+      times: [],
+      pageInfo: { current: 1, size: 40, total: 0 }, // 分页数据
+      locationData: [],
+      ruleForm: {
+        samplePlaceName: "",
+        pointLon: "",
+        pointLat: "",
+      },
+      rules: {
+        samplePlaceName: [
+          { required: true, message: "请输入采样点名称", trigger: "change" },
+        ],
+        pointLon: [
+          { required: true, message: "请选择点位", trigger: "change" },
+        ],
+        pointLan: [
+          { required: true, message: "请选择点位", trigger: "change" },
+        ],
+      },
+      loading: false,
+    };
+  },
+  computed: {},
+  watch: {},
+  mounted() {
+    this.queryLocation();
+  },
+  methods: {
+    createMap() {},
+    /**
+     * 查询
+     */
+    queryLocation() {
+      let params = {
+        size: this.pageInfo.size,
+        current: this.pageInfo.current,
+      };
+      if (this.samplePlaceName != "")
+        Object.assign(params, { samplePlaceName: this.samplePlaceName });
+      if (this.times.length > 1)
+        Object.assign(params, {
+          startTime: this.times[0] + " 00:00:00",
+          endTime: this.times[1] + " 23:59:59",
+        });
+      this.loading = true;
+      getSampleplacedPage(params)
+        .then((res) => {
+          if (res.code == 1) {
+            this.pageInfo.total = res.result.total;
+            this.locationData = res.result.records;
+          } else {
+            this.$message.error("查询失败!");
+          }
+        })
+        .catch((ex) => {
+          this.$message.error("查询失败!" + ex);
+        })
+        .finally(() => {
+          this.loading = false;
+        });
+    },
+
+    showInfo(row){
+      this.dialogTitle = "详情";
+      this.dialogVisible = true;
+      this.editState = true;
+      this.ruleForm.samplePlaceName = row.row,
+      this.ruleForm.pointLon = row.samplePlacePointX
+      this.ruleForm.pointLat = row.samplePlacePointY
+      this.refs.tfMap.setPoint(this.ruleForm.pointLon,this.ruleForm.pointLat,true)
+    },
+
+    addLocation() {
+      this.dialogTitle = "新增采样点";
+      this.dialogVisible = true;
+      this.editState = false;
+    },
+
+    /**
+     * 数据提交
+     */
+    commit() {
+      this.$refs["ruleForm"].validate(async (valid) => {
+        if (valid) {
+          const data = {
+            samplePlaceName: this.ruleForm.samplePlaceName, //采样点名称
+            samplePlacePointX: this.ruleForm.pointLon,
+            samplePlacePointY: this.ruleForm.pointLat,
+          };
+          addSampleplaced(data).then((res) => {
+            if (res.code == 1) {
+              this.$message.success("新增成功");
+              this.dialogVisible = false;
+              this.queryLocation();
+              this.$refs.ruleForm.resetFields();
+            } else {
+              this.$message.error("新增失败!");
+            }
+          });
+        } else {
+          return false;
+        }
+      });
+    },
+
+    deleteLocation(row) {
+      this.$confirm(
+        `此操作将永久删除采样点【${row.samplePlaceName}】, 是否继续?`,
+        "提示",
+        {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+        }
+      )
+        .then(() => {
+          this.delete(row)
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "已取消删除",
+          });
+        });
+    },
+
+    delete(row) {
+      const params = {
+        ids: row.id,
+      };
+      deleteSampleplaced(params)
+        .then((res) => {
+          if (res.code == 1) {
+            this.$message({
+              type: "success",
+              message: "已删除",
+            });
+            this.queryLocation();
+          } else {
+            this.$message({
+              type: "info",
+              message: "删除失败",
+            });
+          }
+        })
+        .catch((ex) => {
+          this.$message({
+            type: "info",
+            message: "删除失败,失败原因:" + ex,
+          });
+        });
+    },
+    /**
+     * 导出
+     */
+    exportData() {},
+
+    chageFlagStatus() {},
+
+    handleCurrentChange(val) {
+      this.pageInfo.current = val;
+      this.queryLocation();
+    },
+    handleSizeChange(val) {
+      this.pageInfo.size = val;
+      this.queryLocation();
+    },
+
+    location() {
+      this.$refs.tfMap.drawPoint(true, (x, y) => {
+        this.ruleForm.pointLon = x;
+        this.ruleForm.pointLat = y;
+      });
+    },
+  },
+};
+</script>
+  
+<style lang="scss" scoped>
+.samplingLocation-container {
+  height: 100%;
+  width: 100%;
+  padding: 10px;
+}
+</style>
+  

+ 44 - 0
src/views/dcSystem/common/esriLoaderAPI.js

@@ -0,0 +1,44 @@
+/*
+ * @Author: tengmingxue 1473375109@qq.com
+ * @Date: 2022-09-27 15:48:13
+ * @LastEditors: tengmingxue 1473375109@qq.com
+ * @LastEditTime: 2022-09-27 15:49:07
+ * @FilePath: \zmProjectManagement\src\views\zhpt\common\esriLoaderAPI.js
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+ */
+import esriLoader from 'esri-loader';
+ 
+window.apiRoot = 'https://js.arcgis.com/4.17/'; //可以写在项目的配置文件里
+//可以写在项目的配置文件里
+window.dojoConfig = {
+  async: true,
+ 
+  // for jsapi ver. >= 4.9 兼容浏览器
+  deps: ['@dojo/framework/shim/main'],
+ 
+  // for jsapi ver. <= 4.8
+  // deps: ['@dojo/shim/main'],
+  packages: [
+    // {
+    //   name: 'sample',
+    //   location: 'sample/demo'
+        // },
+  ],
+  has: {
+    'esri-promise-compatibility': 1, // Use native Promises by default
+    'esri-featurelayer-webgl': 1, // Enable FeatureLayer WebGL capabilities
+  }
+};
+ 
+function configEsriLoader() {
+  esriLoader.utils.Promise = Promise;
+    
+}
+ 
+export function load(modules) {
+  configEsriLoader();
+  return esriLoader.loadModules(modules, {
+    dojoConfig: window.dojoConfig,
+    url: window.apiRoot,
+  });
+}

File diff suppressed because it is too large
+ 320 - 0
src/views/dcSystem/common/tfMap.vue


+ 0 - 683
src/views/zhpt/buildsitemanage/buildsiteAssignment/widget 20210521.vue

@@ -1,683 +0,0 @@
-<template>
-	<div id="buildsiteAssignment" class="buildsiteAssignment">
-		<div class="filteroption">
-			<span>工地类型</span>
-			<div style="width:140px;">
-				<el-input size="small" placeholder="请输入管线名称" v-model="audit.name" />
-			</div>
-			<span>上报时间</span>
-			<div>
-				<el-date-picker size="small" v-model="audit.reportTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
-				</el-date-picker>
-			</div>
-			<span>地址</span>
-			<div style="width:140px;">
-				<el-input size="small" placeholder="请输入地址" v-model="audit.address" />
-			</div>
-			<el-button type="primary" size="small" @click="workSiteGuardSendQuery()">查询</el-button>
-			<el-button type="primary" size="small" :disabled="disableCheckSend" @click="checkSendClick()">审核派工</el-button>
-			<el-button type="primary" size="small" :disabled="disableOverGuard" @click="removeGuard()">结束监护</el-button>
-		</div>
-		<div class="datatable">
-			<el-table :data="hiddendangerData" stripe style="width: 100%" max-height="120px" @select="table1Select" @handleSelectionChange="handleSelectionChange">
-				<el-table-column type="selection" width="55">
-				</el-table-column>
-				<el-table-column prop="order" label="序号" width="80" align="center" />
-				<el-table-column prop="name" sortable label="管线名称" align="center" />
-				<el-table-column prop="address" sortable label="地址" align="center" />
-				<el-table-column prop="time" sortable label="上报时间" align="center" />
-				<el-table-column prop="status" sortable label="状态" width="140" align="center" />
-				<el-table-column prop="flag" sortable label="是否为隐患" width="120" align="center" />
-				<el-table-column prop="clearFlag" sortable label="是否消除" width="120" align="center" />
-				<el-table-column label="操作" width="100" align="center">
-					<el-button type="text" size="small" @click="showDetail()">详情</el-button>
-				</el-table-column>
-			</el-table>
-		</div>
-		<div class="pagination-area">
-			<el-pagination :page-sizes="[100, 200, 300, 400]" :page-size="100" layout="total, sizes, prev, pager, next, jumper" :total="400" />
-		</div>
-		<el-dialog :visible.sync="auditDialog" title="审核派工" width="900px" top="5vh">
-			<el-collapse v-model="activeNames">
-				<el-collapse-item title="工地监护上报记录" name="info" class="info-area">
-					<el-row>
-						<el-row :gutter="20">
-							<el-col :span="10" :offset="2">
-								<div>
-									<span class="title">
-										工地类型:
-									</span>
-									<span class="content">
-										暂无
-									</span>
-								</div>
-							</el-col>
-							<el-col :span="10" :offset="2">
-								<div>
-									<span class="title">
-										地址:
-									</span>
-									<span class="content">
-										暂无
-									</span>
-								</div>
-							</el-col>
-						</el-row>
-						<el-row :gutter="20">
-							<el-col :span="10" :offset="2">
-								<div>
-									<span class="title">
-										施工单位名称:
-									</span>
-									<span class="content">
-										暂无
-									</span>
-								</div>
-							</el-col>
-							<el-col :span="10" :offset="2">
-								<div>
-									<span class="title">
-										施工负责人:
-									</span>
-									<span class="content">
-										暂无
-									</span>
-								</div>
-							</el-col>
-						</el-row>
-						<el-row :gutter="20">
-							<el-col :span="10" :offset="2">
-								<div>
-									<span class="title">
-										联系电话:
-									</span>
-									<span class="content">
-										暂无
-									</span>
-								</div>
-							</el-col>
-						</el-row>
-						<el-row>
-							<el-col :span="20" :offset="2">
-								<div>
-									<span class="title">
-										附件:
-									</span>
-									<span class="content">
-										暂无
-									</span>
-								</div>
-							</el-col>
-						</el-row>
-						<el-row>
-							<el-col :span="20" :offset="2">
-								<div>
-									<span class="title">
-										位置:
-									</span>
-									<span class="content">
-										<div style="width:100%; height: 310px; margin-top:8px;" ref="mapBox"></div>
-									</span>
-								</div>
-							</el-col>
-						</el-row>
-					</el-row>
-				</el-collapse-item>
-				<el-collapse-item title="工地监护派工" name="audit">
-					<el-row>
-						<el-form :model="auditForm" :rules="auditRule" label-position="right" label-width="120px">
-							<el-row :gutter="20">
-								<el-col :span="10">
-									<el-form-item label="是否需人员监护:">
-										<el-select v-model="auditForm.needInspection" size="small">
-											<el-option key="0" value="0" label="是"></el-option>
-											<el-option key="1" value="1" label="否"></el-option>
-										</el-select>
-									</el-form-item>
-								</el-col>
-								<el-col :span="14">
-									<el-form-item label="巡查人:">
-										<el-select v-model="auditForm.inspectionPerson" size="small" style="width: 80%;">
-											<el-option key="0" value="0" label="张三"></el-option>
-										</el-select>
-									</el-form-item>
-								</el-col>
-							</el-row>
-							<el-row :gutter="20">
-								<el-col :span="10">
-									<el-form-item label="巡查周期:">
-										<el-select v-model="auditForm.period" size="small">
-											<el-option key="0" value="0" label="一天一次"></el-option>
-											<el-option key="1" value="1" label="一周一次"></el-option>
-											<el-option key="2" value="2" label="一月一次"></el-option>
-											<el-option key="3" value="3" label="自定义周期"></el-option>
-										</el-select>
-										<el-input v-if="auditForm.period == 3" size="small" placeholder="请输入周期" style="margin-top: 10px" v-model="auditForm.customPeriod"></el-input>
-									</el-form-item>
-								</el-col>
-								<el-col :span="14">
-									<el-form-item label="起止时间:">
-										<el-date-picker v-model="auditForm.inspectionTime" size="small" type="daterange" range-separator="至" start-placeholder="工地巡查开始时间" end-placeholder="工地巡查结束时间">
-										</el-date-picker>
-									</el-form-item>
-								</el-col>
-							</el-row>
-						</el-form>
-					</el-row>
-				</el-collapse-item>
-			</el-collapse>
-			<template slot="footer">
-				<el-button @click="auditDialog = false" size="small">取消</el-button>
-				<el-button type="primary" @click="confirmCheckSendWorkers()" size="small">确定</el-button>
-			</template>
-		</el-dialog>
-		<div style="width:100%;height:100%;display:none;" ref="cctvMap"></div>
-		<el-dialog :visible.sync="dialogDetail" title="详情" width="60%" top="5vh">
-			<tf-table-legend label="工地监护上报记录" isopen="true">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">工地类型:</span>
-						<el-select v-model="detailData.workSiteType" style="display: inline-block; margin-left: 5px; width: calc(100% - 140px);" size="small"
-							placeholder="请选择工地类型" clearable :disabled="true">
-							<el-option key="0" value="0" label="代建工地"></el-option>
-							<el-option key="1" value="1" label="外部施工工地"></el-option>
-						</el-select>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.detailAddress" placeholder="请输入地址详细信息" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地理位置:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.geoAddress" placeholder="请输入隐患地理位置" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工单位名称:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.constructionUnitName" placeholder="请输入施工单位名称" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工负责人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.constructionLeader" placeholder="请输入施工负责人" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">联系电话:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.phoneNo" placeholder="请输入联系电话" type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" 
-								:on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="3" :on-exceed="handleExceed">
-								<el-button size="small" type="primary">点击上传</el-button>
-							</el-upload>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>			
-			<tf-table-legend label="工地监护派工" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">是否确认:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.isConfirm" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">是否需要人员巡查:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.isNeedGuard" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.xjWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查周期:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.xjPeriod" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">起止时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.xjBeginAndEndTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="工地巡查记录" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">情况说明:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.conditionExplain" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reportTime_process" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报位置:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reportPosition" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reportWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.position" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">确认时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.confirmTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">完成率:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.overRatio" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reprotTime_over" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">人员轨迹:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.workerTrail" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" 
-								:on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="3" :on-exceed="handleExceed">
-								<el-button size="small" type="primary">点击上传</el-button>
-							</el-upload>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="工地监护结束申请" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">工地情况:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.workSiteSituation" placeholder="排除隐患情况说明" 
-								type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" 
-								:on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="3" :on-exceed="handleExceed">
-								<el-button size="small" type="primary">点击上传</el-button>
-							</el-upload>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="工地监护审核" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%;">
-						<span class="flexTitle">审核意见:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<!-- <el-input v-model="detailData.checkIdea" size="small" :disabled="true"></el-input> -->
-							<el-select v-model="detailData.checkIdea" size="small" :disabled="disabledCheckIdea" placeholder="请选择审核意见">
-								<el-option :value="1" :key="1" label="同意"></el-option>
-								<el-option :value="0" :key="0" label="不同意"></el-option>
-							</el-select>
-						</div>
-					</div>
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">审核意见备注:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.checkIdeaAnnex" placeholder="审核意见意见意见意见说明" 
-								type="textarea" :rows="1" size="small" :disabled="disabledCheckIdeaAnnex"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<span slot="footer" v-show="showFooter" class="dialog-footer">
-				<el-button @click="dialogDetail = false" size="small">取 消</el-button>
-				<el-button type="primary" @click="confirmRemove()" size="small">确 定</el-button>
-			</span>
-		</el-dialog>
-	</div>
-</template>
-<script>
-import Vue from 'vue'
-import tfTableLegend from '@/views/zhpt/common/TableLegend'
-import { esriConfig } from 'staticPub/config'
-import { loadModules } from 'esri-loader'
-import { queryWorkSiteGuardSend, checkWorkSiteGuardSend, overWorkSiteGuardSend } from '@/api/xjWorkSiteCheckApi'
-export default {
-	name: 'buildsiteAssignment',
-	components: { tfTableLegend },
-	props: ['data'],
-	data() {
-		return {
-			disabledCheckIdea: true, //控制审核意见栏是否可编辑
-      		disabledCheckIdeaAnnex: true, //控制审核意见说明是否可编辑
-			showFooter: false, //控制footer的显示
-			dialogDelete: false, //控制确认删除弹框的显示
-			// 筛选条件
-			audit: {
-				name: undefined,
-				reportTime: undefined,
-				address: undefined
-			},
-			// 上报审核弹窗
-			auditDialog: false,
-			// 上报审核表单信息
-			auditForm: {
-				needInspection: undefined,
-				inspectionPerson: undefined,
-				period: undefined,
-				customPeriod: undefined,
-				inspectionTime: undefined
-			},
-			// 折叠面板展开
-			activeNames: ['audit'],
-			// 规则
-			auditRule: {},
-			// 部门筛选信息
-			dept_select: {
-				options: [
-					{ value: 1, label: '巡检组' },
-					{ value: 2, label: '抢修组' },
-					{ value: 3, label: '维护组' }
-				],
-				value: 1
-			},
-			disableCheckSend: true, //控制审核派工按钮是否可点击
-			disableOverGuard: true, //控制结束监护按钮是否可点击
-			multipleSelection: [],
-			// 日期筛选信息
-			date_select: {
-				value: ''
-			},
-			// 上报隐患数据
-			hiddendangerData: [
-				{
-					order: '1',
-					name: '管道占压',
-					address: '人民南路4段',
-					time: '2020-09-10 11:23:12',
-					status: '待派工',
-					flag: '是',
-					clearFlag: '否'
-				},
-				{
-					order: '2',
-					name: '管道占压',
-					address: '人民南路5段',
-					time: '2020-09-10 11:23:12',
-					status: '待派工',
-					flag: '是',
-					clearFlag: '否'
-				}
-			],
-			dialogDetail: false, //控制详情页面的显示
-			//详情数据
-			detailData: {
-				workSiteType: [], //工地类型
-				detailAddress: '', //详情页面地址
-				geoAddress: '', //地理位置
-				constructionUnitName: '', //施工单位名称
-				constructionLeader: '', //施工负责人
-				phoneNo: '', //联系电话
-				reportRecordAnnex: '', //附件
-				isConfirm: '', //是否确认
-				isNeedGuard: '', //是否需要人员监护
-				xjWorker: '', //巡查人
-				xjPeriod: '', //巡查周期
-				xjBeginAndOverTime: '', //起止时间
-				conditionExplain: '', //情况说明,巡查情况说明
-				reportTime_process: '', //上报时间,过程记录上传时间
-				reportPosition: '', //上报位置,过程上传时的位置信息
-				reportWorker: '', //上报人,巡查上报人
-				position: '', //地址,上报时地址描述
-				confirmTime: '', // 确认时间,执行人员查看接收的时间
-				overRatio: '', //完成率
-				reprotTime_over: '', //上报时间,巡检任务完成后的上报时间
-				workerTrail: '', //人员轨迹,巡查人员过程轨迹记录信息
-				xjRecordAnnex: '', //附件,图片、语音
-				workSiteSituation: '', //工地情况说明
-				overApplicationAnnex: '', //附件
-				checkIdea: '', //审核意见
-				checkIdeaAnnex: '' //审核意见备注
-			}
-		}
-	},
-	watch: {},
-	mounted() {
-		var that = this
-        var div = this.$refs.cctvMap
-        var mapV = this.data.mapView
-        var map = mapV.map
-		loadModules(['esri/views/MapView'],{ url: esriConfig.baseUrl }).then(([MapView]) => {
-            const mapview = new MapView({
-                container: div,
-                map: map,
-            })
-            that.mapV = mapview
-            mapview.ui.components = []
-            mapview.constraints.lods = mapV.constraints.lods
-            that.mapV.on('click', function(e) {   
-                if(that.flag === true) {
-                    that.constructionForm.pointLon = e.mapPoint.longitude //经度
-                    that.constructionForm.pointLat = e.mapPoint.latitude //纬度
-                    that.drawPoint()
-					that.flag = false
-				}
-            })
-        })
-	},
-	methods: {
-		handleSelectionChange(val) {
-            this.multipleSelection = val
-        },
-		handleRemove(file, fileList) {
-			console.log(file, fileList)
-		},
-		handlePreview(file) {
-			console.log(file)
-		},
-		handleExceed(files, fileList) {
-			this.$message.warning(
-				`当前限制选择 3 个文件,本次选择了 ${
-					files.length
-				} 个文件,共选择了 ${files.length + fileList.length} 个文件`
-			)
-		},
-		beforeRemove(file, fileList) {
-			return this.$confirm(`确定移除 ${file.name}?`)
-		},
-		watchDetail() {
-			var oTroubleDetail = Vue.extend(troubleDetail)
-			var dom = new oTroubleDetail().$mount().$el
-			this.data.tfDialog.Show('详情', dom)
-			this.data.tfDialog.setSize('980px', '20px')
-		},
-		auditOperate() {
-			var oTroubleDetail = Vue.extend(auditPanel)
-			var dom = new oTroubleDetail().$mount().$el
-			this.data.tfDialog.Show('审核派工', dom)
-			this.data.tfDialog.setSize('980px', '20px')
-		},
-		//点击审核派工触发事件
-		checkSendClick() {
-			this.auditDialog = true
-			this.$nextTick(this.loadMap)
-		},
-		//展示详情页面
-		showDetail() {
-			this.dialogDetail = true
-			this.disabledCheckIdea = true
-			this.disabledCheckIdeaAnnex = true
-			this.showFooter = false
-		},
-		//加载地图
-		loadMap: function() {
-			this.$refs.mapBox.appendChild(this.$refs.cctvMap)
-            this.$refs.cctvMap.style.display = ''
-            this.mapV.extent = this.data.mapView.extent
-		},
-		//点击主页面查询按钮,获取接口数据
-		workSiteGuardSendQuery() {
-			queryWorkSiteGuardSend().then(res => {
-				console.log(res);
-			})
-		},
-		//点击确定提交审核派工信息
-		confirmCheckSendWorkers() {
-			checkWorkSiteGuardSend().then(res => {
-				console.log(res);
-			})
-			this.auditDialog = false
-		},
-		//根据选中条数判断是否可上报
-		table1Select(e) {
-			this.disableOverGuard = e.length < 1 ? true : false //选中条数小于1时不能点击结束监护
-			this.disableCheckSend = e.length < 1 ? true : false //选中条数小于1时不能点击审核上报
-		},
-		//确认移除时触发
-		confirmRemove() {
-		this.$confirm('确认提交审核意见?', '提示', {
-			confirmButtonText: '确定',
-			cancelButtonText: '取消',
-			type: 'warning'
-			}).then(() => {
-			overWorkSiteGuardSend().then(res => {
-				console.log(res);
-			})
-			this.$message({
-				type: 'success',
-				message: '消除成功!'
-			});
-			this.dialogDetail = false
-			}).catch(() => {
-			this.$message({
-				type: 'info',
-				message: '已取消消除'
-			});
-			});
-		},
-		//点击结束监护触发事件
-		removeGuard() {
-			this.dialogDetail = true
-			this.disabledCheckIdea = false
-			this.disabledCheckIdeaAnnex = false
-			this.showFooter = true
-		}
-	}
-}
-</script>
-
-<style lang='scss' scoped>
-.buildsiteAssignment {
-	position: relative;
-	height: 100%;
-	width: 100%;
-	padding: 5px;
-	.filteroption {
-		width: 62%;
-		height: 40px;
-		font-size: 14px;
-		display: flex;
-		align-items: center;
-		justify-content: space-between;
-	}
-	.datatable {
-		width: 100%;
-		height: 150px;
-	}
-	.pagination-area {
-		display: flex;
-		justify-content: flex-end;
-		align-items: center;
-	}
-	/deep/ .el-button {
-		margin-left: 0;
-	}
-}
-.flexDiv{
-    width: 33%;
-    height: 30px;
-    line-height: 30px;
-    margin-top: 8px;
-}
-.flexTitle{
-    min-width: 130px;
-    display: inline-block;
-    text-align: right;
-}
-.info-area {
-	.el-row {
-		margin-bottom: 4px;
-	}
-	.title {
-		display: inline-block;
-		width: 144px;
-		text-align: right;
-	}
-}
-.el-row {
-	margin-bottom: 20px;
-	.title,
-	.content {
-		font-size: 16px;
-	}
-}
-/deep/ .el-collapse {
-	.el-collapse-item__header {
-      height: 30px;
-      line-height: 30px;
-      box-sizing: border-box;
-      padding: 0 10px;
-      border-left: 4px solid rgb(161, 191, 236);
-    }
-	.el-collapse-item:nth-of-type(odd) {
-		.el-collapse-item__header {
-			background: #f5f4f4;
-		}
-	}
-	.el-collapse-item:nth-of-type(even) {
-		.el-collapse-item__header {
-			background: #f5f5f5;
-		}
-	}
-}
-/deep/ .el-collapse-item__wrap {
-	margin-top: 10px;
-}
-</style>

+ 0 - 833
src/views/zhpt/buildsitemanage/buildsiteReport/widget 20210521.vue

@@ -1,833 +0,0 @@
-<template>
-	<div id="buildsiteReport" class="buildsiteReport">
-		<div class="filteroption">
-			<span style="width: 100px;">工地类型</span>
-			<div>
-				<el-select v-model="queryParams.typeId" @focus="getbuildType"  size="small">
-					<el-option v-for="item in buildType" :key="item.id" :label="item.name" :value="item.id" />
-				</el-select>
-			</div>
-			<span style="margin-left: 10px; width: 60px;">地址</span>
-			<div>
-				<el-input v-model="queryParams.address" size="small" placeholder="请输入内容" />
-			</div>
-			<span style="margin-left: 10px; width: 60px;">状态</span>
-			<div>
-				<el-select v-model="queryParams.state" size="small">
-					<el-option v-for="item in stateStatus" :key="item.id" :label="item.name" :value="item.id"></el-option>
-				</el-select>
-			</div>
-			<el-button class="search" style="margin-left: 5px;" type="primary" size="small" @click="buildReportQuery()">查询</el-button>
-			<el-button class="search" style="margin-left: 10px;" type="primary" size="small" @click="reportClick()">上报</el-button>
-		</div>
-		<div class="datatable">
-			<el-table :data="buildsiteData" stripe style="width: 100%;" height="100%" ref="table1" @select="table1Select">
-				<el-table-column type="selection" width="55"></el-table-column>
-				<el-table-column type="index" label="序号" width="80px" align="center">
-					<template slot-scope="scope">
-						<span>{{((pageInfo.current - 1) * pageInfo.size) + (scope.$index+1) }}</span>
-					</template>
-				</el-table-column>
-				<el-table-column prop="type" sortable label="工地类型" align="center" />
-				<el-table-column prop="address" sortable label="地址" align="left" />
-				<el-table-column prop="sgdw" sortable label="施工单位名称" align="center" />
-				<el-table-column prop="gdfzr" sortable label="施工负责人" width="150" align="center" />
-				<el-table-column prop="phone" sortable label="联系电话" width="120" align="center" />
-				<el-table-column prop="state" sortable label="状态" width="100" align="center" />
-				<el-table-column label="操作" width="100" align="center">
-					<el-button type="text" size="small" @click="dialogDetail = true">详情</el-button>
-				</el-table-column>
-			</el-table>
-		</div>
-		<div class="pagination-area">
-			<el-pagination layout="total, sizes, prev, next, pager, jumper" 
-				:page-sizes="[10, 25, 50, 100]" 
-				:page-size="pageInfo.size" 
-				:current-page="pageInfo.current"   
-				:total="pageInfo.tableTotal"
-				@size-change="handleSizeChange"
-				@current-change="handleCurrentChange" />
-		</div>
-		<el-dialog :visible.sync="reportDialog" title="工地监护上报" width="1200px" top="5vh">
-			<div style="width:100%; display: flex; flex-wrap: wrap;">
-				<div class="flexDiv">
-					<span class="flexTitle">工地类型:</span>
-					<div class="flexInfo">
-						<el-select v-model="reportForm.typeId" style="width:100%;" size="small" placeholder="请选择审核结果"  clearable>
-							<el-option v-for="item of buildType" :key="item.id" :value="item.id" :label="item.name"></el-option>
-						</el-select>
-					</div>
-				</div>
-				<div class="flexDiv">
-					<span class="flexTitle">所属片区:</span>
-					<div class="flexInfo">
-						<el-select v-model="reportForm.pointPlace" size="small" placeholder="请选择片区" style="width: 260px;">
-							<el-option v-for="item of pointPlaces" :key="item.OBJECTID" :value="item.OBJECTID" :label="item.NAME"></el-option>
-						</el-select>
-					</div>
-				</div>
-				<div class="flexDivx">
-					<span class="flexTitle">施工单位名称:</span>
-					<div class="flexInfo">
-						<el-input v-model="reportForm.sgdw" placeholder="请输入施工单位名称" size="small"></el-input>
-					</div>
-				</div>
-				<div class="flexDivx">
-					<span class="flexTitle">施工负责人:</span>
-					<div class="flexInfo">
-						<el-input v-model="reportForm.gdfzr"  placeholder="请输入施工单位名称" size="small"></el-input>
-					</div>
-				</div>
-				<div class="flexDivx">
-					<span class="flexTitle">联系人电话:</span>
-					<div class="flexInfo">
-						<el-input v-model="reportForm.phone"  placeholder="请输入施工单位名称" size="small"></el-input>
-					</div>
-				</div>
-				<div class="flexDivMax">
-					<span class="flexTitle">地址:</span>
-					<div class="flexInfo">
-						<el-input v-model="reportForm.address" type="textarea"  placeholder="请输入地址" size="small"></el-input>
-					</div>
-				</div>
-				<div class="flexDivMax">
-					<span class="flexTitle">附件:</span>
-					<div class="flexInfo">
-						<el-form-item label="附件">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/"
-								:on-preview="handlePreview" 
-								:on-remove="handleRemove" 
-								:before-remove="beforeRemove"
-								:on-change="beforeAvatarUpload"
-                      			:on-success="handleAvatarSuccess"
-								:file-list="fileList" :auto-upload="false"
-								multiple :limit="3" :on-exceed="handleExceed" style="width: 260px;" size="small">
-								<el-button size="small" type="primary" style="width: 260px; margin-top: 3px;" >点击上传</el-button>
-								<div slot="tip" class="el-upload__tip">⚠️注意:文件大小不能超过10MB!最多3个文件!</div>
-							</el-upload>
-						</el-form-item>
-					</div>
-				</div>
-				<div class="flexDivMax">
-					<span class="flexTitle">经度:</span>
-					<div class="flexInfo">
-						<el-input v-model="reportForm.pointLon"  placeholder="请输入经度" size="small"></el-input>
-					</div>
-				</div>
-				<div class="flexDivMax">
-					<span class="flexTitle">纬度:</span>
-					<div class="flexInfo">
-						<el-input v-model="reportForm.pointLat" placeholder="请输入纬度:" size="small"></el-input>
-						<el-button icon="el-icon-map-location" style="width: 50px; margin-bottom: 5px;" type="primary" size="small" @click="chageFlagStatus()"></el-button>
-					</div>
-				</div>
-			</div>
-			<el-form :model="reportForm" :rules="constructionRule" label-position="right" label-width="110px">
-				<el-row :gutter="20">
-					<el-col :span="10">
-						<el-form-item label="工地类型">
-						
-						</el-form-item>
-					</el-col>
-					<el-col :span="10" :offset="2">
-						<el-form-item label="地址">
-							<el-input placeholder="请输入地址"></el-input>
-						</el-form-item>
-					</el-col>
-				</el-row>
-				<el-row :gutter="20">
-					<el-col :span="10">
-						<el-form-item label="施工单位名称">
-							<el-input placeholder="请输入施工单位名称"></el-input>
-						</el-form-item>
-					</el-col>
-					<el-col :span="10" :offset="2">
-						<el-form-item label="施工负责人">
-							<el-input placeholder="请输入施工负责人"></el-input>
-						</el-form-item>
-					</el-col>
-				</el-row>
-				<el-row :gutter="20">
-					<el-col :span="10">
-						<el-form-item label="联系电话">
-							<el-input placeholder="请输入联系电话" type="number"></el-input>
-						</el-form-item>
-					</el-col>
-				</el-row>
-				<el-row>
-					<el-col :span="24">
-						<el-form-item label="详细描述">
-							<el-input type="textarea" placeholder="请输入详细描述"></el-input>
-						</el-form-item>
-					</el-col>
-				</el-row>
-				<el-row>
-					<el-col :span="24">
-						<el-form-item label="附件">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" :on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="3" :on-exceed="handleExceed">
-								<el-button size="small" type="primary">点击上传</el-button>
-							</el-upload>
-						</el-form-item>
-					</el-col>
-				</el-row>
-				<el-row :gutter="20">
-					<el-col :span="10">
-						<el-form-item label="经度">
-							<el-input v-model="reportForm.pointLon" placeholder="请输入经度" type="number"></el-input>
-						</el-form-item>
-					</el-col>
-					<el-col :span="12" :offset="2">
-						<el-form-item label="纬度">
-							<el-input v-model="reportForm.pointLat" placeholder="请输入纬度" type="number" style="width: 205px"></el-input>
-							<el-button type="primary" icon="el-icon-map-location" @click="flag = true"></el-button>
-						</el-form-item>
-					</el-col>
-				</el-row>
-				<el-row>
-					<el-col :span="24">
-						<div style="width:100%; height: 310px; margin-top:8px;" ref="mapBox"></div>
-					</el-col>
-				</el-row>
-			</el-form>
-			<template slot="footer">
-				<el-button @click="reportDialog = false" size="small">取消</el-button>
-				<el-button type="primary" @click="confirmWorkSiteGuardReport()" size="small">确定</el-button>
-			</template>
-		</el-dialog>
-		<div style="width:100%;height:100%;display:none;" ref="cctvMap"></div>
-		<el-dialog :visible.sync="dialogDetail" title="详情" width="60%" top="5vh">
-			<tf-table-legend label="工地监护上报记录" isopen="true">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">工地类型:</span>
-						<el-select v-model="detailData.workSiteType" style="display: inline-block; margin-left: 5px; width: calc(100% - 140px);" size="small"
-							placeholder="请选择工地类型" clearable :disabled="true">
-							<el-option key="0" value="0" label="代建工地"></el-option>
-							<el-option key="1" value="1" label="外部施工工地"></el-option>
-						</el-select>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.detailAddress" placeholder="请输入地址详细信息" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地理位置:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.geoAddress" placeholder="请输入隐患地理位置" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工单位名称:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.constructionUnitName" placeholder="请输入施工单位名称" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工负责人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.constructionLeader" placeholder="请输入施工负责人" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">联系电话:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.phoneNo" placeholder="请输入联系电话" type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" 
-								:on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="3" :on-exceed="handleExceed">
-								<el-button size="small" type="primary">点击上传</el-button>
-							</el-upload>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>			
-			<tf-table-legend label="工地监护派工" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">是否确认:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.isConfirm" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">是否需要人员巡查:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.isNeedGuard" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.xjWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查周期:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.xjPeriod" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">起止时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.xjBeginAndEndTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="工地巡查记录" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">情况说明:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.conditionExplain" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reportTime_process" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报位置:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reportPosition" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reportWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.position" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">确认时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.confirmTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">完成率:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.overRatio" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.reprotTime_over" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">人员轨迹:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.workerTrail" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" 
-								:on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="3" :on-exceed="handleExceed">
-								<el-button size="small" type="primary">点击上传</el-button>
-							</el-upload>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="工地监护结束申请" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">工地情况:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.workSiteSituation" placeholder="排除隐患情况说明" 
-								type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-upload class="upload-demo" action="https://jsonplaceholder.typicode.com/posts/" :on-preview="handlePreview" 
-								:on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="3" :on-exceed="handleExceed">
-								<el-button size="small" type="primary">点击上传</el-button>
-							</el-upload>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="工地监护审核" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%;">
-						<span class="flexTitle">审核意见:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.checkIdea" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">审核意见备注:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="detailData.checkIdeaAnnex" placeholder="审核意见意见意见意见说明" 
-								type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-		</el-dialog>
-	</div>
-</template>
-<script>
-import Vue from 'vue'
-import buildsiteDetail from './child/buildsiteDetail'
-import reportPanel from './child/reportPanel'
-import tfTableLegend from '@/views/zhpt/common/TableLegend'
-import { esriConfig } from 'staticPub/config'
-import { loadModules } from 'esri-loader'
-import { queryBuildList, reportWorkSiteGuard , getBuildType } from '@/api/xjWorkSiteCheckApi'
-export default {
-	name: 'BuildsiteReport',
-	components: { tfTableLegend },
-	props: ['data'],
-	data() {
-		return {
-			buildType: [], //码表 => 工地类型
-			pointPlaces: [],	//码表 => 所属片区
-			stateStatus: [			//码表 => 0无需监护、1监护巡查、2已结束、3监护结束申请
-				{ id:'',name:'全部' },
-				{ id:'0',name:'无需监护' },
-				{ id:'1',name:'监护巡查' },
-				{ id:'2',name:'已结束' },
-				{ id:'3',name:'监护结束申请' },
-			],
-			pageInfo: { current: 1,  size: 10, tableTotal:1 },				//分页数据
-			queryParams: {	//查询参数
- 				typeId: undefined,		//工地类型
-				address: undefined,		//工地地址
-				state: undefined,		//工地状态
-			},
-			buildsiteData: [],		//table表格数据
-			flag: false, 	//控制上报页面是否可点击地图获得经纬度
-
-
-			reportDialog: false,// 上报弹窗
-			reportForm: { // 上报弹窗的数据
-				uploadType: "1",		//上报途径
-				typeId: undefined,		//工地类型
-				address: undefined,		//工地地址
-				sgdw: undefined,		//施工单位名称
-				gdfzr: undefined,		//施工负责人
-				phone: undefined,		//联系人电话
-				notes: undefined, //备注
-				pointPlace: undefined,		//工地所属片区
-				pointLon: undefined,		//经度
-				pointLat: undefined,		//纬度
-			},
-			
-			dialogDetail: false, //控制详情页面的显示
-			
-
-			constructionRule: {},// 工地规则
-
-			fileList: [
-				{
-					name: 'food.jpeg',
-					url:
-						'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'
-				},
-				{
-					name: 'food2.jpeg',
-					url:
-						'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'
-				}
-			],
-			//详情数据
-			detailData: {
-				workSiteType: [], //工地类型
-				detailAddress: '', //详情页面地址
-				geoAddress: '', //地理位置
-				constructionUnitName: '', //施工单位名称
-				constructionLeader: '', //施工负责人
-				phoneNo: '', //联系电话
-				reportRecordAnnex: '', //附件
-				isConfirm: '', //是否确认
-				isNeedGuard: '', //是否需要人员监护
-				xjWorker: '', //巡查人
-				xjPeriod: '', //巡查周期
-				xjBeginAndOverTime: '', //起止时间
-				conditionExplain: '', //情况说明,巡查情况说明
-				reportTime_process: '', //上报时间,过程记录上传时间
-				reportPosition: '', //上报位置,过程上传时的位置信息
-				reportWorker: '', //上报人,巡查上报人
-				position: '', //地址,上报时地址描述
-				confirmTime: '', // 确认时间,执行人员查看接收的时间
-				overRatio: '', //完成率
-				reprotTime_over: '', //上报时间,巡检任务完成后的上报时间
-				workerTrail: '', //人员轨迹,巡查人员过程轨迹记录信息
-				xjRecordAnnex: '', //附件,图片、语音
-				workSiteSituation: '', //工地情况说明
-				overApplicationAnnex: '', //附件
-				checkIdea: '', //审核意见
-				checkIdeaAnnex: '' //审核意见备注
-			},
-		}
-	},
-	watch: {},
-	mounted() {
-		var that = this
-        var div = this.$refs.cctvMap
-        var mapV = this.data.mapView
-        var map = mapV.map
-		loadModules(['esri/views/MapView'],{ url: esriConfig.baseUrl }).then(([MapView]) => {
-            const mapview = new MapView({
-                container: div,
-                map: map,
-            })
-            that.mapV = mapview
-            mapview.ui.components = []
-            mapview.constraints.lods = mapV.constraints.lods
-            mapview.on('click', function(e) {
-                if(that.flag === true) {
-                    that.reportForm.pointLon = e.mapPoint.longitude.toFixed(6) //经度
-                    that.reportForm.pointLat = e.mapPoint.latitude.toFixed(6) //纬度
-                    that.drawPoint(e.mapPoint.longitude, e.mapPoint.latitude)
-					that.getPartArea(e.mapPoint.longitude, e.mapPoint.latitude) //获取片区信息
-                    that.flag = false
-                }
-            })
-        })
-		
-		that.getbuildType();		//工地类型
-		that.buildReportQuery();	//查询
-	},
-	methods: {
-		/*--------------------- 地图相关 ----------------*/
-		/**
-		 * @description 加载地图
-		 */
-		loadMap: function() {
-			this.$refs.mapBox.appendChild(this.$refs.cctvMap)
-            this.$refs.cctvMap.style.display = ''
-            this.mapV.extent = this.data.mapView.extent
-		},
-		/**
-		 * @description 绘制工地点位
-		 */
-        drawPoint() {
-            let that = this
-            let mapV = this.data.mapView
-            let map = mapV.map
-            loadModules(['esri/views/MapView', "esri/Graphic", "esri/layers/GraphicsLayer"],{ url: esriConfig.baseUrl }).then(([MapView, Graphic, GraphicsLayer]) => {
-			that.mapV = mapView
-            if(this.reportForm.pointLat) {
-                const point = {
-                    type: 'point',
-                    longitude: that.reportForm.pointLon,
-                    latitude: that.reportForm.pointLat
-                };
-                const simpleMarkerSymbol = {
-                    type: "simple-marker",
-                    color: [226, 119, 40],//橙色
-                    outLine: {
-                        color: [255, 255, 255],//白色
-                        width: 1
-                    }
-                };
-                const pointGraphic = new Graphic({
-                    geometry: point,
-                    symbol: simpleMarkerSymbol
-                });
-                if(that.graphicsLayer != null) {
-                    that.graphicsLayer = null
-                    map.removeAll(that.graphicsLayer)
-                }
-                that.graphicsLayer = new GraphicsLayer()
-                that.graphicsLayer.add(pointGraphic)
-                map.add(that.graphicsLayer)
-            }
-            })    
-		},
-
-
-		/**
-		 * @description 获取片区
-		 */
-        getPartArea(lon, lat) {
-            loadModules([ 'esri/geometry/geometryEngine', 'esri/geometry/Point', 'esri/geometry/geometryEngineAsync' ],{ url: esriConfig.baseUrl }).then(([geometryEngine, Point, geometryEngineAsync]) => { 
-                let sp = this.data.mapView.spatialReference
-                $.ajax({
-                    url: appconfig.gisResource.business_map.config[0].url + "/" + this.layerId + "/query?f=pjson",
-                    type: 'POST',
-                    data: {
-                        where: '1=1',
-                        f: 'pjson',
-                        outFields: '*'
-                    },
-                    success: (data) => {
-                        let point = {
-                            type: 'point',
-                            x: lon,
-                            y: lat,
-                            spatialReference: sp
-                        }
-                        this.pointPlaces = []
-                        this.pointGeo = []
-                        data = JSON.parse(data)
-                        data = data.features
-                        this.pointGeo = data
-                        for(let item of data) {
-                            this.pointPlaces.push(item.attributes)
-                        }
-                        let index = undefined
-                        for(let item of this.pointGeo) {
-                            item.geometry.spatialReference = sp
-                            let isIn = geometryEngine.intersects(item.geometry, point)
-                            if(isIn === true) {
-                                index = item.attributes.OBJECTID
-                            }
-                        }
-						this.reportForm.pointPlace = index
-                    },
-                    error: (error) => this.$message.error(error)
-                })
-            })
-		},
-		
-		/**
-		 * @description 改变flag的值,false停止绘制
-		 */
-		chageFlagStatus() {
-			this.flag = true //开始绘制
-		},
-
-		/*--------------------- 附件上传 ----------------*/
-		handleRemove(file, fileList) {
-			console.log('文件列表移除文件时的钩子', file, fileList)
-  			this.fileList = fileList
-		},
-		handlePreview(file) {
-			console.log('点击文件列表中已上传的文件时的钩子', file)
-		},
-		handleExceed(files, fileList) {
-			this.$message.warning(
-				`当前限制选择 3 个文件,本次选择了 ${
-					files.length
-				} 个文件,共选择了 ${files.length + fileList.length} 个文件`
-			)
-		},
-		beforeRemove(file, fileList) {
-			return this.$confirm(`确定移除 ${file.name}?`)
-		},
-		//上传之前的钩子函数
-		beforeAvatarUpload(response, file, fileList) {
-			console.log(response, file)
-			this.fileMap(file)
-		},
-		fileMap(file) {
-			if (file.length !== 0) {
-				const files = file.map((v) => {
-				return v.raw
-				})
-				this.files = files
-			}
-		},
- 		handleAvatarSuccess(res, file, fileList) {
-			console.log('文件上传成功时的钩子', res, file, fileList)
-		},
-
-
-		watchDetail() {
-			var oTroubleDetail = Vue.extend(buildsiteDetail)
-			var dom = new oTroubleDetail().$mount().$el
-			this.data.tfDialog.Show('详情', dom)
-			this.data.tfDialog.setSize('980px', '20px')
-		},
-		buildsiteReport() {
-			var oTroubleDetail = Vue.extend(reportPanel)
-			var dom = new oTroubleDetail().$mount().$el
-			this.data.tfDialog.Show('上报', dom)
-			this.data.tfDialog.setSize('980px', '20px')
-		},
-		table1Select(e) {
-			// this.reportDisable = e.length < 1 //当选中条数小于1时,上报按钮不可点击
-		},
-
-		/*--------------------- 分页查询 ---------------*/
-		/**
-		 * @description 分页每页条数
-		 */
-		handleSizeChange(pageSize) {
-			this.pageInfo.size = pageSize
-			this.getData()
-		},
-		/**
-		 * @description 改变当前页
-		 */
-		handleCurrentChange(currentPage) {
-			this.pageInfo.current = currentPage
-			this.getData()
-		},
-
-		/*--------------------- API请求 ----------------*/
-		/**
-		 * @description 查询工地列表
-		 */
-		buildReportQuery() {
-			this.pageInfo.current=1
-			this.getData()
-		},
-
-		/**
-		 *  @description 查询工地列表
-		 */
-		getData(){
-			var that = this;
-			//追加分页参数
-			const query = that.pageInfo
-      		Object.assign(query, that.queryParams)
-			console.log("query参数:"+JSON.stringify(that.pageInfo));
-			that.buildsiteData = []
-			queryBuildList(query).then(res => {
-				 if(res.code !== 1){
-					that.$message.error("获取工地列表出错!")
-					return;
-				}
-				//数据总数
-				that.pageInfo.tableTotal = res.result.total
-				that.buildsiteData = res.result.records
-			})
-		},
-
-		/**
-		 * @description 工地上报
-		 */
-		reportClick() {
-			const that = this
-			let mapView = this.data.mapView
-			this.flag = true
-			if(this.flag = true) {
-				this.click = mapView.on('click', function(e) {
-					that.reportForm.pointLon = (e.mapPoint.longitude).toFixed(6) //经度
-					that.reportForm.pointLat = (e.mapPoint.latitude).toFixed(6) //纬度
-					that.drawPoint(e.mapPoint.longitude, e.mapPoint.latitude)
-					that.reportDialog = true //显示弹窗
-					that.getPartArea(e.mapPoint.longitude, e.mapPoint.latitude)
-					that.$nextTick(that.loadMap)
-					that.flag = false
-				})
-			}
-		},
-
-		/**
-		 * @description 码表 => 工地类型码表
-		 */
-		getbuildType(){
-			getBuildType({ size:10000 }).then(res => {
-				this.buildType = res.result.records
-				//增加全部
-				this.buildType.unshift({
-					id:'',name:'全部'
-				})
-			})
-		},
-
-		
-		//确认上报时触发事件,调用接口进行上报信息传输
-		confirmWorkSiteGuardReport() {
-			reportWorkSiteGuard().then(res => {
-				console.log(res);
-			})
-			this.reportDialog = false //关闭弹框
-		}
-	}
-}
-</script>
-
-<style lang='scss' scoped>
-.buildsiteReport {
-	height: 100%;
-	width: 100%;
-	padding: 5px;
-	.filteroption {
-		width: 40%;
-		height: 40px;
-		font-size: 14px;
-		display: flex;
-		align-items: center;
-		justify-content: space-between;
-	}
-	.datatable {
-		flex: 1;
-		height: calc(100% - 100px);
-	}
-	.pagination-area {
-		height: 60px;
-		display: flex;
-		justify-content: flex-end;
-		align-items: center;
-		// align-self: flex-end;
-	}
-	/deep/ .el-button {
-		margin-left: 0;
-	}
-}
-
-.el-row {
-	margin-bottom: 20px;
-}
-
-.flexDiv{
-    width: 33%;
-    height: 30px;
-    line-height: 30px;
-    margin-top: 10px;
-}
-.flexDivMax{
-    width: 99%;
-    height: 50px;
-    line-height: 50px;
-    margin-top: 8px;
-}
-.flexDivFile{
-    width: 99%;
-    height: 100px;
-    line-height: 100px;
-    margin-top: 8px;
-}
-.flexDivMap{
-    width: 99%;
-    height: 310px;
-    line-height: 310px;
-    margin-top: 8px;
-}
-.flexTitle{
-    min-width: 120px;
-    display: inline-block;
-    text-align: right;
-}
-.flexInfo{
-    display: inline-block;
-    width: calc(100% - 150px);
-}
-</style>
-
-<style>
-input::-webkit-outer-spin-button,
-input::-webkit-inner-spin-button {
-	-webkit-appearance: none !important;
-}
-input[type="number"] {
-	-moz-appearance: textfield;
-}
-</style>

+ 0 - 799
src/views/zhpt/hiddendangermanage/hiddendangerAuditAssignment/widget 20210518.vue

@@ -1,799 +0,0 @@
-<template>
-  <div id="hiddendangerAuditAssignment" class="hiddendangerAuditAssignment">
-    <div class="filteroption">
-      <span>管线名称</span>
-      <div style="width:140px;">
-        <el-input size="small" placeholder="请输入管线名称" v-model="audit.name" />
-      </div>
-      <span>上报时间</span>
-      <div>
-        <el-date-picker size="small" v-model="audit.reportTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
-        </el-date-picker>
-      </div>
-      <span>地址</span>
-      <div style="width:140px;">
-        <el-input size="small" placeholder="请输入地址" v-model="audit.address" />
-      </div>
-      <el-button type="primary" size="small" @click="dangerCheckArrangeQuery()">查询</el-button>
-      <el-button type="primary" size="small" :disabled="auditDisable" @click="reportClick()">上报审核</el-button>
-      <el-button type="primary" size="small" :disabled="removeAuditDisable" @click="removeCheck()">消除审核</el-button>
-    </div>
-    <div class="datatable">
-      <el-table :data="hiddendangerData" @select="table1Select" stripe style="width: 100%" max-height="120px" @handleSelectionChange="handleSelectionChange">
-        <el-table-column type="selection" width="55">
-        </el-table-column>
-        <el-table-column prop="order" label="序号" width="80" align="center" />
-        <el-table-column prop="name" sortable label="管线名称" align="center" />
-        <el-table-column prop="address" sortable label="地址" align="center" />
-        <el-table-column prop="time" sortable label="上报时间" align="center" />
-        <el-table-column prop="status" sortable label="状态" width="140" align="center" />
-        <el-table-column prop="flag" sortable label="是否为隐患" width="120" align="center" />
-        <el-table-column prop="clearFlag" sortable label="是否消除" width="120" align="center" />
-        <el-table-column label="操作" width="100" align="center">
-            <el-button type="text" size="small" @click="showDetail()">详情</el-button>
-        </el-table-column>
-      </el-table>
-    </div>
-    <div class="pagination-area">
-      <el-pagination :page-sizes="[100, 200, 300, 400]" :page-size="100" layout="total, sizes, prev, pager, next, jumper" :total="400" />
-    </div>
-    <el-dialog :visible.sync="auditDialog" title="上报审核" width="850px" top="5vh">
-      <el-collapse v-model="activeNames">
-        <el-collapse-item title="隐患审核" name="audit">
-          <el-row>
-            <el-form :model="auditForm" :rules="auditRule" label-position="right" label-width="120px">
-              <el-row :gutter="20">
-                <el-col :span="10">
-                  <el-form-item label="是否需人员巡查">
-                    <el-select v-model="auditForm.needInspection">
-                      <el-option key="0" value="0" label="是"></el-option>
-                      <el-option key="1" value="1" label="否"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="14">
-                  <el-form-item label="巡查人">
-                    <el-select v-model="auditForm.inspectionPerson">
-                      <el-option key="0" value="0" label="张三"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-              </el-row>
-              <el-row :gutter="20">
-                <el-col :span="10">
-                  <el-form-item label="巡查周期">
-                    <el-select v-model="auditForm.period">
-                      <el-option key="0" value="0" label="一天一次"></el-option>
-                      <el-option key="1" value="1" label="一周一次"></el-option>
-                      <el-option key="2" value="2" label="一月一次"></el-option>
-                      <el-option key="3" value="3" label="自定义周期"></el-option>
-                    </el-select>
-                    <el-input v-if="auditForm.period == 3" placeholder="请输入周期" style="margin-top: 10px" v-model="auditForm.customPeriod"></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="14">
-                  <el-form-item label="起止时间">
-                    <el-date-picker v-model="auditForm.inspectionTime" type="daterange" range-separator="至" start-placeholder="隐患巡查开始时间" end-placeholder="隐患巡查结束时间">
-                    </el-date-picker>
-                  </el-form-item>
-                </el-col>
-              </el-row>
-            </el-form>
-          </el-row>
-        </el-collapse-item>
-        <el-collapse-item title="隐患信息" name="info" class="info-area">
-          <el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    管线名称:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患部位:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    地址:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患原因:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患发生时间:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    是否进入工地管理:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    施工单位名称:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    施工负责人:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    联系电话:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    消除隐患建议:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患原因备注:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    附件:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    位置:
-                  </span>
-                  <span class="content">
-                    <div style="width:100%; height: 310px; margin-top:8px;" ref="mapBox"></div>
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-          </el-row>
-        </el-collapse-item>
-      </el-collapse>
-      <template slot="footer">
-        <el-button @click="auditDialog = false" size="small">取消</el-button>
-        <el-button type="primary" @click="dangerCheckReport()" size="small">确定</el-button>
-      </template>
-    </el-dialog>
-    <div style="width:100%;height:100%;display:none;" ref="cctvMap"></div>
-    <el-dialog :visible.sync="dialogDetail" title="隐患详情" width="60%" top="10vh">
-			<tf-table-legend label="隐患记录" isopen="true">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">管线名称:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.pipeName" placeholder="请输入数量" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患部位:</span>
-						<el-select v-model="dangerRecordData.dangerPosition" style="display: inline-block; margin-left: 5px; width: calc(100% - 140px);" size="small"
-							placeholder="请选择隐患部位" clearable :disabled="true">
-							<el-option key="0" value="0" label="管线"></el-option>
-							<el-option key="1" value="1" label="设施"></el-option>
-						</el-select>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.positionDetail" placeholder="请输入地址" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地理位置:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.geographicalPosition" placeholder="请输入隐患地理位置" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">所在片区:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.dangerLocationArea" placeholder="请输入隐患所在片区" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患原因:</span>
-						<el-select v-model="dangerRecordData.dangerReason.value" placeholder="请选择隐患原因" size="small" 
-							style="display: inline-block; margin-left: 5px; width: calc(100% - 140px);" :disabled="true" clearable>
-							<el-option v-for="item in dangerRecordData.dangerReason" :key="item.value" :label="item.value" :value="item.label"></el-option>
-						</el-select>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患原因备注:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.dangerReasonNote" placeholder="请输入内容" type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患发生时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.dangerOccurTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">是否进入工地管理:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.isIntoWorkStageManage" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工单位名称:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.constructionUnitName" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工负责人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.constructionLeader" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">联系电话:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.phoneNo" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">消除隐患建议:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.removeDangerAdvice" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.annex" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>			
-			<tf-table-legend label="审核处理" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">是否确认:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.isConfirm" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">是否需要人员巡查:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.isNeedXjWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.xjWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查周期:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.xjPeriod" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">起止时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.xjBeginAndOverTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="隐患巡查记录" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">情况说明:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.conditionExplain" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.reportTime_process" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.reportWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.position" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">确认时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.confirmTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">完成率:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.overRatio" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.reprotTime_over" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">人员轨迹:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.workerTrail" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.annex" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="隐患消除登记" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">排除隐患情况:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRemoveRegisterData.removeDangerSituation" placeholder="排除隐患情况说明" 
-								type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv" style="width: 99%;">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.conditionExplain" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-      <tf-table-legend label="隐患消除审核" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%;">
-						<span class="flexTitle">审核意见:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<!-- <el-input v-model="dangerRemoveCheckData.checkIdea" size="small" :disabled="true"></el-input> -->
-              <el-select v-model="dangerRemoveCheckData.checkIdea" size="small" :disabled="disabledCheckIdea" placeholder="请选择审核意见">
-                <el-option :value="1" :key="1" label="同意"></el-option>
-                <el-option :value="0" :key="0" label="不同意"></el-option>
-              </el-select>
-						</div>
-					</div>
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">审核意见备注:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRemoveCheckData.checkIdeaAnnex" placeholder="审核意见意见意见意见说明" 
-								type="textarea" :rows="1" size="small" :disabled="disabledCheckIdeaAnnex"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-      <span slot="footer" class="dialog-footer" v-show="showFooter">
-          <el-button @click="dialogDetail = false" size="small">取 消</el-button>
-          <el-button type="primary" @click="confirmRemove()" size="small">确 定</el-button>
-      </span>
-		</el-dialog>
-  </div>
-</template>
-<script>
-import Vue from 'vue'
-import troubleDetail from './child/troubleDetail'
-import tfTableLegend from '@/views/zhpt/common/TableLegend'
-import auditPanel from './child/auditPanel'
-import { esriConfig } from 'staticPub/config'
-import { loadModules } from 'esri-loader'
-import { queryDangerCheckArrange, reportDangerCheck, removeDangerCheck } from '@/api/xjHiddenDangerManageApi'
-export default {
-  name: 'HiddendangerAuditAssignment',
-  components: { tfTableLegend },
-  props: ['data'],
-  data() {
-    return {
-      disabledCheckIdea: true, //控制审核意见栏是否可编辑
-      disabledCheckIdeaAnnex: true, //控制审核意见说明是否可编辑
-      showFooter: false, //控制footer的显示
-      dialogDetail: false, //控制详情页面显示
-      //隐患记录展开项的数据
-			dangerRecordData: {
-				pipeName: '', // 隐患所在管线名称
-				dangerPosition: '', //隐患部位
-				positionDetail: '', //隐患详细地址描述
-				geographicalPosition: '', //地理位置
-				dangerLocationArea: '', //隐患所在片区
-				//隐患原因
-				dangerReason: [
-					{ value: 0, label: '占压'},
-					{ value: 1, label: '渗水'},
-					{ value: 2, label: '周边打围开挖'},
-					{ value: 3, label: '其他管线穿越或并行'}
-				], 
-				dangerReasonNote: '', //隐患原因备注
-				dangerOccurTime: '', // 隐患发生时间
-				isIntoWorkStageManage: '', //是否进入工地管理
-				constructionUnitName: '', //施工单位名称
-				constructionLeader: '', //施工负责人
-				phoneNo: '', // 联系电话
-				removeDangerAdvice: '', //消除隐患建议
-				annex: '', //附件
-			},
-			//审核处理展开项的数据
-			checkHandleData: {
-				isConfirm: '', //查收到确认
-				isNeedXjWorker: '', //是否需要巡查人员
-				xjWorker: '', //巡查人
-				xjPeriod: '', //巡查周期
-				xjBeginAndOverTime: '' //隐患巡查开始时间
-				// xjOverTime: '', //隐患巡查结束时间
-			},
-			//隐患巡查记录展开项的数据
-			dangerXjRecordData: {
-				conditionExplain: '', //情况说明,巡查情况说明
-				reportTime_process: '', //上报时间,过程记录上传时间
-				reportPosition: '', //上报位置,过程上传时的位置信息
-				reportWorker: '', //上报人,巡查上报人
-				position: '', //地址,上报时地址描述
-				confirmTime: '', // 确认时间,执行人员查看接收的时间
-				overRatio: '', //完成率
-				reprotTime_over: '', //上报时间,巡检任务完成后的上报时间
-				workerTrail: '', //人员轨迹,巡查人员过程轨迹记录信息
-				annex: '' //附件,图片、语音
-			},
-			//隐患消除登记数据
-			dangerRemoveRegisterData: {
-				removeDangerSituation: '', //排除隐患情况说明
-				annex: '' //附件
-      },
-      //隐患消除审核数据
-			dangerRemoveCheckData: {
-				checkIdea: '', //审核意见
-				checkIdeaAnnex: '' //审核意见备注
-			},
-      dialogDelete: false, //控制是否确认删除弹框显示
-      multipleSelection: [],
-      // 筛选条件
-      audit: {
-        name: undefined,
-        reportTime: undefined,
-        address: undefined
-      },
-      // 上报审核弹窗
-      auditDialog: false,
-      auditDisable: true, //控制上报审核按钮是否可操作
-      removeAuditDisable: true, //控制消除审核按钮是否可操作
-      // 上报审核表单信息
-      auditForm: {
-        needInspection: undefined,
-        inspectionPerson: undefined,
-        period: undefined,
-        customPeriod: undefined,
-        inspectionTime: undefined
-      },
-      // 折叠面板展开
-      activeNames: ['audit'],
-      // 规则
-      auditRule: {},
-      // 部门筛选信息
-      dept_select: {
-        options: [
-          { value: 1, label: '巡检组' },
-          { value: 2, label: '抢修组' },
-          { value: 3, label: '维护组' }
-        ],
-        value: 1
-      },
-      // 日期筛选信息
-      date_select: {
-        value: ''
-      },
-      // 上报隐患数据
-      hiddendangerData: [
-        {
-          order: '1',
-          name: '管道占压',
-          address: '人民南路4段',
-          time: '2020-09-10 11:23:12',
-          status: '待派工',
-          flag: '是',
-          clearFlag: '否'
-        },
-        {
-          order: '2',
-          name: '管道占压',
-          address: '人民南路5段',
-          time: '2020-09-10 11:23:12',
-          status: '待派工',
-          flag: '是',
-          clearFlag: '否'
-        }
-      ]
-    }
-  },
-  watch: {},
-  mounted() {
-    var that = this
-    var div = this.$refs.cctvMap
-    var mapV = this.data.mapView
-    var map = mapV.map
-    loadModules(['esri/views/MapView'],{ url: esriConfig.baseUrl }).then(([MapView]) => {
-        const mapview = new MapView({
-            container: div,
-            map: map,
-        })
-        that.mapV = mapview
-        mapview.ui.components = []
-        mapview.constraints.lods = mapV.constraints.lods
-        that.mapV.on('click', function(e) {   
-            if(that.flag === true) {
-                that.reportForm.pointLon = e.mapPoint.longitude //经度
-                that.reportForm.pointLat = e.mapPoint.latitude //纬度
-                that.drawPoint()
-            that.flag = false
-          }
-        })
-    }) 
-  },
-  methods: {
-    handleSelectionChange(val) {
-            this.multipleSelection = val
-        },
-    watchDetail() {
-      var oTroubleDetail = Vue.extend(troubleDetail)
-      var dom = new oTroubleDetail().$mount().$el
-      this.data.tfDialog.Show('详情', dom)
-      this.data.tfDialog.setSize('980px', '20px')
-    },
-    auditOperate() {
-      var oTroubleDetail = Vue.extend(auditPanel)
-      var dom = new oTroubleDetail().$mount().$el
-      this.data.tfDialog.Show('审核派工', dom)
-      this.data.tfDialog.setSize('980px', '20px')
-    },
-    //根据选中条数判断是否可上报
-    table1Select(e) {
-        if(e.length < 1) {
-          this.auditDisable = true
-          this.removeAuditDisable = true
-        } else if (e.length === 1) {
-          this.auditDisable = false
-          this.removeAuditDisable = false
-        } else {
-          this.removeAuditDisable = false
-          this.auditDisable  = true
-        }
-    },
-    //展示详情页面
-    showDetail() {
-      this.dialogDetail = true
-      this.disabledCheckIdea = true
-      this.disabledCheckIdeaAnnex = true
-      this.showFooter = false
-    },
-    //加载地图
-		loadMap: function() {
-			this.$refs.mapBox.appendChild(this.$refs.cctvMap)
-            this.$refs.cctvMap.style.display = ''
-            this.mapV.extent = this.data.mapView.extent
-    },
-    //点击上报审核按钮触发事件
-		reportClick() {
-			this.auditDialog = true
-			this.$nextTick(this.loadMap)
-		},
-    //点击主页面查询按钮,获取接口数据渲染主页面表格
-    dangerCheckArrangeQuery() {
-      queryDangerCheckArrange().then(res => {
-        console.log(res);
-      })
-    },
-    //点击主页面上报审核按钮,确定上报后调用接口上传审核数据
-    dangerCheckReport() {
-      reportDangerCheck().then(res => {
-        console.log(res);
-      })
-      this.auditDialog = false
-    },
-    //确认移除时触发
-    confirmRemove() {
-      this.$confirm('确认提交审核意见?', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-        }).then(() => {
-          removeDangerCheck().then(res => {
-            console.log(res);
-          })
-          this.$message({
-              type: 'success',
-              message: '消除成功!'
-          });
-          this.dialogDetail = false
-        }).catch(() => {
-          this.$message({
-              type: 'info',
-              message: '已取消消除'
-          });
-        });
-    },
-    //点击消除审核触发事件
-    removeCheck() {
-      this.dialogDetail = true
-      this.disabledCheckIdea = false
-      this.disabledCheckIdeaAnnex = false
-      this.showFooter = true
-    }
-  }
-}
-</script>
-
-<style lang='scss' scoped>
-.hiddendangerAuditAssignment {
-  position: relative;
-  height: 100%;
-  width: 100%;
-  padding: 5px;
-  .filteroption {
-    width: 62%;
-    height: 40px;
-    font-size: 14px;
-    display: flex;
-    align-items: center;
-    justify-content: space-between;
-  }
-  .datatable {
-    width: 100%;
-    height: 150px;
-  }
-  .pagination-area {
-    display: flex;
-    justify-content: flex-end;
-    align-items: center;
-  }
-  /deep/ .el-button {
-    margin-left: 0;
-  }
-}
-.flexDiv{
-    width: 33%;
-    height: 30px;
-    line-height: 30px;
-    margin-top: 8px;
-}
-.flexTitle{
-    min-width: 130px;
-    display: inline-block;
-    text-align: right;
-}
-.info-area {
-  .el-row {
-    margin-bottom: 4px;
-  }
-  .title {
-    display: inline-block;
-    width: 144px;
-    text-align: right;
-  }
-}
-.el-row {
-  margin-bottom: 20px;
-  .title,
-  .content {
-    font-size: 16px;
-  }
-}
-/deep/ .el-collapse {
-  .el-collapse-item__header {
-    height: 30px;
-    line-height: 30px;
-    box-sizing: border-box;
-    padding: 0 10px;
-    border-left: 4px solid rgb(161, 191, 236);
-  }
-  .el-collapse-item:nth-of-type(odd) {
-    .el-collapse-item__header {
-      background: #f5f4f4;
-    }
-  }
-  .el-collapse-item:nth-of-type(even) {
-    .el-collapse-item__header {
-      background: #f5f5f5;
-    }
-  }
-}
-/deep/ .el-collapse-item__wrap {
-  margin-top: 10px;
-}
-</style>

+ 0 - 799
src/views/zhpt/hiddendangermanage/hiddendangerCheckAuditAssignment/widget 20210518.vue

@@ -1,799 +0,0 @@
-<template>
-  <div id="hiddendangerAuditAssignment" class="hiddendangerAuditAssignment">
-    <div class="filteroption">
-      <span>管线名称</span>
-      <div style="width:140px;">
-        <el-input size="small" placeholder="请输入管线名称" v-model="audit.name" />
-      </div>
-      <span>上报时间</span>
-      <div>
-        <el-date-picker size="small" v-model="audit.reportTime" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
-        </el-date-picker>
-      </div>
-      <span>地址</span>
-      <div style="width:140px;">
-        <el-input size="small" placeholder="请输入地址" v-model="audit.address" />
-      </div>
-      <el-button type="primary" size="small" @click="dangerCheckArrangeQuery()">查询</el-button>
-      <el-button type="primary" size="small" :disabled="auditDisable" @click="reportClick()">上报审核</el-button>
-      <el-button type="primary" size="small" :disabled="removeAuditDisable" @click="removeCheck()">消除审核</el-button>
-    </div>
-    <div class="datatable">
-      <el-table :data="hiddendangerData" @select="table1Select" stripe style="width: 100%" max-height="120px" @handleSelectionChange="handleSelectionChange">
-        <el-table-column type="selection" width="55">
-        </el-table-column>
-        <el-table-column prop="order" label="序号" width="80" align="center" />
-        <el-table-column prop="name" sortable label="管线名称" align="center" />
-        <el-table-column prop="address" sortable label="地址" align="center" />
-        <el-table-column prop="time" sortable label="上报时间" align="center" />
-        <el-table-column prop="status" sortable label="状态" width="140" align="center" />
-        <el-table-column prop="flag" sortable label="是否为隐患" width="120" align="center" />
-        <el-table-column prop="clearFlag" sortable label="是否消除" width="120" align="center" />
-        <el-table-column label="操作" width="100" align="center">
-            <el-button type="text" size="small" @click="showDetail()">详情</el-button>
-        </el-table-column>
-      </el-table>
-    </div>
-    <div class="pagination-area">
-      <el-pagination :page-sizes="[100, 200, 300, 400]" :page-size="100" layout="total, sizes, prev, pager, next, jumper" :total="400" />
-    </div>
-    <el-dialog :visible.sync="auditDialog" title="上报审核" width="850px" top="5vh">
-      <el-collapse v-model="activeNames">
-        <el-collapse-item title="隐患审核" name="audit">
-          <el-row>
-            <el-form :model="auditForm" :rules="auditRule" label-position="right" label-width="120px">
-              <el-row :gutter="20">
-                <el-col :span="10">
-                  <el-form-item label="是否需人员巡查">
-                    <el-select v-model="auditForm.needInspection">
-                      <el-option key="0" value="0" label="是"></el-option>
-                      <el-option key="1" value="1" label="否"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="14">
-                  <el-form-item label="巡查人">
-                    <el-select v-model="auditForm.inspectionPerson">
-                      <el-option key="0" value="0" label="张三"></el-option>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-              </el-row>
-              <el-row :gutter="20">
-                <el-col :span="10">
-                  <el-form-item label="巡查周期">
-                    <el-select v-model="auditForm.period">
-                      <el-option key="0" value="0" label="一天一次"></el-option>
-                      <el-option key="1" value="1" label="一周一次"></el-option>
-                      <el-option key="2" value="2" label="一月一次"></el-option>
-                      <el-option key="3" value="3" label="自定义周期"></el-option>
-                    </el-select>
-                    <el-input v-if="auditForm.period == 3" placeholder="请输入周期" style="margin-top: 10px" v-model="auditForm.customPeriod"></el-input>
-                  </el-form-item>
-                </el-col>
-                <el-col :span="14">
-                  <el-form-item label="起止时间">
-                    <el-date-picker v-model="auditForm.inspectionTime" type="daterange" range-separator="至" start-placeholder="隐患巡查开始时间" end-placeholder="隐患巡查结束时间">
-                    </el-date-picker>
-                  </el-form-item>
-                </el-col>
-              </el-row>
-            </el-form>
-          </el-row>
-        </el-collapse-item>
-        <el-collapse-item title="隐患信息" name="info" class="info-area">
-          <el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    管线名称:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患部位:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    地址:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患原因:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患发生时间:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    是否进入工地管理:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    施工单位名称:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    施工负责人:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row :gutter="20">
-              <el-col :span="10" :offset="2">
-                <div>
-                  <span class="title">
-                    联系电话:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    消除隐患建议:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    隐患原因备注:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    附件:
-                  </span>
-                  <span class="content">
-                    暂无
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-            <el-row>
-              <el-col :span="20" :offset="2">
-                <div>
-                  <span class="title">
-                    位置:
-                  </span>
-                  <span class="content">
-                    <div style="width:100%; height: 310px; margin-top:8px;" ref="mapBox"></div>
-                  </span>
-                </div>
-              </el-col>
-            </el-row>
-          </el-row>
-        </el-collapse-item>
-      </el-collapse>
-      <template slot="footer">
-        <el-button @click="auditDialog = false" size="small">取消</el-button>
-        <el-button type="primary" @click="dangerCheckReport()" size="small">确定</el-button>
-      </template>
-    </el-dialog>
-    <div style="width:100%;height:100%;display:none;" ref="cctvMap"></div>
-    <el-dialog :visible.sync="dialogDetail" title="隐患详情" width="60%" top="10vh">
-			<tf-table-legend label="隐患记录" isopen="true">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">管线名称:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.pipeName" placeholder="请输入数量" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患部位:</span>
-						<el-select v-model="dangerRecordData.dangerPosition" style="display: inline-block; margin-left: 5px; width: calc(100% - 140px);" size="small"
-							placeholder="请选择隐患部位" clearable :disabled="true">
-							<el-option key="0" value="0" label="管线"></el-option>
-							<el-option key="1" value="1" label="设施"></el-option>
-						</el-select>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.positionDetail" placeholder="请输入地址" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地理位置:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.geographicalPosition" placeholder="请输入隐患地理位置" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">所在片区:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.dangerLocationArea" placeholder="请输入隐患所在片区" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患原因:</span>
-						<el-select v-model="dangerRecordData.dangerReason.value" placeholder="请选择隐患原因" size="small" 
-							style="display: inline-block; margin-left: 5px; width: calc(100% - 140px);" :disabled="true" clearable>
-							<el-option v-for="item in dangerRecordData.dangerReason" :key="item.value" :label="item.value" :value="item.label"></el-option>
-						</el-select>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患原因备注:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.dangerReasonNote" placeholder="请输入内容" type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">隐患发生时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.dangerOccurTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">是否进入工地管理:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.isIntoWorkStageManage" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工单位名称:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.constructionUnitName" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">施工负责人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.constructionLeader" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">联系电话:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.phoneNo" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">消除隐患建议:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.removeDangerAdvice" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRecordData.annex" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>			
-			<tf-table-legend label="审核处理" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">是否确认:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.isConfirm" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">是否需要人员巡查:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.isNeedXjWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.xjWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">巡查周期:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.xjPeriod" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">起止时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="checkHandleData.xjBeginAndOverTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="隐患巡查记录" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv">
-						<span class="flexTitle">情况说明:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.conditionExplain" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.reportTime_process" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报人:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.reportWorker" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">地址:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.position" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">确认时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.confirmTime" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">完成率:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.overRatio" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">上报时间:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.reprotTime_over" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">人员轨迹:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.workerTrail" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.annex" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-			<tf-table-legend label="隐患消除登记" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">排除隐患情况:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRemoveRegisterData.removeDangerSituation" placeholder="排除隐患情况说明" 
-								type="textarea" :rows="1" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-					<div class="flexDiv" style="width: 99%;">
-						<span class="flexTitle">附件:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerXjRecordData.conditionExplain" size="small" :disabled="true"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-      <tf-table-legend label="隐患消除审核" isopen="false" style="margin-top: 8px;">
-				<div style="width: 100%; display: flex; flex-wrap: wrap;">
-					<div class="flexDiv" style="width: 99%;">
-						<span class="flexTitle">审核意见:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<!-- <el-input v-model="dangerRemoveCheckData.checkIdea" size="small" :disabled="true"></el-input> -->
-              <el-select v-model="dangerRemoveCheckData.checkIdea" size="small" :disabled="disabledCheckIdea" placeholder="请选择审核意见">
-                <el-option :value="1" :key="1" label="同意"></el-option>
-                <el-option :value="0" :key="0" label="不同意"></el-option>
-              </el-select>
-						</div>
-					</div>
-					<div class="flexDiv" style="width: 99%">
-						<span class="flexTitle">审核意见备注:</span>
-						<div style="display: inline-block; margin-left: 5px; width:calc(100% - 140px);">
-							<el-input v-model="dangerRemoveCheckData.checkIdeaAnnex" placeholder="审核意见意见意见意见说明" 
-								type="textarea" :rows="1" size="small" :disabled="disabledCheckIdeaAnnex"></el-input>
-						</div>
-					</div>
-				</div>
-			</tf-table-legend>
-      <span slot="footer" class="dialog-footer" v-show="showFooter">
-          <el-button @click="dialogDetail = false" size="small">取 消</el-button>
-          <el-button type="primary" @click="confirmRemove()" size="small">确 定</el-button>
-      </span>
-		</el-dialog>
-  </div>
-</template>
-<script>
-import Vue from 'vue'
-import troubleDetail from './child/troubleDetail'
-import tfTableLegend from '@/views/zhpt/common/TableLegend'
-import auditPanel from './child/auditPanel'
-import { esriConfig } from 'staticPub/config'
-import { loadModules } from 'esri-loader'
-import { queryDangerCheckArrange, reportDangerCheck, removeDangerCheck } from '@/api/xjHiddenDangerManageApi'
-export default {
-  name: 'HiddendangerAuditAssignment',
-  components: { tfTableLegend },
-  props: ['data'],
-  data() {
-    return {
-      disabledCheckIdea: true, //控制审核意见栏是否可编辑
-      disabledCheckIdeaAnnex: true, //控制审核意见说明是否可编辑
-      showFooter: false, //控制footer的显示
-      dialogDetail: false, //控制详情页面显示
-      //隐患记录展开项的数据
-			dangerRecordData: {
-				pipeName: '', // 隐患所在管线名称
-				dangerPosition: '', //隐患部位
-				positionDetail: '', //隐患详细地址描述
-				geographicalPosition: '', //地理位置
-				dangerLocationArea: '', //隐患所在片区
-				//隐患原因
-				dangerReason: [
-					{ value: 0, label: '占压'},
-					{ value: 1, label: '渗水'},
-					{ value: 2, label: '周边打围开挖'},
-					{ value: 3, label: '其他管线穿越或并行'}
-				], 
-				dangerReasonNote: '', //隐患原因备注
-				dangerOccurTime: '', // 隐患发生时间
-				isIntoWorkStageManage: '', //是否进入工地管理
-				constructionUnitName: '', //施工单位名称
-				constructionLeader: '', //施工负责人
-				phoneNo: '', // 联系电话
-				removeDangerAdvice: '', //消除隐患建议
-				annex: '', //附件
-			},
-			//审核处理展开项的数据
-			checkHandleData: {
-				isConfirm: '', //查收到确认
-				isNeedXjWorker: '', //是否需要巡查人员
-				xjWorker: '', //巡查人
-				xjPeriod: '', //巡查周期
-				xjBeginAndOverTime: '' //隐患巡查开始时间
-				// xjOverTime: '', //隐患巡查结束时间
-			},
-			//隐患巡查记录展开项的数据
-			dangerXjRecordData: {
-				conditionExplain: '', //情况说明,巡查情况说明
-				reportTime_process: '', //上报时间,过程记录上传时间
-				reportPosition: '', //上报位置,过程上传时的位置信息
-				reportWorker: '', //上报人,巡查上报人
-				position: '', //地址,上报时地址描述
-				confirmTime: '', // 确认时间,执行人员查看接收的时间
-				overRatio: '', //完成率
-				reprotTime_over: '', //上报时间,巡检任务完成后的上报时间
-				workerTrail: '', //人员轨迹,巡查人员过程轨迹记录信息
-				annex: '' //附件,图片、语音
-			},
-			//隐患消除登记数据
-			dangerRemoveRegisterData: {
-				removeDangerSituation: '', //排除隐患情况说明
-				annex: '' //附件
-      },
-      //隐患消除审核数据
-			dangerRemoveCheckData: {
-				checkIdea: '', //审核意见
-				checkIdeaAnnex: '' //审核意见备注
-			},
-      dialogDelete: false, //控制是否确认删除弹框显示
-      multipleSelection: [],
-      // 筛选条件
-      audit: {
-        name: undefined,
-        reportTime: undefined,
-        address: undefined
-      },
-      // 上报审核弹窗
-      auditDialog: false,
-      auditDisable: true, //控制上报审核按钮是否可操作
-      removeAuditDisable: true, //控制消除审核按钮是否可操作
-      // 上报审核表单信息
-      auditForm: {
-        needInspection: undefined,
-        inspectionPerson: undefined,
-        period: undefined,
-        customPeriod: undefined,
-        inspectionTime: undefined
-      },
-      // 折叠面板展开
-      activeNames: ['audit'],
-      // 规则
-      auditRule: {},
-      // 部门筛选信息
-      dept_select: {
-        options: [
-          { value: 1, label: '巡检组' },
-          { value: 2, label: '抢修组' },
-          { value: 3, label: '维护组' }
-        ],
-        value: 1
-      },
-      // 日期筛选信息
-      date_select: {
-        value: ''
-      },
-      // 上报隐患数据
-      hiddendangerData: [
-        {
-          order: '1',
-          name: '管道占压',
-          address: '人民南路4段',
-          time: '2020-09-10 11:23:12',
-          status: '待派工',
-          flag: '是',
-          clearFlag: '否'
-        },
-        {
-          order: '2',
-          name: '管道占压',
-          address: '人民南路5段',
-          time: '2020-09-10 11:23:12',
-          status: '待派工',
-          flag: '是',
-          clearFlag: '否'
-        }
-      ]
-    }
-  },
-  watch: {},
-  mounted() {
-    var that = this
-    var div = this.$refs.cctvMap
-    var mapV = this.data.mapView
-    var map = mapV.map
-    loadModules(['esri/views/MapView'],{ url: esriConfig.baseUrl }).then(([MapView]) => {
-        const mapview = new MapView({
-            container: div,
-            map: map,
-        })
-        that.mapV = mapview
-        mapview.ui.components = []
-        mapview.constraints.lods = mapV.constraints.lods
-        that.mapV.on('click', function(e) {   
-            if(that.flag === true) {
-                that.reportForm.pointLon = e.mapPoint.longitude //经度
-                that.reportForm.pointLat = e.mapPoint.latitude //纬度
-                that.drawPoint()
-            that.flag = false
-          }
-        })
-    }) 
-  },
-  methods: {
-    handleSelectionChange(val) {
-            this.multipleSelection = val
-        },
-    watchDetail() {
-      var oTroubleDetail = Vue.extend(troubleDetail)
-      var dom = new oTroubleDetail().$mount().$el
-      this.data.tfDialog.Show('详情', dom)
-      this.data.tfDialog.setSize('980px', '20px')
-    },
-    auditOperate() {
-      var oTroubleDetail = Vue.extend(auditPanel)
-      var dom = new oTroubleDetail().$mount().$el
-      this.data.tfDialog.Show('审核派工', dom)
-      this.data.tfDialog.setSize('980px', '20px')
-    },
-    //根据选中条数判断是否可上报
-    table1Select(e) {
-        if(e.length < 1) {
-          this.auditDisable = true
-          this.removeAuditDisable = true
-        } else if (e.length === 1) {
-          this.auditDisable = false
-          this.removeAuditDisable = false
-        } else {
-          this.removeAuditDisable = false
-          this.auditDisable  = true
-        }
-    },
-    //展示详情页面
-    showDetail() {
-      this.dialogDetail = true
-      this.disabledCheckIdea = true
-      this.disabledCheckIdeaAnnex = true
-      this.showFooter = false
-    },
-    //加载地图
-		loadMap: function() {
-			this.$refs.mapBox.appendChild(this.$refs.cctvMap)
-            this.$refs.cctvMap.style.display = ''
-            this.mapV.extent = this.data.mapView.extent
-    },
-    //点击上报审核按钮触发事件
-		reportClick() {
-			this.auditDialog = true
-			this.$nextTick(this.loadMap)
-		},
-    //点击主页面查询按钮,获取接口数据渲染主页面表格
-    dangerCheckArrangeQuery() {
-      queryDangerCheckArrange().then(res => {
-        console.log(res);
-      })
-    },
-    //点击主页面上报审核按钮,确定上报后调用接口上传审核数据
-    dangerCheckReport() {
-      reportDangerCheck().then(res => {
-        console.log(res);
-      })
-      this.auditDialog = false
-    },
-    //确认移除时触发
-    confirmRemove() {
-      this.$confirm('确认提交审核意见?', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-        }).then(() => {
-          removeDangerCheck().then(res => {
-            console.log(res);
-          })
-          this.$message({
-              type: 'success',
-              message: '消除成功!'
-          });
-          this.dialogDetail = false
-        }).catch(() => {
-          this.$message({
-              type: 'info',
-              message: '已取消消除'
-          });
-        });
-    },
-    //点击消除审核触发事件
-    removeCheck() {
-      this.dialogDetail = true
-      this.disabledCheckIdea = false
-      this.disabledCheckIdeaAnnex = false
-      this.showFooter = true
-    }
-  }
-}
-</script>
-
-<style lang='scss' scoped>
-.hiddendangerAuditAssignment {
-  position: relative;
-  height: 100%;
-  width: 100%;
-  padding: 5px;
-  .filteroption {
-    width: 62%;
-    height: 40px;
-    font-size: 14px;
-    display: flex;
-    align-items: center;
-    justify-content: space-between;
-  }
-  .datatable {
-    width: 100%;
-    height: 150px;
-  }
-  .pagination-area {
-    display: flex;
-    justify-content: flex-end;
-    align-items: center;
-  }
-  /deep/ .el-button {
-    margin-left: 0;
-  }
-}
-.flexDiv{
-    width: 33%;
-    height: 30px;
-    line-height: 30px;
-    margin-top: 8px;
-}
-.flexTitle{
-    min-width: 130px;
-    display: inline-block;
-    text-align: right;
-}
-.info-area {
-  .el-row {
-    margin-bottom: 4px;
-  }
-  .title {
-    display: inline-block;
-    width: 144px;
-    text-align: right;
-  }
-}
-.el-row {
-  margin-bottom: 20px;
-  .title,
-  .content {
-    font-size: 16px;
-  }
-}
-/deep/ .el-collapse {
-  .el-collapse-item__header {
-    height: 30px;
-    line-height: 30px;
-    box-sizing: border-box;
-    padding: 0 10px;
-    border-left: 4px solid rgb(161, 191, 236);
-  }
-  .el-collapse-item:nth-of-type(odd) {
-    .el-collapse-item__header {
-      background: #f5f4f4;
-    }
-  }
-  .el-collapse-item:nth-of-type(even) {
-    .el-collapse-item__header {
-      background: #f5f5f5;
-    }
-  }
-}
-/deep/ .el-collapse-item__wrap {
-  margin-top: 10px;
-}
-</style>