From 8b2f2429f0b176264ff8ba0fb5617f9312932837 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Tue, 23 Jan 2024 17:45:37 +0800
Subject: [PATCH] 区域展示,机构、房屋修改
---
src/views/system/dept.vue | 2
src/views/userHouse/houseList.vue | 139 +++++++++++++++++++++++++++++++++-------------
src/views/base/region.vue | 2
3 files changed, 102 insertions(+), 41 deletions(-)
diff --git a/src/views/base/region.vue b/src/views/base/region.vue
index 62e43bb..72831f9 100644
--- a/src/views/base/region.vue
+++ b/src/views/base/region.vue
@@ -72,7 +72,7 @@
nodeKey: 'id',
lazy: true,
treeLoad: function (node, resolve) {
- const parentCode = (node.level === 0) ? "361102" : node.data.id;
+ const parentCode = (node.level === 0) ? "0" : node.data.id;
getLazyTree(parentCode).then(res => {
resolve(res.data.data.map(item => {
return {
diff --git a/src/views/system/dept.vue b/src/views/system/dept.vue
index 0da07eb..eb50093 100644
--- a/src/views/system/dept.vue
+++ b/src/views/system/dept.vue
@@ -140,7 +140,7 @@
label: "管辖区域",
prop: "regionCode",
type: "tree",
- dicUrl: "/api/blade-system/region/tree?cityCode=361100000000",
+ dicUrl: "/api/blade-system/region/tree?cityCode=361100",
props: {
label: "name",
value: "id",
diff --git a/src/views/userHouse/houseList.vue b/src/views/userHouse/houseList.vue
index 7118fa2..392c052 100644
--- a/src/views/userHouse/houseList.vue
+++ b/src/views/userHouse/houseList.vue
@@ -17,20 +17,23 @@
<el-button type="warning" size="small" plain v-if="userInfo.role_name.includes('admin')"
icon="el-icon-download" @click="handleExport">导出
</el-button> -->
- <el-button type="success" size="small" plain v-if="permission.house_import"
- icon="el-icon-upload2" @click="handleImport">导入
+ <el-button type="success" size="small" plain v-if="permission.house_import" icon="el-icon-upload2"
+ @click="handleImport">导入
</el-button>
- <el-button type="warning" size="small" plain v-if="permission.house_export"
- icon="el-icon-download" @click="handleExport">导出
+ <el-button type="warning" size="small" plain v-if="permission.house_export" icon="el-icon-download"
+ @click="handleExport">导出
</el-button>
+ </template>
+ <template slot-scope="{row}" slot="location">
+ <span v-text="showLocation(row.location)"></span>
</template>
<template slot-scope="{row, size}" slot="menu">
<el-button :size="size" type="text" icon="el-icon-circle-plus-outline"
v-if="permission.house_manager" @click="handleHouseholdManager(row)">住户管理
</el-button>
- <el-button :size="size" type="text" icon="el-icon-circle-plus-outline"
- v-if="permission.house_tag" @click="manageLabel(row)">标签
+ <el-button :size="size" type="text" icon="el-icon-circle-plus-outline" v-if="permission.house_tag"
+ @click="manageLabel(row)">标签
</el-button>
</template>
@@ -133,14 +136,13 @@
} from "@/util/date"
import NProgress from 'nprogress'
import 'nprogress/nprogress.css'
-import func from "@/util/func"
import householdManager from "./components/householdManager"
import Qs from "qs"
export default {
components: {
householdManager
},
- data () {
+ data() {
//手机号格式校验
let validatorPhone = function (rule, value, callback) {
@@ -237,12 +239,32 @@
overHidden: true,
label: '地址',
parent: false,
- prop: "houseName",
+ prop: "address",
display: false,
searchLabelWidth: 66,
searchSpan: 4,
search: true,
},
+ {
+ overHidden: true,
+ slot: true,
+ label: "地址",
+ prop: "location",
+ type: 'map',
+ disabled: false,
+ dataType: "string",
+ searchLabelWidth: 66,
+ hide:true,
+ value: [117.966460, 28.431002, ""],
+ rules: [
+ {
+ required: true,
+ message: "请选择巡查地址",
+ trigger: "blur",
+ },
+ ],
+ },
+
{
hide: true,
parent: false,
@@ -487,10 +509,26 @@
}
}
},
- watch: {},
+ watch: {
+ 'form.source': {
+ handler(newData) {
+
+ let locationColumn = this.findObject(
+ this.option.column,
+ 'location'
+ )
+
+ if (newData == 1) {
+ locationColumn.disabled = true
+ } else {
+ locationColumn.disabled = false
+ }
+ },
+ },
+ },
computed: {
...mapGetters(["userInfo", "permission"]),
- permissionList () {
+ permissionList() {
return {
addBtn: this.vaildData(this.permission.house_add, true),
viewBtn: this.vaildData(this.permission.house_view, true),
@@ -499,7 +537,7 @@
}
},
- textDispose () {
+ textDispose() {
return (row, flag, type) => {
if (row[flag] || row[type] == null) {
return row[type]
@@ -512,23 +550,43 @@
}
}
},
+ showLocation() {
+ return (data) => {
+ if (data != null && data.indexOf(',') != -1) {
+ data = data.split(',')
- labelDispose () {
+ return data[2]
+ } else {
+ return data || ''
+ }
+ }
+ },
+
+ labelDispose() {
return (list) => {
return list.map(item => item.labelName).join(',')
}
},
- getColor () {
+ getColor() {
return (data) => {
return setLabelColor(data)
}
}
},
- mounted () { },
+ mounted() { },
methods: {
+ locationDispose(data) {
+ data = data.split(',')
- onsubmit () {
+ return {
+ lng: data[0],
+ lat: data[1],
+ address: data[2]
+ }
+ },
+
+ onsubmit() {
if (this.labelForm.color === '#EBEDF0') {
let params = {
householdId: this.currentRow.id,
@@ -560,13 +618,13 @@
}
},
- changLabel (item) {
+ changLabel(item) {
this.editLabelFlge = true
this.currentLabel = item
this.labelForm.color = item.color
this.labelForm.remark = item.remark
},
- manageLabel (item) {
+ manageLabel(item) {
this.loading = true
this.currentRow = item
this.labelFlag = true
@@ -600,14 +658,14 @@
})
})
},
- handleHouseholdManager (row) {
+ handleHouseholdManager(row) {
var that = this
this.householdManagerVisible = true
this.$nextTick(() => {
that.$refs.householdManager.init(row)
})
},
- rowSave (row, done, loading) {
+ rowSave(row, done, loading) {
if (row.imageUrls.length > 0) {
var urls = []
var split = row.imageUrls.split(",")
@@ -618,7 +676,8 @@
row.imageUrls = urls.join(",")
}
- add(row).then(() => {
+ add({...row,...this.locationDispose(row.location)}
+ ).then(() => {
this.initFlag = false
this.onLoad(this.page)
this.$message({
@@ -631,7 +690,7 @@
loading()
})
},
- rowUpdate (row, index, done, loading) {
+ rowUpdate(row, index, done, loading) {
if (row.imageUrls.length > 0) {
var urls = []
var split = row.imageUrls.split(",")
@@ -642,7 +701,7 @@
row.imageUrls = urls.join(",")
}
- update(row).then(() => {
+ update({...row,...this.locationDispose(row.location)}).then(() => {
this.initFlag = false
this.onLoad(this.page)
this.$message({
@@ -655,7 +714,7 @@
loading()
})
},
- rowDel (row) {
+ rowDel(row) {
this.$confirm("确定将选择数据删除?", {
confirmButtonText: "确定",
cancelButtonText: "取消",
@@ -672,25 +731,25 @@
})
})
},
- searchReset () {
+ searchReset() {
this.query = {}
this.treeDeptId = ''
this.onLoad(this.page)
},
- searchChange (params, done) {
+ searchChange(params, done) {
this.query = params
this.page.currentPage = 1
this.onLoad(this.page, params)
done()
},
- selectionChange (list) {
+ selectionChange(list) {
this.selectionList = list
},
- selectionClear () {
+ selectionClear() {
this.selectionList = []
this.$refs.crud.toggleSelection()
},
- handleDelete () {
+ handleDelete() {
if (this.selectionList.length === 0) {
this.$message.warning("请选择至少一条数据")
return
@@ -712,16 +771,16 @@
this.$refs.crud.toggleSelection()
})
},
- handleImport () {
+ handleImport() {
this.excelBox = true
},
- uploadAfter (res, done, loading, column) {
+ uploadAfter(res, done, loading, column) {
window.console.log(column)
this.excelBox = false
this.refreshChange()
done()
},
- handleExport () {
+ handleExport() {
this.$confirm("是否导出房屋数据?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
@@ -740,17 +799,19 @@
})
})
},
- handleTemplate () {
+ handleTemplate() {
exportBlob(`/api/blade-system/user/export-template?${this.website.tokenHeader}=${getToken()}`).then(res => {
downloadXls(res.data, "房屋数据模板.xlsx")
})
},
- beforeOpen (done, type) {
+ beforeOpen(done, type) {
if (["edit", "view"].includes(type)) {
getDetatil({
id: this.form.id
}).then(res => {
this.form = res.data.data
+
+ this.form.location = [this.form.lng, this.form.lat, this.form.address].join(',')
if (this.form.imageUrls) {
if (this.form.imageUrls.length > 0) {
@@ -767,16 +828,16 @@
this.initFlag = true
done()
},
- currentChange (currentPage) {
+ currentChange(currentPage) {
this.page.currentPage = currentPage
},
- sizeChange (pageSize) {
+ sizeChange(pageSize) {
this.page.pageSize = pageSize
},
- refreshChange () {
+ refreshChange() {
this.onLoad(this.page, this.query)
},
- onLoad (page, params = {}) {
+ onLoad(page, params = {}) {
this.loading = true
getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {
@@ -806,7 +867,7 @@
this.selectionClear()
})
},
- showStringDispose (row, type) {
+ showStringDispose(row, type) {
row[type] = !row[type]
}
}
--
Gitblit v1.9.3