From ec4d5c1827487f4c901b69bd9eae58e111e82b32 Mon Sep 17 00:00:00 2001 From: 徐旺旺 <11530253@qq.com> Date: 星期四, 20 五月 2021 18:05:25 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/views/MapTemplate.vue | 212 +++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 159 insertions(+), 53 deletions(-) diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue index 18537fc..234f7e0 100644 --- a/src/views/MapTemplate.vue +++ b/src/views/MapTemplate.vue @@ -1,80 +1,186 @@ <template> - <div class="full-screen"> - <div id="map" ref="rootmap"></div> - <sgis-layer-controller :preset="'warningPreset'"> - <lc-basemap ref="lcBasemap"></lc-basemap> - </sgis-layer-controller> + <div class="full-screen"> + <!--<popup ref="popup" @callPopup="callPopup"></popup>--> + <div id="map" ref="rootmap"> + </div> + <sgis-layer-controller></sgis-layer-controller> <monitor-panel></monitor-panel> - </div> + <!-- <top-enterprise-panel></top-enterprise-panel>--> + <tool-box-panel ref="toolBox"></tool-box-panel> + <!-- <menu-special></menu-special>--> + <legend-panel></legend-panel> + <!-- <summary-sheets></summary-sheets>--> + <SummarySheet></SummarySheet> + <!-- <enterprise></enterprise> --> + <!-- <el-button id="map-btn" el-icon-c-scale-to-original icon="el-icon-c-scale-to-original" circle @click="isShowHidden"></el-button>--> + <!-- <el-button type="primary" @click="ChangeState" class="solid-waste">鍥哄簾</el-button>--> + <!-- <el-button type="primary" @click="ChangeWaterState" class="Waste-water">搴熸按</el-button>--> + <!-- <el-button type="primary" @click="AddGasHelper" class="flue-gas">搴熸皵</el-button>--> +<!-- <PublicBounced ref="PublicBounced"></PublicBounced>--> + <ReportPopup></ReportPopup> + <Emergency ref="Emergency"></Emergency> + <Message></Message> + </div> </template> <script> import 'leaflet/dist/leaflet.css' import Sgis from '@src/Sgis' -import mapConfig from '@/conf/MapConfig' +// import mapConfig from '@/conf/MapConfig' import SgisLayerController from '@components/LayerController/LayerController' -import LcBasemap from '@components/LayerController/modules/LcBaseMap' -import MonitorPanel from '@components/panel/MonitorPanel' -import { mapMutations } from 'vuex' +import MonitorPanel from '@components/panel/RightSearchPanel' +// import TopEnterprisePanel from '@components/panel/TopEnterprisePanel' +// import summarySheets from '@components/table/summarySheets.vue'SummarySheet +import SummarySheet from '@components/table/summarySheets' +import ToolBoxPanel from '@components/panel/ToolBoxPanel' +// import MenuSpecial from '@components/panel/MenuTopic' +import LegendPanel from '@components/panel/LegendPanel' +// import Enterprise from '../components/table/enterprise' +// // 鍏叡灞曠ず鏁版嵁 +// import PublicBounced from '@components/BaseNav/PublicBounced/PublicBounced' +import LayerFactory from '@components/LayerController/service/LayerFactory' +import ReportPopup from '../components/panel/topicSearch/EnterpriseEmergency/ReportPopup' +import Emergency from '@components/emergency/index' +import MapManager from '../components/helpers/MapManager' +import Message from '@components/message/index' export default { name: 'MapTemplate', - components: {SgisLayerController, MonitorPanel, LcBasemap}, - data(){ + components: { + // Enterprise, + LegendPanel, + // MenuSpecial, + ToolBoxPanel, + // TopEnterprisePanel, + SgisLayerController, + MonitorPanel, + // summarySheets, + SummarySheet, + // PublicBounced, + Emergency, + Message, + ReportPopup + }, + data () { return { + map: null, + lcServiceLayerVisible: false, basemapHelper: {}, serviceLayerHelper: {}, - vectorLayerHelper: {} + vectorLayerHelper: {}, + toolBoxVisible: false } }, - beforeMount(){ - this.$nextTick(() => { - this.init() - }) + computed: { + config () { + return this.$store.state.map.config + } }, - methods:{ - ...mapMutations({ - setMapObj: 'setMapObj', - setBasemapHelper: 'setBasemapHelper', - setServiceLayerHelper: 'setServiceLayerHelper', - setVectorLayerHelper: 'setVectorLayerHelper', - }), - init() { - const mapcontainer = this.$refs.rootmap - this.mapObj = Sgis.initMap(mapcontainer) - console.log('01姝ラ锛�', this.mapObj) + beforeMount () { + this.$nextTick(() => { + this.init() + }) + }, + methods: { + saveMapStatus () { + window.serviceLayerHelper = this.serviceLayerHelper + this.$store.commit('setMapObj', this.map) + this.$store.commit('setBasemapHelper', this.basemapHelper) + // this.$store.commit('setServiceLayerHelper', this.serviceLayerHelper) + this.$store.commit('setVectorLayerHelper', this.vectorLayerHelper) - this.basemapHelper = Sgis.initBasemapsHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜 - this.basemapHelper.initBasemap(mapConfig, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘 + this.lcServiceLayerVisible = true + }, + init () { + const mapcontainer = this.$refs.rootmap + this.map = Sgis.initMap(mapcontainer) + this.$refs.toolBox.map = this.map - this.serviceLayerHelper = Sgis.initTileLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栦笟鍔″簳鍥惧姪鎵� - this.serviceLayerHelper.initServiceLayers(mapConfig) + window.popupComp = this.$refs.popup - this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵� - this.vectorLayerHelper.initVectorLayers(mapConfig) + this.basemapHelper = Sgis.initBasemapsHelper(this.map) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜 + this.basemapHelper.initBasemap(this.config, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘 + this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.map) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵� + this.vectorLayerHelper.initVectorLayers(this.config) - console.log('02姝ラ锛�', this.basemapHelper) - this.$refs.lcBasemap.init(this.basemapHelper) - this.setBasemapHelper(this.basemapHelper) - this.setServiceLayerHelper(this.serviceLayerHelper) - this.setVectorLayerHelper(this.vectorLayerHelper) - return this.map - } + // this.AddGasHelper() + // this.ChangeWaterState() + var layerFactory = new LayerFactory({ + L: window.L, + map: this.map + }) + layerFactory.init(this.$store.state.map.serviceLayers.LayerSewersLine) + layerFactory.initEvent(this.$store.state.map.serviceLayers.LayerSewersLine) + window.layerFactory = layerFactory + window.mapManager = new MapManager() + window.mapManager.mapClickListener() + this.saveMapStatus() + // this.setMapObj(this.mapObj) + // this.setBasemapHelper(this.basemapHelper) + // this.setServiceLayerHelper(this.serviceLayerHelper) + // this.setVectorLayerHelper(this.vectorLayerHelper) + }, + callPopup (val) { + console.log(val) + } } } </script> <style lang="less"> + .flue-gas { + position: fixed; + top: 88px; + left: 180px; + z-index: 500; + } -.full-screen{ - width: 100%; - height: 100%; - margin: 0; - padding: 0; - position: absolute; - #map{ - height: 100%; - width: 100%; - } -} -</style>> + .solid-waste { + position: absolute; + top: 88px; + left: 88px; + z-index: 999; + } + + .full-screen { + width: 100%; + height: 100%; + margin: 0; + padding: 0; + position: absolute; + + #map { + height: 100%; + width: 100%; + } + + .barline { + //width: 100%; + //height: 1px; + //background-color: #0661AE; + border-top: 1px solid #0661AE; + } + + #map-btn { + position: fixed; + top: 20px; + left: 100px; + z-index: 9999; + } + + .leaflet-custom-icon { + background: white; + } + + .leaflet-marker-icon { + background: none; + } + + #migic { + width: 48px; + height: 48px; + margin: -18px -20px; + z-index: 999; + } + } +</style> -- Gitblit v1.8.0