From 5fad8feba8a8f63442a49bb0b411b791ed49f8a0 Mon Sep 17 00:00:00 2001 From: xy <271556543@qq.com> Date: Fri, 18 Aug 2023 14:24:21 +0800 Subject: [PATCH] 2023-8-18 --- src/components/XyMap/index.vue | 1 + src/draggable.js | 8 +- src/views/component/detail.vue | 142 ++++++++++++++++++++++++++++---- src/views/component/imports.vue | 5 ++ src/views/component/map.vue | 126 +++++++++++++++++++++------- src/views/component/table.vue | 3 + 6 files changed, 237 insertions(+), 48 deletions(-) diff --git a/src/components/XyMap/index.vue b/src/components/XyMap/index.vue index 08578f4..99b374d 100644 --- a/src/components/XyMap/index.vue +++ b/src/components/XyMap/index.vue @@ -1,6 +1,7 @@ diff --git a/src/draggable.js b/src/draggable.js index 16e3989..07b5915 100644 --- a/src/draggable.js +++ b/src/draggable.js @@ -12,7 +12,7 @@ export const defineDirective = () => { el.onmousedown = e => { e.stopPropagation(); - e.preventDefault(); + //e.preventDefault(); //鼠标按下,计算当前元素距离可视区的距离 let disX = e.clientX - dom.offsetLeft; let disY = e.clientY - dom.offsetTop; @@ -47,10 +47,10 @@ export const defineDirective = () => { } + setTimeout(() => { + binding.value(false) + },500) }; - el.onclick = e => { - binding.value(false) - } //return false不加的话可能导致黏连,就是拖到一个地方时div粘在鼠标上不下来,相当于onmouseup失效 //return false; }; diff --git a/src/views/component/detail.vue b/src/views/component/detail.vue index 8b47f2d..28d84cd 100644 --- a/src/views/component/detail.vue +++ b/src/views/component/detail.vue @@ -1,7 +1,7 @@ @@ -86,8 +104,30 @@ export default { return { dragging: false, searchShow: false, + selectList: { + table_name: "assets", + filter: [ + { + key: 'suoshuqu', + op: 'eq', + value: '' + }, + { + key: 'dikuaimingcheng', + op: 'like', + value: '' + } + ] + }, select: { table_name: "assets", + filter: [ + { + key: 'suoshuqu', + op: 'eq', + value: '' + } + ] }, customForm: { customFormId: "", @@ -97,7 +137,7 @@ export default { table: [], list: [], mapHeight: 0, - center: [119.597897, 31.723247], + center: [120.283692, 31.614211], isShowInfoWindow: false, openData: {}, infoWindow: null, @@ -105,22 +145,36 @@ export default { cluster: null, polygons: [], markerList: [], - nowCity: "", wxAreas: [ - "锡山区", + "宜兴市", "惠山区", - "滨湖区", - "梁溪区", "新吴区", + "梁溪区", "江阴市", - "宜兴市", + "滨湖区", + "锡山区", ], + units: new Map([ + ['jianzhu','m²'], + ['jianzhugaodu','m'], + ['dikuaizongjia','元'], + ['dikuaimianji','m²'], + ['muqianjunjia','元'], + ]) }; }, methods: { + test () { + console.log( + this.$refs['search-input'].$el + ) + }, index, areaPick(e) { - this.areaBG(e); + this.areaBG(this.wxAreas[e-1]); + this.getList().then(res => { + this.setMapMarker() + }) }, pickRow({ row }) { this.isShowInfoWindow = true; @@ -443,12 +497,15 @@ export default { }; } } + + let alignLeft = ['dikuaimingcheng'] this.table.push( Object.assign( { prop: i.field, label: i.name, width: i.width, + align: alignLeft.find(m => m === i.field) ? 'left' : 'center', fixed: i.is_fixed, }, linkOb @@ -539,7 +596,7 @@ export default { } &-list { - max-width: 500px; + max-width: 560px; border-radius: 6px; filter: drop-shadow(2px 2px 5px #00000055); background: #fff; @@ -598,20 +655,15 @@ export default {