fix:修改dc经纬度未保存的 问题 以及添加经纬度的校验

This commit is contained in:
zhangyu
2021-06-04 14:35:22 +08:00
parent d6fd41b9f0
commit aa873ce6de
4 changed files with 33 additions and 4 deletions

View File

@@ -2,7 +2,7 @@
<div class="latlng">
<div class="input-box">
<div class="input-box-item">
<el-input v-model="lnglat" >
<el-input v-model="lnglat" @change="setLatlng" @focus="oldlnglat = lnglat" @blur="changeLnglat">
<template slot="prepend" v-if="showZoom">{{$t('config.system.basic.lnglat')}}</template>
</el-input>
</div>
@@ -35,6 +35,7 @@ export default {
data () {
return {
lnglat: '',
oldlnglat: '',
mapParam: { longitude: 116.39, latitude: 39.9, zoom: 4, minZoom: 1, maxZoom: 10 },
map: null,
marker: null,
@@ -49,6 +50,18 @@ export default {
}
this.lnglat = this.mapParam.longitude + ',' + this.mapParam.latitude
},
watch: {
initData: {
handler () {
if (this.initData) {
this.mapParam = JSON.parse(JSON.stringify(this.initData))
} else {
this.queryDefaultMapConfig()
}
this.lnglat = this.mapParam.longitude + ',' + this.mapParam.latitude
}
}
},
mounted () {
},
methods: {
@@ -123,6 +136,21 @@ export default {
this.lnglat = this.mapParam.longitude + ',' + this.mapParam.latitude
}
},
changeLnglat () {
const lnglat = this.lnglat.split(',')
if (lnglat.length !== 2) {
this.lnglat = this.oldlnglat
this.$message.error(this.$t('tip.lnglatError'))
return false
}
const lngReg = /^[\-\+]?(0?\d{1,2}\.\d{1,5}|1[0-7]?\d{1}\.\d{1,5}|180\.0{1,5})$/
const latReg = /^[\-\+]?([0-8]?\d{1}\.\d{1,5}|90\.0{1,5})$/
if (!lngReg.test(lnglat[0]) || !latReg.test(lnglat[1])) {
this.lnglat = this.oldlnglat
this.$message.error(this.$t('tip.lnglatError'))
return false
}
},
queryDefaultMapConfig: function () {
this.$get('/sysConfig?paramKey=map_center_config').then(response => {
if (response.code == 200) {