|
|
@@ -22,6 +22,7 @@ Page({
|
|
|
addressList: [] as any,
|
|
|
goodsInfo: {} as any,
|
|
|
hasInstrument: false, // 是否有乐器
|
|
|
+ cacheArea: [] as { cityCode: string, shiftCityCode: string }[], // 临时存储的对应关系
|
|
|
receiveAddress: '', // 选择的地址信息
|
|
|
receiveAddressInfo: {
|
|
|
addressDetail: '',
|
|
|
@@ -50,7 +51,7 @@ Page({
|
|
|
name: '',
|
|
|
phoneNumber: '',
|
|
|
detailAddress: '',
|
|
|
- cityCode: 0,
|
|
|
+ cityCode: null as any,
|
|
|
cityName: "",
|
|
|
provinceCode: 0,
|
|
|
provinceName: "",
|
|
|
@@ -453,8 +454,19 @@ Page({
|
|
|
province_list[item.code] = item.name;
|
|
|
});
|
|
|
area.forEach((item: any) => {
|
|
|
- item.areas && item.areas.forEach((city: any) => {
|
|
|
- city_list[city.code] = city.name;
|
|
|
+ item.areas && item.areas.forEach((city: any, index: number) => {
|
|
|
+ let code = city.code + ""
|
|
|
+ // 某些数据不标准 这里需要转换一下
|
|
|
+ if (code[4] !== "0" || code[5] !== "0") {
|
|
|
+ // 现在把区域的数据改为市的
|
|
|
+ const newCode = code.substring(0, 2) + (index < 10 ? `a${index}` : index < 20 ? `b${index - 10}` : index < 30 ? `c${index - 20}` : `d${index - 30}`) + "00";
|
|
|
+ this.data.cacheArea.push({
|
|
|
+ cityCode: code,
|
|
|
+ shiftCityCode: newCode
|
|
|
+ })
|
|
|
+ code = newCode
|
|
|
+ }
|
|
|
+ city_list[code] = city.name;
|
|
|
});
|
|
|
});
|
|
|
area.forEach((item: any) => {
|
|
|
@@ -470,6 +482,16 @@ Page({
|
|
|
county_list
|
|
|
};
|
|
|
},
|
|
|
+ // 转换
|
|
|
+ formateCityCode(reverse?: boolean) {
|
|
|
+ if (!this.data.regionCode && this.data.cityCode) {
|
|
|
+ const cityCodeObj = this.data.cacheArea.find((item: any) => {
|
|
|
+ return item[reverse ? "cityCode" : "shiftCityCode"] == this.data.cityCode
|
|
|
+ })
|
|
|
+ return cityCodeObj ? cityCodeObj[reverse ? "shiftCityCode" : "cityCode"] : ""
|
|
|
+ }
|
|
|
+ return this.data.cityCode
|
|
|
+ },
|
|
|
/** 显示选择地区 */
|
|
|
async onShowAreaList() {
|
|
|
this.setData({
|
|
|
@@ -488,10 +510,10 @@ Page({
|
|
|
this.setData({
|
|
|
provinceCode: selectedOptions[0].code,
|
|
|
cityCode: selectedOptions[1].code,
|
|
|
- regionCode: selectedOptions[2].code,
|
|
|
- provinceName: selectedOptions[0].name,
|
|
|
- cityName: selectedOptions[1].name,
|
|
|
- regionName: selectedOptions[2].name,
|
|
|
+ regionCode: selectedOptions[2]?.code || null,
|
|
|
+ provinceName: selectedOptions[0].name || '',
|
|
|
+ cityName: selectedOptions[1].name || '',
|
|
|
+ regionName: selectedOptions[2]?.name || '',
|
|
|
showArea: false,
|
|
|
})
|
|
|
},
|
|
|
@@ -512,12 +534,12 @@ Page({
|
|
|
name: '',
|
|
|
phoneNumber: '',
|
|
|
detailAddress: '',
|
|
|
- cityCode: 0,
|
|
|
+ cityCode: null,
|
|
|
cityName: "",
|
|
|
provinceCode: 0,
|
|
|
provinceName: "",
|
|
|
regionCode: '',
|
|
|
- regionName: "",
|
|
|
+ regionName: ""
|
|
|
})
|
|
|
},
|
|
|
/** 创建/修改收货地址 */
|
|
|
@@ -538,7 +560,7 @@ Page({
|
|
|
})
|
|
|
return
|
|
|
}
|
|
|
- if (!addressForm.provinceCode || !addressForm.cityCode || !addressForm.regionCode) {
|
|
|
+ if (!addressForm.provinceCode || !addressForm.cityCode) {
|
|
|
wx.showToast({
|
|
|
title: '请选择地区',
|
|
|
icon: "none"
|
|
|
@@ -552,12 +574,13 @@ Page({
|
|
|
})
|
|
|
return
|
|
|
}
|
|
|
+ const citycode = this.formateCityCode()
|
|
|
const params = {
|
|
|
name: addressForm.name,
|
|
|
phoneNumber: addressForm.phoneNumber,
|
|
|
province: addressForm.provinceCode,
|
|
|
- city: addressForm.cityCode,
|
|
|
- region: addressForm.regionCode,
|
|
|
+ city: citycode,
|
|
|
+ region: addressForm.regionCode || '',
|
|
|
detailAddress: addressForm.detailAddress
|
|
|
}
|
|
|
const { data } = await api_userReceiveAddressSave({
|