This commit is contained in:
曹辉 2023-05-17 16:44:14 +08:00
parent 5a3c5f8b3d
commit f3ace8e13e
2 changed files with 108 additions and 108 deletions

View File

@ -76,4 +76,12 @@ export function updateRemoteSigns(id, remoteSigns) {
url: `/system/area/updateRemoteSigns?id=${id}&remoteSigns=${remoteSigns}`,
method: 'POST'
})
}
//同步百度地图
export function getAreaList(keyword, areaLevel, parentCode, parentId) {
return request({
url: `/system/area/getAreaList?keyword=${keyword}&areaLevel=${areaLevel}&parentCode=${parentCode}&parentId=${parentId}`,
method: 'get'
})
}

View File

@ -49,16 +49,14 @@
/>
</el-form-item>
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="resethandleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
<el-button type="primary" icon="el-icon-search" size="mini" @click="resethandleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
<el-form-item style="float: right;" v-if="getbaidulist.areaName">
<el-button icon="el-icon-loading" size="mini" @click="getbaiduArea" type="info">
点击同步百度地图区域信息
<span>({{getbaidulist.areaName=='区域列表'?'全国':getbaidulist.areaName}})</span>
</el-button>
</el-form-item>
</el-form>
<!-- <el-row :gutter="10" class="mb8">
@ -112,12 +110,8 @@
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
</el-row> -->
<el-table
v-loading="loading"
:data="areaList"
@selection-change="handleSelectionChange"
>
</el-row>-->
<el-table v-loading="loading" :data="areaList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column label="父级id" align="center" prop="parentId" /> -->
<el-table-column label="区域名称" align="center" prop="areaName" />
@ -129,17 +123,11 @@
active-color="#13ce66"
inactive-color="#ff4949"
@change="updateRemoteSigns(scope.row)"
>
</el-switch>
></el-switch>
<!-- {{ scope.row.remoteSigns == 0 ? "否" : "是" }} -->
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
@ -147,16 +135,14 @@
icon="el-icon-circle-plus-outline"
@click="handleadd(scope.row)"
v-hasPermi="['system:area:add']"
>新增</el-button
>
>新增</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['system:area:edit']"
>修改</el-button
>
>修改</el-button>
<!-- <el-button
size="mini"
type="text"
@ -164,7 +150,7 @@
@click="handleDelete(scope.row)"
v-hasPermi="['system:area:remove']"
>删除</el-button
> -->
>-->
</template>
</el-table-column>
</el-table>
@ -177,33 +163,14 @@
/>
</el-col>
</el-row>
<!-- 添加或修改区域对话框 -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="130px">
<el-form-item
label="父级区域名称"
prop="parentName"
:required="true"
v-if="form.parentName"
>
<el-input
v-model="form.parentName"
placeholder="请输入父级区域名称"
disabled
/>
<el-form-item label="父级区域名称" prop="parentName" :required="true" v-if="form.parentName">
<el-input v-model="form.parentName" placeholder="请输入父级区域名称" disabled />
</el-form-item>
<el-form-item
label="父级区域编码"
prop="parentCode"
:required="true"
v-if="form.parentCode"
>
<el-input
v-model="form.parentCode"
placeholder="请输入父级区域编码"
disabled
/>
<el-form-item label="父级区域编码" prop="parentCode" :required="true" v-if="form.parentCode">
<el-input v-model="form.parentCode" placeholder="请输入父级区域编码" disabled />
</el-form-item>
<el-form-item label="区域名称" prop="areaName">
<el-input v-model="form.areaName" placeholder="请输入区域名称" />
@ -213,12 +180,12 @@
</el-form-item>
<!-- <el-form-item label="区域级别" prop="areaLevel">
<el-input v-model="form.areaLevel" placeholder="请输入区域级别" />
</el-form-item> -->
</el-form-item>-->
<el-form-item label="偏远地区" prop="remoteSigns">
<el-radio v-model="form.remoteSigns" label="0"></el-radio>
<el-radio v-model="form.remoteSigns" label="1"></el-radio>
</el-form-item>
<el-form-item label="排序" prop="">
<el-form-item label="排序" prop>
<el-input
v-model.number="form.sort"
placeholder="请输入排序(只能输入数字)"
@ -245,6 +212,7 @@ import {
selectAreaListinfo,
selectAreaListquery,
updateRemoteSigns,
getAreaList
} from "@/api/system/area";
export default {
@ -255,7 +223,7 @@ export default {
deptOptions: undefined,
defaultProps: {
children: "children",
label: "areaName",
label: "areaName"
},
areaName: "",
//
@ -287,27 +255,28 @@ export default {
sort: null,
areaType: null,
parentCode: null,
remoteSigns: null,
remoteSigns: null
},
//
form: {
remoteSigns: "0",
remoteSigns: "0"
},
//
rules: {
areaCode: [
{ required: true, message: "请输入区域编码", trigger: "blur" },
{ required: true, message: "请输入区域编码", trigger: "blur" }
],
areaName: [
{ required: true, message: "请输入区域名称", trigger: "blur" },
{ required: true, message: "请输入区域名称", trigger: "blur" }
],
areaLevel: [
{ required: true, message: "请输入区域级别", trigger: "blur" },
{ required: true, message: "请输入区域级别", trigger: "blur" }
],
remoteSigns: [
{ required: true, message: "请选择是否是偏远地区", trigger: "blur" },
],
{ required: true, message: "请选择是否是偏远地区", trigger: "blur" }
]
},
getbaidulist: {}
};
},
created() {
@ -321,7 +290,7 @@ export default {
this.areaName = "";
return;
} else {
selectAreaListquery(val).then((res) => {
selectAreaListquery(val).then(res => {
this.deptOptions = res.data;
});
}
@ -331,16 +300,34 @@ export default {
this.selectAreaListin();
}
}
},
}
},
methods: {
//
getbaiduArea() {
console.log(this.getbaidulist)
if (this.getbaidulist.areaName == "区域列表") {
getAreaList("", 1, "", "").then(res => {
this.handleNodeClick(this.getbaidulist);
});
} else {
getAreaList(
this.getbaidulist.areaName,
"",
this.getbaidulist.areaCode,
this.getbaidulist.id
).then(res => {
this.handleNodeClick(this.getbaidulist);
});
}
},
//
updateRemoteSigns(row) {
if (row.remoteSigns) {
this.$confirm('确定修改"' + row.areaName + '"为偏远地区吗?', {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
type: "warning"
})
.then(() => {
var remoteSigns = null;
@ -349,11 +336,11 @@ export default {
} else {
remoteSigns = 0;
}
updateRemoteSigns(row.id, remoteSigns).then((res) => {
updateRemoteSigns(row.id, remoteSigns).then(res => {
if (res.code == 200) {
this.$message({
type: "success",
message: "修改为偏远地区!",
message: "修改为偏远地区!"
});
}
});
@ -362,14 +349,14 @@ export default {
row.remoteSigns = false;
this.$message({
type: "info",
message: "取消修改",
message: "取消修改"
});
});
} else {
this.$confirm('确定修改"' + row.areaName + '"为非偏远地区吗吗?', {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
type: "warning"
})
.then(() => {
var remoteSigns = null;
@ -378,11 +365,11 @@ export default {
} else {
remoteSigns = 0;
}
updateRemoteSigns(row.id, remoteSigns).then((res) => {
updateRemoteSigns(row.id, remoteSigns).then(res => {
if (res.code == 200) {
this.$message({
type: "success",
message: "修改为非偏远地区!",
message: "修改为非偏远地区!"
});
}
});
@ -391,25 +378,26 @@ export default {
row.remoteSigns = true;
this.$message({
type: "info",
message: "取消修改",
message: "取消修改"
});
});
}
},
//
handleNodeClick(data) {
this.getbaidulist = data;
this.queryParams.areaLevel = null;
this.loading = true;
this.queryParams.parentCode = data.areaCode;
if (data.areaCode != 1) {
this.handleQuery();
selectAreaList("", data.areaCode).then((res) => {
selectAreaList("", data.areaCode).then(res => {
if (res.data.length > 0) {
res.data.forEach((e) => {
res.data.forEach(e => {
e.children = [
{
areaName: "",
},
areaName: ""
}
];
});
} else {
@ -422,13 +410,13 @@ export default {
this.queryParams.parentCode = null;
this.queryParams.areaLevel = 1;
this.handleQuery();
selectAreaListinfo(1).then((res) => {
selectAreaListinfo(1).then(res => {
if (res.data.length > 0) {
res.data.forEach((e) => {
res.data.forEach(e => {
e.children = [
{
areaName: "",
},
areaName: ""
}
];
});
} else {
@ -441,20 +429,20 @@ export default {
},
selectAreaListin() {
this.loading = true;
selectAreaListinfo(1).then((res) => {
res.data.forEach((e) => {
selectAreaListinfo(1).then(res => {
res.data.forEach(e => {
e.children = [
{
areaName: "",
},
areaName: ""
}
];
});
var obj = [
{
areaName: "区域列表",
children: res.data,
areaCode: 1,
},
areaCode: 1
}
];
this.deptOptions = obj;
this.loading = false;
@ -462,11 +450,11 @@ export default {
},
info() {
this.loading = true;
selectAreaList(this.areaName).then((res) => {
selectAreaList(this.areaName).then(res => {
this.loading = false;
var obj = {
areaName: "区域列表",
children: res.data,
children: res.data
};
this.deptOptions = obj;
});
@ -474,8 +462,8 @@ export default {
/** 查询区域列表 */
getList() {
this.loading = true;
listArea(this.queryParams).then((response) => {
response.rows.forEach((e) => {
listArea(this.queryParams).then(response => {
response.rows.forEach(e => {
if (e.remoteSigns == 1) {
e.remoteSigns = true;
} else {
@ -508,7 +496,7 @@ export default {
updateTime: null,
areaType: null,
parentCode: null,
remoteSigns: "0",
remoteSigns: "0"
};
this.resetForm("form");
},
@ -529,11 +517,15 @@ export default {
this.resetForm("queryForm");
this.queryParams.parentCode = null;
this.queryParams.areaLevel = 1;
this.getbaidulist = {
areaName: "区域列表",
areaLevel: 1
};
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.ids = selection.map(item => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
@ -551,7 +543,7 @@ export default {
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getArea(id).then((response) => {
getArea(id).then(response => {
response.data.remoteSigns = String(response.data.remoteSigns);
this.form = response.data;
this.open = true;
@ -560,24 +552,24 @@ export default {
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate((valid) => {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updateArea(this.form).then((response) => {
updateArea(this.form).then(response => {
if (response.code == 200) {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}
});
} else {
addArea(this.form).then((response) => {
addArea(this.form).then(response => {
if (response.code == 200) {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.queryParams.parentCode = this.form.parentCode;
this.queryParams.areaLevel = null;
this.getList();
this.$modal.msgSuccess("新增成功");
this.open = false;
this.queryParams.parentCode = this.form.parentCode;
this.queryParams.areaLevel = null;
this.getList();
}
});
}
@ -589,7 +581,7 @@ export default {
const ids = row.id || this.ids;
this.$modal
.confirm('是否确认删除区域名称为"' + row.areaName + '"的数据项吗?')
.then(function () {
.then(function() {
return delArea(ids);
})
.then(() => {
@ -603,11 +595,11 @@ export default {
this.download(
"system/area/export",
{
...this.queryParams,
...this.queryParams
},
`area_${new Date().getTime()}.xlsx`
);
},
},
}
}
};
</script>