var i = require("../../../utils/util.js"); var com = require("../public/buy_com.js"); var e = getApp(), a = e.globalData.setting, os = a, t = e.request, d = e.globalData; Page({ data: { url: a.url, //接口网址 iurl: a.imghost, //图片前缀网址 getStorageID: '', getUserID: '', wareCard: [], // page: 0, // pageSize: 10, isEmpty: false, loadingType: 0, //定义加载方式 0---contentdown 1---contentrefresh 2---contentnomore contentText: { contentdown: '加载更多', contentrefresh: '加载中...', contentnomore: '已加载全部' }, ismore: 0, //数据是否全部加载完成 is_read: 0, //是否查询过我的礼包接口 curpage: 1, //当前分页数 pageSize: 10, //页大小 total: 0, //总数量 ad_data: null, first_leader: e.globalData.first_leader || 0, // 推荐人ID //门店相关 ismend: 0, is_sec_mend: 0, sto_sele_name: "", //选中的门店名称 sto_sele_id: "", //选中的门店id sto_sele_distr: "", //选择的门店的配送方式 is_show_sto_cat: 1, //是否显示门店分类 only_pk: null, all_sto: null, sec_sto: null, //选择了的门店分类 pickpu_list: null, //读出的所有门店list def_pickpu_list: null, //一开始5个门店list sec_pick_index: 0, //第二级门店选择ID fir_pick_index: 0, //第一级门店选择ID all_pick_list: null,//所有的门店先记录起来 select_store: 0, //选择更多 index: 1, more_store: 0, //选择门店 sort_store: 0, //门店分类 choice_sort_store: 0, //选择分类门店 new_user: 0, //新用户 def_pick_store: null, // 默认的门店 fir_def_store: null, //客户默认的门店的 lat: null, //维度 lon: null, //经度 is_get_local_ok: 0, //获取坐标是否完成 region_name: "门店分类", //区域的名字 is_gps: 1, open_ind_store: 0, //哪里打开的门店列表的控制属性 default_store: {}, //创建添加默认门店地址的对象 store:0, openSpecModal:0 }, onLoad: function (options) { var th=this; this.setData({ params: options, now:Date.parse(new Date()) / 1000, }) getApp().getConfig2(function (e) { var json_d = JSON.parse(e.switch_list); th.setData({ bconfig: e, sys_switch:json_d }); }) }, init() { var th = this; let options = this.data?.params; this.setData({ getStorageID: a.stoid, getUserID: d.user_id }); var my_confirm = th.selectComponent("#my_confirm"); //组件的id my_confirm.open_cancel(0); //-- 获取分享人的ID -- var first_leader = options.first_leader || getApp().globalData.first_leader; if (first_leader) { this.setData({ first_leader, }) //-- user_id代过来免登录 -- getApp().globalData.first_leader = first_leader; //调用接口判断是不是会员 getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => { if (res.data.code == 0) { getApp().globalData.guide_id = res.data.data.id; } }) } getApp().request.promiseGet("/api/weshop/ad/page?pid=901&store_id=" + os.stoid, { data: { enabled: 1 } }).then(res => { if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) { var a = res.data.data.pageData; var tt = { 'ad_code': os.imghost + a[0].ad_code, 'media_link': '', 'ad_weapplink': a[0].ad_weapplink, 'bgcolor': a[0].bgcolor, }; th.setData({ ad_data: tt }); } }) this.getList(); }, onShow: function () { getApp().check_can_share(); var th=this; //--先判断会员状态-- getApp().is_Single_page(this, function () { var user_info = getApp().globalData.userInfo; if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { getApp().goto('/pages/togoin/togoin'); return false; } com.wait_for_store_config(th); com.set_user_mo_store(th,os); }) this.init(); }, //购买礼包 GetBuyPrice: function (e) { var th = this; var index = e.currentTarget.dataset.index; //活动id var sele_g=th.data.wareCard[index]; this.data.payMoney=sele_g.payMoney; th.setData({sele_g:sele_g,buyType:2,}) if(sele_g.is_pickup){ if(sele_g.pickup_list && th.data.def_pick_store){ com.check_def_pk(th); } com.get_sto(th,os) th.setData({ openSpecModal:1 }) }else{ var my_confirm = th.selectComponent("#my_confirm"); //组件的id my_confirm.open( "是否确定购买该礼包", "取消", "确定", function () { my_confirm.open_cancel(0); }, function () { my_confirm.open_cancel(0); com.buy_libao(th) } ) } }, // 积分兑换 GetBuyIntegral: function (e) { var th = this; var index = e.currentTarget.dataset.index; //活动id var sele_g=th.data.wareCard[index]; th.setData({sele_g:sele_g, buyType:1,}) if(sele_g.is_pickup){ if(sele_g.pickup_list && th.data.def_pick_store){ com.check_def_pk(th); } com.get_sto(th,os) th.setData({ openSpecModal:1 }) }else { var my_confirm = th.selectComponent("#my_confirm"); //组件的id my_confirm.open( "是否确定兑换该礼包", "取消", "确定", function () { my_confirm.open_cancel(0); }, function () { my_confirm.open_cancel(0); com.buy_libao(th) }) } }, //免费领取 GetFree: function (e) { var th = this; var index = e.currentTarget.dataset.index; //活动id var sele_g=th.data.wareCard[index]; th.setData({sele_g:sele_g, buyType:3,}) if(sele_g.is_pickup){ if(sele_g.pickup_list && th.data.def_pick_store){ com.check_def_pk(th); } com.get_sto(th,os) th.setData({ openSpecModal:1 }) }else { var my_confirm = th.selectComponent("#my_confirm"); //组件的id my_confirm.open( "是否确定领取该礼包", "取消", "确定", function () { my_confirm.open_cancel(0); }, function () { my_confirm.open_cancel(0); com.buy_libao(th) }) } }, getList: function (e) { var th = this; getApp().request.get('/api/weshop/marketing/giftbag/page', { isShowLoading: true, data: { storeId: th.data.getStorageID, //商家ID userId: th.data.getUserID, //用户ID page: th.data.curpage, pageSize: th.data.pageSize }, success: function (res) { if (res.data.code == 0) { th.data.curpage++; var arr1 = th.data.wareCard; var arr2 = res.data.data.pageData; var arr3 = [...arr1, ...arr2]; var ismore = 0; if (arr3.length == res.data.data.total) ismore = 1 th.setData({ wareCard: arr3, total: res.data.data.total, ismore: ismore, is_read: 1, is_get:1 }), wx.stopPullDownRefresh(); //停止下拉刷新 } else { th.setData({ is_read: 1, ismore: 1, is_get:1 }) } } }) }, //销毁界面跳转 redirectTo: function (e) { var th = this; var url = e.currentTarget.dataset.url; //销毁跳转 wx.redirectTo({ url: url }); }, //不销毁界面跳转 navigateTo: function (e) { var th = this; var url = e.currentTarget.dataset.url; getApp().goto(url); }, //下拉事件 onReachBottom: function () { var th = this; if (th.data.total <= th.data.pageSize) return; if (th.data.ismore) return; th.getList(); }, //图片失败,默认图片 bind_bnerr2: function (e) { var _errImg = e.target.dataset.errorimg; var _errObj = {}; _errObj[_errImg] = "/miniapp/images/default_g_img.gif"; this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; }, goto: function (e) { var th = this; var url = e.currentTarget.dataset.url; getApp().goto(url); }, onShareAppMessage: function (e) { getApp().globalData.no_clear=1; var curPage = this; var pagePath = curPage.route; //当前页面url if (pagePath.indexOf('/') != 0) { pagePath = '/' + pagePath; } pagePath += "?first_leader=" + this.data.getUserID; return { title: "专享礼包", path: pagePath, } }, // 分享朋友圈 onShareTimeline() { getApp().globalData.no_clear=1; var user_id=getApp().globalData.user_id; if(!user_id) user_id=0; return { title: '专享礼包', imageUrl: this.data.ad_data.ad_code, query: 'first_leader='+user_id } }, //--- 设置一下默认库存的数量 ---- set_def_storage(ee) { var that = this, th = this; that.data.fir_def_store = ee; that.setData({ def_pick_store: ee, sto_sele_name: ee.pickup_name, sto_sele_id: ee.pickup_id, sto_sele_distr: ee.distr_type }) }, // 选择门店 choice_store: function (ee) { var th = this; var ind = ee.currentTarget.dataset.ind; var bconfig = th.data.bconfig; //如果开启了,则不在选择门店 if(this.data.sys_switch.is_pricing_open_store && getApp().globalData.pk_store){ return false; } if (!th.data.only_pk && !th.data.def_pickpu_list) { getApp().confirmBox("门店库存不足", null, 25000, !1); return false; } if (th.data.only_pk && !th.data.only_pk.length) { getApp().confirmBox("门店库存不足", null, 25000, !1); return false; } if (th.data.def_pickpu_list && !th.data.def_pickpu_list.length) { getApp().confirmBox("门店库存不足", null, 25000, !1); return false; } if (bconfig && bconfig.is_sort_storage) { wx.getLocation({ type: 'gcj02', success: function (res) { th.data.lat = res.latitude; th.data.lon = res.longitude; th.data.is_get_local_ok = 1; th.setData({ is_gps: 1 }); //th.onShow(); com.get_sto(th,os); }, fail: function (res) { //th.onShow(); th.data.is_get_local_ok = 1; com.get_sto(th,os); if (res.errCode == 2) { th.setData({ is_gps: 0 }); if (th.data.is_gps == 0) { getApp().confirmBox("请开启GPS定位", null, 25000, !1); } } else { th.setData({ is_gps: "3" }); } } }) } else { th.data.is_get_local_ok = 1; com.get_sto(th,os); } if (ind != undefined && ind != null) { this.setData({ open_ind_store: ind, store: 1, openSpecModal: !1, openSpecModal_pt: !1, openSpecModal_flash_normal: !1, }) } else { this.setData({ store: 1, openSpecModal: !1, openSpecModal_pt: !1, openSpecModal_flash_normal: !1 }) } }, //关闭选择门店 close_popup: function (e) { var th = this; this.setData({ store: 0, choice_sort_store: 0, sort_store: 0, fir_pick_index: 0, sec_pick_index: 0 }) var openindstore = this.data.open_ind_store; if (openindstore == 1) { th.setData({ openSpecModal: !0, openSpecModal_ind: openindstore, }); } else if (openindstore == 2) { th.setData({ openSpecModal: !0, openSpecModal_ind: openindstore, }); } else if (openindstore == 4) { //4就是拼团 th.setData({ openSpecModal_pt: 1, //打开拼团购买界面 store: 0, //关闭门店 choice_sort_store: 0, //关闭门店2级 sort_store: 0, //关闭门店2级 }); } else { th.setData({ store: 0, choice_sort_store: 0, sort_store: 0 }) } }, //选择更多门店 more_store: function () { this.setData({ sort_store: 1 }); }, // 返回按钮 returns: function () { this.setData({ sort_store: 0, choice_sort_store: 0 }); }, //---选择分类门店--- choice_sort_store: function (e) { var index = e.currentTarget.dataset.index; var region_name = e.currentTarget.dataset.region; var item = this.data.all_sto[index]; this.setData({ region_name: region_name, sort_store: 0, choice_sort_store: 1, sec_sto: item, sec_pick_index: 0 }); }, choose_for_store_fir: function (e) { var index_c = e.currentTarget.dataset.ind; var th = this; th.setData({ fir_pick_index: index_c }) }, //确定def_pick为选择的门店 sure_pick: function (e) { var th = this; var item = null; var openindstore = th.data.open_ind_store; if (th.data.choice_sort_store == 0) { var index = th.data.fir_pick_index; if (th.data.is_show_sto_cat == 1) { item = th.data.def_pickpu_list[index]; } else { item = th.data.only_pk[index]; //当没有门店分类的时候 } } else { var index = th.data.sec_pick_index; item = th.data.sec_sto.s_arr[index]; } if (!th.data.sele_g) return false; th.setData({ def_pick_store: item, sto_sele_name: item.pickup_name, sto_sele_id: item.pickup_id, sto_sele_distr: item.distr_type, store: 0, choice_sort_store: 0, fir_pick_index: 0, openSpecModal: !0, }); }, //---点击二级之后的选择--- choose_for_store: function (e) { var index_c = e.currentTarget.dataset.ind; var th = this; th.setData({ sec_pick_index: index_c, fir_pick_index: index_c }) }, //把选择的门店设置成默认的门店def_pick set_def_pick: function (e) { var th = this; var item = null; if (th.data.choice_sort_store == 0) { var index = th.data.fir_pick_index; if (th.data.is_show_sto_cat == 1) { item = th.data.def_pickpu_list[index]; } else { item = th.data.only_pk[index]; //当没有门店分类的时候 } } else { var index = th.data.sec_pick_index; item = th.data.sec_sto.s_arr[index]; } th.setData({ def_pick_store: item, sto_sele_name: item.pickup_name, sto_sele_id: item.pickup_id, sto_sele_distr: item.distr_type, store: 0, choice_sort_store: 0, openSpecModal: !0, }); var user_id=getApp().globalData.user_id; var def_pickup_id = item.pickup_id; getApp().request.put('/api/weshop/users/update', { data: { user_id: user_id, def_pickup_id: def_pickup_id }, success: function (res) { if (res.data.code == 0) { if (th.data.choice_sort_store == 0) th.setData({ fir_pick_index: 0 }); getApp().globalData.pk_store = item; } else { getApp().my_warnning("设置默认门店地址失败", 0, th) } } }); }, closeSpecModal: function () { this.setData({openSpecModal: 0}); }, buy_libao:function () { com.buy_libao(this) } })