You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

160 lines
3.7 KiB
JavaScript

// pages/order/address/address.js
const app = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
type: 0,
flag: true,
addressList: [],
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
this.data.type = options.type
// 下载收货地址
this.getLoadAddress();
},
/**
* 下载收货地址
*/
getLoadAddress: function() {
var that = this;
wx.showLoading({
title: '加载中...',
});
var params = {
"method": "wxdc.get.distribution.address",
"wid": app.wid,
"openId": app.openId,
}
// 忽略签名参数
var ignores = [];
app.jsapi.api(app.globalData.appKey, app.globalData.appSecret, app.globalData.serverUrl).ajax(params, ignores,
function(json) {
console.log(json);
var result = json.data;
if (result.status == 1) {
var flag = true;
if (result.list.length > 0) {
flag = false;
}
that.setData({
addressList: result.list,
flag: flag,
});
} else {
app.msg.showMsg("提示", result.message);
}
wx.hideLoading();
},
function(error) {
wx.hideLoading();
app.msg.showMsg("提示", "网络中断,获取门店失败");
}
);
},
/**
* 新增收货地址
*/
addLoadAddress: function() {
var url = "../address/addAddress?type=0";
wx.navigateTo({
url: url,
})
},
/**
* 是否删除收货地址
*/
deleteFromAddress: function(e) {
var that = this;
var index = e.currentTarget.dataset.index;
wx.showModal({
title: '提示',
content: '确定删除该收货地址',
success: function(res) {
if (res.confirm) {
that.deleteStartAddress(index);
}
}
})
},
/**
* 删除收货地址
*/
deleteStartAddress: function(index) {
wx.showLoading({
title: '加载中...',
});
var that = this;
var address = this.data.addressList[index];
var params = {
"method": "wxdc.delete.distribution.address",
"wid": app.wid,
"openId": app.openId,
"id": address.id,
}
// 忽略签名参数
var ignores = [];
app.jsapi.api(app.globalData.appKey, app.globalData.appSecret, app.globalData.serverUrl).ajax(params, ignores,
function(json) {
var result = json.data;
if (result.status == 1) {
that.data.addressList.remove(index);
var flag = true;
if (that.data.addressList.length > 0) {
flag = false;
}
that.setData({
addressList: that.data.addressList,
flag: flag,
});
} else {
app.msg.showMsg("提示", result.message);
}
wx.hideLoading();
},
function(error) {
wx.hideLoading();
app.msg.showMsg("提示", "网络中断,获取门店失败");
}
);
},
/**
* 选择收货地址
*/
disSelectAddress: function(e) {
if (this.data.type != 1) {
var that = this
var index = e.currentTarget.dataset.index;
var tempAddress = this.data.addressList[index];
var pages = getCurrentPages();
var prevPage = pages[pages.length - 2] //上一个页面
prevPage.updateDisSelectAddress(JSON.stringify(tempAddress));
wx.navigateBack({});
}
},
/**
* 修改收货地址
*/
changeStoreAddress: function(e) {
var index = e.currentTarget.dataset.index;
var address = this.data.addressList[index];
var url = "../address/addAddress?type=1&address=" + JSON.stringify(address);
wx.navigateTo({
url: url,
})
},
})