{"remainingRequest":"D:\\jenkins\\workspace\\bbsl-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bbsl-fvue\\src\\views\\frontScreens\\components\\gisTabComponents\\Dam.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bbsl-fvue\\src\\views\\frontScreens\\components\\gisTabComponents\\Dam.vue","mtime":1684458238559},{"path":"D:\\jenkins\\workspace\\bbsl-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\bbsl-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bbsl-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport DamModel from './module/DamModel.vue'\r\nimport dictUtils from '@/components/dict/DictSelectUtils.js'\r\nexport default {\r\n name: 'Dam',\r\n components: {DamModel},\r\n data() {\r\n return {\r\n form: {\r\n damGrad: [],\r\n ifMainDam: []\r\n },\r\n iconUrl: require('./../../../../assets/img/gis_dam.png'),\r\n filterData: [],\r\n originData: [\r\n {\r\n damName: '大坝1',\r\n damGrad: '1 级',\r\n ifMainDam: '是',\r\n startLong: '106.463601',\r\n startLat: '29.729001'\r\n },\r\n {\r\n damName: '大坝2',\r\n damGrad: '2 级',\r\n ifMainDam: '否',\r\n startLong: '106.450798',\r\n startLat: '29.83281'\r\n },\r\n {\r\n damName: '大坝3',\r\n damGrad: '3 级',\r\n ifMainDam: '是',\r\n startLong: '106.435563',\r\n startLat: '29.815159'\r\n },\r\n {\r\n damName: '大坝4',\r\n damGrad: '4 级',\r\n ifMainDam: '是',\r\n startLong: '106.388247',\r\n startLat: '29.870726'\r\n },\r\n {\r\n damName: '大坝5',\r\n damGrad: '1 级',\r\n ifMainDam: '是',\r\n startLong: '106.656255',\r\n startLat: '29.999493'\r\n }\r\n ],\r\n showInfo: false,\r\n sectionMarker: null, // 标记点\r\n label: null, // 标记点名称\r\n dbjb: [],\r\n gcdb: []\r\n }\r\n },\r\n inject: ['mapData'],\r\n created() {\r\n let mapData = this.mapData()\r\n this.filterData = this.originData\r\n this.L = mapData.L\r\n this.map = mapData.map\r\n this.baseMapOverlay = mapData.baseMapOverlay\r\n this.dbjb = dictUtils.getDictItemsFromCache('dbjb')\r\n this.gcdb = dictUtils.getDictItemsFromCache('gcdb')\r\n },\r\n mounted() {\r\n this.$nextTick(() => {\r\n this.initMarkers()\r\n })\r\n },\r\n beforeDestroy() {\r\n this.clearMarkers()\r\n },\r\n methods: {\r\n clearMarkers() {\r\n this.map.clearLayers()\r\n this.map.addLayer(this.baseMapOverlay)\r\n this.baseMapOverlay.bringToBack()\r\n this.map.closePopup()\r\n this.showInfo = false\r\n },\r\n initMarkers() {\r\n this.filterData.forEach(item => {\r\n let latlng = new L.LatLng(item.startLat, item.startLong)\r\n this.drwaMarkers(latlng, item.damName)\r\n })\r\n },\r\n drwaMarkers(latlng, name) {\r\n // 图片\r\n let icon = new L.icon({\r\n iconUrl: this.iconUrl,\r\n iconSize: new L.point(24, 24),\r\n iconAnchor: new L.point(12, 20)\r\n })\r\n // 标点\r\n const sectionMarker = new L.marker(latlng, {icon})\r\n this.showInfo = true\r\n // label\r\n // const label = new T.Label({\r\n // text: name,\r\n // position: latlng,\r\n // offset: new this.T.Point(-9, 18),\r\n // })\r\n const label = new L.tooltip({\r\n permanent: true,\r\n direction: 'auto',\r\n sticky: false,\r\n offset: new L.point(-9, 18),\r\n opacity: 0.6\r\n })\r\n label.setLatLng(latlng)\r\n label.setContent(name)\r\n let infoWin = this.infoWindow()\r\n sectionMarker.addEventListener('click', () => {\r\n sectionMarker.openInfoWindow(infoWin)\r\n }) // 将标注添加到地图中\r\n this.map.addLayer(sectionMarker)\r\n this.map.addLayer(label)\r\n },\r\n rowClick(row) {\r\n this.clearMarkers()\r\n this.createdLngLat(row)\r\n },\r\n changeSearch(val) {\r\n if (!val) {\r\n this.districtData = this.originData\r\n return\r\n }\r\n this.districtData = this.originData.filter(item => item.name == val)\r\n },\r\n infoWindow() {\r\n let sContent = this.$refs.DamModel.$el\r\n var infoWin = new L.popup( {\r\n autoPan: true,\r\n maxHeight: 300,\r\n maxWidth: 600\r\n }).setContent(sContent)\r\n return infoWin\r\n },\r\n drwaMarker(latlng, name) {\r\n if (this.sectionMarker && this.label) {\r\n this.map.removeLayer(this.sectionMarker)\r\n this.map.removeLayer(this.label)\r\n this.showInfo = false\r\n this.sectionMarker.closeInfoWindow()\r\n }\r\n // 图片\r\n let icon = new L.icon({\r\n iconUrl: this.iconUrl,\r\n iconSize: new L.point(24, 24),\r\n iconAnchor: new L.point(12, 20)\r\n })\r\n // 标点\r\n this.sectionMarker = new L.marker(latlng, {icon})\r\n this.showInfo = true\r\n // label\r\n // this.label = new T.Label({\r\n // text: name,\r\n // position: latlng,\r\n // offset: new this.T.Point(-9, 18)\r\n // })\r\n this.label = new L.tooltip({\r\n permanent: true,\r\n direction: 'auto',\r\n sticky: false,\r\n offset: new L.point(-9, 18),\r\n opacity: 0.6\r\n })\r\n this.label.setLatLng(latlng)\r\n this.label.setContent(name)\r\n let infoWin = this.infoWindow()\r\n this.sectionMarker.addEventListener('click', () => {\r\n this.sectionMarker.openPopup(infoWin)\r\n }) // 将标注添加到地图中\r\n this.map.addLayer(this.sectionMarker)\r\n this.map.addLayer(this.label)\r\n },\r\n createdLngLat(row) {\r\n let latlng = new L.LatLng(row.startLat, row.startLong)\r\n // 创建\r\n this.drwaMarker(latlng, row.damName)\r\n }\r\n }\r\n}\r\n",null]}