diff --git a/src/apps/AppGridManagement/Map.vue b/src/apps/AppGridManagement/Map.vue index a9e940f7..07159a31 100644 --- a/src/apps/AppGridManagement/Map.vue +++ b/src/apps/AppGridManagement/Map.vue @@ -72,7 +72,13 @@ export default { this.areaId = this.user.areaId // this.getLeafNodes() uni.$on('goback', e => { - this.getGridInfo(e.id, true) + if (e.girdLevel == '0') { + setTimeout(() => { + this.$u.toast('请选择二级或者三级网格') + }, 400) + return false + } + this.getGridList(e.id, true) }) }, onShow() { @@ -103,6 +109,26 @@ export default { }) }, + getGridList (id) { + this.$loading() + this.$http.post(`/app/appgirdinfo/queryChildGirdInfoByGirdId?girdId=${id}`).then((res) => { + this.$hideLoading() + if (res?.data) { + const arr = res.data.map(v => { + return { + id: v.id, + girdName: v.girdName, + points: v.points ? v.points.map(p => [p.lng, p.lat]) : [] + } + }) + + this.renderGridMap(arr) + } + }).catch(() => { + this.$hideLoading() + }) + }, + getGridInfo (id, flag) { this.$loading() this.$http.post(`/app/appgirdinfo/queryDetailById?id=${id}`).then((res) => { diff --git a/src/apps/AppWalkask/add.vue b/src/apps/AppWalkask/add.vue index 8fc405d9..cc020225 100644 --- a/src/apps/AppWalkask/add.vue +++ b/src/apps/AppWalkask/add.vue @@ -4,7 +4,7 @@
- + @@ -93,7 +93,7 @@ export default { this.areaIdProps = this.user.areaId if (!this.id) { this.forms.areaId = this.user.areaId - this.areaName = this.user.areaName + this.forms.areaName = this.user.areaName } this.$dict.load('realityStatus').then(() => { this.getDetail() @@ -126,6 +126,8 @@ export default { this.forms = res.data this.forms.create_user_name = res.data.name this.forms.realityValue = res.data.reality + this.forms.areaId = res.data.areaId + this.forms.areaName = res.data.areaName this.forms.reality = this.$dict.getLabel('realityStatus', res.data.reality) if (res.data.images) { this.forms.images = JSON.parse(res.data.images || '[]') diff --git a/src/apps/AppWalkask/detail.vue b/src/apps/AppWalkask/detail.vue index 04382260..957921bd 100644 --- a/src/apps/AppWalkask/detail.vue +++ b/src/apps/AppWalkask/detail.vue @@ -8,7 +8,6 @@ {{ data.name }} {{ data.menuLevel3Name }} - {{ $dict.getLabel('realityStatus', data.reality) }}
@@ -110,7 +109,7 @@ export default { height: 40px; border-radius: 4px; border: 1px solid #FFFFFF; - margin-right: 16px; + margin-left: 16px; } } } diff --git a/src/components/AiAreaPicker.vue b/src/components/AiAreaPicker.vue index b02eaf1a..fb912697 100644 --- a/src/components/AiAreaPicker.vue +++ b/src/components/AiAreaPicker.vue @@ -5,7 +5,7 @@
-
+
@@ -18,7 +18,7 @@
-
@@ -90,6 +90,7 @@ export default { return { fullArea: [], index: '', + areaName: '', list: [], levelLabels: ["省", "市", "县/区", "镇/街道", "村/社区"], selected: {}, @@ -101,10 +102,18 @@ export default { v && (this.getFullArea()) }, + value (v) { + if (this.list.length && v) { + this.areaName = this.list.find((e) => e.id == this.value).name + } + }, + fullArea: { handler(v) { this.$nextTick(() => { - this.scrollHeight() + if (v) { + this.scrollHeight() + } }) } } @@ -118,7 +127,7 @@ export default { this.$refs.areaSelector.showPopup() }, scrollHeight () { - return this.height = `calc(100% - ${document.querySelector('.areaSelector').offsetHeight}px)` + return this.height = document.querySelector('.areaSelector') && `calc(100% - ${document.querySelector('.areaSelector').offsetHeight}px)` }, getFullArea() { let areaId = this.areaId || (this.all ? '' : this.$areaId) @@ -134,8 +143,8 @@ export default { this.fullArea = res.data.reverse().slice(this.dataRange) } else { this.fullArea = res.data + } - return this.fullArea } }) @@ -148,10 +157,26 @@ export default { if (res.data.length) { this.list = res.data let self = this.fullArea.find((e) => e.id == this.areaId) + + if (this.value && !this.areaName && this.value !== this.areaId) { + this.areaName = this.list.find((e) => e.id == this.value).name + } + + if (!this.areaName && this.value === this.areaId) { + this.areaName = self.name + } if (self.id) { this.list.unshift(self) } this.scrollHeight() + } else { + if (this.areaId.substr(this.areaId.length - 3, 3) !== '000') { + this.list = [{ + id: this.areaId, + name: this.fullArea[0].name + }] + this.areaName = this.fullArea[0].name + } } }) }, @@ -171,10 +196,11 @@ export default { }) if (this.selected.type == 5) { - fullName = fullName + this.selected.name + fullName = fullName + (this.selected.name || this.areaName) } + this.areaName = this.selected.name || this.areaName this.$emit('update:fullName', fullName) - this.$emit('update:name', this.selected.name) + this.$emit('update:name', (this.selected.name || this.areaName)) this.closePopup() }, getChild(op) { @@ -210,7 +236,6 @@ export default { return false } - console.log(this.index) this.getFullArea().then(() => { this.getChildAreas(this.currentArea.id || this.areaId) }) diff --git a/src/store/index.js b/src/store/index.js index a84ac1f9..ead413df 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -356,7 +356,7 @@ const store = new Vuex.Store({ state.dispatch("injectJWeixin", "selectPrivilegedContact").then(() => { setTimeout(() => { let sdk = typeof wx?.invoke == 'function' ? wx : jWeixin - sdk?.invoke("selectEnterpriseContact", { + sdk?.invoke("selectPrivilegedContact", { fromDepartmentId: -1, selectedContextContact: 1, mode: "multi",