diff --git a/favicon.ico b/favicon.ico index 34b63ac..586e43b 100644 --- a/favicon.ico +++ b/favicon.ico Binary files differ diff --git a/favicon.ico b/favicon.ico index 34b63ac..586e43b 100644 --- a/favicon.ico +++ b/favicon.ico Binary files differ diff --git a/src/views/baseSource/compEdit.vue b/src/views/baseSource/compEdit.vue index a1b69d6..833b86a 100644 --- a/src/views/baseSource/compEdit.vue +++ b/src/views/baseSource/compEdit.vue @@ -215,44 +215,39 @@ // TODO: 添加部件:可优化为读取配置文件里的部件图层信息 // 添加部件, // const partsLayer = this.baseConfig.partsLayer - for (let i = 1; i <= 40; i++) { - let item = { url: `${this.baseUrl}${this.partsEditUrl}/${i}`, minZoom: 18 } - console.log(item) - if (i === 15) { - item = { - url: `${this.baseUrl}${this.partsEditUrl}/${i}`, - minZoom: 18, - style: function(feature) { - return { color: '#ff0000', opacity: 0.75, weight: 5 } - } - } + const partsLayer = this.baseConfig.partsLayer + for (const parent of partsLayer) { // 遍历大类 + const childs = parent.children + for (const child of childs) { // 遍历小类 + console.log(item) + const item = { url: `${this.baseUrl}${this.partsEditUrl}/${child.layer}`, minZoom: 18 } + var layer = esri.featureLayer(item).addTo(map) + // 点击部件事件 + layer.on('click', (e) => { + // 获取要素的属性 + const properties = e.layer.feature.properties + that.currentItem = e.layer.feature + that.searchLayerByUrl(e.layer.options.url) + // 弹窗样式 + var str = `
+
+ ${properties['小类名称']} +
+
大类:${properties['大类名称']}
+
小类:${properties['小类名称']}
+
部件编码:${properties['编码']}
+
权属单位:${properties['权属单位'] ? properties.权属单位 : '未知'}
+
详细地址:${properties['详细地址'] ? properties.详细地址 : '未知'}
+
+ + +
+
` + var popup = L.popup().setContent(str) + e.layer.dragging._marker.bindPopup(popup, { minWidth: 200 }).openPopup() + }) + this.parts.push(layer) } - var layer = esri.featureLayer(item).addTo(map) - // 点击部件事件 - layer.on('click', function(e) { - // 获取要素的属性 - const properties = e.layer.feature.properties - that.currentItem = e.layer.feature - that.searchLayerByUrl(e.layer.options.url) - // 弹窗样式 - var str = `
-
- ${properties['小类名称']} -
-
大类:${properties['大类名称']}
-
小类:${properties['小类名称']}
-
部件编码:${properties['编码']}
-
权属单位:${properties['权属单位'] ? properties.权属单位 : '未知'}
-
详细地址:${properties['详细地址'] ? properties.详细地址 : '未知'}
-
- - -
-
` - var popup = L.popup().setContent(str) - e.layer.dragging._marker.bindPopup(popup, { minWidth: 200 }).openPopup() - }) - this.parts.push(layer) } // this.map.setZoom(this.baseConfig.zoom) }, diff --git a/favicon.ico b/favicon.ico index 34b63ac..586e43b 100644 --- a/favicon.ico +++ b/favicon.ico Binary files differ diff --git a/src/views/baseSource/compEdit.vue b/src/views/baseSource/compEdit.vue index a1b69d6..833b86a 100644 --- a/src/views/baseSource/compEdit.vue +++ b/src/views/baseSource/compEdit.vue @@ -215,44 +215,39 @@ // TODO: 添加部件:可优化为读取配置文件里的部件图层信息 // 添加部件, // const partsLayer = this.baseConfig.partsLayer - for (let i = 1; i <= 40; i++) { - let item = { url: `${this.baseUrl}${this.partsEditUrl}/${i}`, minZoom: 18 } - console.log(item) - if (i === 15) { - item = { - url: `${this.baseUrl}${this.partsEditUrl}/${i}`, - minZoom: 18, - style: function(feature) { - return { color: '#ff0000', opacity: 0.75, weight: 5 } - } - } + const partsLayer = this.baseConfig.partsLayer + for (const parent of partsLayer) { // 遍历大类 + const childs = parent.children + for (const child of childs) { // 遍历小类 + console.log(item) + const item = { url: `${this.baseUrl}${this.partsEditUrl}/${child.layer}`, minZoom: 18 } + var layer = esri.featureLayer(item).addTo(map) + // 点击部件事件 + layer.on('click', (e) => { + // 获取要素的属性 + const properties = e.layer.feature.properties + that.currentItem = e.layer.feature + that.searchLayerByUrl(e.layer.options.url) + // 弹窗样式 + var str = `
+
+ ${properties['小类名称']} +
+
大类:${properties['大类名称']}
+
小类:${properties['小类名称']}
+
部件编码:${properties['编码']}
+
权属单位:${properties['权属单位'] ? properties.权属单位 : '未知'}
+
详细地址:${properties['详细地址'] ? properties.详细地址 : '未知'}
+
+ + +
+
` + var popup = L.popup().setContent(str) + e.layer.dragging._marker.bindPopup(popup, { minWidth: 200 }).openPopup() + }) + this.parts.push(layer) } - var layer = esri.featureLayer(item).addTo(map) - // 点击部件事件 - layer.on('click', function(e) { - // 获取要素的属性 - const properties = e.layer.feature.properties - that.currentItem = e.layer.feature - that.searchLayerByUrl(e.layer.options.url) - // 弹窗样式 - var str = `
-
- ${properties['小类名称']} -
-
大类:${properties['大类名称']}
-
小类:${properties['小类名称']}
-
部件编码:${properties['编码']}
-
权属单位:${properties['权属单位'] ? properties.权属单位 : '未知'}
-
详细地址:${properties['详细地址'] ? properties.详细地址 : '未知'}
-
- - -
-
` - var popup = L.popup().setContent(str) - e.layer.dragging._marker.bindPopup(popup, { minWidth: 200 }).openPopup() - }) - this.parts.push(layer) } // this.map.setZoom(this.baseConfig.zoom) }, diff --git a/static/project.config.json b/static/project.config.json index b4f0393..b81dd3b 100644 --- a/static/project.config.json +++ b/static/project.config.json @@ -12,51 +12,11 @@ "code":"01", "name":"公共设施", "children":[ - {"code": "01","name": "上水井盖","layer": 20}, - {"code": "02","name": "污水井盖","layer": 24}, - {"code": "05","name": "电力井盖","layer": 16}, - {"code": "06","name": "路灯井盖","layer": 30}, - {"code": "07","name": "通信井盖","layer": 19}, - {"code": "11","name": "燃气井盖","layer": 34}, - {"code": "12","name": "公安井盖","layer": 6} - ] - }, - { - "code": "02", - "name": "交通设施", - "children": [ - {"code": "01","name": "停车场","layer": 23}, - {"code": "10","name": "交通标志牌","layer": 13}, - {"code": "16","name": "交通岗亭","layer": 15}, - {"code": "17","name": "交通护栏","layer": 37}, - {"code": "14","name": "交通信号灯","layer": 26}, - {"code": "04","name": "公交站亭","layer": 39}, - {"code": "12","name": "路名牌","layer": 12} - ] - }, - { - "code": "03", - "name": "市容环境设施", - "children": [ - {"code": "01","name": "公共厕所","layer": 41}, - {"code": "05","name": "垃圾箱","layer": 28} - ] - }, - { - "code": "04", - "name": "园林绿化设施", - "children": [ - {"code": "06","name": "雕塑","layer": 40}, - {"code": "10","name": "喷泉","layer": 33}, - {"code": "05","name": "花架花钵","layer": 10}, - {"code": "09","name": "绿地附属设施","layer": 32} - ] - }, - { - "code": "05", - "name": "其他部件", - "children": [ - {"code": "01","name": "人防工事","layer": 35} + + {"code": "05","name": "电力井盖","layer": 4}, + {"code": "06","name": "路灯井盖","layer": 3}, + {"code": "07","name": "通信井盖","layer": 1}, + {"code": "12","name": "公安井盖","layer": 2} ] } ],