From a23a2c417afcf46da2f2626d4fdecddade205405 Mon Sep 17 00:00:00 2001
From: YANGDL <114714267@qq.com>
Date: 星期一, 11 一月 2021 16:39:06 +0800
Subject: [PATCH] 优化左下角业务看板展示动画

---
 src/views/MapTemplate.vue |  100 ++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 72 insertions(+), 28 deletions(-)

diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue
index 3706946..d628efa 100644
--- a/src/views/MapTemplate.vue
+++ b/src/views/MapTemplate.vue
@@ -1,54 +1,98 @@
 <template>
   <div class="full-screen">
         <div id="map" ref="rootmap"></div>
-        <sgis-layer-controller :preset="'warningPreset'"></sgis-layer-controller>
+        <sgis-layer-controller :preset="'warningPreset'">
+            <lc-basemap></lc-basemap>
+<!--            <div class="barline"></div>-->
+            <lc-service-layer class="barline"></lc-service-layer>
+        </sgis-layer-controller>
+        <lc-service-layer-filter v-show="showServiceLayerFilter" ref="serviceLayerFilter"></lc-service-layer-filter>
+        <monitor-panel></monitor-panel>
+        <top-enterprise-panel></top-enterprise-panel>
   </div>
 </template>
 
 <script>
 import 'leaflet/dist/leaflet.css'
 import Sgis from '@src/Sgis'
+// import mapConfig from '@/conf/MapConfig'
 import SgisLayerController from '@components/LayerController/LayerController'
-import { mapMutations, mapState } from 'vuex'
+import LcBasemap from '@components/LayerController/modules/LcBaseMap'
+import LcServiceLayer from '@components/LayerController/modules/LcServiceLayer'
+import LcServiceLayerFilter from '@components/LayerController/modules/LcServiceLayerFilter'
+import MonitorPanel from '@components/panel/MonitorPanel'
+import TopEnterprisePanel from '@components/panel/TopEnterprisePanel'
 
 export default {
   name: 'MapTemplate',
-  components: {SgisLayerController, },
-  datas:{
-      ...mapState("/",{})
+  components: { TopEnterprisePanel, SgisLayerController, MonitorPanel, LcBasemap, LcServiceLayer, LcServiceLayerFilter },
+  data () {
+    return {
+      basemapHelper: {},
+      serviceLayerHelper: {},
+      vectorLayerHelper: {}
+    }
   },
-  mounted(){
-      this.$nextTick(() => {
-          this.init()
-      })
+  computed: {
+    showServiceLayerFilter () {
+      return this.$store.state.map.showServiceLayerFilter
+    },
+    mapConfig () {
+      return this.$store.state.map.mapConfig
+    }
   },
-  methods:{
-      ...mapMutations({
-        setMapObj: 'setMapObj',
-        setLayerHelper: 'setLayerHelper'
-      }),
-      init() {
-        const mapcontainer = this.$refs.rootmap
-        this.mapObj = Sgis.initMap(mapcontainer)
-        this.basemapHelper = Sgis.initBasemaps(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧簳鍥�
-        this.vectorLayerHelper = Sgis.initLayers(this.mapObj.map, this.mapObj.L, {}, this.$nodeEnv) // 鍒濆鍖栦笟鍔″浘灞�
-        this.setLayerHelper(this.vectorLayerHelper)
-        return this.map
-      },
-      setLayerHelper(){
+  beforeMount () {
+    this.$nextTick(() => {
+      this.init()
+    })
+  },
+  methods: {
+    saveMapStatus () {
+      this.$store.commit('setMapObj', this.mapObj)
+      this.$store.commit('setBasemapHelper', this.basemapHelper)
+      this.$store.commit('setServiceLayerHelper', this.serviceLayerHelper)
+      this.$store.commit('setVectorLayerHelper', this.vectorLayerHelper)
+    },
+    init () {
+      const mapcontainer = this.$refs.rootmap
+      this.mapObj = Sgis.initMap(mapcontainer)
 
-      }
+      this.basemapHelper = Sgis.initBasemapsHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜
+      this.basemapHelper.initBasemap(this.mapConfig, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘
+
+      this.serviceLayerHelper = Sgis.initTileLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栦笟鍔″簳鍥惧姪鎵�
+      this.serviceLayerHelper.initServiceLayers(this.mapConfig)
+
+      this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.mapObj.map, this.mapObj.L) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵�
+      this.vectorLayerHelper.initVectorLayers(this.mapConfig)
+
+      this.saveMapStatus()
+      // this.setMapObj(this.mapObj)
+      // this.setBasemapHelper(this.basemapHelper)
+      // this.setServiceLayerHelper(this.serviceLayerHelper)
+      // this.setVectorLayerHelper(this.vectorLayerHelper)
+    }
   }
 }
 </script>
 
-<style lang="less" scoped>
+<style lang="less">
+
 .full-screen{
-    width: calc(100vw);
-    height: calc(100vh);
-    overflow: hidden;
+    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;
+  }
 }
 </style>>

--
Gitblit v1.8.0