字典添加名称筛选

This commit is contained in:
weicw
2022-02-07 18:22:41 +08:00
parent b62b755d21
commit 531657cd6a
3 changed files with 987 additions and 964 deletions

View File

@@ -1,509 +1,518 @@
<template> <template>
<div class="ele-body"> <div class="ele-body">
<a-card :bordered="false"> <a-card :bordered="false">
<a-form <a-form
:model="where" :model="where"
:wrapper-col="{ md: { span: 18 }, sm: { span: 24 } }" :wrapper-col="{ md: { span: 18 }, sm: { span: 24 } }"
> >
<a-row> <a-row>
<a-col :lg="6" :md="12" :sm="24" :xs="24"> <a-col :lg="6" :md="12" :sm="24" :xs="24">
<a-form-item label="年份:"> <a-form-item label="年份:">
<a-select v-model:value="where.year" allow-clear show-search> <a-select v-model:value="where.year" allow-clear show-search>
<a-select-option <a-select-option
v-for="(item) in yearOptions" v-for="(item) in yearOptions"
:key="item.value" :key="item.value"
>{{ item.label }} >{{ item.label }}
</a-select-option> </a-select-option>
</a-select> </a-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :lg="6" :md="12" :sm="24" :xs="24"> <a-col :lg="6" :md="12" :sm="24" :xs="24">
<a-space> <a-form-item label="测点名称:">
<a-button type="primary" @click="reload">查询</a-button> <a-input v-model:value="where.placeName" placeholder="请输入测点名称" allow-clear/>
<a-button @click="reset" style="background: #FFA200FF; border-color: #FFA200FF;color: #FFFFFF">重置</a-button> </a-form-item>
</a-space> </a-col>
</a-col> <a-col :lg="6" :md="12" :sm="24" :xs="24">
</a-row> <a-space>
<a-row> <a-button type="primary" @click="reload">查询</a-button>
<a-button @click="reset" style="background: #FFA200FF; border-color: #FFA200FF;color: #FFFFFF">重置
</a-button>
</a-space>
</a-col>
</a-row>
<a-row>
</a-row> </a-row>
</a-form> </a-form>
<a-modal <a-modal
v-model:visible="showNYear" v-model:visible="showNYear"
:title="'批量复制'" :title="'批量复制'"
:confirm-loading="loading" :confirm-loading="loading"
:body-style="{ paddingBottom: '8px' }" :body-style="{ paddingBottom: '8px' }"
@ok="copyBatch" @ok="copyBatch"
>
<a-form
ref="form"
:model="form"
:rules="rules"
:label-col="{ md: { span: 6 }, sm: { span: 24 } }"
:wrapper-col="{ md: { span: 18 }, sm: { span: 24 } }"
>
<a-form-item label="新年份" name="nYear">
<a-input-number id="inputNumber" v-model:value="nYear" :min="1970" :max="2050"/>
</a-form-item>
</a-form>
</a-modal>
<a-modal
v-model:visible="showEdit"
:title="form.roadNoisePlaceId !== undefined ? '修改' : '添加'"
:confirm-loading="loading"
:width="800"
:body-style="{ paddingBottom: '8px' }"
@ok="save"
>
<a-form
ref="form"
:model="form"
:rules="rules"
:label-col="{ md: { span: 6 }, sm: { span: 24 } }"
:wrapper-col="{ md: { span: 18 }, sm: { span: 24 } }"
>
<a-form-item label="年份" name="year">
<a-input-number v-model:value="form.year" :min="1970" :max="2050"/>
</a-form-item>
<a-form-item label="测点名称" name="placeName">
<a-input v-model:value="form.placeName" placeholder="请输入测点名称" allow-clear/>
</a-form-item>
<a-form-item label="点位编码" name="placeCode">
<a-input v-model:value="form.placeCode" placeholder="请输入点位编码" allow-clear/>
</a-form-item>
<a-form-item label="所属路段" name="road">
<a-input v-model:value="form.road" placeholder="请输入所属路段" allow-clear/>
</a-form-item>
<a-form-item label="所属城区" name="area">
<a-input v-model:value="form.area" placeholder="请输入所属城区" allow-clear/>
</a-form-item>
<a-form-item label="功能区类型" name="functionType">
<a-input v-model:value="form.functionType" placeholder="请输入功能区类型" allow-clear/>
</a-form-item>
<a-form-item label="功能区代码" name="functionCode">
<a-input v-model:value="form.functionCode" placeholder="请输入功能区代码" allow-clear/>
</a-form-item>
<a-form-item label="测点高度" name="placeHeight">
<a-input v-model:value="form.placeHeight" placeholder="请输入测点高度" allow-clear/>
</a-form-item>
<a-form-item label="测点经度" name="placeLng">
<a-input type="number" v-model:value="form.placeLng" placeholder="请输入测点经度" allow-clear/>
</a-form-item>
<a-form-item label="测点纬度" name="placeLat">
<a-input type="number" v-model:value="form.placeLat" placeholder="请输入测点纬度" allow-clear/>
</a-form-item>
<a-form-item label="点位等级" name="regionLevel">
<a-input v-model:value="form.regionLevel" placeholder="请输入点位等级" allow-clear/>
</a-form-item>
</a-form>
</a-modal>
<!-- 表格 -->
<ele-pro-table
v-model:selection="selectionList"
ref="table"
row-key="functionNoisePlaceId"
:datasource="url"
:columns="columns"
:where="where"
:scroll="{ x: 'max-content' }"
>
<template #toolbar>
<a-space>
<a-button @click="openEdit" type="primary">新增</a-button>
<a-dropdown>
<template #overlay>
<a-menu @click="setCYear">
<a-menu-item v-for="item in yearOptions" :key="item.value">
{{ item.label }}
</a-menu-item>
</a-menu>
</template>
<a-button>
批量复制
<DownOutlined/>
</a-button>
</a-dropdown>
<a-popconfirm
:disabled="selectionList.length == 0"
:title="`确认删除${selectionList.length}条数据吗?`"
ok-text="Yes"
cancel-text="No"
@confirm="removeBatch"
> >
<a-form <a-button
ref="form" :disabled="selectionList.length == 0"
:model="form" type="primary"
:rules="rules" ghost
:label-col="{ md: { span: 6 }, sm: { span: 24 } }" danger
:wrapper-col="{ md: { span: 18 }, sm: { span: 24 } }" >删除
> </a-button>
<a-form-item label="新年份" name="nYear"> </a-popconfirm>
<a-input-number id="inputNumber" v-model:value="nYear" :min="1970" :max="2050" /> <a-upload
</a-form-item> :before-upload="importFile"
</a-form> :showUploadList="false"
</a-modal> accept=".xls,.xlsx,.csv"
<a-modal
v-model:visible="showEdit"
:title="form.roadNoisePlaceId !== undefined ? '修改' : '添加'"
:confirm-loading="loading"
:width="800"
:body-style="{ paddingBottom: '8px' }"
@ok="save"
> >
<a-form <a-button>导入</a-button>
ref="form" </a-upload>
:model="form" <a-button @click="exportData" style="background: #2FA524FF; border-color: #2FA524FF;color: #FFFFFF">导出
:rules="rules" </a-button>
:label-col="{ md: { span: 6 }, sm: { span: 24 } }" </a-space>
:wrapper-col="{ md: { span: 18 }, sm: { span: 24 } }" </template>
> <template #action="{ record }">
<a-form-item label="年份" name="year"> <a-space>
<a-input-number v-model:value="form.year" :min="1970" :max="2050" /> <a-button
</a-form-item> @click="openEdit(record)"
<a-form-item label="测点名称" name="placeName"> type="primary"
<a-input v-model:value="form.placeName" placeholder="请输入测点名称" allow-clear /> shape="round"
</a-form-item> size="small"
<a-form-item label="点位编码" name="placeCode"> >修改
<a-input v-model:value="form.placeCode" placeholder="请输入点位编码" allow-clear /> </a-button
</a-form-item>
<a-form-item label="所属路段" name="road">
<a-input v-model:value="form.road" placeholder="请输入所属路段" allow-clear />
</a-form-item>
<a-form-item label="所属城区" name="area">
<a-input v-model:value="form.area" placeholder="请输入所属城区" allow-clear />
</a-form-item>
<a-form-item label="功能区类型" name="functionType">
<a-input v-model:value="form.functionType" placeholder="请输入功能区类型" allow-clear />
</a-form-item>
<a-form-item label="功能区代码" name="functionCode">
<a-input v-model:value="form.functionCode" placeholder="请输入功能区代码" allow-clear />
</a-form-item>
<a-form-item label="测点高度" name="placeHeight">
<a-input v-model:value="form.placeHeight" placeholder="请输入测点高度" allow-clear />
</a-form-item>
<a-form-item label="测点经度" name="placeLng">
<a-input type="number" v-model:value="form.placeLng" placeholder="请输入测点经度" allow-clear />
</a-form-item>
<a-form-item label="测点纬度" name="placeLat">
<a-input type="number" v-model:value="form.placeLat" placeholder="请输入测点纬度" allow-clear />
</a-form-item>
<a-form-item label="点位等级" name="regionLevel">
<a-input v-model:value="form.regionLevel" placeholder="请输入点位等级" allow-clear />
</a-form-item>
</a-form>
</a-modal>
<!-- 表格 -->
<ele-pro-table
v-model:selection="selectionList"
ref="table"
row-key="functionNoisePlaceId"
:datasource="url"
:columns="columns"
:where="where"
:scroll="{ x: 'max-content' }"
> >
<template #toolbar> <a-popconfirm
<a-space> :title="`确认删除这条数据吗?`"
<a-button @click="openEdit" type="primary">新增</a-button> ok-text="Yes"
<a-dropdown> cancel-text="No"
<template #overlay> @confirm="remove(record)"
<a-menu @click="setCYear"> >
<a-menu-item v-for="item in yearOptions" :key="item.value"> <a-button type="primary" danger shape="round" size="small"
{{ item.label }} >删除
</a-menu-item> </a-button
</a-menu> >
</template> </a-popconfirm>
<a-button> </a-space>
批量复制 </template>
<DownOutlined/> </ele-pro-table>
</a-button> </a-card>
</a-dropdown> </div>
<a-popconfirm <!-- 编辑弹窗 -->
:disabled="selectionList.length == 0"
:title="`确认删除${selectionList.length}条数据吗?`"
ok-text="Yes"
cancel-text="No"
@confirm="removeBatch"
>
<a-button
:disabled="selectionList.length == 0"
type="primary"
ghost
danger
>删除
</a-button>
</a-popconfirm>
<a-upload
:before-upload="importFile"
:showUploadList="false"
accept=".xls,.xlsx,.csv"
>
<a-button>导入</a-button>
</a-upload>
<a-button @click="exportData" style="background: #2FA524FF; border-color: #2FA524FF;color: #FFFFFF">导出</a-button>
</a-space>
</template>
<template #action="{ record }">
<a-space>
<a-button
@click="openEdit(record)"
type="primary"
shape="round"
size="small"
>修改</a-button
>
<a-popconfirm
:title="`确认删除这条数据吗?`"
ok-text="Yes"
cancel-text="No"
@confirm="remove(record)"
>
<a-button type="primary" danger shape="round" size="small"
>删除</a-button
>
</a-popconfirm>
</a-space>
</template>
</ele-pro-table>
</a-card>
</div>
<!-- 编辑弹窗 -->
</template> </template>
<script> <script>
// import _ from "lodash"; // import _ from "lodash";
import { import {
listAllUrl, listAllUrl,
savePlace, savePlace,
updatePlace, updatePlace,
removePlace, removePlace,
removeBatchPlace, removeBatchPlace,
getColumnOptions, getColumnOptions,
copyBatchPlace, copyBatchPlace,
savePlaceBatch savePlaceBatch
} from "@/api/ecology/noise/function-noise-place"; } from "@/api/ecology/noise/function-noise-place";
import XLSX from "xlsx"; import XLSX from "xlsx";
import {Modal} from "ant-design-vue"; import {Modal} from "ant-design-vue";
// import moment from "moment"; // import moment from "moment";
export default { export default {
name: "FunctionNoisePlace", name: "FunctionNoisePlace",
components: {}, components: {},
data() { data() {
return { return {
data: [], data: [],
// 表格数据接口 // 表格数据接口
url: listAllUrl, url: listAllUrl,
selection: [], selection: [],
// 表格列配置 // 表格列配置
columns: [ columns: [
{ {
title: "年份", title: "年份",
dataIndex: "year", dataIndex: "year",
sorter: true, sorter: true,
}, },
{ {
title: "测点名称", title: "测点名称",
dataIndex: "placeName", dataIndex: "placeName",
sorter: true, sorter: true,
}, },
{ {
title: "点位编码", title: "点位编码",
dataIndex: "placeCode", dataIndex: "placeCode",
sorter: true, sorter: true,
}, },
{ {
title: "功能区类别", title: "功能区类别",
dataIndex: "functionType", dataIndex: "functionType",
sorter: true, sorter: true,
}, },
{title: "所属城区",dataIndex: "area",sorter: true, }, {title: "所属城区", dataIndex: "area", sorter: true,},
{title: "功能区代码",dataIndex: "functionCode",sorter: true, }, {title: "功能区代码", dataIndex: "functionCode", sorter: true,},
{ {
title: "测点经度", title: "测点经度",
dataIndex: "placeLng", dataIndex: "placeLng",
sorter: true, sorter: true,
}, },
{title: "测点纬度",dataIndex: "placeLat",sorter: true,}, {title: "测点纬度", dataIndex: "placeLat", sorter: true,},
{title: "点位等级",dataIndex: "regionLevel",sorter: true,}, {title: "点位等级", dataIndex: "regionLevel", sorter: true,},
{ {
title: "操作", title: "操作",
key: "action", key: "action",
width: 150, width: 150,
align: "center", align: "center",
fixed: "right", fixed: "right",
slots: { slots: {
customRender: "action", customRender: "action",
}, },
}, },
], ],
// 表格搜索条件 // 表格搜索条件
where: {}, where: {},
// 表格选中数据 // 表格选中数据
selectionList: [], selectionList: [],
// 是否显示编辑弹窗 // 是否显示编辑弹窗
showEdit: false, showEdit: false,
showNYear:false, showNYear: false,
cYear: undefined, cYear: undefined,
nYear:undefined, nYear: undefined,
yearOptions: [], yearOptions: [],
// 表单数据 // 表单数据
form: {}, form: {},
loading: false, loading: false,
rules: { rules: {
// placeName:[{required: true,message: '请选择测点名称'}], // placeName:[{required: true,message: '请选择测点名称'}],
// placeLng: [{required: true,message: '请输入测点经度',},], // placeLng: [{required: true,message: '请输入测点经度',},],
// placeLat: [{required: true,message: '请输入测点纬度',},], // placeLat: [{required: true,message: '请输入测点纬度',},],
}, },
}; };
},
mounted() {
this.getOptions();
},
methods: {
/* 刷新表格 */
reload() {
this.$refs.table.reload({
where: this.where,
});
}, },
mounted() { /* 重置搜索 */
this.getOptions(); reset() {
this.where = {};
this.reload();
}, },
methods: { /* 打开编辑弹窗 */
/* 刷新表格 */ openEdit(row) {
reload() { // cloneRecord.mi
this.form = Object.assign({}, row);
this.$refs.table.reload({ this.showEdit = true;
where: this.where, this.$nextTick(() => {
}); this.$refs.form.clearValidate(); // 清除表单验证信息
}, });
/* 重置搜索 */ },
reset() { async save() {
this.where = {}; await this.$refs.form.validate();
this.reload(); const hide = this.$message.loading('请求中..', 0);
}, const form = this.form;
/* 打开编辑弹窗 */ if (form.functionNoisePlaceId) {
openEdit(row) { updatePlace(form)
// cloneRecord.mi .then((res) => {
this.form = Object.assign({}, row); if (res.data.code == 0) {
this.showEdit = true; this.showEdit = false;
this.$nextTick(() => { this.$message.success(res.data.msg);
this.$refs.form.clearValidate(); // 清除表单验证信息 this.reload();
}); this.getOptions();
},
async save() {
await this.$refs.form.validate();
const hide = this.$message.loading('请求中..', 0);
const form = this.form;
if (form.functionNoisePlaceId) {
updatePlace(form)
.then((res) => {
if (res.data.code == 0) {
this.showEdit = false;
this.$message.success(res.data.msg);
this.reload();
this.getOptions();
} else {
this.$message.error(res.data.msg);
}
})
.catch((error) => {
this.$message.error(error.message);
})
.finally(() => {
hide();
});
} else { } else {
savePlace(form) this.$message.error(res.data.msg);
.then((res) => {
if (res.data.code == 0) {
this.showEdit = false;
this.$message.success(res.data.msg);
this.reload();
this.getOptions();
} else {
this.$message.error(res.data.msg);
}
})
.catch((error) => {
this.$message.error(error.message);
})
.finally(() => {
hide();
});
} }
}, })
/* 删除单个 */ .catch((error) => {
remove(row) { this.$message.error(error.message);
const hide = this.$message.loading('请求中..', 0); })
removePlace(row.functionNoisePlaceId).then((res) => { .finally(() => {
hide(); hide();
if (res.data.code === 0) { });
this.$message.success(res.data.msg); } else {
this.reload(); savePlace(form)
} else { .then((res) => {
this.$message.error(res.data.msg); if (res.data.code == 0) {
} this.showEdit = false;
}).catch(e => { this.$message.success(res.data.msg);
hide(); this.reload();
this.$message.error(e.message); this.getOptions();
}) } else {
}, this.$message.error(res.data.msg);
/* 批量删除 */ }
removeBatch() { })
const hide = this.$message.loading('请求中..', 0); .catch((error) => {
const ids = this.selectionList.map((item) => item.functionNoisePlaceId); this.$message.error(error.message);
removeBatchPlace(ids).then((res) => { })
if (res.data.code === 0) { .finally(() => {
this.$message.success(res.data.msg); hide();
this.reload(); });
} else { }
this.$message.error(res.data.msg); },
} /* 删除单个 */
}).catch(e => { remove(row) {
this.$message.error(e.message); const hide = this.$message.loading('请求中..', 0);
}).finally(() => { removePlace(row.functionNoisePlaceId).then((res) => {
hide(); hide();
}) if (res.data.code === 0) {
}, this.$message.success(res.data.msg);
getOptions(){ this.reload();
getColumnOptions("year").then(res => { } else {
console.log(res) this.$message.error(res.data.msg);
if (res.data.code == 0) { }
this.yearOptions = res.data.data.map(item => { }).catch(e => {
return { hide();
label: item, this.$message.error(e.message);
value: item })
} },
}) /* 批量删除 */
} removeBatch() {
}) const hide = this.$message.loading('请求中..', 0);
}, const ids = this.selectionList.map((item) => item.functionNoisePlaceId);
setCYear(e){ removeBatchPlace(ids).then((res) => {
this.cYear = e.key; if (res.data.code === 0) {
this.showNYear = true; this.$message.success(res.data.msg);
}, this.reload();
exportData(){ } else {
const columns = this.columns.filter(item=>item.dataIndex); this.$message.error(res.data.msg);
const arr = []; }
const th = columns.map((item) => item.title); }).catch(e => {
arr.push(th); this.$message.error(e.message);
this.data.forEach((d) => { }).finally(() => {
const td = columns.map((item) => d[item.dataIndex]); hide();
arr.push(td); })
},
getOptions() {
getColumnOptions("year").then(res => {
console.log(res)
if (res.data.code == 0) {
this.yearOptions = res.data.data.map(item => {
return {
label: item,
value: item
}
})
}
})
},
setCYear(e) {
this.cYear = e.key;
this.showNYear = true;
},
exportData() {
const columns = this.columns.filter(item => item.dataIndex);
const arr = [];
const th = columns.map((item) => item.title);
arr.push(th);
this.data.forEach((d) => {
const td = columns.map((item) => d[item.dataIndex]);
arr.push(td);
});
let sheet = XLSX.utils.aoa_to_sheet(arr);
this.$util.exportSheet(XLSX, sheet, new Date().getTime().toString());
},
copyBatch() {
const hide = this.$message.loading('请求中..', 0);
copyBatchPlace({cyear: Number(this.cYear), nyear: this.nYear}).then(res => {
if (res.data.code === 0) {
this.$message.success(res.data.msg);
this.reload();
this.getOptions();
} else {
this.$message.error(res.data.msg);
}
this.showNYear = false;
}).catch(e => {
this.$message.error(e.message);
}).finally(() => {
hide();
})
},
importFile(file) {
const hide = this.$message.loading("导入中..", 0);
let reader = new FileReader();
reader.onload = (e) => {
try {
let data = new Uint8Array(e.target.result);
let workbook = XLSX.read(data, {
type: "array",
});
let sheetNames = workbook.SheetNames;
// 解析成二维数组
let aoa = XLSX.utils.sheet_to_json(workbook.Sheets[sheetNames[0]], {
header: 1,
});
// const reportDate = aoa[1][0].replace(/[^\d]+/g, "-");
const roadNoiseList = aoa.filter(
(item) => {
return item.length >= 10 && item[0] && !item[0].toString().includes("年")
}
);
// 解析成对象数组
const billData = roadNoiseList.map(item => {
return {
year: item[0],
placeCode: item[1],
placeName: item[2],
road: item[3],
area: item[4],
functionCode: item[5],
functionType: item[6],
placeHeight: item[7],
placeLng: item[8],
placeLat: item[9],
regionLevel: item[10],
}
});
if (!billData || billData.length == 0) {
hide();
Modal.error({
title: "导入失败",
content: "找不到可用数据",
}); });
let sheet = XLSX.utils.aoa_to_sheet(arr); return;
this.$util.exportSheet(XLSX, sheet, new Date().getTime().toString()); }
},
copyBatch(){ if (billData.length > 0) {
const hide = this.$message.loading('请求中..', 0); // 上传到服务器
copyBatchPlace({cyear:Number(this.cYear),nyear:this.nYear}).then(res=>{ savePlaceBatch(billData)
if (res.data.code === 0) { .then((res) => {
this.$message.success(res.data.msg); if (res.data.code == 0) {
this.reload(); Modal.success({
this.getOptions(); title: "导入成功",
content: `成功导入${
billData.length
}条数据`,
});
this.reload();
this.getOptions();
} else { } else {
this.$message.error(res.data.msg); Modal.error({
title: "导入失败",
content: "数据上传出错",
});
} }
this.showNYear = false; })
}).catch(e => { .catch(() => {
this.$message.error(e.message); Modal.error({
}).finally(() => { title: "导入失败",
content: "数据上传出错",
});
})
.finally(() => {
hide(); hide();
}) });
}, }
importFile(file) { } catch (error) {
const hide = this.$message.loading("导入中..", 0); hide();
let reader = new FileReader(); Modal.error({
reader.onload = (e) => { title: "导入失败",
try { content: error.message,
let data = new Uint8Array(e.target.result); });
let workbook = XLSX.read(data, { }
type: "array", // console.log(billData);
}); };
let sheetNames = workbook.SheetNames; reader.readAsArrayBuffer(file);
// 解析成二维数组 return false;
let aoa = XLSX.utils.sheet_to_json(workbook.Sheets[sheetNames[0]], {
header: 1,
});
// const reportDate = aoa[1][0].replace(/[^\d]+/g, "-");
const roadNoiseList = aoa.filter(
(item) => {
return item.length >= 10 && item[0] && !item[0].toString().includes("年")
}
);
// 解析成对象数组
const billData = roadNoiseList.map(item=>{
return {
year:item[0],
placeCode:item[1],
placeName:item[2],
road:item[3],
area:item[4],
functionCode:item[5],
functionType:item[6],
placeHeight:item[7],
placeLng:item[8],
placeLat:item[9],
regionLevel:item[10],
}
});
if (!billData || billData.length == 0) {
hide();
Modal.error({
title: "导入失败",
content: "找不到可用数据",
});
return;
}
if (billData.length > 0) {
// 上传到服务器
savePlaceBatch(billData)
.then((res) => {
if (res.data.code == 0) {
Modal.success({
title: "导入成功",
content: `成功导入${
billData.length
}条数据`,
});
this.reload();
this.getOptions();
} else {
Modal.error({
title: "导入失败",
content: "数据上传出错",
});
}
})
.catch(() => {
Modal.error({
title: "导入失败",
content: "数据上传出错",
});
})
.finally(() => {
hide();
});
}
} catch (error) {
hide();
Modal.error({
title: "导入失败",
content: error.message,
});
}
// console.log(billData);
};
reader.readAsArrayBuffer(file);
return false;
},
}, },
},
}; };
</script> </script>

