From 9185072c775eaf1cd3df53d06bc81dc5bfc8264b Mon Sep 17 00:00:00 2001 From: chenyibo <p-honggang.li@pcitc.com> Date: 星期二, 30 三月 2021 16:31:58 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/views/MapTemplate.vue | 166 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 153 insertions(+), 13 deletions(-) diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue index 68b58e4..6913577 100644 --- a/src/views/MapTemplate.vue +++ b/src/views/MapTemplate.vue @@ -9,20 +9,23 @@ <lc-service-layer class="barline" v-if="lcServiceLayerVisible"></lc-service-layer> </sgis-layer-controller> <monitor-panel></monitor-panel> -<!-- <top-enterprise-panel></top-enterprise-panel>--> + <!-- <top-enterprise-panel></top-enterprise-panel>--> <tool-box-panel ref="toolBox"></tool-box-panel> -<!-- <menu-special></menu-special>--> + <!-- <menu-special></menu-special>--> <legend-panel></legend-panel> <summary-sheets></summary-sheets> <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 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> </div> </template> <script> import 'leaflet/dist/leaflet.css' import Sgis from '@src/Sgis' -// import Vue from 'vue' // import mapConfig from '@/conf/MapConfig' import SgisLayerController from '@components/LayerController/LayerController' import LcBasemap from '@components/LayerController/modules/LcBaseMap' @@ -35,6 +38,13 @@ // import MenuSpecial from '@components/panel/MenuTopic' import LegendPanel from '@components/panel/LegendPanel' import Enterprise from '../components/table/enterprise' +// 搴曞浘涓氬姟js閫昏緫 +import AddSolidWasteHelper from '@components/BaseNav/SolidWaste/SolidWaste' +import AddWasteWaterHelper from '@components/BaseNav/WasteWater/WasteWater' +import AddGasHelper from '@components/BaseNav/flueGas/flueGas' +// // 鍏叡灞曠ず鏁版嵁 +import PublicBounced from '@components/BaseNav/PublicBounced/PublicBounced' +import LayerFactory from '@components/LayerController/service/LayerFactory' export default { name: 'MapTemplate', @@ -49,10 +59,12 @@ LcBasemap, LcServiceLayer, Popup, - summarySheets + summarySheets, + PublicBounced }, data () { return { + // isShowBtn: false, map: null, lcServiceLayerVisible: false, basemapHelper: {}, @@ -66,14 +78,61 @@ } }, beforeMount () { - // import('@/assets/airQuality.json').then(res => { - // console.log(res.features) - // }) this.$nextTick(() => { this.init() }) }, methods: { + AddGasHelper () { + const data = { + companyId: 3900100145, + id: '', + monType: 2, + userCode: 'wenchun.deng', + monDuration: '', + epName: '', + secdDeptId: '', + contrLevel: '', + dataStatus: '', + dataFlag: '', + runStatus: '', + emissTypeId: '' + } + const AddGas = new AddGasHelper({ map: this.map }) + AddGas.requestData(data) + AddGas.SetPlueGasContent(this.config, this.$refs.PublicBounced) + }, + ChangeState () { + const data = { + companyId: 3900100145, + userCode: 'wenchun.deng', + name: '', + marginWarr: '', + longDayWarr: '' + } + const AddSolidWaste = new AddSolidWasteHelper({ map: this.map }) + AddSolidWaste.requestData(data) + AddSolidWaste.SetSolidWasteContent(this.config, this.$refs.PublicBounced) + }, + ChangeWaterState () { + const data = { + companyId: 3900100145, + id: '', + monType: 1, + userCode: 'wenchun.deng', + monDuration: '', + epName: '', + secdDeptId: '', + contrLevel: '', + dataStatus: '', + dataFlag: '', + runStatus: '', + emissTypeId: '' + } + const AddWasteWater = new AddWasteWaterHelper({ map: this.map }) + AddWasteWater.requestData(data) + AddWasteWater.SetWasteWaterContent(this.config, this.$refs.PublicBounced) + }, saveMapStatus () { window.serviceLayerHelper = this.serviceLayerHelper this.$store.commit('setMapObj', this.map) @@ -83,32 +142,100 @@ this.lcServiceLayerVisible = true }, - init: function () { + init () { const mapcontainer = this.$refs.rootmap this.map = Sgis.initMap(mapcontainer) this.$refs.toolBox.map = this.map + window.popupComp = this.$refs.popup + var layerFactory = new LayerFactory({ + L: window.L, + map: this.map + }) + layerFactory.init() + window.layerFactory = layerFactory + this.basemapHelper = Sgis.initBasemapsHelper(this.map) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜 this.basemapHelper.initBasemap(this.config, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘 - this.serviceLayerHelper = Sgis.initTileLayersHelper(this.map) // 鍒濆鍖栦笟鍔″簳鍥惧姪鎵� - console.log('-------' + this.$refs.popup.$el) - this.serviceLayerHelper.initServiceLayers(this.config, this.$refs.popup) + // this.serviceLayerHelper = Sgis.initTileLayersHelper(this.map) // 鍒濆鍖栦笟鍔″簳鍥惧姪鎵� + // console.log('-------' + this.$refs.popup.$el) + // this.serviceLayerHelper.initServiceLayers(this.config, this.$refs.popup) this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.map) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵� this.vectorLayerHelper.initVectorLayers(this.config) + + // this.ChangeState() + // this.AddGasHelper() + // this.ChangeWaterState() this.saveMapStatus() // this.setMapObj(this.mapObj) // this.setBasemapHelper(this.basemapHelper) // this.setServiceLayerHelper(this.serviceLayerHelper) // this.setVectorLayerHelper(this.vectorLayerHelper) + this.addMarker() + }, + addMarker () { + const L = this.L + var icon = new L.Icon({ + iconUrl: 'assets/images/map/marker-icon.png', + shadowUrl: 'assets/images/map/marker-shadow.png', + iconSize: [25, 41], + iconAnchor: [12, 41], + popupAnchor: [1, -34], + shadowSize: [41, 41] + }) + var marker = L.marker([32.2221, 118.7843], { + icon: icon + }).addTo(this.map) + .bindPopup(() => this.$refs.popup.$el, { + className: 's-map-popup', + minWidth: 300, + closeButton: false, + autoClose: false + }) + .bindTooltip('瀛椾綋鍏夋檿鏁堟灉t.', { + // permanent : true, + offset: [0, 0], // 鍋忕Щ + direction: 'right', // 鏀剧疆浣嶇疆 + // sticky:true,//鏄惁鏍囪鍦ㄧ偣涓婇潰 + className: 'anim-tooltip'// CSS鎺у埗 + }) + + marker.on('popupopen', this.onLayerClick) + }, + onLayerClick () { + this.$refs.popup.setShow() + }, + callPopup (val) { + console.log(val) } } } </script> <style lang="less"> +.flue-gas { + position: fixed; + top: 88px; + left: 180px; + z-index: 500; +} + +.solid-waste { + position: absolute; + top: 88px; + left: 88px; + z-index: 999; +} + +.Waste-water { + position: absolute; + top: 88px; + left: 280px; + z-index: 999; +} .full-screen { width: 100%; @@ -128,14 +255,27 @@ //background-color: #0661AE; border-top: 1px solid #0661AE; } + #map-btn { position: fixed; top: 20px; left: 100px; z-index: 9999; } - .leaflet-custom-icon{ + + .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