|
|
@@ -38,7 +38,7 @@
|
|
|
<span @click="handleClickAddress" role="button" class="btn">修改</span>
|
|
|
</div>
|
|
|
<p class="phone">{{ phone }}</p>
|
|
|
- <p class="address">{{ address }}</p>
|
|
|
+ <p class="address">{{ addressStr + address }}</p>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div v-else @click="handleClickAddress">
|
|
|
@@ -182,17 +182,28 @@
|
|
|
</div>
|
|
|
</el-card>
|
|
|
<el-dialog title="兑换物品收货地址" :visible.sync="dialogFormVisible" width="500px">
|
|
|
- <el-form :model="dataForm" ref="dataForm" style="padding: 0 75px;" :rules="rules">
|
|
|
+ <el-form label-position="left" :model="dataForm" ref="dataForm" style="padding: 0 75px;" :rules="rules">
|
|
|
<el-form-item label="联系姓名" :label-width="formLabelWidth" prop="name">
|
|
|
<el-input size="medium" v-model="dataForm.name" placeholder="请输入联系姓名"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="联系方式" :label-width="formLabelWidth" prop="phone">
|
|
|
<el-input size="medium" v-model="dataForm.phone" placeholder="请输入11位手机号码"></el-input>
|
|
|
</el-form-item>
|
|
|
-
|
|
|
- <el-form-item label="联系地址"
|
|
|
+ <el-form-item label="省市区"
|
|
|
+ :label-width="formLabelWidth" prop="addressArr">
|
|
|
+ <el-cascader
|
|
|
+ style="width: 100%;"
|
|
|
+ clearable
|
|
|
+ placeholder="请选择省市区"
|
|
|
+ size="medium"
|
|
|
+ :options="options"
|
|
|
+ v-model="dataForm.addressArr"
|
|
|
+ @change="handleChange">
|
|
|
+ </el-cascader>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="街道"
|
|
|
:label-width="formLabelWidth" prop="address">
|
|
|
- <el-input size="medium" v-model="dataForm.address" placeholder="请输入详细联系地址"></el-input>
|
|
|
+ <el-input size="medium" v-model="dataForm.address" placeholder="请输入街道"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer" style="text-align: center;">
|
|
|
@@ -289,6 +300,13 @@
|
|
|
</template>
|
|
|
<script>
|
|
|
import { integralInfo, festivalInfo, start, kill } from "@/api/allApi";
|
|
|
+import {
|
|
|
+ provinceAndCityData,
|
|
|
+ pcTextArr,
|
|
|
+ regionData,
|
|
|
+ pcaTextArr,
|
|
|
+ codeToText,
|
|
|
+} from "element-china-area-data";
|
|
|
import { setTab } from '@/utils/auth'
|
|
|
import { debounce } from '@/utils/index'
|
|
|
export default {
|
|
|
@@ -307,6 +325,7 @@ export default {
|
|
|
}
|
|
|
};
|
|
|
return {
|
|
|
+ options: regionData ,
|
|
|
reclaimAddr:'',
|
|
|
reclaimAddrList:[],
|
|
|
phoneNumber:'',
|
|
|
@@ -316,6 +335,8 @@ export default {
|
|
|
activeName: this.$route.query.activeName,
|
|
|
name: '',
|
|
|
phone: '',
|
|
|
+ addressArr:[],
|
|
|
+ addressStr:'',
|
|
|
address: '',
|
|
|
disabled: true,
|
|
|
skuCount: 1,
|
|
|
@@ -332,6 +353,7 @@ export default {
|
|
|
dataForm: {
|
|
|
name: '',
|
|
|
phone: '',
|
|
|
+ addressArr:[],
|
|
|
address: '',
|
|
|
},
|
|
|
rules: {
|
|
|
@@ -342,6 +364,9 @@ export default {
|
|
|
phone: [
|
|
|
{ required: true, validator: validPhone, trigger: 'blur' }
|
|
|
],
|
|
|
+ addressArr: [
|
|
|
+ { required: true, message: '请选择省市区', trigger: 'blur' },
|
|
|
+ ],
|
|
|
address: [
|
|
|
{ required: true, message: '请输入联系地址', trigger: 'blur' },
|
|
|
{ min: 1, max: 120, message: '长度在 1 到 120 个字符', trigger: 'blur' }
|
|
|
@@ -351,7 +376,7 @@ export default {
|
|
|
],
|
|
|
|
|
|
},
|
|
|
- formLabelWidth: '100px',
|
|
|
+ formLabelWidth: '80px',
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
@@ -361,6 +386,15 @@ export default {
|
|
|
this.getInfo(skuId, activeName);
|
|
|
},
|
|
|
methods: {
|
|
|
+ handleChange (value) {
|
|
|
+ console.log(value)
|
|
|
+ var loc = "";
|
|
|
+ for (let i = 0; i < value.length; i++) {
|
|
|
+ loc += codeToText[value[i]];
|
|
|
+ }
|
|
|
+ console.log(loc)//打印区域码所对应的属性值即中文地址
|
|
|
+ this.addressStr = loc;
|
|
|
+ },
|
|
|
handleClickOrderInfo(){
|
|
|
this.dialogFormOrderInfo = false;
|
|
|
},
|
|
|
@@ -425,6 +459,8 @@ export default {
|
|
|
if(this.contactInfo){
|
|
|
this.name = this.contactInfo.contact;
|
|
|
this.phone = this.contactInfo.contactPhone;
|
|
|
+ this.addressArr = this.contactInfo.addressArr;
|
|
|
+ this.addressStr = this.contactInfo.addressStr;
|
|
|
this.address = this.contactInfo.contactAddr;
|
|
|
}
|
|
|
this.total = response.data.data.price;
|
|
|
@@ -439,6 +475,8 @@ export default {
|
|
|
if(this.contactInfo){
|
|
|
this.name = this.contactInfo.contact;
|
|
|
this.phone = this.contactInfo.contactPhone;
|
|
|
+ this.addressArr = this.contactInfo.addressArr;
|
|
|
+ this.addressStr = this.contactInfo.addressStr;
|
|
|
this.address = this.contactInfo.contactAddr;
|
|
|
}
|
|
|
}).catch(() => {
|
|
|
@@ -494,6 +532,8 @@ export default {
|
|
|
deliveryType:this.deliveryType,
|
|
|
contact: this.name,
|
|
|
contactPhone: this.phone,
|
|
|
+ addressArr:this.dataForm.addressArr,
|
|
|
+ addressStr:this.addressStr,
|
|
|
contactAddr: this.address,
|
|
|
|
|
|
skuType: this.data.skuType,
|