From d4fca49a4b70fe60c730d7e32e2035153a91fcc5 Mon Sep 17 00:00:00 2001
From: seatonwan9 <seatonwan9@163.com>
Date: 星期一, 31 五月 2021 17:13:14 +0800
Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop

---
 src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue |  532 ++++++++++++++++++++++++++++------------------------------
 1 files changed, 258 insertions(+), 274 deletions(-)

diff --git a/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue b/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue
index b7e9d69..b1fe66d 100644
--- a/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue
+++ b/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue
@@ -1,149 +1,156 @@
 <template>
-    <div class="ReportLocationSection">
-        <el-form :model="form" label-width="90px">
-            <el-row class="pipe-line-search">
-                <el-col :span="12">
-                    <el-form-item label="绠$嚎鍚嶇О:">
-                        <el-input v-model="form.pipeName">
-                            <el-button style="padding-right:10px;" slot="suffix" type="text" @click="pipelineSearch">
-                                <img src="../../../../../public/assets/images/map/emergency/search.png" alt="">
-                            </el-button>
-                        </el-input>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="8">
-                    <el-button type="primary" size="small" icon="el-icon-location-outline" @click="pipeClickLocation">瀹氫綅
-                    </el-button>
-                </el-col>
-            </el-row>
-            <el-row>
-                <el-col :span="12">
-                    <el-form-item label="绠℃缂栫爜:">
-                        <el-input v-model="form.sectionName" disabled></el-input>
-                    </el-form-item>
-                </el-col>
-                <el-col :span="12">
-                    <el-form-item label="闄勫睘璁炬柦:">
-                        <el-input v-model="form.affiliatedFacilities" disabled></el-input>
-                    </el-form-item>
-                </el-col>
-            </el-row>
-        </el-form>
-        <div class="pipe-table" v-show="this.tableList.length>=1">
-            <el-card>
-                <span class="fixed-style" style="display: block">绠$嚎鍚嶇О</span>
-                <el-table
-                        :data="tableList"
-                        border
-                        height="120"
-                        max-height="140"
-                        @row-click="sectionShowClick"
-                        style="width: 100%">
-                    <el-table-column
-                            label="搴忓彿"
-                            type="index"
-                    >
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.pipename"
-                            label="绠$嚎鍚嶇О">
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.subchaname"
-                            label="鏀嚎鍚嶇О">
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.mediumtype"
-                            label="绠$嚎绫诲瀷">
-                    </el-table-column>
-                    <el-table-column width="40" fixed="right" label="鎿嶄綔">
-                        <template slot-scope="scope">
-                            <el-button @click="localAdr(scope.row)" type="text" size="small">瀹氫綅</el-button>
-                        </template>
-                    </el-table-column>
-                </el-table>
-            </el-card>
-            <el-card>
-                <span class="fixed-style" style="display: block">绠℃鍒楄〃</span>
-                <el-table
-                        :data="tableListSection"
-                        border
-                        @row-click="sectionCode"
-                        height="100"
-                        max-height="100"
-                        style="width: 100%">
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.pipesegcode"
-                            label="绠℃缂栫爜">
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.startpointnumber"
-                            label="璧风偣鎺㈡煡鍙�">
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.endpointnumber"
-                            label="缁堢偣鎺㈡煡鍙�">
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.material"
-                            label="鏉愯川">
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            prop="properties.embeddingmode"
-                            label="鍩嬭鏂瑰紡">
-                    </el-table-column>
-                    <el-table-column width="40" fixed="right" label="鎿嶄綔">
-                        <template slot-scope="scope">
-                            <el-button @click="localAdr(scope.row)" type="text" size="small">瀹氫綅</el-button>
-                        </template>
-                    </el-table-column>
-                </el-table>
-                <span class="fixed-style" style="display: block">闄勫睘璁炬柦鍒楄〃</span>
-                <el-table
-                        :data="tableDataAffFac"
-                        border
-                        @row-click="affFacName"
-                        height="120"
-                        max-height="140"
-                        style="width: 100%">
-                    <el-table-column
-                            show-overflow-tooltip
-                            width="150"
-                            prop="properties.pipecode"
-                            label="绠$嚎缂栧彿">
-                    </el-table-column>
-                    <el-table-column
-                            show-overflow-tooltip
-                            width="150"
-                            prop="properties.name"
-                            label="闄勫睘璁炬柦鍚嶇О">
-                    </el-table-column>
-                    <el-table-column
-                            width="150"
-                            show-overflow-tooltip
-                            prop="properties.type"
-                            label="璁炬柦绫诲瀷">
-                    </el-table-column>
-                    <el-table-column width="90" fixed="right" label="鎿嶄綔">
-                        <template slot-scope="scope">
-                            <el-button @click="localAdr(scope.row)" type="text" size="small">瀹氫綅</el-button>
-                        </template>
-                    </el-table-column>
-                </el-table>
-            </el-card>
-        </div>
-        <el-row style="text-align: right;margin: 10px">
-            <el-button type="primary" @click="confirm">纭</el-button>
-        </el-row>
+  <div class="ReportLocationSection">
+    <el-form :model="form" label-width="120px">
+      <el-row class="pipe-line-search">
+        <el-col :span="18">
+          <el-form-item label="绠$嚎鍚嶇О:">
+            <el-input v-model="form.pipeName" @change="pipelineSearch">
+              <el-button style="padding-right:10px;" slot="suffix" type="text" @click="pipelineSearch">
+                <img src="../../../../../public/assets/images/map/emergency/search.png" alt="">
+              </el-button>
+            </el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-button type="primary" size="small" icon="el-icon-location-outline" @click="pipeClickLocation">瀹氫綅
+          </el-button>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="18">
+          <el-form-item label="绠℃缂�:">
+            <el-input v-model="form.sectionName" disabled></el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="闄勫睘璁炬柦缂栫爜:">
+            <el-input v-model="form.affiliatedFacilities" disabled></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="闄勫睘璁炬柦绫诲瀷:">
+            <el-input v-model="form.affiliatedFacilitiesCode" disabled></el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+    </el-form>
+    <div class="pipe-table" v-show="this.tableList.length>=1">
+      <el-card>
+        <span class="fixed-style" style="display: block">绠$嚎鍚嶇О</span>
+        <el-table
+            :data="tableList"
+            border
+            height="120"
+            max-height="140"
+            @row-click="sectionShowClick"
+            style="width: 100%">
+          <el-table-column
+              label="搴忓彿"
+              type="index"
+          >
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.pipename"
+              label="绠$嚎鍚嶇О">
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.subchaname"
+              label="鏀嚎鍚嶇О">
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.mediumtype"
+              label="绠$嚎绫诲瀷">
+          </el-table-column>
+          <el-table-column width="40" fixed="right" label="鎿嶄綔">
+            <template slot-scope="scope">
+              <el-button @click="localAdr(scope.row)" type="text" size="small">瀹氫綅</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </el-card>
+      <el-card>
+        <span class="fixed-style" style="display: block">绠℃鍒楄〃</span>
+        <el-table
+            :data="tableListSection"
+            border
+            @row-click="sectionCode"
+            height="100"
+            max-height="100"
+            style="width: 100%">
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.pipesegcode"
+              label="绠℃缂栫爜">
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.startpointnumber"
+              label="璧风偣鎺㈡煡鍙�">
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.endpointnumber"
+              label="缁堢偣鎺㈡煡鍙�">
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.material"
+              label="鏉愯川">
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              prop="properties.embeddingmode"
+              label="鍩嬭鏂瑰紡">
+          </el-table-column>
+          <el-table-column width="40" fixed="right" label="鎿嶄綔">
+            <template slot-scope="scope">
+              <el-button @click="localAdr(scope.row)" type="text" size="small">瀹氫綅</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+        <span class="fixed-style" style="display: block">闄勫睘璁炬柦鍒楄〃</span>
+        <el-table
+            :data="tableDataAffFac"
+            border
+            @row-click="affFacName"
+            height="120"
+            max-height="140"
+            style="width: 100%">
+          <el-table-column
+              show-overflow-tooltip
+              width="150"
+              prop="properties.pipecode"
+              label="绠$嚎缂栧彿">
+          </el-table-column>
+          <el-table-column
+              show-overflow-tooltip
+              width="150"
+              prop="properties.name"
+              label="闄勫睘璁炬柦鍚嶇О">
+          </el-table-column>
+          <el-table-column
+              width="150"
+              show-overflow-tooltip
+              prop="properties.type"
+              label="璁炬柦绫诲瀷">
+          </el-table-column>
+          <el-table-column width="90" fixed="right" label="鎿嶄綔">
+            <template slot-scope="scope">
+              <el-button @click="localAdr(scope.row)" type="text" size="small">瀹氫綅</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </el-card>
     </div>