View File

@@ -17,6 +17,12 @@
</a-select-option> </a-select-option>
</a-select> </a-select>
</a-form-item> </a-form-item>
</a-col>
<a-col :lg="6" :md="12" :sm="24" :xs="24">
<a-form-item label="测点名称:">
<a-input v-model:value="where.placeName" placeholder="请输入测点名称" allow-clear/>
</a-form-item>
</a-col> </a-col>
<a-col :lg="6" :md="12" :sm="24" :xs="24"> <a-col :lg="6" :md="12" :sm="24" :xs="24">
<a-space> <a-space>
@@ -93,7 +99,8 @@
</a-form-item> </a-form-item>
<a-form-item label="修正位置" name="correctLocation"> <a-form-item label="修正位置" name="correctLocation">
<a-input-search @search="showRoadMap(form)" <a-input-search @search="showRoadMap(form)"
:value="`[${form.correctLng},${form.correctLat}]`" placeholder="`[${form.placeLng},${form.placeLat}]`" allow-clear> :value="`[${form.correctLng},${form.correctLat}]`"
placeholder="`[${form.placeLng},${form.placeLat}]`" allow-clear>
<template #enterButton> <template #enterButton>
<a-button>选择位置</a-button> <a-button>选择位置</a-button>
</template> </template>
@@ -285,7 +292,7 @@ export default {
}); });
}, },
showRoadMap(form) { showRoadMap(form) {
const {placeLng,placeLat,correctLng,correctLat} = form const {placeLng, placeLat, correctLng, correctLat} = form
this.visibleRoadMap = true this.visibleRoadMap = true
this.roadMapTitle = "选择修正后的道路坐标" this.roadMapTitle = "选择修正后的道路坐标"
this.$nextTick(() => { this.$nextTick(() => {
@@ -296,7 +303,7 @@ export default {
map.addControl(new BBMap.NavigationControl()); //初始化地图控件 map.addControl(new BBMap.NavigationControl()); //初始化地图控件
map.addControl(new BBMap.ScaleControl()); map.addControl(new BBMap.ScaleControl());
map.addControl(new BBMap.OverviewMapControl()); map.addControl(new BBMap.OverviewMapControl());
var point = new BBMap.Point(correctLng?correctLng:placeLng?placeLng:108.33,correctLat?correctLat:placeLat?placeLat:22.84); var point = new BBMap.Point(correctLng ? correctLng : placeLng ? placeLng : 108.33, correctLat ? correctLat : placeLat ? placeLat : 22.84);
// var point = new BBMap.Point(form.placeLng ? form.placeLng : 108.33, form.placeLat ? form.placeLat : 22.84); // var point = new BBMap.Point(form.placeLng ? form.placeLng : 108.33, form.placeLat ? form.placeLat : 22.84);
map.centerAndZoom(point, 13);//初始化地图中心点 map.centerAndZoom(point, 13);//初始化地图中心点
var marker = new BBMap.Marker(point); //初始化地图标记 var marker = new BBMap.Marker(point); //初始化地图标记

File diff suppressed because it is too large Load Diff