From 275ab635e9bb15e083462abf15070d601b577e62 Mon Sep 17 00:00:00 2001 From: 徐旺旺 <11530253@qq.com> Date: 星期四, 13 五月 2021 14:15:21 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/components/LayerController/logic/SourcesPollution.js | 22 ++ src/components/panel/RightSearchPanel.vue | 1 src/components/LayerController/event/EventHandler.js | 1 src/components/LayerController/logic/WasteGas.js | 16 - src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ReportPopup.vue | 206 +++++++++++----------- src/components/LayerController/service/AnimalService.js | 13 + src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/EventQuery.vue | 16 + src/conf/LayerTopic.js | 3 src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ResourcesQuery.vue | 13 src/api/mapApi.js | 3 src/views/MapTemplate.vue | 5 src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue | 13 src/api/mapUrl.js | 3 src/components/LayerController/modules/LcServiceLayer.vue | 5 src/utils/dragBoxes.js | 1 src/components/LayerController/service/WmsLayerService.js | 2 src/components/BaseNav/pipeline/AffiliatedFacilities.vue | 11 src/conf/Constants.js | 3 src/conf/MapConfig.js | 8 public/static/SourcesPoll.json | 24 ++ src/components/LayerController/logic/WasteWater.js | 12 - src/components/LayerController/logic/WasteSolid.js | 12 - src/components/emergency/index.vue | 89 +++++++++ src/conf/layers/LayerEntEmer.js | 26 ++ 24 files changed, 339 insertions(+), 169 deletions(-) diff --git a/public/static/SourcesPoll.json b/public/static/SourcesPoll.json new file mode 100644 index 0000000..e3eab29 --- /dev/null +++ b/public/static/SourcesPoll.json @@ -0,0 +1,24 @@ +{ + "Result": { + "IsSuccess": 1, + "ErrorMsg": "", + "DataInfo": [ + [ + 39.90751504898071, + 116.38927817344666 + ], + [ + 39.9088454246521, + 116.38689637184143 + ], + [ + 39.90931749343872, + 116.39344096183777 + ], + [ + 39.90489721298218, + 116.39116644859314 + ] + ] + } +} \ No newline at end of file diff --git a/src/api/mapApi.js b/src/api/mapApi.js index 58df7b6..9d6114c 100644 --- a/src/api/mapApi.js +++ b/src/api/mapApi.js @@ -85,5 +85,8 @@ }, getCrossSection (data) { return axios.get(mapUrl.getCrossSection, data) + }, + getSourcesPoll (data) { + return axios.get(mapUrl.getSourcesPoll, data) } } diff --git a/src/api/mapUrl.js b/src/api/mapUrl.js index bb12e82..b29d8aa 100644 --- a/src/api/mapUrl.js +++ b/src/api/mapUrl.js @@ -35,3 +35,6 @@ export const findFlowDirection = $HOSTANALYSE + '/findFlowDirection' export const findLeakages = $HOSTANALYSE + '/findLeakages' export const getCrossSection = $HOSTANALYSE + '/getCrossSection' + +// 姹℃煋婧� +export const getSourcesPoll = 'http://localhost:8080/static/SourcesPoll.json' diff --git a/src/components/BaseNav/pipeline/AffiliatedFacilities.vue b/src/components/BaseNav/pipeline/AffiliatedFacilities.vue index b38b54c..c2e2514 100644 --- a/src/components/BaseNav/pipeline/AffiliatedFacilities.vue +++ b/src/components/BaseNav/pipeline/AffiliatedFacilities.vue @@ -15,8 +15,8 @@ <div class="el-select el-select--mini">8888</div> </el-form-item> --> <el-form-item label="璁炬柦绫诲瀷锛�" size="mini" class="search-panel-item"> - <el-select style="width: 100%" v-model="form.dataType" @change="handleDataType" :popper-class="'select-down'"> - <el-option v-for="(item,index) in classification" :key="index" :label="item.name" :value="item"></el-option> + <el-select style="width: 100%" v-model="dataType" @change="handleDataType" :popper-class="'select-down'"> + <el-option v-for="(item,index) in classification" :key="index" :label="item.name" :value="item.name"></el-option> </el-select> </el-form-item> <div class="rightButtonSearch"> @@ -62,6 +62,7 @@ areaVal: '', keyword: '' }, + dataType: '', classification: LayerFsss.layers, list: [], activeNum: -1 @@ -94,17 +95,17 @@ window.layerFactory.flyByFeature(val1, val.code) }, handleDataType () { - + console.log(this.dataType) }, async handleSearch () { var wfsHelper = new WfsHelper() // todo 鐜板湪绠$綉杩樻病鍖哄垎寮�绫诲瀷锛屽悗闈㈡敼 - wfsHelper.addTypeName(this.form.dataType.sname) + wfsHelper.addTypeName(this.dataType) wfsHelper.addLike('name', this.form.keyword) // const _this = this const res = await AjaxUtils.GetDataAsynByUrl(wfsHelper.getUrl(), {}) - console.log(res) + // console.log(res) if (res instanceof Object && Object.prototype.hasOwnProperty.call(res, 'features')) { const datas = res.features diff --git a/src/components/LayerController/event/EventHandler.js b/src/components/LayerController/event/EventHandler.js index 7ff6a58..2ab3cba 100644 --- a/src/components/LayerController/event/EventHandler.js +++ b/src/components/LayerController/event/EventHandler.js @@ -5,6 +5,7 @@ this.mapClickForLayers = {} window.map.on('click', (e) => { + console.log(e) for (var k in this.mapClickForLayers) { const func = this.mapClickForLayers[k] console.log(func) diff --git a/src/components/LayerController/logic/SourcesPollution.js b/src/components/LayerController/logic/SourcesPollution.js new file mode 100644 index 0000000..a701f1c --- /dev/null +++ b/src/components/LayerController/logic/SourcesPollution.js @@ -0,0 +1,22 @@ +/** + * 姹℃煋婧� + * */ + +// 璇锋眰鎺ュ彛鏁版嵁 +const mapApi = require('../../../api/mapApi').default +// 浣跨敤灏佽鏂规硶 +const AnimalService = require('../service/AnimalService').default + +module.exports = function () { + this.init = async (layer, L) => { + this.animalService = new AnimalService({ + L: L, + layer: layer + }) + const result = await mapApi.getSourcesPoll() + console.log(result) + const resultData = result.Result.DataInfo || [] + const polygon = L.polygon(resultData, { color: 'yellow' }) + polygon.addTo(layer) + } +} diff --git a/src/components/LayerController/logic/WasteGas.js b/src/components/LayerController/logic/WasteGas.js index 889bcc5..2fe606c 100644 --- a/src/components/LayerController/logic/WasteGas.js +++ b/src/components/LayerController/logic/WasteGas.js @@ -21,7 +21,10 @@ */ this.init = async (layer, L) => { // console.log(WasteGasChats) - this.animalService = new AnimalService({ L: L, layer: layer }) + this.animalService = new AnimalService({ + L: L, + layer: layer + }) const res = await mapApi.getWasteGas() // console.log(res) const data = res.Result.DataInfo || {} @@ -53,7 +56,7 @@ } this.bindTooltip = (layer) => { - return layer.options.test.Name + return '<div class="company-bindTooltip-hover"><h3>澶╂触鐭冲寲</h3></div>' + layer.options.test.Name } this.clickListener = async (e) => { @@ -71,7 +74,7 @@ }, title: title // 鏍囬 }) - this.setPanTo(e.latlng, 150) + this.animalService.setPanTo(e.latlng, 150) } // 涓嶅悓绫诲瀷鍥剧墖鍔犺浇 this.differentTypes = (ContrLevel) => { @@ -88,12 +91,5 @@ // effectOfChange = ImgGray // } return effectOfChange - } - this.setPanTo = (pos, value) => { - var position = pos - position = window.map.latLngToLayerPoint(position) - position.y += value - position = window.map.layerPointToLatLng(position) - window.map.flyTo(position) } } diff --git a/src/components/LayerController/logic/WasteSolid.js b/src/components/LayerController/logic/WasteSolid.js index bba786a..28b0938 100644 --- a/src/components/LayerController/logic/WasteSolid.js +++ b/src/components/LayerController/logic/WasteSolid.js @@ -46,6 +46,7 @@ } this.bindTooltip = (layer) => { + // '<div class="company-bindTooltip-hover"><h3>澶╂触鐭冲寲</h3></div>' + return layer.options.totransferData.Name } @@ -65,7 +66,7 @@ title: title // 鏍囬 }) /* flyTo()寮瑰嚭妗嗗钩绉讳簨浠� */ - this.setPanTo(e.latlng, 300) + this.animalService.setPanTo(e.latlng, 300) } // 涓嶅悓绫诲瀷鍥剧墖灏佽 @@ -77,14 +78,5 @@ effectOfChange = setting } return effectOfChange - } - - // flayTo() 寮规鐨勫彲婊戝姩浜嬩欢 - this.setPanTo = (pos, value) => { - var position = pos - position = window.map.latLngToLayerPoint(position) - position.y += value - position = window.map.layerPointToLatLng(position) - window.map.flyTo(position) } } diff --git a/src/components/LayerController/logic/WasteWater.js b/src/components/LayerController/logic/WasteWater.js index 0305114..3d9587e 100644 --- a/src/components/LayerController/logic/WasteWater.js +++ b/src/components/LayerController/logic/WasteWater.js @@ -50,7 +50,7 @@ // 鍒嗗壊绾�------------------------------------------------------------------------------- this.bindTooltip = (layer) => { - return layer.options.totransferData.Name + return '<div class="company-bindTooltip-hover"><h3>澶╂触鐭冲寲</h3></div>' + layer.options.totransferData.Name } this.clickListener = (e) => { @@ -70,7 +70,7 @@ }, title: title // 鏍囬 }) - this.setPanTo(e.latlng, 150) + this.animalService.setPanTo(e.latlng, 150) } this.requestWasteWaterData = async (e) => { // 鍩烘湰淇℃伅 鍜� 璇︾粏淇℃伅 灞曠ず鏁版嵁鎵�闇�鍙傛暟 @@ -132,13 +132,5 @@ break } return testChange - } - // flayTo() 寮规鐨勫彲婊戝姩浜嬩欢 - this.setPanTo = (pos, value) => { - var position = pos - position = window.map.latLngToLayerPoint(position) - position.y += value - position = window.map.layerPointToLatLng(position) - window.map.flyTo(position) } } diff --git a/src/components/LayerController/modules/LcServiceLayer.vue b/src/components/LayerController/modules/LcServiceLayer.vue index 255725f..46a7391 100644 --- a/src/components/LayerController/modules/LcServiceLayer.vue +++ b/src/components/LayerController/modules/LcServiceLayer.vue @@ -53,9 +53,14 @@ item.checked = !item.checked this.toggleLayer(item) this.swLayers(item.layers, item.checked) + // 鍒ゆ柇鏄惁鏄偣鍑� 涓撻鍥惧眰 涓嬬殑瀛愯妭鐐� if (v === '涓撻鍥惧眰') { bus.$emit('changeSearchBar', item) } + // 鍒ゆ柇鏄惁鐐瑰嚮鐨� 涓�绾т笓棰樺浘灞� + if (item.name === '涓撻鍥惧眰') { + console.log(item, '88888888888888') + } this.serviceLayers.forEach(function (item1, index1) { if (item1.layers) { diff --git a/src/components/LayerController/service/AnimalService.js b/src/components/LayerController/service/AnimalService.js index 687b6e7..3de6468 100644 --- a/src/components/LayerController/service/AnimalService.js +++ b/src/components/LayerController/service/AnimalService.js @@ -33,6 +33,19 @@ } }, 1000) } + + /** + * 璁剧疆寮圭獥骞崇Щ浣嶇疆 + * @param pos + * @param value + */ + setPanTo = (pos, value) => { + var position = pos + position = this.layer.latLngToLayerPoint(position) + position.y += value + position = this.layer.layerPointToLatLng(position) + this.layer.flyTo(position) + } } export default AnimalService diff --git a/src/components/LayerController/service/WmsLayerService.js b/src/components/LayerController/service/WmsLayerService.js index 999783e..0094a71 100644 --- a/src/components/LayerController/service/WmsLayerService.js +++ b/src/components/LayerController/service/WmsLayerService.js @@ -85,7 +85,7 @@ clickListener () { window.map.on('click', (e) => { - console.log(e) + // console.log(e) this.featureGroup.clearLayers() var point = this.map.latLngToContainerPoint(e.latlng, this.map.getZoom()) var size = this.map.getSize() diff --git a/src/components/emergency/index.vue b/src/components/emergency/index.vue new file mode 100644 index 0000000..6bc4374 --- /dev/null +++ b/src/components/emergency/index.vue @@ -0,0 +1,89 @@ +<template> + <el-dialog class="emergency" :visible.sync="showSchedule" :title="tit" :modal="false" v-dialogDrag > + <!-- 鍩虹淇℃伅 --> + <div class="basicInformation"> + <div> + <h3 class="panel-title">婕旂粌淇℃伅</h3> + <ul> + <li>浜嬩欢绫诲瀷锛�</li> + <li>浜嬩欢浣嶇疆锛�</li> + <li>浣嶇疆鎻忚堪锛�</li> + <li>浜嬩欢鏃堕棿锛�</li> + <li>闄勪欢锛�<a href="javascript:;">闄勪欢1</a><a href="javascript:;">闄勪欢1</a></li> + </ul> + <h3 class="panel-title">棰勬鍖归厤</h3> + <el-table :data="tableData" style="width: 100%"> + <el-table-column prop="name" label="棰勬鍚嶇О"></el-table-column> + <el-table-column prop="define" label="棰勬瀹氫箟"></el-table-column> + <el-table-column prop="hierarchy" label="棰勬灞傜骇"></el-table-column> + <el-table-column prop="classification" label="棰勬鍒嗙被"></el-table-column> + <el-table-column label="闄勪欢"> + <template> + <a href="javascript:;">棰勬</a> + </template> + </el-table-column> + </el-table> + </div> + <div> + <div class="panel-title">鎼滅储</div> + <div> + <ul> + <li> + <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">鍏ㄩ��</el-checkbox> + <div style="margin: 15px 0;"></div> + <el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange"> + <el-checkbox v-for="city in cities" :label="city" :key="city">{{city}}</el-checkbox> + </el-checkbox-group> + </li> + </ul> + </div> + </div> + </div> + </el-dialog> +</template> + +<script> +const cityOptions = ['涓婃捣', '鍖椾含', '骞垮窞', '娣卞湷'] +export default { + name: 'index', + data () { + return { + tit: '浜嬩欢澶勭疆', + showSchedule: true, + tableData: [ + { name: '棰勬A', define: '缁煎悎棰勬', hierarchy: '浜岀骇鍗曚綅', classification: '鐜繚' }, + { name: '棰勬B', define: '涓撻」棰勬', hierarchy: '鐩村睘浼佷笟', classification: '鐜繚' }, + { name: '棰勬C', define: '鐜板満澶勭疆棰勬', hierarchy: '鍩哄眰鍗曚綅', classification: '鐢熶骇' }, + { name: '棰勬D', define: '鐜板満澶勭疆棰勬', hierarchy: '鍩哄眰鍗曚綅', classification: '鐢熶骇' }, + { name: '棰勬E', define: '鐜板満澶勭疆棰勬', hierarchy: '鍩哄眰鍗曚綅', classification: '鐢熶骇' } + ], + checkAll: false, + checkedCities: ['涓婃捣', '鍖椾含'], + cities: cityOptions, + isIndeterminate: true + } + }, + methods: { + handleCheckAllChange (val) { + this.checkedCities = val ? cityOptions : [] + this.isIndeterminate = false + }, + handleCheckedCitiesChange (value) { + const checkedCount = value.length + this.checkAll = checkedCount === this.cities.length + this.isIndeterminate = checkedCount > 0 && checkedCount < this.cities.length + } + } +} +</script> + +<style scoped lang="less"> +.emergency{ + /deep/ .el-dialog{ + width: 750px; + } + .basicInformation{ + display: flex; + } +} +</style> diff --git a/src/components/panel/RightSearchPanel.vue b/src/components/panel/RightSearchPanel.vue index 0f7114d..fd8749e 100644 --- a/src/components/panel/RightSearchPanel.vue +++ b/src/components/panel/RightSearchPanel.vue @@ -86,7 +86,6 @@ hbVisible: false, pkVisible: false, toggleMonitorStyle: 'right:0px', - title: '姹¢洦姘寸缃�', isCollapse: true, selectGroup: false diff --git a/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/EventQuery.vue b/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/EventQuery.vue index 9967bb6..08e502c 100644 --- a/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/EventQuery.vue +++ b/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/EventQuery.vue @@ -86,7 +86,9 @@ </template> <script> -import { LayerEntEmer } from '../../../../../conf/layers/LayerEntEmer' +// import { LayerEntEmer } from '../../../../../conf/layers/LayerEntEmer' + +import ReportPopup from './ReportPopup' export default { name: 'EventQuery', @@ -97,7 +99,7 @@ { name: '閲戦櫟鐭冲寲' }, { name: '鍗椾含鍖栧' } ], - subItems: LayerEntEmer.layers, + subItems: ['浜嬪墠闃舵', '瀹℃壒闃舵', '浜嬩欢瀹岀粨'], form: { pipelineType: '', dataType: '', @@ -128,6 +130,16 @@ }, btnAffiliatedFacilities () { console.log('item') + window.$layer.open({ + content: { + content: ReportPopup, // 缁勪欢 + parent: this, // 鐖剁粍浠� + data: { // 浼犻�掔殑鍙傛暟 + // storagePlaceId: e.layer.options.totransferData.StoragePlaceId + } + } + // title: 'title' // 鏍囬 + }) } } } diff --git a/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ReportPopup.vue b/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ReportPopup.vue index 018817d..17e97de 100644 --- a/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ReportPopup.vue +++ b/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ReportPopup.vue @@ -1,107 +1,107 @@ <template> - <div class="report-popup map-background" v-drag v-show="!flags"> - <div class="public-bounced-title panel-title"> - <span>涓婃姤浜嬩欢</span> - <i class="el-icon-circle-close" @click="closePopup"></i> - </div> - <div class="report-content"> - <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="search-form"> - <el-form-item label="浜嬩欢鍚嶇О" prop="nameEvent" class="input-event-name"> - <el-input v-model="ruleForm.nameEvent" placeholder="灏嗕簨浠跺懡鍚�"></el-input> - </el-form-item> - <el-form-item label="浜嬩欢绫诲瀷" prop="eventType"> - <el-radio-group v-model="ruleForm.eventType"> - <el-radio v-for="(item,index) in ruleForm.eventTypeList" :label="item.value" :key="index"> - <span>{{ item.name }}</span> - </el-radio> - </el-radio-group> - </el-form-item> - <el-form-item label="浜嬩欢绛夌骇" prop="eventLevel"> - <el-radio-group v-model="ruleForm.eventLevel"> - <el-radio v-for="(item,index) in ruleForm.eventLevelList" :label="item.value" :key="index"> - <span>{{ item.name }}</span> - </el-radio> - </el-radio-group> - </el-form-item> - <el-row> - <el-col :span="12"> - <el-form-item label="浜嬪彂鍗曚綅" prop="region"> - <el-select v-model="ruleForm.region" placeholder="璇烽�夋嫨娲诲姩鍖哄煙"> - <el-option label="鍗曚綅浣嶇疆1" value="shanghai"></el-option> - <el-option label="鍗曚綅浣嶇疆2" value="beijing"></el-option> - </el-select> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="浜嬪彂鏃堕棿" prop="region" class="search-panel-item"> - <el-date-picker - v-model="ruleForm.atTime" - type="datetime" - placeholder="閫夋嫨鏃ユ湡鏃堕棿"> - </el-date-picker> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="12"> - <el-form-item label="浜嬪彂浣嶇疆" prop="region" class="search-panel-item"> - <el-input v-model="ruleForm.name" class="report-input"></el-input> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="浣嶇疆鎻忚堪" prop="name"> - <el-input v-model="ruleForm.name" class="report-input"></el-input> - </el-form-item> - </el-col> - </el-row> - <el-row> - <el-col :span="12"> - <el-form-item label="绠$嚎鍚嶇О" prop="region" class="search-panel-item"> - <el-input v-model="ruleForm.name" class="report-input"></el-input> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="绠$嚎绫诲瀷" prop="name"> - <label for="">鑷姩甯﹀嚭涓嶅彲淇敼</label> - </el-form-item> - </el-col> - </el-row> - <el-form-item> - <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" - :file-list="fileList"> - <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button> - </el-upload> - </el-form-item> - <el-form-item label="娑堟伅鎺ㄩ��" prop="beingPush"> - <el-radio-group v-model="ruleForm.beingPush"> - <el-radio v-for="(item,index) in ruleForm.beingPushList" :label="item.value" :key="index"> - <span>{{ item.name }}</span> - </el-radio> - </el-radio-group> - </el-form-item> - <div v-show="wayTo"> - <el-form-item label="浜嬩欢鎻忚堪" prop="desc"> - <el-input type="textarea" v-model="ruleForm.desc"></el-input> + <!-- <div class="public-bounced map-background">--> + <!-- <div class="public-bounced-title panel-title">--> + <!-- <span>涓婃姤浜嬩欢</span>--> + <!-- <i class="el-icon-circle-close" @click="closePopup"></i>--> + <!-- </div>--> + <div class="public-bounced-content"> + <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="search-form"> + <el-form-item label="浜嬩欢鍚嶇О" prop="nameEvent" class="input-event-name"> + <el-input v-model="ruleForm.nameEvent" placeholder="灏嗕簨浠跺懡鍚�"></el-input> + </el-form-item> + <el-form-item label="浜嬩欢绫诲瀷" prop="eventType"> + <el-radio-group v-model="ruleForm.eventType"> + <el-radio v-for="(item,index) in ruleForm.eventTypeList" :label="item.value" :key="index"> + <span>{{ item.name }}</span> + </el-radio> + </el-radio-group> + </el-form-item> + <el-form-item label="浜嬩欢绛夌骇" prop="eventLevel"> + <el-radio-group v-model="ruleForm.eventLevel"> + <el-radio v-for="(item,index) in ruleForm.eventLevelList" :label="item.value" :key="index"> + <span>{{ item.name }}</span> + </el-radio> + </el-radio-group> + </el-form-item> + <el-row> + <el-col :span="12"> + <el-form-item label="浜嬪彂鍗曚綅" prop="region"> + <el-select v-model="ruleForm.region" placeholder="璇烽�夋嫨娲诲姩鍖哄煙"> + <el-option label="鍗曚綅浣嶇疆1" value="shanghai"></el-option> + <el-option label="鍗曚綅浣嶇疆2" value="beijing"></el-option> + </el-select> </el-form-item> - <el-form-item label="鎺ユ敹浜哄憳" prop="desc"> - <el-input type="textarea" v-model="ruleForm.desc"></el-input> + </el-col> + <el-col :span="12"> + <el-form-item label="浜嬪彂鏃堕棿" prop="region" class="search-panel-item"> + <el-date-picker + v-model="ruleForm.atTime" + type="datetime" + placeholder="閫夋嫨鏃ユ湡鏃堕棿"> + </el-date-picker> </el-form-item> - </div> - <el-form-item> - <el-button type="primary" @click="submitForm('ruleForm')">纭</el-button> - <el-button @click="resetForm('ruleForm')">鍙栨秷</el-button> + </el-col> + </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="浜嬪彂浣嶇疆" prop="region" class="search-panel-item"> + <el-input v-model="ruleForm.name" class="report-input"></el-input> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="浣嶇疆鎻忚堪" prop="name"> + <el-input v-model="ruleForm.name" class="report-input"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="绠$嚎鍚嶇О" prop="region" class="search-panel-item"> + <el-input v-model="ruleForm.name" class="report-input"></el-input> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="绠$嚎绫诲瀷" prop="name"> + <label>鑷姩甯﹀嚭涓嶅彲淇敼</label> + </el-form-item> + </el-col> + </el-row> + <el-form-item> + <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" + :file-list="fileList"> + <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button> + </el-upload> + </el-form-item> + <el-form-item label="娑堟伅鎺ㄩ��" prop="beingPush"> + <el-radio-group v-model="ruleForm.beingPush"> + <el-radio v-for="(item,index) in ruleForm.beingPushList" :label="item.value" :key="index"> + <span>{{ item.name }}</span> + </el-radio> + </el-radio-group> + </el-form-item> + <div v-show="wayTo"> + <el-form-item label="浜嬩欢鎻忚堪" prop="desc"> + <el-input type="textarea" v-model="ruleForm.desc"></el-input> </el-form-item> - </el-form> - </div> + <el-form-item label="鎺ユ敹浜哄憳" prop="desc"> + <el-input type="textarea" v-model="ruleForm.desc"></el-input> + </el-form-item> + </div> + <el-form-item> + <el-button type="primary" @click="submitForm('ruleForm')">纭</el-button> + <el-button @click="resetForm('ruleForm')">鍙栨秷</el-button> + </el-form-item> + </el-form> </div> + <!-- </div>--> </template> <script> @@ -109,7 +109,6 @@ export default { name: 'ReportPopup', - props: ['flags'], data () { return { flag: false, @@ -232,12 +231,11 @@ </script> <style lang="less" scoped> - .report-popup { - width: 35%; - z-index: 999; + .public-bounced { + z-index: 2000; position: absolute; top: 15%; - left: 35%; + left: 20%; } /deep/ input { diff --git a/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ResourcesQuery.vue b/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ResourcesQuery.vue index e57c4d2..687a39e 100644 --- a/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ResourcesQuery.vue +++ b/src/components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ResourcesQuery.vue @@ -69,19 +69,18 @@ </div> </div> </el-scrollbar> - <ReportPopup :flags="flag"></ReportPopup> </div> </template> <script> import { LayerEntEmer } from '../../../../../conf/layers/LayerEntEmer' -import ReportPopup from './ReportPopup' +// import ReportPopup from './ReportPopup' export default { name: 'ResourcesQuery', - components: { - ReportPopup - }, + // components: { + // ReportPopup + // }, data () { return { form: { @@ -96,14 +95,12 @@ }, items: [LayerEntEmer], subItems: LayerEntEmer.layers, - searchDataDisplay: [], - flag: false + searchDataDisplay: [] } }, methods: { showthePopup () { console.log('item') - this.flag = !this.flag }, handlePipelineType () { console.log('item') diff --git a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue index d7d9af9..e85728c 100644 --- a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue +++ b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue @@ -4,12 +4,12 @@ <!--<el-card>--> <el-tabs v-model="activeName" type="border-card" @tab-click="handleClick"> <el-tab-pane label="杩為�氭��" name="first"> - <div> + <el-row> <el-button type="primary" @click="linkClickStart" size="mini" title="鍦板浘涓婄偣鍑婚�夋嫨闇�瑕佽繘琛岃繛閫氬垎鏋愮殑绠℃">璧峰绠℃</el-button> <el-button type="primary" @click="linkClickEnd" size="mini" title="鍦板浘涓婄偣鍑讳笌鎵�閫夌娈佃繛閫氱娈�">缁撴潫绠℃</el-button> <el-button type="primary" @click="linkQuery" size="mini" title="鏍规嵁璧峰銆佺粨鏉熺娈佃繘琛岃繛閫氭�у垎鏋�">杩為�氭�у垎鏋�</el-button> <el-button type="primary" @click="handleClick" size="mini" title="鏍规嵁璧峰銆佺粨鏉熺娈佃繘琛岃繛閫氭�у垎鏋�">娓呴櫎</el-button> - </div> + </el-row> <!-- <el-scrollbar style="height:450px">--> <!-- <el-card shadow="hover">--> <span class="fixed-style">璧峰绠℃</span> @@ -18,7 +18,7 @@ <el-table-column :show-overflow-tooltip="true" sortable width="100" prop="pipecode" label="绠℃鍚嶇О"></el-table-column> <el-table-column sortable width="100" prop="material" label="璧风偣缂栧彿"></el-table-column> <el-table-column sortable width="100" prop="material" label="缁堢偣缂栧彿"></el-table-column> - <el-table-column fixed="right" class-name="fixed-table" label="鎿嶄綔" width="40"> + <el-table-column width="40" fixed="right" class-name="fixed-table" label="鎿嶄綔"> <template slot-scope="scope"> <el-button @click="linkSelectStart(scope.row)" type="text" size="small">閫夋嫨</el-button> </template> @@ -37,7 +37,7 @@ </el-table-column> </el-table> <span class="fixed-style">鍒嗘瀽缁撴灉:<span style="color: red;margin-left: 15px">{{ currentLinkIsTrue }}</span></span> - <el-table class="tableBox" highlight-current-row max-height="200" :data="tableDataLinkResult" @row-click="linkResultSelect" style="width: 100%" size="mini"> + <el-table class="tableBox" highlight-current-row max-height="200" :data="tableDataLinkResult" style="width: 100%" size="mini"> <el-table-column prop="material" label="绠℃绫诲瀷"></el-table-column> <el-table-column :show-overflow-tooltip="true" sortable width="100" prop="pipecode" label="绠℃鍚嶇О"></el-table-column> <el-table-column sortable width="100" prop="material" label="璧风偣缂栧彿"></el-table-column> @@ -261,7 +261,7 @@ } // 鏍规嵁鍙傛暟璇锋眰鎺ュ彛鏁版嵁 const res = await mapApi.findPipelineByClickPoint(param) - console.log(res.pipesegcode) + console.log(res) if (this.activeName === 'first') { if (this.linkType === 1) { this.tableDataLinkStart = res.data @@ -367,7 +367,7 @@ startLineID: this.currentSelectStart.pipesegcode, endLineID: this.currentSelectEnd.pipesegcode } - // console.log(param) + console.log(param) // 璇锋眰鎺ュ彛鍜屾暟鎹� const res = await mapApi.findConnectedPipelines(param) // console.log(res) @@ -823,6 +823,7 @@ } /deep/ .fixed-style { + /*margin: 15px;*/ font-size: 12px; display: inline-block; color: #00fff6; diff --git a/src/conf/Constants.js b/src/conf/Constants.js index 867a58c..1eb2734 100644 --- a/src/conf/Constants.js +++ b/src/conf/Constants.js @@ -18,7 +18,8 @@ wasteWaterPfk: 'WasteWater.js', wasteSolidCcd: 'WasteSolid.js', sewersAreaGs: 'Company.js', - pipesegment: 'PipeLineAnimal.js' + pipesegment: 'PipeLineAnimal.js', + pollutionSources: 'SourcesPollution.js' } export const STYLES = { diff --git a/src/conf/LayerTopic.js b/src/conf/LayerTopic.js index e27ab87..ef7ca3d 100644 --- a/src/conf/LayerTopic.js +++ b/src/conf/LayerTopic.js @@ -12,6 +12,7 @@ import { LayerArea } from './layers/LayerArea' import { LayerVideo } from './layers/LayerVideo' import { LayerPk } from './layers/LayerPk' +import { LayerEntEmer } from './layers/LayerEntEmer' export const LayerTopic = { code: 'sewersTopic', @@ -19,5 +20,5 @@ checked: false, isShow: true, type: 0, - layers: [LayerPollutionSources, LayerWasteWater, LayerWasteGas, LayerWasteSolid, LayerAirQuality, LayerEnvRisk, LayerSoilGroundWater, LayerPipeLines, LayerPk, LayerVideo, LayerArea] + layers: [LayerPollutionSources, LayerWasteWater, LayerWasteGas, LayerWasteSolid, LayerAirQuality, LayerEnvRisk, LayerSoilGroundWater, LayerPipeLines, LayerPk, LayerVideo, LayerArea, LayerEntEmer] } diff --git a/src/conf/MapConfig.js b/src/conf/MapConfig.js index 8d591ea..9004cc8 100644 --- a/src/conf/MapConfig.js +++ b/src/conf/MapConfig.js @@ -23,10 +23,10 @@ minZoom: 3, maxZoom: 17, // center: [26, 104], - // center: [34.828558921813965, 117.41676807403564], - // zoom: 5, - center: [32.25853085517883, 118.78592848777771], - zoom: 16, + center: [34.828558921813965, 117.41676807403564], + zoom: 5, + // center: [39.907214641571045, 116.39019012451172], + // zoom: 16, worldCopyJump: true, inertia: true, zoomControl: false, diff --git a/src/conf/layers/LayerEntEmer.js b/src/conf/layers/LayerEntEmer.js index bbf0f85..d63a663 100644 --- a/src/conf/layers/LayerEntEmer.js +++ b/src/conf/layers/LayerEntEmer.js @@ -1,22 +1,23 @@ /** - * 浼佷笟棰勮 + * 浼佷笟搴旀�� */ import { LayerHbss } from './LayerHbss' import { LayerFsss } from './LayerFsss' import { PIPELINE_WFS } from '../Constants' + const WFS_URL = PIPELINE_WFS export const LayerEntEmer = { code: 'reportEntemeage', - name: '浼佷笟棰勮', + name: '浼佷笟搴旀��', checked: false, type: 0, childLayer: [LayerFsss, LayerHbss], layers: [ { code: 'rainline', - name: '浜嬪墠闃舵', + name: '鍩虹鍥惧眰', sname: '绠$綉', checked: false, type: 0, @@ -32,7 +33,7 @@ }, { code: 'accidentline', - name: '瀹℃壒闃舵', + name: '鍦ㄧ嚎鐩戞祴', sname: '浜嬫晠姘�', checked: false, // wmsLayers: 'sewer:pipeline_accident', @@ -42,7 +43,22 @@ }, { code: 'oilline', - name: '浜嬩欢瀹岀粨', + name: '搴旀�ヨ祫婧�', + sname: '鍚补姹℃按', + checked: false, + type: 0, + minZoom: 13, + color: '#ffaa00', + wmsLayers: 'sewer:pipeline_sewer', + // wfs: 'http://xearth.cn:6240/geoserver/sewer/wfs?typeName=sewer:pipeline&maxFeatures=500&outputFormat=application%2Fjson&cql_filter=mediumtype=\'鍚补姹℃按\'', + styles: { + COLOR: '#ffaa00', + FILL_COLOR: '#ffaa00' + } + }, + { + code: 'oil', + name: '鍛ㄨ竟鐜', sname: '鍚补姹℃按', checked: false, type: 0, diff --git a/src/utils/dragBoxes.js b/src/utils/dragBoxes.js index 1e17b89..e2c8225 100644 --- a/src/utils/dragBoxes.js +++ b/src/utils/dragBoxes.js @@ -4,6 +4,7 @@ const drag = Vue.directive('drag', { bind (el, binding, vnode, oldVnode) { const dialogHeaderEl = el.querySelector('.public-bounced-title') + dialogHeaderEl.style.cursor = 'move' dialogHeaderEl.onmousedown = function (e) { var distX = e.pageX - el.offsetLeft var distY = e.pageY - el.offsetTop diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue index 23d4259..2b070d3 100644 --- a/src/views/MapTemplate.vue +++ b/src/views/MapTemplate.vue @@ -18,6 +18,7 @@ <!-- <el-button type="primary" @click="AddGasHelper" class="flue-gas">搴熸皵</el-button>--> <PublicBounced ref="PublicBounced"></PublicBounced> <!-- <ReportPopup></ReportPopup>--> + <Emergency ref="Emergency"></Emergency> </div> </template> @@ -39,6 +40,7 @@ import LayerFactory from '@components/LayerController/service/LayerFactory' import EventHandler from '../components/LayerController/event/EventHandler' // import ReportPopup from '../components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ReportPopup' +import Emergency from '@components/emergency/index' export default { name: 'MapTemplate', @@ -52,7 +54,8 @@ MonitorPanel, // summarySheets, SummarySheet, - PublicBounced + PublicBounced, + Emergency // ReportPopup }, data () { -- Gitblit v1.8.0