var e = getApp(), a = e.globalData.setting, os = a, t = e.request, d = e.globalData; Page({ /** * 页面的初始数据 */ data: { url: a.url, //接口网址 interest_lables: [], //兴趣标签 check_label: [], //用户选中的标签集合 user_label_val: "", //奖励多少 user_label_type: "", //奖励类型(0积分,1类型) is_modify: 0, //判断是第一次填写还是修改(0填写,1修改) }, //点击选择兴趣标签把值放到已选中 click_label: function(e) { var th = this; var index = e.currentTarget.dataset.index; //选择兴趣标签的下标 var labels = th.data.interest_lables; //兴趣标签数组 var check_label = th.data.check_label; //已选中的数组 var labels_cid = th.data.interest_lables[index].check; //当前标签是否选中 var labels_check = 'interest_lables[' + index + '].check'; //用于点击标签把点击状态赋值进去 if (labels_cid) { labels_cid = 0; for (var i = 0; i < check_label.length; i++) { if (labels[index].id == check_label[i].id) { check_label.splice(i, 1); } } } else { var check_new = { lable: labels[index] }; labels_cid = 1; check_label.push(labels[index]); } th.setData({ [labels_check]: labels_cid, check_label: check_label }) }, //获取配置信息 get_config: function() { var th = this; getApp().getConfig2(function(ee) { var sms_conf = ee.switch_list; sms_conf = JSON.parse(sms_conf); th.setData({ user_label_val: sms_conf.user_label_val, user_label_type: sms_conf.user_label_type }) }) }, //页面跳转 goto: function(e) { var th = this; wx.navigateBack({ //返回 delta: 1 }) }, /** * 生命周期函数--监听页面加载 */ onLoad: function(options) { var th = this; var pages = getCurrentPages(); var prevPage = pages[pages.length - 2]; //上一个页面 //直接调用上一个页面的setData()方法,把数据存到上一个页面中去 prevPage.setData({ is_zy: 1 }) th.query_nolabels(); th.get_config(); }, //获取标签集合 query_nolabels: function() { var th = this; var url = "/api/weshop/marketing/holiday/vip/interest/label/page"; var interest_lables = th.data.interest_lables; //兴趣标签集合 getApp().request.promiseGet(url, { data: { storeId: a.stoid } }).then(res => { if (res.data.code == 0) { th.setData({ interest_lables: res.data.data.pageData }) th.query_checklabels(); } else { getApp().my_warnning("系统繁忙,请稍后再试", 0, th); return false; } }) }, //查找会员选择的兴趣标签 query_checklabels: function() { var th = this; var url = "/api/weshop/marketing/holiday/vip/interest/label/get"; var interest_lables = th.data.interest_lables; //兴趣标签 getApp().request.promiseGet(url, { data: { userId: d.user_id, storeId: a.stoid } }).then(res => { if (res.data.code == 0) { var data = res.data.data; var arr = []; var VipLabelId = []; //通过id标签找到已选择的标签 var dateList = data.VipLabelId.split(","); for (var i in dateList) { VipLabelId = VipLabelId.concat(dateList[i]); } if (VipLabelId.length > 0) { for (var i = 0; i < interest_lables.length; i++) { for (var ii = 0; ii < VipLabelId.length; ii++) { if (interest_lables[i].id == VipLabelId[ii]) { interest_lables[i].check = 1; arr.push(interest_lables[i]); } } } } //如何有之前有选择兴趣标签的话,再进来的话就是修改 if (data.VipLabelId != "") { th.setData({ is_modify: 1 }) } th.setData({ check_label: arr, interest_lables: interest_lables }) } else { getApp().my_warnning("系统繁忙,请稍后再试", 0, th); return false; } }) }, //更新会员兴趣标签 update_label: function() { var th = this; var is_modify = th.data.is_modify; //是否是修改 var check_label = th.data.check_label; //用户选择 var remark = "领取"; if (is_modify) { user_label_type = 0; remark = "修改"; } if (check_label.length < 1) { getApp().my_warnning("完成兴趣标签才能" + remark + "哦~", 0, th); return false; } var user_label_val = th.data.user_label_val; //选择标签奖励多少 var user_label_type = th.data.user_label_type; //增送类型 var url = "/api/weshop/marketing/holiday/vip/interest/label/update"; //更新标签接口地址 var nav_url = "/pages/user/userinfo/userinfo"; //领取成功之后跳转页面 var vipLabel = ""; //选择的标签名称 var vipLabelId = ""; //选择的标签id var arr = []; for (var i = 0; i < check_label.length; i++) { if (i < check_label.length - 1) { vipLabelId += check_label[i].id + ","; vipLabel += check_label[i].LabelName + ","; arr.push(check_label[i].LabelName); } else { vipLabelId += check_label[i].id; vipLabel += check_label[i].LabelName; arr.push(check_label[i].LabelName); } } getApp().request.put(url, { data: { "storeId": a.stoid, "userId": d.user_id, "vipLabel": vipLabel, "vipLabelId": vipLabelId, "type": user_label_type, "remark": remark, "value": user_label_val, "fromType": "REWARD" }, success: function(res) { if (res.data.code == 0) { if (is_modify) { getApp().my_warnning("修改成功", 1, th); } else { getApp().my_warnning("领取成功", 1, th); } setTimeout(function() { var pages = getCurrentPages(); var prevPage = pages[pages.length - 2]; //上一个页面 //直接调用上一个页面的setData()方法,把数据存到上一个页面中去 prevPage.setData({ check_label: arr }) th.goto(); }, 2000); } else { getApp().my_warnning("系统繁忙,请稍后再试", 0, th); } } }) }, /** * 生命周期函数--监听页面显示 */ onShow: function() { } })