+    <el-row style="text-align: right;margin: 10px">
+      <el-button type="primary" @click="confirm" size="small">纭</el-button>
+    </el-row>
+  </div>
 </template>
 
 <script>
@@ -152,6 +159,7 @@
 import AjaxUtils from '@utils/AjaxUtils'
 import eventBus from '../../../../eventBus'
 import { WMS_URL } from '../../../../conf/Constants'
+import { publicLocationStore } from './ReportLocation'
 
 export default {
   name: 'ReportLocationSection',
@@ -160,7 +168,8 @@
       form: {
         pipeName: '',
         sectionName: '',
-        affiliatedFacilities: ''
+        affiliatedFacilities: '',
+        affiliatedFacilitiesCode: ''
       },
       // 绠$嚎鏌ヨ鏁版嵁鍒楄〃
       tableList: [],
@@ -196,57 +205,73 @@
         this.tableList = res.features
       }
       this.wfsHelper = new WfsHelper()
-      this.form.pipeName = ''
+      // this.form.pipeName = ''
       this.form.sectionName = ''
       this.form.affiliatedFacilities = ''
+      this.form.affiliatedFacilitiesCode = ''
     },
     // 鐐瑰嚮绠$嚎鍒楄〃 灞曠ず绠℃鍐呭 鍜岄檮灞炶鏂藉唴瀹�
