优化资源管理

This commit is contained in:
gyq
2024-05-11 17:17:42 +08:00
parent 8441022041
commit 5eb74b5463
6 changed files with 160 additions and 105 deletions

View File

@@ -5,6 +5,9 @@
<el-form-item label="店铺名称" prop="shopName">
<el-input v-model="form.shopName" placeholder="请输入门店名称"></el-input>
</el-form-item>
<el-form-item label="连锁店扩展店名" prop="chainName">
<el-input v-model="form.chainName" placeholder="请输入连锁店扩展店名"></el-input>
</el-form-item>
<el-form-item label="门店logo" prop="logo">
<el-image :src="form.logo || require('@/assets/images/upload.png')" fit="contain"
style="width: 80px;height: 80px;" @click="showUpload = true; uploadIndex = 1"></el-image>
@@ -49,14 +52,17 @@
</el-form-item> -->
<el-form-item label="店铺经度">
<el-row>
<el-col :span="4">
<el-input v-model="form.lng" placeholder="经度"></el-input>
<el-col :span="9" v-if="form.provinces">
<el-input :value="`${form.provinces}-${form.cities}-${form.districts}`" disabled />
</el-col>
<el-col :span="4" v-if="form.lng">
<el-input v-model="form.lng" placeholder="经度" disabled></el-input>
</el-col>
<el-col :span="4" v-if="form.lng">
<el-input v-model="form.lat" placeholder="纬度" disabled></el-input>
</el-col>
<el-col :span="4">
<el-input v-model="form.lat" placeholder="纬度" style="margin-left: 10px;"></el-input>
</el-col>
<el-col :span="4">
<el-button type="primary" plain icon="el-icon-place" style="margin-left: 20px;"
<el-button type="primary" plain icon="el-icon-place"
@click="showLocation = true">选择坐标</el-button>
</el-col>
</el-row>
@@ -129,7 +135,7 @@
import { getToken } from '@/utils/auth'
import { mapGetters } from 'vuex'
import crudQiNiu from '@/api/tools/qiniu'
import { tbShopInfoPost } from '@/api/shop'
import { tbShopInfoPost, geocode } from '@/api/shop'
export default {
computed: {
...mapGetters([
@@ -168,7 +174,11 @@ export default {
detail: '',
status: 1,
logo: '',
coverImg: ''
coverImg: '',
provinces: '',
cities: '',
districts: '',
chainName: ''
},
resetForm: '',
rules: {
@@ -179,6 +189,13 @@ export default {
trigger: 'blur'
}
],
chainName: [
{
required: true,
message: ' ',
trigger: 'blur'
}
],
logo: [
{
required: true,
@@ -226,20 +243,20 @@ export default {
this.amapOptions.center = [res[0].lng, res[0].lat]
},
// 确认地址选择
selectLocationHandle(item) {
async selectLocationHandle(item) {
console.log(item);
this.form.lng = item.lng
this.form.lat = item.lat
this.form.address = item.address
this.showLocation = false
console.log(this.$refs.map.$$getInstance());
const position = `${item.lng},${item.lat}`;
const res = JSON.parse(await geocode({ location: position }))
console.log(res);
const position = { lng: item.lng, lat: item.lat };
this.$refs.map.geocoder.getAddress(position, (status, result) => {
if (status === 'complete' && result.info === 'OK') {
// 打印省市区信息
console.log(result.regeocode.addressComponent);
}
})
this.form.provinces = res.addressComponent.province
this.form.cities = res.addressComponent.city
this.form.districts = res.addressComponent.district
},
// 保存
submitHandle() {