You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
269 lines
7.3 KiB
269 lines
7.3 KiB
// pages/order/components/contact/index.js
|
|
import userApi from "../../../../utils/https/user"
|
|
import commonApi from "../../../../utils/https/common"
|
|
let app = getApp()
|
|
Component({
|
|
/**
|
|
* 组件的属性列表
|
|
*/
|
|
options: {
|
|
styleIsolation: 'apply-shared',
|
|
addGlobalClass: true
|
|
},
|
|
properties: {
|
|
|
|
},
|
|
|
|
/**
|
|
* 组件的初始数据
|
|
*/
|
|
data: {
|
|
selectLinkman: null,
|
|
linkmanList: [],
|
|
showMask: false,
|
|
editId: null
|
|
},
|
|
lifetimes: {
|
|
attached: function () {
|
|
// 在组件实例进入页面节点树时执行
|
|
// 获取默认联系人 如果有临时存储的联系人则不获取默认联系人
|
|
commonApi.user_post("token/check").then(res => {
|
|
if (res.code == 1) {
|
|
console.log(wx.getStorageSync('linkMan'));
|
|
if (wx.getStorageSync('linkMan')) {
|
|
this.getLinkmanList()
|
|
} else {
|
|
userApi.user_post("user/getDefaultContact", {
|
|
contactType: "CONSIGNEE"
|
|
}).then(res => {
|
|
this.setData({
|
|
selectLinkman: res.data
|
|
})
|
|
if (res.data) {
|
|
this.triggerEvent("setAddress", res.data)
|
|
}
|
|
this.getLinkmanList()
|
|
})
|
|
}
|
|
|
|
}
|
|
})
|
|
|
|
},
|
|
detached: function () {
|
|
// 在组件实例被从页面节点树移除时执行
|
|
},
|
|
},
|
|
pageLifetimes: {
|
|
show: function () {
|
|
// 页面被展示
|
|
if (this.data.editId) {
|
|
let editId = this.data.editId;
|
|
userApi.user_post("user/getContactInfoById", {
|
|
id: editId
|
|
}).then(res => {
|
|
let selectLinkman = this.data.selectLinkman,
|
|
linkmanList = this.data.linkmanList;
|
|
if (selectLinkman.id == editId) {
|
|
selectLinkman.name = res.data.name;
|
|
selectLinkman.tel = res.data.tel;
|
|
selectLinkman.address = res.data.address;
|
|
selectLinkman.is_default = res.data.is_default;
|
|
}
|
|
linkmanList.map(item => {
|
|
if (item.id == editId) {
|
|
item.name = res.data.name;
|
|
item.tel = res.data.tel;
|
|
item.address = res.data.address;
|
|
item.is_default = res.data.is_default;
|
|
} else if (res.data.is_default == 1 && item.is_default == 1) {
|
|
item.is_default = 0;
|
|
}
|
|
})
|
|
this.setData({
|
|
linkmanList: linkmanList,
|
|
selectLinkman: selectLinkman
|
|
})
|
|
this.triggerEvent("setAddress", res.data)
|
|
})
|
|
} else {
|
|
commonApi.user_post("token/check").then(res => {
|
|
if (res.code == 1) {
|
|
if (!wx.getStorageSync('linkMan')) {
|
|
this.getDefault()
|
|
}else{
|
|
this.setData({
|
|
selectLinkman: wx.getStorageSync('linkMan')
|
|
})
|
|
this.triggerEvent("setAddress",wx.getStorageSync('linkMan'))
|
|
this.getLinkmanList()
|
|
}
|
|
}
|
|
})
|
|
}
|
|
},
|
|
hide: function () {
|
|
// 页面被隐藏
|
|
},
|
|
resize: function (size) {
|
|
// 页面尺寸变化
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 组件的方法列表
|
|
*/
|
|
methods: {
|
|
gotoEdit: function (e) {
|
|
this.setData({
|
|
editId: e.currentTarget.dataset.item.id
|
|
})
|
|
wx.navigateTo({
|
|
url: '/pages/user/address/add/index?id=' + this.data.editId + '&from=order',
|
|
})
|
|
this.setData({
|
|
editId: null
|
|
})
|
|
},
|
|
showLinkman: function () {
|
|
this.setData({
|
|
showMask: !this.data.showMask
|
|
})
|
|
},
|
|
cancel: function () {
|
|
// let selectLinkman = this.data.selectLinkman,linkmanList = this.data.linkmanList;
|
|
// linkmanList.map(linkman=>{
|
|
// linkman.selected = 0;
|
|
// if(selectLinkman.id==linkman.id){
|
|
// linkman.selected = 1;
|
|
// }
|
|
// })
|
|
// this.setData({
|
|
// linkmanList:linkmanList
|
|
// })
|
|
this.showLinkman()
|
|
},
|
|
confirm: function () {
|
|
let linkmanList = this.data.linkmanList,
|
|
selectLinkman = null;
|
|
linkmanList.map(linkman => {
|
|
if (linkman.selected == 1) {
|
|
selectLinkman = (linkman);
|
|
}
|
|
})
|
|
this.setData({
|
|
selectLinkman: selectLinkman
|
|
})
|
|
this.triggerEvent("setAddress", selectLinkman)
|
|
this.showLinkman()
|
|
},
|
|
getLinkmanList: function () {
|
|
// 直接获取1000条出行人信息 就不要分页了
|
|
userApi.user_post("user/getContactOrConsignee", {
|
|
contactType: "CONSIGNEE",
|
|
offset: 0,
|
|
limit: 1000
|
|
}).then(res => {
|
|
let list = res.data;
|
|
this.setData({
|
|
linkmanList: list
|
|
})
|
|
})
|
|
},
|
|
setDefault: function (e) {
|
|
let item = e.currentTarget.dataset.item,
|
|
linkmanList = this.data.linkmanList;
|
|
userApi.user_post("user/setDefaultConsignee", {
|
|
id: item.id
|
|
}).then(res => {
|
|
if (res.code == 1) {
|
|
wx.showToast({
|
|
title: '设置成功',
|
|
icon: 'success'
|
|
})
|
|
linkmanList.map(linkman => {
|
|
if (linkman.id == item.id) {
|
|
linkman.is_default = 1;
|
|
} else {
|
|
linkman.is_default = 0;
|
|
}
|
|
})
|
|
this.setData({
|
|
linkmanList: linkmanList
|
|
})
|
|
}
|
|
})
|
|
},
|
|
delLinkman: function (e) {
|
|
wx.showLoading({
|
|
title: '加载中',
|
|
})
|
|
let index = e.currentTarget.dataset.index,
|
|
selectLinkman = this.data.selectLinkman;
|
|
selectLinkman.splice(index, 1);
|
|
this.setData({
|
|
selectLinkman: selectLinkman
|
|
})
|
|
wx.hideLoading()
|
|
},
|
|
del: function (e) {
|
|
let item = e.currentTarget.dataset.item,
|
|
index = e.currentTarget.dataset.index,
|
|
that = this,
|
|
linkmanList = this.data.linkmanList;
|
|
wx.showModal({
|
|
title: "提示",
|
|
content: "确定删除吗?",
|
|
success(res) {
|
|
if (res.confirm) {
|
|
userApi.user_post("user/delConsignee", {
|
|
id: item.id
|
|
}).then(res => {
|
|
if (res.code == 1) {
|
|
wx.showToast({
|
|
title: '删除成功',
|
|
icon: "success"
|
|
})
|
|
linkmanList.splice(index, 1);
|
|
that.setData({
|
|
linkmanList: linkmanList
|
|
})
|
|
}
|
|
})
|
|
console.log('用户点击确定')
|
|
} else if (res.cancel) {
|
|
console.log('用户点击取消')
|
|
}
|
|
}
|
|
})
|
|
},
|
|
selectIt: function (e) {
|
|
let item = e.currentTarget.dataset.item;
|
|
this.setData({
|
|
selectLinkman: item,
|
|
showMask: false
|
|
})
|
|
wx.setStorageSync('linkMan', item)
|
|
console.log(wx.getStorageSync('linkMan'));
|
|
this.triggerEvent("setAddress", item)
|
|
},
|
|
getDefault: function (e) {
|
|
commonApi.user_post("token/check").then(res => {
|
|
if (res.code == 1) {
|
|
userApi.user_post("user/getDefaultContact", {
|
|
contactType: "CONSIGNEE"
|
|
}).then(res => {
|
|
console.log(res)
|
|
this.setData({
|
|
selectLinkman: res.data
|
|
})
|
|
if (res.data) {
|
|
this.triggerEvent("setAddress", res.data)
|
|
}
|
|
this.getLinkmanList()
|
|
})
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|