From 38bcd6306f20787e394347a34e50fcf80b265fc6 Mon Sep 17 00:00:00 2001
From: 陈泽平 <chenzeping>
Date: 星期一, 31 五月 2021 14:53:35 +0800
Subject: [PATCH] 企业应急-事件上报-事发位置问题修改
---
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