From 18612eb1726e3f0972226201fdad01d6e618cbca Mon Sep 17 00:00:00 2001 From: 陈泽平 <chenzeping> Date: 星期六, 29 五月 2021 17:57:15 +0800 Subject: [PATCH] 企业应急-事件上报-管段定位优化 --- src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue | 141 +++++++++++----------------------------------- 1 files changed, 35 insertions(+), 106 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 ce1d9a1..b7e9d69 100644 --- a/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue +++ b/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSection.vue @@ -258,67 +258,17 @@ pipeClickLocation () { // 璁炬柦涓嶈繘琛� 绠$嚎琛ㄦ牸鏁版嵁鐨勭偣鍑讳氦浜� this.SectionAndAffFacTableJudge = false - // this.tableList = [] // 鐐瑰嚮鑾峰彇鏁版嵁 window.map.on('click', (e) => { + // 鐐瑰嚮鍦板浘鍏抽棴寮规 window.mapManager.clickDialogSwitch = false - window.mapManager.loadWfsDatas(e.latlng).then((res) => { - // for (let i = 0; i < res.features.length; i++) { - // console.log(res.features[i]) - // const ids = res.features[i].id.split('.') - // // console.log(ids[0]) - // if (ids[0] === 'pipeline') { - // this.tableList.push(res.features[i]) - // } else if (ids[0] === 'pipesegment') { - // this.tableListSection.push(res.features[i]) - // } else { - // this.tableDataAffFac.push(res.features[i]) - // // const obj = { - // // properties: { - // // pipecode: res.features[i].properties.code, - // // name: res.features[i].properties.companyname, - // // type: res.features[i].properties.mediumtype - // // } - // // } - // // console.log(obj) - // // this.tableDataAffFac.push(obj) - // // console.log(this.tableDataAffFac) - // } - // } - const size = window.map.getSize() - var point = window.map.latLngToContainerPoint(e.latlng, window.map.getZoom()) - const wmsParams = Object.assign({ - LAYERS: 'sewer:pipeline', - QUERY_LAYERS: 'sewer:pipeline', - WIDTH: size.x, - HEIGHT: size.y, - X: Math.round(point.x), - Y: Math.round(point.y), - BBOX: window.map.getBounds().toBBoxString() - }, { - VERSION: '1.1.1', - SERVICE: 'WMS', - REQUEST: 'GetFeatureInfo', - // bbox: bbox, - FORMAT: 'image/png', - INFO_FORMAT: 'application/json', - TRANSPARENT: true, - FEATURE_COUNT: 50, - SRS: 'EPSG:4326', - EXCEPTIONS: 'application/vnd.ogc.se_inimage' - }) - AjaxUtils.get4JsonDataByUrl(WMS_URL, wmsParams, (res) => { - // console.log(res) - for (let i = 0; i < res.data.features.length; i++) { - // console.log(res.data.features[i]) - this.tableList.push(res.data.features[i]) - } - }) - // 绠℃ - this.sectionData(e) - // 闄勫睘璁炬柦 - this.affFacData(e) - }) + // 绠$嚎鐐瑰嚮鏁版嵁 + this.pipeData(e) + // 绠℃鐐瑰嚮鏁版嵁 + this.sectionData(e) + // 闄勫睘璁炬柦鏁版嵁 + this.affFacData(e) + // 鍏抽棴鐐瑰嚮浜嬩欢 window.map.off('click') }) // 鏁版嵁 閲嶆柊鑾峰彇 杩涜缃┖ @@ -329,68 +279,47 @@ this.tableListSection = [] this.tableDataAffFac = [] }, - // 鐐瑰嚮瀹氫綅 鎿﹀绠℃ - sectionData (e) { - const size = window.map.getSize() - var point = window.map.latLngToContainerPoint(e.latlng, window.map.getZoom()) - const wmsParams = Object.assign({ - LAYERS: 'sewer:pipesegment', - QUERY_LAYERS: 'sewer:pipesegment', - WIDTH: size.x, - HEIGHT: size.y, - X: Math.round(point.x), - Y: Math.round(point.y), - BBOX: window.map.getBounds().toBBoxString() - }, { - VERSION: '1.1.1', - SERVICE: 'WMS', - REQUEST: 'GetFeatureInfo', - // bbox: bbox, - FORMAT: 'image/png', - INFO_FORMAT: 'application/json', - TRANSPARENT: true, - FEATURE_COUNT: 50, - SRS: 'EPSG:4326', - EXCEPTIONS: 'application/vnd.ogc.se_inimage' - }) - AjaxUtils.get4JsonDataByUrl(WMS_URL, wmsParams, (res) => { - // console.log(res) - for (let i = 0; i < res.data.features.length; i++) { - this.tableListSection.push(res.data.features[i]) - } - }) + // 鐐瑰嚮瀹氫綅鍖哄煙 鎼滃绠$嚎鏁版嵁 + pipeData (e) { + this.publicWay(e, 'sewer:pipeline', 'sewer:pipeline', this.tableList) }, - // 鐐瑰嚮瀹氫綅 鎿﹀闄勫睘璁炬柦 + // 鐐瑰嚮瀹氫綅鍖哄煙 鎼滃绠℃鏁版嵁 + sectionData (e) { + this.publicWay(e, 'sewer:pipesegment', 'sewer:pipesegment', this.tableListSection) + }, + // 鐐瑰嚮瀹氫綅鍖哄煙 鎼滃闄勫睘璁炬柦鏁版嵁 affFacData (e) { - const size = window.map.getSize() - var point = window.map.latLngToContainerPoint(e.latlng, window.map.getZoom()) - const wmsParams = Object.assign({ - LAYERS: 'sewer:view_pipeline', - QUERY_LAYERS: 'sewer:view_pipeline', - // LAYERS: 'pipeline_fs', - // QUERY_LAYERS: 'pipeline_fs', - cql_filter: 'pipecode <> \'\'', - WIDTH: size.x, - HEIGHT: size.y, - X: Math.round(point.x), - Y: Math.round(point.y), - BBOX: window.map.getBounds().toBBoxString() - }, { + this.publicWay(e, 'sewer:view_pipeline', 'sewer:view_pipeline', this.tableDataAffFac, 'pipecode <> \'\'') + }, + // 鐐瑰嚮鎸夐挳瀹氫綅 鐨勫叕鍏变簨浠� + publicWay (e, layer, queryLayer, dataList, cqlfilter) { + const defaultWmsParams = { VERSION: '1.1.1', SERVICE: 'WMS', REQUEST: 'GetFeatureInfo', - // bbox: bbox, FORMAT: 'image/png', INFO_FORMAT: 'application/json', TRANSPARENT: true, FEATURE_COUNT: 50, SRS: 'EPSG:4326', + cql_filter: cqlfilter, EXCEPTIONS: 'application/vnd.ogc.se_inimage' - }) + } + const size = window.map.getSize() + const point = window.map.latLngToContainerPoint(e.latlng, window.map.getZoom()) + const wmsParams = Object.assign({ + LAYERS: layer, + QUERY_LAYERS: queryLayer, + WIDTH: size.x, + HEIGHT: size.y, + X: Math.round(point.x), + Y: Math.round(point.y), + BBOX: window.map.getBounds().toBBoxString() + }, defaultWmsParams) AjaxUtils.get4JsonDataByUrl(WMS_URL, wmsParams, (res) => { console.log(res) for (let i = 0; i < res.data.features.length; i++) { - this.tableDataAffFac.push(res.data.features[i]) + dataList.push(res.data.features[i]) } }) }, -- Gitblit v1.8.0