From 8792f905ede68bb1161a1c90948df937861481ad Mon Sep 17 00:00:00 2001
From: chenzeping <ChenZeping02609@163.com>
Date: 星期一, 29 三月 2021 18:22:08 +0800
Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop
---
src/conf/layers/LayerWasteWater.js | 37 +++
src/conf/layers/LayerWasteGas.js | 51 ++++
src/components/LayerController/logic/Sample.js | 9
src/views/MapTemplate.vue | 11
src/components/LayerController/service/LayerFactory.js | 88 +++++++
src/utils/AjaxUtils.js | 2
src/components/LayerController/modules/LcServiceLayer.vue | 240 ++++++++++----------
src/conf/layers/LayerSewers.js | 22 -
src/conf/layers/LayerSolidWaste.js | 27 ++
src/components/LayerController/service/WmsLayerService.js | 11
/dev/null | 30 --
src/components/LayerController/service/WfsLayerService.js | 119 +++++++++
src/components/LayerController/service/PopupService.js | 0
src/conf/Constants.js | 6
src/conf/MapConfig.js | 8
src/components/LayerController/service/BusiLayerService.js | 32 ++
src/components/panel/topicSearch/SewersSearch.vue | 2
17 files changed, 525 insertions(+), 170 deletions(-)
diff --git a/src/components/LayerController/logic/Sample.js b/src/components/LayerController/logic/Sample.js
new file mode 100644
index 0000000..687b0e7
--- /dev/null
+++ b/src/components/LayerController/logic/Sample.js
@@ -0,0 +1,9 @@
+module.exports = function () {
+ this.init = (layer) => {
+ console.log('sample init !!!')
+ }
+
+ this.clickListener = (list) => {
+ console.log('sample clickListener !!!')
+ }
+}
diff --git a/src/components/LayerController/modules/LcServiceLayer.vue b/src/components/LayerController/modules/LcServiceLayer.vue
index 4b9aa25..ab589f0 100644
--- a/src/components/LayerController/modules/LcServiceLayer.vue
+++ b/src/components/LayerController/modules/LcServiceLayer.vue
@@ -1,134 +1,134 @@
<template>
<div class="inner-panel">
-<!-- <div class="title">-->
-<!-- 鍥惧眰鎺у埗-->
-<!-- </div>-->
-<!-- <div class="wms-panel">-->
-<!-- <div v-for="item in serviceLayers" :key="item.code" class="layerbox">-->
-<!-- <div><input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.checked" :value="item.code"-->
-<!-- @change="swAllLayers(item)"/>{{ item.name }} <span @click="swFilter(item)"-->
-<!-- class="btn-filter">杩囨护</span>-->
-<!-- </div>-->
-<!-- <div class="layerbox-item">-->
-<!-- <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox"-->
-<!-- :name="'wmsSublayers_'+item.code+'_'+itm.code"-->
-<!-- :checked="itm.checked"-->
-<!-- :value="itm.code"-->
-<!-- @change="swWmsLayer(item.url,itm)"/>{{-->
-<!-- itm.name }}-->
-<!-- </div>-->
-<!-- </div>-->
-<!-- </div>-->
-<!-- </div>-->
-<!-- <lc-service-layer-filter v-if="layerFilterVisible" ref="serviceLayerFilter"></lc-service-layer-filter>-->
+ <div class="title">
+ 鍥惧眰鎺у埗
+ </div>
+ <div class="wms-panel">
+ <div v-for="item in serviceLayers" :key="item.code" class="layerbox">
+ <div><input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.checked" :value="item.code"
+ @change="swAllLayers(item)"/>{{ item.name }} <span @click="swFilter(item)"
+ class="btn-filter">杩囨护</span>
+ </div>
+ <div class="layerbox-item">
+ <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox"
+ :name="'wmsSublayers_'+item.code+'_'+itm.code"
+ :checked="itm.checked"
+ :value="itm.code"
+ @change="swWmsLayer(itm)"/>{{
+ itm.name }}
+ </div>
+ </div>
+ </div>
+ </div>
+ <lc-service-layer-filter v-if="layerFilterVisible" ref="serviceLayerFilter"></lc-service-layer-filter>
</div>
</template>
-<!--<script>-->
-<!--import WfsHelper from '../../helpers/WfsHelper'-->
-<!--import LcServiceLayerFilter from '@components/LayerController/modules/LcServiceLayerFilter'-->
-<!--import AjaxUtils from '../../../utils/AjaxUtils'-->
+<script>
+import WfsHelper from '../../helpers/WfsHelper'
+import LcServiceLayerFilter from '@components/LayerController/modules/LcServiceLayerFilter'
+import AjaxUtils from '../../../utils/AjaxUtils'
-<!--export default {-->
-<!-- name: 'LcServiceLayer',-->
-<!-- components: { LcServiceLayerFilter },-->
-<!-- data () {-->
-<!-- return {-->
-<!-- layerFilterVisible: false-->
-<!-- }-->
-<!-- },-->
-<!-- computed: {-->
-<!-- serviceLayers () {-->
-<!-- return this.$store.state.map.serviceLayers.LayerSewersLine-->
-<!-- }-->
-<!-- },-->
-<!-- mounted () {-->
-<!-- // console.log('03姝ラ锛�', this.helper)-->
-<!-- this.updateServiceLayerList()-->
-<!-- },-->
-<!-- methods: {-->
-<!-- swAllLayers (item) {-->
-<!-- // eslint-disable-next-line no-debugger-->
-<!-- item.checked = !item.checked-->
-<!-- for (let i = 0, len = item.layers.length; i < len; ++i) {-->
-<!-- item.layers[i].checked = item.checked-->
-<!-- }-->
-<!-- this.updateWms()-->
-<!-- },-->
-<!-- loadWfs () {-->
-<!-- var wfsHelper = new WfsHelper()-->
-<!-- wfsHelper.addTypeName('绠$嚎鐐�')-->
-<!-- wfsHelper.addEquals('pipename', '鐮旂┒闄�01璺痀S000001')-->
+export default {
+ name: 'LcServiceLayer',
+ components: { LcServiceLayerFilter },
+ data () {
+ return {
+ layerFilterVisible: false
+ }
+ },
+ computed: {
+ serviceLayers () {
+ return this.$store.state.map.serviceLayers.LayerSewersLine
+ }
+ },
+ mounted () {
+ // console.log('03姝ラ锛�', this.helper)
+ this.updateServiceLayerList()
+ },
+ methods: {
+ swAllLayers (item) {
+ // eslint-disable-next-line no-debugger
+ item.checked = !item.checked
+ for (let i = 0, len = item.layers.length; i < len; ++i) {
+ item.layers[i].checked = item.checked
+ }
+ this.updateWms()
+ },
+ loadWfs () {
+ var wfsHelper = new WfsHelper()
+ wfsHelper.addTypeName('绠$嚎鐐�')
+ wfsHelper.addEquals('pipename', '鐮旂┒闄�01璺痀S000001')
-<!-- AjaxUtils.GetDataAsynByUrl(wfsHelper.getUrl(), {}, (res) => {-->
-<!-- console.log(res)-->
-<!-- })-->
-<!-- },-->
-<!-- swWmsLayer (url, itm) {-->
-<!-- itm.checked = !itm.checked-->
-<!-- if (itm.checked) {-->
-<!-- window.serviceLayerHelper.loadGeojsonLayer(url, itm)-->
-<!-- } else {-->
-<!-- window.serviceLayerHelper.removeLayer(itm)-->
-<!-- }-->
-<!-- // this.updateWms()-->
-<!-- },-->
-<!-- swFilter (item) {-->
-<!-- this.layerFilterVisible = !this.layerFilterVisible-->
-<!-- },-->
-<!-- updateServiceLayerList () {-->
+ AjaxUtils.GetDataAsynByUrl(wfsHelper.getUrl(), {}, (res) => {
+ console.log(res)
+ })
+ },
+ swWmsLayer (itm) {
+ itm.checked = !itm.checked
+ if (itm.checked) {
+ window.layerFactory.show(itm.code)
+ } else {
+ window.layerFactory.hide(itm.code)
+ }
+ // this.updateWms()
+ },
+ swFilter (item) {
+ this.layerFilterVisible = !this.layerFilterVisible
+ },
+ updateServiceLayerList () {
-<!-- },-->
-<!-- updateWms () {-->
-<!-- var mapConfig = this.mapConfig-->
-<!-- var wmsHelper = new WfsHelper()-->
-<!-- wmsHelper.initMapConfig(mapConfig)-->
-<!-- var wmsLayersMap = wmsHelper.getWmsLayersMap()-->
-<!-- for (var k in wmsLayersMap) {-->
-<!-- var layers = wmsLayersMap[k]-->
-<!-- var tileLayer = window.serviceLayerHelper.getTileLayer(k)-->
-<!-- if (tileLayer) {-->
-<!-- tileLayer.setParams({ layers: layers.join(',') }, false)-->
-<!-- tileLayer.setUrl(tileLayer.config.url, false)-->
-<!-- }-->
-<!-- }-->
-<!-- }-->
-<!-- }-->
-<!--}-->
-<!--</script>-->
+ },
+ updateWms () {
+ var mapConfig = this.mapConfig
+ var wmsHelper = new WfsHelper()
+ wmsHelper.initMapConfig(mapConfig)
+ var wmsLayersMap = wmsHelper.getWmsLayersMap()
+ for (var k in wmsLayersMap) {
+ var layers = wmsLayersMap[k]
+ var tileLayer = window.serviceLayerHelper.getTileLayer(k)
+ if (tileLayer) {
+ tileLayer.setParams({ layers: layers.join(',') }, false)
+ tileLayer.setUrl(tileLayer.config.url, false)
+ }
+ }
+ }
+ }
+}
+</script>
-<!--<style scoped lang="less">-->
-<!-- .inner-panel {-->
-<!-- .title{-->
-<!-- color: #ffffff;-->
-<!-- font-size: 16px;-->
-<!-- font-weight: 600;-->
-<!-- margin: 10px;-->
-<!-- text-align: center;-->
-<!-- }-->
-<!-- .btn-filter {-->
-<!-- cursor: pointer;-->
-<!-- color: #ffffff;-->
-<!-- }-->
+<style scoped lang="less">
+ .inner-panel {
+ .title{
+ color: #ffffff;
+ font-size: 16px;
+ font-weight: 600;
+ margin: 10px;
+ text-align: center;
+ }
+ .btn-filter {
+ cursor: pointer;
+ color: #ffffff;
+ }
-<!-- .wms-panel {-->
-<!-- width: 250px;-->
+ .wms-panel {
+ width: 250px;
-<!-- .layerbox {-->
-<!-- width: 100%;-->
+ .layerbox {
+ width: 100%;
-<!-- .layerbox-item {-->
-<!-- display: flex;-->
-<!-- flex-flow: row wrap;-->
-<!-- margin-left: 15px;-->
-<!-- margin-top: 5px;-->
+ .layerbox-item {
+ display: flex;
+ flex-flow: row wrap;
+ margin-left: 15px;
+ margin-top: 5px;
-<!-- .basemap-layer-item {-->
-<!-- width: 50%;-->
-<!-- }-->
-<!-- }-->
-<!-- }-->
-<!-- }-->
-<!-- }-->
+ .basemap-layer-item {
+ width: 50%;
+ }
+ }
+ }
+ }
+ }
-<!--</style>-->
+</style>
diff --git a/src/components/LayerController/service/BusiLayerService.js b/src/components/LayerController/service/BusiLayerService.js
new file mode 100644
index 0000000..254a819
--- /dev/null
+++ b/src/components/LayerController/service/BusiLayerService.js
@@ -0,0 +1,32 @@
+/**
+ * 鍔犺浇涓氬姟鏁版嵁鍥惧眰
+ */
+import { logicMapper } from '@src/conf/Constants'
+
+class BusiLayerService {
+ constructor (config) {
+ this.L = window.L
+ this.map = window.map
+ this.config = config
+ }
+
+ init (layer) {
+ // 寮曞叆 鍏宠仈鐨刯s锛屽湪constant.js涓牴鎹甤onfig閰嶇疆鐨刬d寰楀埌澶勭悊js
+ const id = this.config.code
+ console.log(logicMapper)
+ const file = logicMapper[id]
+ if (!file) {
+ console.log('鎵句笉鍒伴�昏緫澶勭悊js!!!')
+ } else {
+ console.log('-----' + file)
+ var BusiLayer = require('../logic/' + file)
+ console.log(BusiLayer)
+ var busiLayer = new BusiLayer()
+ // 璋冪敤init
+ busiLayer.init(layer)
+ // 璋冪敤click浜嬩欢
+ }
+ }
+}
+
+export default BusiLayerService
diff --git a/src/components/LayerController/service/LayerFactory.js b/src/components/LayerController/service/LayerFactory.js
new file mode 100644
index 0000000..7626125
--- /dev/null
+++ b/src/components/LayerController/service/LayerFactory.js
@@ -0,0 +1,88 @@
+import store from '@/store'
+import WfsLayerService from './WfsLayerService'
+import BusiLayerService from './BusiLayerService'
+import WmsLayerService from './WmsLayerService'
+class LayerFactory {
+ constructor (options) {
+ this.L = options.L
+ this.map = window.map
+ this.layers = {}
+ }
+
+ createLayerGroup () {
+ return this.L.layerGroup().addTo(this.map)
+ }
+
+ init () {
+ // 1. 閬嶅巻layer config
+ var layerConfig = store.state.map.serviceLayers.LayerSewersLine
+ for (var i = 0, l = layerConfig.length; i < l; i++) {
+ var config = layerConfig[i]
+ var layers = config.layers
+ for (var j = 0; j < layers.length; j++) {
+ var childConfig = layers[j]
+ var code = childConfig.code
+ var wfs = childConfig.wfs
+ var wms = childConfig.wms
+ var url = childConfig.url
+ // 鍒ゆ柇鏄惁宸茬粡鍔犺浇杩囷紝鍔犺浇杩囧氨 蹇界暐鎺�
+ const layer = this.layers[code]
+ if (!layer) {
+ const newLayer = this.createLayerGroup()
+ this.layers[code] = newLayer
+ // 2. 鍒ゆ柇绫诲瀷
+ if (wfs) {
+ // 3. 瀹炰緥鍖栧叿浣搒ervice
+ // var busiLayerService = new BusiLayerService()
+ // busiLayerService.init()
+ var wfsLayerService = new WfsLayerService(childConfig)
+ wfsLayerService.init(newLayer)
+ }
+ if (wms) {
+ var wmsLayerService = new WmsLayerService(childConfig)
+ wmsLayerService.init(newLayer)
+ }
+ // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
+ if (url) {
+ var busiLayerService = new BusiLayerService(childConfig)
+ busiLayerService.init(newLayer)
+ }
+ } else {
+ this.show(code)
+ }
+ }
+ }
+ }
+
+ show (code) {
+ var _layer = this.layers[code].addTo(this.map)
+ this.setZIndex(_layer)
+ }
+
+ hide (code) {
+ var layer = this.layers[code]
+ layer && this.map.removeLayer(layer)
+ }
+
+ toggle (code) {
+
+ }
+
+ /**
+ * 璁剧疆index,绾垮湪鏈�涓嬮潰锛岀偣鍦ㄤ笂闈�
+ * @param layerGroup 鍥惧眰缁�
+ */
+ setZIndex (layerGroup) {
+ var layers = layerGroup.getLayers()
+ if (layers.length > 0) {
+ var layer = layers[0]
+ if (layer.feature && (layer.feature.geometry.type === 'LineString' || layer.feature.geometry.type === 'MultiLineString')) {
+ layerGroup.bringToBack()
+ } else {
+ layerGroup.bringToFront()
+ }
+ }
+ }
+}
+
+export default LayerFactory
diff --git a/src/components/LayerController/service/PopupService.js b/src/components/LayerController/service/PopupService.js
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/components/LayerController/service/PopupService.js
diff --git a/src/components/LayerController/service/WfsLayerService.js b/src/components/LayerController/service/WfsLayerService.js
new file mode 100644
index 0000000..e5a175d
--- /dev/null
+++ b/src/components/LayerController/service/WfsLayerService.js
@@ -0,0 +1,119 @@
+/**
+ * 鍔犺浇涓氬姟鏁版嵁鍥惧眰
+ */
+
+import styles from '../../../conf/Styles'
+import AjaxUtils from '../../../utils/AjaxUtils'
+
+class WfsLayerService {
+ constructor (config) {
+ this.config = config
+ this.params = {
+ version: '1.0.0',
+ REQUEST: 'getfeature',
+ OUTPUTFORMAT: 'json',
+ maxFeatures: 20000
+ }
+ this.popupComp = window.popupComp
+ this.L = window.L
+ this.map = window.map
+ this.regex = /\{(.+?)\}/g // 鍖归厤{}
+ }
+
+ init (layer) {
+ const wfsUrl = this.config.wfs
+ if (wfsUrl) {
+ AjaxUtils.get4JsonDataByUrl(wfsUrl, this.params, (res) => this.draw(layer, res.data.features))
+ }
+ }
+
+ draw (layer, features) {
+ const icon = this.config.icon
+ const geojson = this.L.geoJSON(features, {
+ style: function (feature) {
+ return {
+ fill: styles.defaultLineStyle.fill,
+ weight: styles.defaultLineStyle.weight,
+ fillColor: styles.defaultLineStyle.fillColor,
+ color: styles.defaultLineStyle.color,
+ fillOpacity: styles.defaultLineStyle.fillOpacity,
+ opacity: styles.defaultLineStyle.opacity,
+ dashArray: styles.defaultLineStyle.dashArray,
+ dashSpeed: styles.defaultLineStyle.dashSpeed
+ }
+ },
+ pointToLayer: (geoJsonPoint, latlng) => {
+ return this.L.canvasMarker(latlng,
+ {
+ img: {
+ // url: 'assets/images/map/marker-icon.png',
+ url: '/assets/images/map/' + icon,
+ size: styles.defaultLineStyle.size
+ }
+ })
+ },
+ onEachFeature: (feature, layer) => {
+ layer.bindPopup((layer) => {
+ this.popupComp.setDatas(layer)
+ this.popupComp.setShow()
+ return this.popupComp.$el
+ }, {
+ className: 's-map-popup',
+ minWidth: 300,
+ closeButton: false,
+ autoClose: false
+ })
+ .bindTooltip((layer) => this.tooltipListener(layer), { direction: 'bottom', offset: [0, 15], sticky: true })
+ .on('mouseover', (e) => this.mouseOverListener(e, layer)).on('mouseout', (e) => this.mouseOutListener(e, layer))
+ }
+ }).addTo(layer)
+ return geojson
+ }
+
+ mouseOverListener (e, layer) {
+ const icon = this.config.icon
+ const type = e.target.feature.geometry.type
+ if (type === 'LineString' || type === 'MultiLineString') {
+ layer.setStyle({ weight: 8, color: '#00ffff' })
+ } else if (type === 'Point' || type === 'MultiPoint') {
+ layer.setStyle({
+ img: {
+ url: '/assets/images/map/' + icon,
+ size: [25, 25]
+ }
+ })
+ layer.bringToFront()
+ }
+ }
+
+ mouseOutListener (e, layer) {
+ const icon = this.config.icon
+ const type = e.target.feature.geometry.type
+ if (type === 'LineString' || type === 'MultiLineString') {
+ layer.setStyle({ weight: styles.defaultLineStyle.weight, color: styles.defaultLineStyle.color })
+ }
+ if (type === 'Point' || type === 'MultiPoint') {
+ layer.setStyle({
+ img: {
+ url: '/assets/images/map/' + icon,
+ size: styles.defaultLineStyle.size
+ }
+ })
+ }
+ }
+
+ tooltipListener (layer) {
+ const nameId = layer.feature.id
+ let name = ''
+ if (nameId.indexOf('涓夐��') !== -1 || nameId.indexOf('鍥涢��') !== -1 || nameId.indexOf('绐ㄤ簳') !== -1) {
+ name = layer.feature.properties.pointnumber
+ } else {
+ name = layer.feature.properties.name
+ }
+ if (name === undefined) {
+ name = ''
+ }
+ return name
+ }
+}
+export default WfsLayerService
diff --git a/src/components/LayerController/service/WmsLayerService.js b/src/components/LayerController/service/WmsLayerService.js
new file mode 100644
index 0000000..b818aec
--- /dev/null
+++ b/src/components/LayerController/service/WmsLayerService.js
@@ -0,0 +1,11 @@
+class WfsLayerService {
+ constructor (config) {
+ this.config = config
+ }
+
+ init () {
+
+ }
+}
+
+export default WfsLayerService
diff --git a/src/components/panel/topicSearch/SewersSearch.vue b/src/components/panel/topicSearch/SewersSearch.vue
index f6ff0f2..c969cde 100644
--- a/src/components/panel/topicSearch/SewersSearch.vue
+++ b/src/components/panel/topicSearch/SewersSearch.vue
@@ -101,7 +101,7 @@
</template>
<script>
-import { PipelineTypeOptions } from '@/conf/LayerSewers'
+import { PipelineTypeOptions } from '@/conf/layers/LayerSewers'
import WfsHelper from '@components/helpers/WfsHelper'
import AjaxUtils from '@utils/AjaxUtils'
diff --git a/src/conf/Constants.js b/src/conf/Constants.js
index 72bb8f0..cef757c 100644
--- a/src/conf/Constants.js
+++ b/src/conf/Constants.js
@@ -4,6 +4,12 @@
POLYGON: 'polygon'
}
+export const logicMapper = {
+ fsqy: 'Sample.js',
+ fspfk: 'Sample.js',
+ fsjcd: 'Sample.js'
+}
+
export const props = {
pipename: '绠$嚎鍚嶇О',
pipecode: '绠$嚎缂栫爜',
diff --git a/src/conf/LayerWasteWater.js b/src/conf/LayerWasteWater.js
deleted file mode 100644
index 950943c..0000000
--- a/src/conf/LayerWasteWater.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- * 搴熸按鍥惧眰
- * @type {string}
- */
-const APP_GIS_HOST_2 = 'http://xearth.cn:8088'
-export const LayerWasteWater = {
- code: 'pipeline',
- name: '搴熸按',
- type: 'geojson',
- // url: APP_GIS_HOST_2 + '/server/ogcserver/PipeLineTest/wms?version=1.1.1',
- // url: APP_GIS_HOST_2 + '/layer/findLayer?layerName={sname}',
- url: APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs?version=1.0.0&TYPENAME={sname}&REQUEST=getfeature&OUTPUTFORMAT=json&maxFeatures=20000',
- checked: true,
- layers: [
- {
- code: 'rainline',
- name: '浼佷笟',
- sname: '浼佷笟', // 琛ㄥ悕
- checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
- minZoom: 10, // 鍦ㄦ寚瀹氱骇鍒樉绀�
- childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
- },
- {
- code: 'oilline',
- name: '鐩戞祴鐐�',
- sname: '鐩戞祴鐐�',
- checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
- minZoom: 10,
- childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
- },
- {
- code: 'saltline',
- name: '鎺掓斁鍙�',
- sname: '鎺掓斁鍙�',
- checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
- minZoom: 10,
- childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
- }
- ]
-}
diff --git a/src/conf/Layers.js b/src/conf/Layers.js
deleted file mode 100644
index 5c69adf..0000000
--- a/src/conf/Layers.js
+++ /dev/null
@@ -1,30 +0,0 @@
-// import * as L from 'leaflet'
-import { LayerSewers, PointLayers } from './LayerSewers'
-// const APP_GIS_HOST = 'http://xearth.cn:6299'
-
-// 鍑犱綍绫诲瀷甯搁噺
-
-export const ServiceLayers = [
- /* {
- code: 'pipeline',
- name: '绠$綉鏁版嵁',
- icon_actived: '',
- icon_deactived: '',
- type: 'wms',
- // url: APP_GIS_HOST_PIPELINE + '/server/ogcserver/PipeLineTest/wms?version=1.1.1',
- url: APP_GIS_HOST_PIPELINE + '/server/ogcserver/PipeLine/wms?version=1.1.1',
- inLegend: true,
- checked: true,
- option: {
- layers: 'all',
- styles: '', // Comma-separated list of WMS styles.
- format: 'image/png', // WMS image format (use 'image/png' for layers with transparency).
- transparent: true, // If true, the WMS service will return images with transparency.
- version: '1.1.1', // Version of the WMS service to use
- tileSize: L.point(256, 256),
- crs: L.CRS.EPSG4326, // Coordinate Reference System to use for the WMS requests, defaults to map CRS. Don't change this if you're not sure what it means.
- uppercase: false,
- WMSTILE: 1
- }, */
- LayerSewers, PointLayers
-]
diff --git a/src/conf/MapConfig.js b/src/conf/MapConfig.js
index a039e8f..636c051 100644
--- a/src/conf/MapConfig.js
+++ b/src/conf/MapConfig.js
@@ -1,7 +1,9 @@
锘縤mport * as L from 'leaflet'
import TDT from './TDT'
-import { LayerSewersLine, LayerSewersPoint } from './LayerSewers'
-import { LayerWasteWater } from './LayerWasteWater'
+import { LayerSewersLine, LayerSewersPoint } from './layers/LayerSewers'
+import { LayerWasteWater } from './layers/LayerWasteWater'
+import { LayerSolidWaste } from './layers/LayerSolidWaste'
+import { LayerWasteGas } from './layers/LayerWasteGas'
const curWwwPath = window.document.location.href
const pathname = window.document.location.pathname
@@ -40,7 +42,7 @@
IntranetBaseMaps: TDT.intranet,
InternetBaseMaps: TDT.internet,
Layers: {
- LayerSewersLine: [LayerSewersLine, LayerWasteWater],
+ LayerSewersLine: [LayerSewersLine, LayerWasteWater, LayerWasteWater, LayerWasteGas, LayerSolidWaste],
layerSewersPoint: LayerSewersPoint
} // 姹¢洦姘村浘灞傞厤缃�
}
diff --git a/src/conf/LayerSewers.js b/src/conf/layers/LayerSewers.js
similarity index 99%
rename from src/conf/LayerSewers.js
rename to src/conf/layers/LayerSewers.js
index 65c109d..a61b541 100644
--- a/src/conf/LayerSewers.js
+++ b/src/conf/layers/LayerSewers.js
@@ -1,13 +1,11 @@
const APP_GIS_HOST_2 = 'http://xearth.cn:8088'
+const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs'
// const APP_GIS_HOST_2 = 'http://localhost:3000'
// const APP_GIS_HOST_2 = 'http://192.168.31.226:8088'
export const LayerSewersLine = {
code: 'pipeline',
name: '绠$綉鏁版嵁',
type: 'geojson',
- // url: APP_GIS_HOST_2 + '/server/ogcserver/PipeLineTest/wms?version=1.1.1',
- // url: APP_GIS_HOST_2 + '/layer/findLayer?layerName={sname}',
- url: APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs?version=1.0.0&TYPENAME={sname}&REQUEST=getfeature&OUTPUTFORMAT=json&maxFeatures=20000',
checked: true,
layers: [
{
@@ -15,7 +13,7 @@
name: '闆ㄦ按绾�',
sname: '绠$綉', // 琛ㄥ悕
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=绠$綉',
minZoom: 10, // 鍦ㄦ寚瀹氱骇鍒樉绀�
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -24,7 +22,7 @@
name: '鍚补姹℃按绾�',
sname: '鍚补姹℃按',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=鍚补姹℃按',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -33,7 +31,7 @@
name: '鍚洂姹℃按绾�',
sname: '鍚洂姹℃按',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=鍚洂姹℃按',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -42,7 +40,7 @@
name: '鍚⒈姹℃按绾�',
sname: '鍚⒈姹℃按',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=鍚⒈姹℃按',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -51,7 +49,7 @@
name: '鎺掑彛',
sname: '鎺掑彛',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=鎺掑彛',
minZoom: 10,
childLayer: 'pk' // 鍏宠仈PointLayers
},
@@ -60,7 +58,7 @@
name: '浜嬫晠姘寸嚎',
sname: '浜嬫晠姘�',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=浜嬫晠姘�',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -69,7 +67,7 @@
name: '寰幆姘寸嚎',
sname: '寰幆姘�',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=寰幆姘�',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -78,7 +76,7 @@
name: '鍑�鍖栨按绾�',
sname: '鍑�鍖栨按',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=鍑�鍖栨按',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -87,7 +85,7 @@
name: '鐢熸椿姹℃按',
sname: '鐢熸椿姹℃按',
checked: true, // 榛樿閫変腑鐘舵��
- filter: {},
+ wfs: WFS_URL + '?TYPENAME=鐢熸椿姹℃按',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
diff --git a/src/conf/layers/LayerSolidWaste.js b/src/conf/layers/LayerSolidWaste.js
new file mode 100644
index 0000000..3a654b6
--- /dev/null
+++ b/src/conf/layers/LayerSolidWaste.js
@@ -0,0 +1,27 @@
+/**
+ * 鍥哄簾鍥惧眰
+ * @type {string}
+ */
+export const LayerSolidWaste = {
+ code: 'solidWaste',
+ name: '搴熸皵',
+ checked: true,
+ layers: [
+ {
+ code: 'solidWasteQy',
+ name: '浼佷笟',
+ sname: '浼佷笟', // 琛ㄥ悕
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: 'http://www.baidu.com', // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
+ minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
+ },
+ {
+ code: 'solidWasteJcd',
+ name: '鐩戞祴鐐�',
+ sname: '鐩戞祴鐐�',
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: 'http://www.baidu2.com',
+ minZoom: 10
+ }
+ ]
+}
diff --git a/src/conf/layers/LayerWasteGas.js b/src/conf/layers/LayerWasteGas.js
new file mode 100644
index 0000000..3860e94
--- /dev/null
+++ b/src/conf/layers/LayerWasteGas.js
@@ -0,0 +1,51 @@
+/**
+ * 搴熸皵鍥惧眰
+ * @type {string}
+ */
+export const LayerWasteGas = {
+ code: 'wasteGas',
+ name: '搴熸皵',
+ checked: true,
+ layers: [
+ {
+ code: 'wasteGasQy',
+ name: '浼佷笟',
+ sname: '浼佷笟', // 琛ㄥ悕
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: 'http://www.baidu.com', // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
+ minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
+ },
+ {
+ code: 'wasteGasJcd',
+ name: '鐩戞祴鐐�',
+ sname: '鐩戞祴鐐�',
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: 'http://www.baidu2.com',
+ minZoom: 10
+ },
+ {
+ code: 'wasteGasVocs',
+ name: 'VOCs',
+ sname: 'VOCs',
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: '',
+ minZoom: 10
+ },
+ {
+ code: 'wasteGasKrq',
+ name: '鍙噧姘�',
+ sname: '鍙噧姘�',
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: '',
+ minZoom: 10
+ },
+ {
+ code: 'wasteGasYhq',
+ name: '鏈夊姘�',
+ sname: '鏈夊姘�',
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: '',
+ minZoom: 10
+ }
+ ]
+}
diff --git a/src/conf/layers/LayerWasteWater.js b/src/conf/layers/LayerWasteWater.js
new file mode 100644
index 0000000..3f1ff32
--- /dev/null
+++ b/src/conf/layers/LayerWasteWater.js
@@ -0,0 +1,37 @@
+/**
+ * 搴熸按鍥惧眰
+ * @type {string}
+ */
+export const LayerWasteWater = {
+ code: 'pipeline',
+ name: '搴熸按',
+ checked: true,
+ layers: [
+ {
+ code: 'fsqy',
+ name: '浼佷笟',
+ sname: '浼佷笟', // 琛ㄥ悕
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: 'http://www.baidu.com', // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
+ minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
+ },
+ {
+ code: 'fsjcd',
+ name: '鐩戞祴鐐�',
+ sname: '鐩戞祴鐐�',
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: 'http://www.baidu2.com',
+ minZoom: 10,
+ childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
+ },
+ {
+ code: 'fspfk',
+ name: '鎺掓斁鍙�',
+ sname: '鎺掓斁鍙�',
+ checked: true, // 榛樿閫変腑鐘舵��
+ url: '',
+ minZoom: 10,
+ childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
+ }
+ ]
+}
diff --git a/src/utils/AjaxUtils.js b/src/utils/AjaxUtils.js
index 0499763..d0e1bfa 100644
--- a/src/utils/AjaxUtils.js
+++ b/src/utils/AjaxUtils.js
@@ -33,7 +33,7 @@
axios({
method: 'get',
url: pUrl,
- data: pData
+ params: pData
}).then(function (response) {
pBackFun(response)
})
diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue
index c5d2668..3c4b0f5 100644
--- a/src/views/MapTemplate.vue
+++ b/src/views/MapTemplate.vue
@@ -144,12 +144,17 @@
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)
--
Gitblit v1.8.0