This commit is contained in:
张慢慢
2021-05-24 13:56:00 +08:00
commit a7995d90bc
208 changed files with 13143 additions and 0 deletions

View File

@@ -0,0 +1,240 @@
/*
* 本时生活
*/
const app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
addressInfo: '',
type : '', //类型
addressId : '',
defaultVal :'',
name : '',
mobile : '',
address : '',
//省份选择
areas : [],
areaSn : '',
areaIndex : 0,
//市级选择
cityList : [],
cityId : 0,
cityIndex : 0,
//区域选择
regiList : [],
regiId : 0,
regiIndex : 0,
cityLayer : false
},
/**
* 生命周期函数--监听页面加载
*/
onLoad (options) {
this.setData({
type : options.type
})
if (options.type == 'Add') {
wx.setNavigationBarTitle({
title: '添加收货地址'
})
// 获取位置
wx.getLocation({
type: 'gcj02',
success: res=> {
this.setData({
longitude : res.longitude,
latitude : res.latitude
})
// 解析坐标
getApp().qqmapsdk.reverseGeocoder({
location: {
latitude : res.latitude,
longitude : res.longitude
},
success: res=>{
if(res.message == "query ok"){
let addressInfo = res.result.address_component
let areaIndex = this.data.areas.findIndex(val => val.name == addressInfo.province)
this.setData({
areaIndex : areaIndex
})
this.getProvince()
}else{
wx.showToast({
title: res.message,
icon : 'none'
})
}
}
})
}
})
this.getProvince()
} else if (options.type == 'Compile') {
wx.setNavigationBarTitle({
title: '编辑收货地址'
})
this.setData({
addressId: options.id
})
this.getUserAddress()
}
},
/**
* 获取收货人信息
*/
getUserAddress(){
wx.$api.address.edit(this.data.addressId).then(res=>{
let areasValue = res.data.provinces.findIndex(val=> val.name == res.data.address.province_name),
cityValue = res.data.cities.findIndex(val=> val.name == res.data.address.city_name),
regiValue = res.data.districts.findIndex(val=> val.name == res.data.address.district_name)
this.setData({
name : res.data.address.name,
mobile : res.data.address.mobile,
areas : res.data.provinces,
cityList : res.data.cities,
regiList : res.data.districts,
areaIndex : areasValue,
cityIndex : cityValue,
regiIndex : regiValue,
areaSn : res.data.address.province_id,
cityId : res.data.address.city_id,
regiId : res.data.address.district_id,
address : res.data.address.address,
defaultList : res.data.address,
isDefault : res.data.address.is_default
})
})
},
/**
* 获取省信息
*/
getProvince() {
wx.$api.address.create().then(res=>{
let areaArr = res.data.provinces,
areaIndex = this.data.areaIndex
this.citylist(areaArr[areaIndex].code)
this.setData({
areaSn : areaArr[areaIndex].code,
areas : areaArr
})
})
},
/**
* 所在省份
*/
areasChange(e) {
let area = this.data.areas,
index = e.detail.value,
atcode = area[index].code
if (index != this.data.areaIndex) {
this.setData({
areaIndex : index,
areaSn : atcode
})
// 获取市级列表
this.citylist(atcode)
}
},
/**
* 市级列表
*/
citylist(code) {
wx.$api.address.children(code).then(res=>{
let cityArr = res.data
this.regilist(cityArr[0].code)
this.setData({
cityId : cityArr[0].code,
cityList : cityArr,
cityIndex : 0
})
})
},
/**
* 市级下拉筛选
*/
city(e) {
let city = this.data.cityList,
index = e.detail.value,
citycode = city[index].code
if (index != this.data.areaIndex) {
this.setData({
cityIndex: index,
cityId : citycode
})
// 获取市级列表
this.regilist(citycode)
}
},
/**
* 区列表
*/
regilist(areaCode) {
wx.$api.address.children(areaCode).then(res=>{
this.setData({
regiList : res.data,
regiId : res.data[0].code,
regiIndex : 0
})
})
},
/**
* 区下拉筛选
*/
regi(e) {
let newIndex = e.detail.value
this.setData({
regiIndex : newIndex,
regiId : this.data.regiList[newIndex].code
})
},
/**
* 保存信息
*/
siteform(e) {
if(this.data.type == 'Compile') {
// 编辑地址
wx.$api.address.keep(this.data.addressId, e.detail.value.name, e.detail.value.mobile, this.data.areaSn, this.data.cityId, this.data.regiId, e.detail.value.address).then(res=>{
wx.navigateBack()
})
} else {
// 创建地址
wx.$api.address.add(e.detail.value.name, e.detail.value.mobile, this.data.areaSn, this.data.cityId, this.data.regiId, e.detail.value.address, this.data.defaultVal).then(res=>{
wx.navigateBack()
})
}
},
/**
* 设为默认地址
*/
addressDefault(e) {
let val = e.detail.value
this.setData({
defaultVal: val
})
}
})