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