-    async sectionShowClick (val) {
-      console.log(val)
-      // 濡傛灉 SectionAndAffFacTableJudge === true 鏄悳绱㈡暟鎹粨鏋滅殑鍒楄〃 鍙互杩涜 绠℃ 闄勫睘璁炬柦浜や簰 鐐瑰嚮瀹氫綅鏌ヨ缁撴灉 涓嶈繘琛岀偣鍑讳氦浜�
+    sectionShowClick (val) {
+      // console.log(val)
+      // this.SectionAndAffFacTableJudge = true
       if (this.SectionAndAffFacTableJudge === true) {
-        // 绠℃鏌ヨ
-        const sectionNameSearch = val.properties.pipename
-        this.tableListSection = []
-        this.wfsHelper.clearFilter()
-        this.wfsHelper.setTypeName(['sewer:pipesegment'])
-        this.wfsHelper.addLike('pipename', sectionNameSearch)
-        this.wfsHelper.addEquals('pipename', '\'' + sectionNameSearch + '\'')
-        const res = await AjaxUtils.GetDataAsynByUrl(this.wfsHelper.getUrl(), {})
-        // console.log(res)
-        if (res instanceof Object && Object.prototype.hasOwnProperty.call(res, 'features')) {
-          this.tableListSection = res.features
-        }
-        this.wfsHelper = new WfsHelper()
-        // 闄勫睘璁炬柦鏌ヨ
-        this.tableDataAffFac = []
-        const AffFacSearch = val.properties.pipecode
-        console.log(AffFacSearch)
-        this.wfsHelper.clearFilter()
-        this.wfsHelper.setTypeName(['sewer:view_pipeline'])
-        this.wfsHelper.addLike('pipecode', AffFacSearch)
-        // this.wfsHelper.addEquals('type', '\'' + AffFacSearch + '\'')
-        const resAffFac = await AjaxUtils.GetDataAsynByUrl(this.wfsHelper.getUrl(), {})
-        console.log(resAffFac)
-        if (resAffFac instanceof Object && Object.prototype.hasOwnProperty.call(resAffFac, 'features')) {
-          // for (let i = 0; i < resAffFac.features.length; i++) {
-          //   // console.log(resAffFac.features[i])
-          //   this.tableDataAffFac.push(resAffFac.features[i].properties)
-          // }
-          this.tableDataAffFac = resAffFac.features
-        }
-        this.wfsHelper = new WfsHelper()
+        this.searchSection(val)
+        this.searchAffFacData(val)
+      }
+    },
+    // 绠℃鏌ヨ
+    async searchSection (val) {
+      const sectionNameSearch = val.properties.pipename
+      this.tableListSection = []
+      this.wfsHelper.clearFilter()
+      this.wfsHelper.setTypeName(['sewer:pipesegment'])
+      this.wfsHelper.addLike('pipename', sectionNameSearch)
+      this.wfsHelper.addEquals('pipename', '\'' + sectionNameSearch + '\'')
+      const res = await AjaxUtils.GetDataAsynByUrl(this.wfsHelper.getUrl(), {})
+      // console.log(res)
+      if (res instanceof Object && Object.prototype.hasOwnProperty.call(res, 'features')) {
+        this.tableListSection = res.features
+      }
+    },
+    // 闄勫睘璁炬柦鏌ヨ
+    async searchAffFacData (val) {
+      this.tableDataAffFac = []
+      const AffFacSearch = val.properties.pipecode
+      this.wfsHelper.clearFilter()
+      this.wfsHelper.setTypeName(['sewer:view_pipeline'])
+      this.wfsHelper.addLike('pipecode', AffFacSearch)
+      // this.wfsHelper.addEquals('type', '\'' + AffFacSearch + '\'')
+      const resAffFac = await AjaxUtils.GetDataAsynByUrl(this.wfsHelper.getUrl(), {})
+      console.log(resAffFac)
+      if (resAffFac instanceof Object && Object.prototype.hasOwnProperty.call(resAffFac, 'features')) {
+        this.tableDataAffFac = resAffFac.features
+      }
+    },
+    // 鎼滅储鐨勫叕鍏辨柟娉曚紭鍖�
+    async publicSearch (searchVal, searchKeyword, searchTypeName, tableListData) {
+      tableListData = []
+      this.wfsHelper = new WfsHelper()
+      this.wfsHelper.clearFilter()
+      this.wfsHelper.setTypeName(searchTypeName)
+      this.wfsHelper.addLike(searchKeyword, searchVal)
+      this.wfsHelper.addEquals(searchKeyword, '\'' + searchVal + '\'')
+      const res = await AjaxUtils.GetDataAsynByUrl(this.wfsHelper.getUrl(), {})
+      // console.log(res)
+      if (res instanceof Object && Object.prototype.hasOwnProperty.call(res, 'features')) {
+        tableListData = res.features
       }
     },
     // 鐐瑰嚮绠℃鍒楄〃 绠℃缂栫爜浼犻��
     sectionCode (val) {
       // console.log(val)
-      this.form.sectionName = val.properties.pipecode
+      this.form.sectionName = val.properties.pipesegcode
     },
     // 鐐瑰嚮闄勫睘璁炬柦鍒楄〃 绠℃缂栫爜浼犻��
     affFacName (val) {
-      // console.log(val)
+      console.log(val)
+      // this.form.affiliatedFacilities = val.properties.code
       this.form.affiliatedFacilities = val.properties.name
+      this.form.affiliatedFacilitiesCode = val.properties.type
     },
     // 瀹氫綅鍔熻兘
     localAdr (val) {
@@ -258,23 +283,27 @@
     pipeClickLocation () {
       // 璁炬柦涓嶈繘琛� 绠$嚎琛ㄦ牸鏁版嵁鐨勭偣鍑讳氦浜�
       this.SectionAndAffFacTableJudge = false
-      // 鐐瑰嚮鑾峰彇鏁版嵁
-      window.map.on('click', (e) => {
-        // 鐐瑰嚮鍦板浘鍏抽棴寮规
-        window.mapManager.clickDialogSwitch = false
-        // 绠$嚎鐐瑰嚮鏁版嵁
-        this.pipeData(e)
-        // 绠℃鐐瑰嚮鏁版嵁
-        this.sectionData(e)
-        // 闄勫睘璁炬柦鏁版嵁
-        this.affFacData(e)
-        // 鍏抽棴鐐瑰嚮浜嬩欢
-        window.map.off('click')
-      })
+      if (this.SectionAndAffFacTableJudge === false) {
+        // 鐐瑰嚮鑾峰彇鏁版嵁
+        window.map.on('click', (e) => {
+          this.SectionAndAffFacTableJudge = false
+          // 鐐瑰嚮鍦板浘鍏抽棴寮规
+          window.mapManager.clickDialogSwitch = false
+          // 绠$嚎鐐瑰嚮鏁版嵁
+          this.pipeData(e)
+          // 绠℃鐐瑰嚮鏁版嵁
+          this.sectionData(e)
+          // 闄勫睘璁炬柦鏁版嵁
+          this.affFacData(e)
+          // 鍏抽棴鐐瑰嚮浜嬩欢
+          window.map.off('click')
+        })
+      }
       // 鏁版嵁 閲嶆柊鑾峰彇 杩涜缃┖
       this.form.pipeName = ''
       this.form.sectionName = ''
       this.form.affiliatedFacilities = ''
+      this.form.affiliatedFacilitiesCode = ''
       this.tableList = []
       this.tableListSection = []
       this.tableDataAffFac = []
@@ -317,7 +346,7 @@
         BBOX: window.map.getBounds().toBBoxString()
       }, defaultWmsParams)
       AjaxUtils.get4JsonDataByUrl(WMS_URL, wmsParams, (res) => {
-        console.log(res)
+        // console.log(res)
         for (let i = 0; i < res.data.features.length; i++) {
           dataList.push(res.data.features[i])
         }
@@ -327,9 +356,27 @@
     confirm () {
       // console.log('鐐瑰嚮纭畾閫夋嫨瀹屾垚')
       eventBus.$emit('location-setChange', true)
+      // 浜嬩欢涓婃姤 浣嶇疆淇℃伅 瀛樺偍鏁版嵁搴�
+      const data = {
+        ID: '',
+        EventID: '',
+        EventPipeline: this.form.pipeName,
+        EventPipeSeg: this.form.sectionName,
+        EventAffType: this.form.affiliatedFacilitiesCode,
+        EventAffCode: this.form.affiliatedFacilities,
+        EventAffPointNum: '',
+        EventPosX: '',
+        EventPosY: '',
+        AcquisitionPeople: '',
+        AcquisitionDate: ''
+      }
+      // 閫氳繃鏂规硶 瀛樺偍鏁版嵁 杩涜 鏁版嵁搴撳瓨鍌ㄦ暟鎹�
+      publicLocationStore(data)
+      // 鏁版嵁缃┖
       this.form.pipeName = ''
       this.form.sectionName = ''
       this.form.affiliatedFacilities = ''
+      this.form.affiliatedFacilitiesCode = ''
       this.tableList = []
       this.tableListSection = []
       this.tableDataAffFac = []
@@ -340,86 +387,23 @@
 </script>
 
 <style lang="less" scoped>
-    /*/deep/ .el-input {*/
-    /*    width: 0.74353rem;*/
-    /*}*/
 
-    .pipe-line-search {
-        display: flex;
-        align-items: center;
+.pipe-line-search {
+  display: flex;
+  align-items: center;
 
-        .el-button {
-            margin: 0 15px;
-        }
+  .el-button {
+    margin: 0 15px;
+  }
+}
+
+.pipe-table {
+
+  /deep/ .el-card {
+    .el-table {
+      margin: 0.05345rem auto;
     }
+  }
+}
 
-    .pipe-table {
-        /*display: flex;*/
-        /*align-items: center;*/
-        /*justify-content: space-around;*/
-
-        /deep/ .el-card {
-            /*width: 1.39523rem;*/
-            /*max-width: 1.39523rem;*/
-            /*height: 0.9343rem;*/
-            /*max-height: 0.9343rem;*/
-
-            .el-table {
-                margin: 0.05345rem auto;
-            }
-        }
-    }
-
-    .fixed-style {
-        color: @color;
-    }
-
-    /deep/
-    .warnPagination {
-        .btn-quicknext, .btn-quickprev {
-            color: #e4e8f1 !important;
-            background-color: transparent;
-            // border: 1px solid #25AECD;
-            border-left: 1px solid #25AECD;
-            border-bottom: 1px solid #25AECD;
-            border-top: 1px solid #25AECD;
-            color: #e4e8f1;
-        }
-
-        .el-pager li {
-            color: #e4e8f1;
-            background: transparent;
-            // border: 1px solid #25AECD;
-            border-left: 1px solid #25AECD;
-            border-bottom: 1px solid #25AECD;
-            border-top: 1px solid #25AECD;
-        }
-
-        .el-pager li.active {
-            border-color: #25AECD;
-            background-color: rgba(38, 222, 253, 0.3);
-            color: #e4e8f1;
-        }
-
-        .el-pager li:hover {
-            border-color: #25AECD;
-            background-color: rgba(38, 222, 253, 0.3);
-            color: #34e0ff;
-        }
-
-        .btn-prev {
-            background-color: transparent;
-            // border: 1px solid #25AECD;
-            border-left: 1px solid #25AECD;
-            border-bottom: 1px solid #25AECD;
-            border-top: 1px solid #25AECD;
-            color: #e4e8f1;
-        }
-
-        .btn-next {
-            background-color: transparent;
-            border: 1px solid #25AECD;
-            color: #e4e8f1;
-        }
-    }
 </style>

--
Gitblit v1.8.0