diff --git a/packageB/pages/luckactivity/index/index.js b/packageB/pages/luckactivity/index/index.js index b9d8f7d..21676ac 100644 --- a/packageB/pages/luckactivity/index/index.js +++ b/packageB/pages/luckactivity/index/index.js @@ -35,6 +35,7 @@ Page({ if(index == 0) { data.is_end = 0; + data.timetype = 1; } else if(index == 1) { data.is_end = 1; }; @@ -82,6 +83,7 @@ Page({ store_id: app.globalData.setting.stoid, user_id: app.globalData.userInfo.user_id, is_end: 0, + timetype:1 }; this.setData({ diff --git a/packageB/pages/zuhegou/index/index.js b/packageB/pages/zuhegou/index/index.js index 0320076..3806d41 100644 --- a/packageB/pages/zuhegou/index/index.js +++ b/packageB/pages/zuhegou/index/index.js @@ -1,311 +1,1588 @@ - const app = getApp(); let self = null; +var os = app.globalData.setting; +var ut = require("../../../../utils/util.js"); +var oo = app.globalData; + let imgDraw = { - "width": "650px", - "height": "843px", - "background": "https://mshopimg.yolipai.net/miniapp/images/zhg/bg-zuhegou.jpg", - "views": [ - { // 头像 - "type": "image", - "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg", - "css": { - "width": "100px", - "height": "100px", - "top": "20px", - "left": "275px", - "borderRadius": "100px", - "mode": "scaleToFill", - "borderWidth": "2px", - "borderColor": "#fff", - } - }, - { //昵称 - "type": "text", - "text": "我是店铺", - "css": { - "width": "650px", - "color": "#fff", - "top": "136px", - "fontSize": "26px", - "maxLines": "1", - "textAlign": "center", - } - }, - { //10元任选3件 - "type": "text", - "text": "10元任选3件", - "css": { - "color": "#fff", - "width": "650px", - "top": "270px", - "fontSize": "70px", - "maxLines": "1", - "textAlign": "center", - "fontWeight": "bold", - } - }, - { //活动时间 - "type": "text", - "text": "活动时间:2021.07.06 - 2021.07.08", - "css": { - "color": "#333", - "width": "650px", - "top": "440px", - "fontSize": "26px", - "fontWeight": "normal", - "maxLines": "1", - "textAlign": "center" - } - }, - { // 码 - "type": "qrcode", - "content": "二维码地址", - "css": { - "color": "#000", - "width": "200px", - "height": "200px", - "top": "525px", - "left": "225px", - } - }, - { // 扫码提示 - "type": "text", - "text": "长按扫码即可参与活动", - "css": { - "color": "#666", - "width": "650px", - "top": "750px", - "fontSize": "26px", - "textAlign": "center" - } - }, - ] + "width": "650px", + "height": "843px", + "background": "https://mshopimg.yolipai.net/miniapp/images/zhg/bg-zuhegou.jpg", + "views": [ + { // 头像 + "type": "image", + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg", + "css": { + "width": "100px", + "height": "100px", + "top": "20px", + "left": "275px", + "borderRadius": "100px", + "mode": "scaleToFill", + "borderWidth": "2px", + "borderColor": "#fff", + } + }, + { //昵称 + "type": "text", + "text": "我是店铺名", + "css": { + "width": "650px", + "color": "#fff", + "top": "136px", + // "left": "137px", + "textAlign": "center", + "fontSize": "26px", + "maxLines": "1", + } + }, + { //10元任选3件 + "type": "text", + "text": "10元任选3件", + "css": { + "color": "#fff", + "width": "650px", + "top": "270px", + "fontSize": "70px", + "maxLines": "1", + "textAlign": "center", + "fontWeight": "bold", + } + }, + { //活动时间 + "type": "text", + "text": "活动时间:2021.07.06 - 2021.07.08", + "css": { + "color": "#333", + "width": "650px", + "top": "440px", + "fontSize": "26px", + "fontWeight": "normal", + "maxLines": "1", + "textAlign": "center" + } + }, + { // 码 + "type": "image", + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg", + "css": { + "color": "#000", + "width": "200px", + "height": "200px", + "top": "525px", + "left": "225px", + } + }, + { // 扫码提示 + "type": "text", + "text": "长按扫码即可参与活动", + "css": { + "color": "#666", + "width": "650px", + "top": "750px", + "fontSize": "26px", + "textAlign": "center" + } + }, + ] }; Page({ - /** - * 页面的初始数据 - */ - data: { - showRule: false, - showMask: false, - showNum: false, - haveAdded: false, - imgDraw: imgDraw, - }, - - /** - * 生命周期函数--监听页面加载 - */ - onLoad: function (options) { - self = this; - }, - - /** - * 生命周期函数--监听页面初次渲染完成 - */ - onReady: function () { - - }, - - /** - * 生命周期函数--监听页面显示 - */ - onShow: function () { - - }, - - /** - * 生命周期函数--监听页面隐藏 - */ - onHide: function () { - - }, - - /** - * 生命周期函数--监听页面卸载 - */ - onUnload: function () { - - }, - - /** - * 页面相关事件处理函数--监听用户下拉动作 - */ - onPullDownRefresh: function () { - - }, - - /** - * 页面上拉触底事件的处理函数 - */ - onReachBottom: function () { - - }, - - /** - * 用户点击右上角分享 - */ - onShareAppMessage: function () { - - }, - - /** - * 点击规则详情,弹出规则 - */ - showRule() { - this.setData({ - type: 0, //控制显示规则详情还是提示信息,0规则详情,1提示信息 - showRule: true, - showMask: true, - }); - }, - - /** - * 点击关闭按钮关闭规则详情弹窗 - */ - closeRule() { - this.setData({ - showRule: false, - showMask: false, - }); - }, - - /** - * 点击提示信息 - */ - showInfo() { - this.setData({ - type: 1, - showRule: true, - showMask: true, - }); - }, - - /** - * 加入购物车 - */ - addToCart() { - let haveAdded = !this.data.haveAdded; - let title = ''; - if(haveAdded) { - title = '加入购物车成功'; - this.setData({ - num: 1, - showNum: true, - haveAdded, - }); - wx.showToast({ - title: title, - icon: 'success', - }); - } else { - wx.showModal({ - title: '温馨提示', - content: '确定将该商品移出购物车?', - success (res) { - if (res.confirm) { - console.log('用户点击确定'); - title = '移除购物车成功'; - self.setData({ - showNum: false, - haveAdded: false, - }); - wx.showToast({ - title: title, - icon: 'success', - }); - } else if (res.cancel) { - console.log('用户点击取消') - self.setData({ - haveAdded: true, - }); - } - } - }) - - } - - }, - - /** - * 增加数量 - */ - add() { - this.setData({ - num: ++this.data.num, - }); - }, - - /** - * 减少数量 - */ - sub() { - let num = this.data.num; - if(num >= 2) { - this.setData({ - num: --this.data.num, - }); - }; - if(num == 1) { - // this.setData({ - // showNum: false, - // haveAdded: false, - // }); - wx.showModal({ - title: '温馨提示', - content: '确定将该商品移出购物车?', - success (res) { - if (res.confirm) { - console.log('用户点击确定'); - // title = '移除购物车成功'; - self.setData({ - showNum: false, - haveAdded: false, - }); - wx.showToast({ - title: '移除购物车成功', - icon: 'success', - }); - } else if (res.cancel) { - console.log('用户点击取消') - self.setData({ - haveAdded: true, - }); - } - } - }) - } - }, - - /** - * 分享 - */ - share() { - this.setData({ - showMask: true, - showPoster: true, - }); - }, - - /** - * 关闭海报 - */ - closePoster() { - this.setData({ - showMask: false, - showPoster: false, - }); - }, - - onImgOK(e) { - console.log(e.detail.path); - this.setData({ - myimg: e.detail.path, - }); - }, + /** + * 页面的初始数据 + */ + data: { + iurl: os.imghost, + showRule: false, + showMask: false, + showNum: false, + haveAdded: false, + //imgDraw: imgDraw, 分享内容 + id: 0, //获得活动id + page: 1, //第一页 + no_more: 0, //没有更多 + loading: 0, //加载中 + list: [], //商品列表的显示 + act: null, //组合活动 + all_price: 0, //合计价格 + all_num: 0, //全部数量 + sele_pick_id: 0, //默认选择门店,当用户什么商品都没有选,sele_pick_id=0 + def_store: null, //用户默认的门店 + sele_store: 0, //是不是选择了门店 + more_store: 0, //选择门店 + sort_store: 0, //门店分类 + choice_sort_store: 0, //选择分类门店 + fir_pick_index: 0, //门店选择的下标 + sec_pick_index: 0 //门店选择的下标,地区选择之后的内页 + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + self = this; + this.data.id = options.id; + + //获取活动信息 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + options.id; + getApp().request.get(url, { + success: function (e) { + if (e.data.code == 0 && e.data.data) { + self.setData({act: e.data.data}); + if (e.data.data.is_end == 0) { + //-- 获取商品列表 -- + self.get_list(); + self.countDown(); + } + } else { + wx.showToast({ + title: e.data.msg, + icon: 'none', + duration: 2000 + }) + } + } + }); + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow: function () { + var th = this, that = this, ee = this; + this.data.is_timer = 1; + if (this.data.act) this.countDown(); + //如果有会员的时候 + var userInfo = getApp().globalData.userInfo; + if (userInfo) { + //等待活动值 + this.waitfor(10, th.data.act, function () { + //获取头像的分享 + th.get_head_temp(function () { + var txt = th.data.act.zhprice + "元任选" + th.data.act.zhbuyqty + "件"; + imgDraw.views[0].url = th.data.share_head; + imgDraw.views[1].text = userInfo.nickname; + imgDraw.views[2].text = txt; + + var start = ut.formar_no_full(th.data.act.start_time, '.'); + var end = ut.formar_no_full(th.data.act.end_time, '.'); + txt = "活动时间:" + start + " - " + end; + imgDraw.views[3].text = txt; + + var scene = th.data.gid + ""; + var user_id = getApp().globalData.user_id; + scene += "_" + user_id; + ///二微码 + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + + os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo"; + wx.getImageInfo({ + src: path3, + success: function (res) { + var vpath = res.path; + imgDraw.views[4].url = vpath; + th.setData({imgDraw: imgDraw}) + } + }) + }) + }) + //获取用户的默认门店 + getApp().get_user_store(function (e) { + if (!e) { + th.data.fir_def_store = {}; //赋值空对象 + return false; + } + var ee = JSON.parse(JSON.stringify(e)); + var appd = getApp().globalData; + //-- 等待定位系统的开启 -- + th.waitfor(15, th.data.is_get_local_ok, function () { + var e = JSON.parse(JSON.stringify(ee)); + //如果有开启近距离的话,同时距离优不一样了 + if (that.data.lat != null) { + //如果经纬度有变化的话 + if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) { + that.set_def_storage(e); + } else { + //要用接口是获取距离,js的计算不准 + getApp().request.promiseGet("/api/weshop/pickup/list", { + data: { + store_id: os.stoid, + pickup_id: e.pickup_id, + lat: th.data.lat, + lon: th.data.lon + }, + }).then(res => { + if (res.data.code == 0) { + e = res.data.data.pageData[0]; + if (e) { + e.is_no_dis = ee.is_no_dis; + appd.pk_store = e; + that.set_def_storage(e); + } + + } + }) + } + appd.lat = that.data.lat; + appd.lon = that.data.lon; + } else { + if (e) { + e.distance = null; + that.set_def_storage(e); + } + } + }) + }); + } + + //----获取系统参数----- + getApp().getConfig2(function (e) { + ee.setData({ + bconfig: e, + sales_rules: e.sales_rules, + }); + //设置基本参数 + th.wait_for_store_config(e); + + var json_d = JSON.parse(e.switch_list); + ee.setData({ + store_config: e, + sys_switch: json_d, + is_closecoupon: json_d.is_closecoupon, + is_newsales_rules: json_d.is_newsales_rules, + is_open_offline: json_d.is_pricing_open, + sales_rules: e.sales_rules + }); + + //-- 计算等级价相关 -- + var swithc_list = e.switch_list; + var sw_arr = JSON.parse(swithc_list); + //---如果后台又开等级卡的开关--- + if (sw_arr.rank_switch && sw_arr.rank_switch == "2") { + th.setData({rank_switch: true}); + //---回调卡的列表--- + th.getPlusCardType(function (ob) { + th.setData({card_list: ob.card_list}); + var user = getApp().globalData.userInfo; + if (!user) return false; + if (user.card_field && user['card_expiredate']) { + var str = user['card_expiredate'].replace(/-/g, '/'); + var end = new Date(str); + end = Date.parse(end) / 1000; + var now = ut.gettimestamp(); + //--- 判断是等级会员,且在有效期范围内 --- + if (user.card_field && now < end) { + var card_name = ob.name_map.get(user.card_field); + th.setData({ + card_field: user.card_field, + card_name: card_name, + card_list: ob.card_list + }); + } + } + + }) + } + }, 1); + + }, + + onHide: function () { + this.data.is_timer = 0; + }, + + //-- 调用接口的LIST,获取商品 -- + get_list: function () { + var th = this; + if (this.data.loading) return false; + if (this.data.no_more) return false; + this.data.loading = 1; + var url = "/api/weshop/prom/zhbuyGoods/page"; + var req_data = { + page: this.data.page, + pageSize: 10, + store_id: os.stoid, + zh_id: this.data.id + } + //开始调用接口 + getApp().request.get(url, { + data: req_data, + success: function (res) { + th.data.loading = 0; + th.setData({is_get: 1}) + if (ut.ajax_ok(res)) { + th.data.page++; + var list = th.data.list; + for (var i in res.data.data.pageData) { + list.push(res.data.data.pageData[i]); + } + th.setData({list: list}); + if (res.data.data.total <= 10) { + th.setData({no_more: 1}); + } + } else { + th.setData({no_more: 1}); + } + } + }) + }, + + //-- 滚动到底部触发 -- + get_more_list: function () { + this.get_list(); + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage: function () { + }, + + /** + * 点击规则详情,弹出规则 + */ + showRule() { + this.setData({ + type: 0, //控制显示规则详情还是提示信息,0规则详情,1提示信息 + showRule: true, + showMask: true, + }); + }, + + /** + * 点击关闭按钮关闭规则详情弹窗 + */ + closeRule() { + this.setData({ + showRule: false, + showMask: false, + }); + }, + + /** + * 点击提示信息 + */ + showInfo() { + this.setData({ + type: 1, + showRule: true, + showMask: true, + }); + }, + + /** + * 加入购物车 + */ + addToCart(e) { + var th = this; + var index = e.currentTarget.dataset.index; + var userInfo = getApp().globalData.userInfo; + if (!userInfo) { + getApp().goto("/pages/togoin/togoin"); + return false; + } + let haveAdded = this.data.list[index].haveAdded; + this.data.sele_index = index; + let title = ''; + self = this; + + //说明是加入购物车是时候 + this.data.is_zuhe_addcart = 1; + if (!haveAdded) { + th.data.sele_g = this.data.list[index]; + if (!th.data.sele_g.num) th.data.goodsInputNum = 1; + + //如果没有门店,活动商品的配送方式和门店的配送方式不一样 + if (!th.data.def_pick_store || + (th.data.sele_g.distr_type != 0 && th.data.def_pick_store.distr_type != 0 && th.data.sele_g.distr_type != th.data.def_pick_store.distr_type)) { + //选择了门店 + if (th.data.sele_store) { + wx.showToast({ + title: "该商品的物流配送方式和默认门店不匹配!", + icon: 'none', + duration: 2000 + }) + } else { + wx.showModal({ + title: '温馨提示', + content: '该商品的物流配送方式和默认门店不匹配,是否要切换门店?', + success (res) { + if (res.confirm) { + //物流的配送方式不一样 + th.get_sto(); + var set_data = { + store: 1 + }; + if (th.data.def_pick_store) { + set_data.is_no_pipei = th.data.def_pick_store.pickup_id; + } + th.setData(set_data); + } + } + }) + } + return false; + } else { + th.setData({is_no_pipei: 0}); + th.add_cart_func(); + } + } else { + wx.showModal({ + title: '温馨提示', + content: '确定将该商品移出购物车?', + success (res) { + if (res.confirm) { + console.log('用户点击确定'); + title = '移除购物车成功'; + th.setData({ + [txt1]: 1, + [txt2]: false, + [txt]: !haveAdded, + }); + wx.showToast({ + title: title, + icon: 'success', + }); + } else if (res.cancel) { + console.log('用户点击取消') + self.setData({ + haveAdded: true, + }); + } + } + }) + } + + }, + + /** + * 增加数量 + */ + add(e) { + + var th = this; + var userInfo = getApp().globalData.userInfo; + if (!userInfo) { + getApp().goto("/pages/togoin/togoin"); + return false; + } + + var index = e.currentTarget.dataset.index; + this.data.sele_g = this.data.list[index]; + this.data.sele_index=index; + th.data.goodsInputNum = this.data.sele_g.num + 1; + th.add_cart_func(); + }, + + /** + * 减少数量 + */ + sub(e) { + var userInfo = getApp().globalData.userInfo; + if (!userInfo) { + getApp().goto("/pages/togoin/togoin"); + return false; + } + + var th = this; + var index = e.currentTarget.dataset.index; + var item = this.data.list[index]; + let num = item.num; + + if (num >= 2) { + var check_num = num - 1; + //小于起购数 + if (check_num < item.zhqty) { + wx.showToast({ + title: "该商品至少要购买" + item.zhqty + "件", + icon: 'none', + duration: 2000 + }) + return false; + } + + th.data.sele_g = item; + th.data.sele_index = index; + th.data.goodsInputNum = check_num; + th.sub_updata_cart(); + return false; + } + + wx.showModal({ + title: '温馨提示', + content: '确定将该商品移出购物车?', + success (res) { + if (res.confirm) { + + self.setData({ + showNum: false, + haveAdded: false, + }); + wx.showToast({ + title: '移除购物车成功', + icon: 'success', + }); + th.re_sum_price();//重新统计数量和总金额 + } else if (res.cancel) { + console.log('用户点击取消') + self.setData({ + haveAdded: true, + }); + } + } + }) + return false; + + }, + + /** 分享 **/ + share() { + var th = this; + var userInfo = getApp().globalData.userInfo; + if (!userInfo) { + getApp().goto("/pages/togoin/togoin"); + return false; + } + wx.showLoading(); + setTimeout(function () { + th.setData({ + showMask: true, + showPoster: true, + }); + wx.hideLoading(); + }, 1000); + }, + + /** + * 关闭海报 + */ + closePoster() { + this.setData({ + showMask: false, + showPoster: false, + }); + }, + + onImgOK(e) { + console.log(e.detail.path); + this.setData({ + myimg: e.detail.path, + }); + + }, + + //---小于10的格式化函数---- + timeFormat(param) { + return param < 10 ? '0' + param : param; + }, + + //----倒计时函数----- + countDown() { + if (!this.data.is_timer) return false; + var th = this; + // 获取当前时间,同时得到活动结束时间数组 + var endTime = this.data.act.end_time; + var newTime = ut.gettimestamp(); + // 对结束时间进行处理渲染到页面 + var obj = null; + // 如果活动未结束,对时间进行处理 + if (endTime - newTime > 0) { + var time = (endTime - newTime); + // 获取天、时、分、秒 + var day = parseInt(time / (60 * 60 * 24)); + var hou = parseInt(time % (60 * 60 * 24) / 3600); + var min = parseInt(time % (60 * 60 * 24) % 3600 / 60); + var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60); + obj = { + hou: this.timeFormat(hou), + min: this.timeFormat(min), + sec: this.timeFormat(sec) + } + if (day > 0) { + obj.day = this.timeFormat(day); + } + } else { + //活动已结束,全部设置为'00' + obj = { + day: '00', + hou: '00', + min: '00', + sec: '00' + } + th.setData({ + prom_time_text: '活动已经结束:', + prom_st: 3 + }) + th.setData({ + djs: obj + }); + return false; + } + + th.setData({ + djs: obj + }); + setTimeout(function () { + th.countDown() + }, 1000); + }, + + close_all: function () { + this.setData({ + showMask: false, + showPoster: false, + showRule: false + }); + }, + + + //------定时等待某个值,有值才进行运算-------- + waitfor: function (n, pop_value, func) { + var th = this; + if (n <= 0) { + func() + return false + } + if (pop_value) { + func(); + return false; + } + setTimeout(function () { + --n; + th.waitfor(n, pop_value, func) + }, 1000); + }, + + //--获取头像的本地缓存,回调写法-- + get_head_temp: function (tt) { + var ee = this; + if (ee.data.share_head) { + tt(); + return false; + } + //---获取分享图片的本地地址,头像和商品图片---- + var path2 = getApp().globalData.userInfo.head_pic; + if (path2 == "") { + ee.data.share_head = "../../../../images/share/hui_hear_pic.png"; + tt(); + } else { + path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn"); + path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn"); + wx.getImageInfo({ + src: path2, + success: function (res) { + //res.path是网络图片的本地地址 + console.log(res); + ee.data.share_head = res.path; + tt(); + }, + fail: function () { + ee.data.share_head = "../../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的 + tt(); + } + }); + } + }, + + go_url: function (e) { + var url = e.currentTarget.dataset.url; + getApp().goto(url); + }, + + //-- 加入购物的函数 -- + add_cart_func: function () { + if (oo.user_id == null) { + return getApp().my_warnning("还未登录!", 0, this); + } + if (!getApp().globalData.userInfo) { + return getApp().my_warnning("还未登录!", 0, this); + } + + var e = this, + th = e, + o = this.data.sele_g, + a = o.goods_id; + + //----------添加到购物车时,要判断限购数量,-------- + e.get_buy_num(o, function (ee) { + //---判断商品是否超出限购--- + if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) { + wx.showModal({ + title: '提示', + content: '超出商品限购' + }); + return false; + } + } + //---判断商品是否超出活动限购--- + if (th.data.sele_g.buyqty > 0) { + if (th.data.goodsInputNum > th.data.sele_g.buyqty) { + wx.showModal({ + title: '提示', + content: '超出商品活动限购' + }); + return false; + } + } + + if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th); + if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined) + this.setData({ + sto_sele_name: "" + }); + if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th); + + //--------------此时操作的数据------------ + var newd = { + goods_id: o.goods_id, + goods_num: th.data.goodsInputNum, + pick_id: th.data.sto_sele_id, + user_id: oo.user_id, + store_id: os.stoid, + goods_price: o.shop_price, + member_goods_price: o.shop_price, + goods_name: o.goods_name, + goods_sn: o.goods_sn, + }; + + //---是不是从收藏夹出来的--- + if (th.data.c_guide_id) { + newd['guide_id'] = th.data.c_guide_id; + newd['guide_type'] = 2; + if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3; + } else { + if (getApp().globalData.guide_id) { + newd['guide_id'] = getApp().globalData.guide_id; + newd['guide_type'] = 0; + if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1; + } + } + + //让商品带上房间号 + if (th.data.sys_switch.is_skuroom_id == 1) { + if (th.data.data.goods_id == getApp().globalData.room_goods_id) { + newd.room_id = getApp().globalData.room_id; + } + } else { + if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id; + } + + if (o.store_count <= 0) return getApp().my_warnning("库存已为空!", 0, th); + if (o.store_count < e.data.goodsInputNum) return getApp().my_warnning("库存不足!", 0, th); + th.add_cart_next(o, newd); //加入购物车下一步 + + }) + }, + + //---加入购物车的最后一步--- + add_cart_next(o, newd){ + var th = this; + //如果会员有等级价 + if (th.data.card_field) { + var card_price = o[th.data.card_field]; + if (card_price > 0) { + newd.goods_price = card_price; + newd.member_goods_price = card_price; + } + } + + var index = this.data.sele_index; + var txt = "list[" + index + "].haveAdded"; + var txt1 = "list[" + index + "].num"; + var txt2 = "list[" + index + "].showNum"; + var txt3 = "list[" + index + "].current_price"; + + + newd.prom_type = 7; + newd.prom_id = th.data.act.id; + + if (th.data.adding) return false; + th.data.adding = 1; + //-------如果购物车中有相关的数据--------- + if (th.data.goodsInputNum > 1) { + var item = th.data.sele_g; + if (th.data.goodsInputNum > o.store_count) { + th.data.adding = 0; + return getApp().my_warnning("库存不足!", 0, th); + } + if (th.data.goodsInputNum > o.buyqty) { + th.data.adding = 0; + return getApp().my_warnning("超出商品活动限购!", 0, th); + } + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited + && th.data.sele_g.viplimited > 0 + ) { + th.data.adding = 0; + return getApp().my_warnning("超出商品限购!", 0, th); + } + + //如果商品没有其他活动,要取一下线下价格 + var updata = { + id: item.cart_id, + goods_num: th.data.goodsInputNum, + goods_price: newd.goods_price, + member_goods_price: newd.goods_price, + store_id: os.stoid, + }; + + //---是不是从收藏夹出来的--- + if (th.data.c_guide_id) { + updata['guide_id'] = th.data.c_guide_id; + updata['guide_type'] = 3; //加入购物车之后就变成了3 + } else { + if (getApp().globalData.guide_id) { + updata['guide_id'] = getApp().globalData.guide_id; + updata['guide_type'] = 0; + } + } + getApp().request.put("/api/weshop/cart/update", { + data: updata, + success: function (t) { + th.setData({ + [txt1]: updata.goods_num, + [txt2]: true, + [txt]: true, + [txt3]: newd.goods_price, + }); + th.data.adding = 0; + th.data.sele_store = 1; + th.re_sum_price();//重新统计数量和总金额 + } + }); + + + } else { + + getApp().request.post("/api/weshop/cart/save", { + data: newd, + success: function (t) { + if (t.data.code == 0) { + var txt4 = "list[" + th.data.sele_index + "].cart_id"; + th.setData({ + [txt1]: newd.goods_num, + [txt2]: true, + [txt3]: newd.goods_price, + [txt]: true, + [txt4]: t.data.data.id, + }); + + th.data.adding = 0; + th.data.sele_store = 1; + th.re_sum_price();//重新统计数量和总金额 + } + } + }); + } + }, + + //等待获取配置 + wait_for_store_config: function (bconfig) { + var th = this; + var e = bconfig; + if (e && e.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; + }, + fail: function (res) { + if (res.errCode == 2) { + th.setData({ + is_gps: 0 + }); + if (th.data.is_gps == 0) { + getApp().confirmBox("请开启GPS定位", null, 10000, !1); + } + + } else { + th.setData({ + is_gps: "3" + }); + } + + th.data.is_get_local_ok = 1; + } + }) + } else { + th.data.is_get_local_ok = 1; + } + }, + + //--- 获取卡类列表 --- + getPlusCardType: function (func) { + var storid = os.stoid; + var user = getApp().globalData.userInfo; + if (!user) return false; + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => { + var plusCard = res.data.data; + var arr = [1219, 2089, 3031]; + var new_arr = new Array(); + var card_name_map = new Map(); + + var list = []; + for (var i = 0; i < plusCard.length; i++) { + if ((!user || user.card_field == null || user.card_field == "") && plusCard[i].IsStopBuy == true) continue; + var name = "card" + plusCard[i].CorrPrice.toLowerCase(); + card_name_map.set(name, plusCard[i].CardName); + list.push(plusCard[i]); + } + + var ob = {"card_list": list, "name_map": card_name_map}; + func(ob); + }) + }, + + + //--- 设置一下默认库存的数量 ---- + set_def_storage(ee){ + var that = 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 + }) + }, + + //---------拿出门店分类和门店------------ + get_sto(e) { + var th = this; + this.waitfor(15, th.data.is_get_local_ok, function () { + if (!th.data.sele_g) return false; + var dd = null; + var g_distr_type = th.data.sele_g.distr_type; + if (g_distr_type != 0) { + dd = { + store_id: os.stoid, + distr_type: g_distr_type, + isstop: 0, + pageSize: 2000 + } + } else { + dd = { + store_id: o.stoid, + isstop: 0, + pageSize: 2000 + } + } + + //如果有距离的话 + if (th.data.lat != null) { + dd.lat = th.data.lat; + dd.lon = th.data.lon; + } + + //如果会员是有默认的门店话 + if (!th.data.def_pick_store && th.data.fir_def_store) { + th.setData({def_pick_store: th.data.fir_def_store}); + } + + wx.showLoading({ + title: '加载中.' + }); + //----------获取门店---------------- + getApp().request.promiseGet("/api/weshop/pickup/list", { + data: dd, + }).then(res => { + var e = res; + if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) { + + //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店 + if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) { + th.setData({ + def_pick_store: e.data.data.pageData[0], + sto_sele_name: e.data.data.pageData[0].pickup_name, + sto_sele_id: e.data.data.pageData[0].pickup_id, + sto_sele_distr: e.data.data.pageData[0].distr_type + }); + th.data.fir_def_store = e.data.data.pageData[0]; + } + + //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 -- + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') { + for (var k = 0; k < e.data.data.pageData.length; k++) { + if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) { + e.data.data.pageData.splice(k, 1); //删除 + break; + } + } + e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加 + } + + th.setData({all_pick_list: e.data.data.pageData}); + th.deal_pickup(e); + + + } + }) + }) + }, + //------------处理门店--------------- + deal_pickup(e){ + var th = this; + wx.hideLoading(); + //单总量超出5个的时候 + if (e.data.data.total > 5) { + getApp().request.get("/api/weshop/storagecategory/page", { + data: { + store_id: os.stoid, + is_show: 1, + pageSize: 1000, + orderField: "sort", + orderType: 'asc', + }, + success: function (ee) { + if (ee.data.code == 0) { + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) { + var def_arr = new Array(); + //-- 开始就看5个门店 -- + for (var k = 0; k < 5; k++) { + if (k == e.data.data.pageData.length) break; + def_arr.push(e.data.data.pageData[k]); + } + + th.setData({ + def_pickpu_list: def_arr, + pickpu_list: ee.data.data.pageData + }); + var sto_cate = ee.data.data.pageData; + var sto_arr = e.data.data.pageData; + var newarr = new Array(); + var qita = new Array(); + + //----要进行门店分组-------- + for (var i = 0; i < sto_arr.length; i++) { + //找一下这个门店有没有在分类数组内 + var find2 = 0, find2name = "", sort = 0; + for (var m = 0; m < sto_cate.length; m++) { + if (sto_arr[i].category_id == sto_cate[m].cat_id) { + find2 = sto_cate[m].cat_id; + find2name = sto_cate[m].cat_name; + sort = sto_cate[m].sort; + break; + } + } + + if (newarr.length > 0) { + var find = 0; + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 + if (find2 != 0) { + for (var ii = 0; ii < newarr.length; ii++) { + if (sto_arr[i].category_id == newarr[ii].cat_id) { + newarr[ii].s_arr.push(sto_arr[i]); + find = 1; + break; + } + } + if (find == 0) { + var arr0 = new Array(); + arr0.push(sto_arr[i]); + var item = { + cat_id: find2, + name: find2name, + sort: sort, + s_arr: arr0 + }; + newarr.push(item); + } + } else { + qita.push(sto_arr[i]); + } + } else { + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 + if (find2 != 0) { + var arr0 = new Array(); + arr0.push(sto_arr[i]); + var item = { + cat_id: find2, + name: find2name, + sort: sort, + s_arr: arr0 + }; + newarr.push(item); + } else { + qita.push(sto_arr[i]); + } + } + } + + //门店分类要排序下 + function compare(property) { + return function (a, b) { + var value1 = a[property]; + var value2 = b[property]; + return value1 - value2; + } + } + + if (newarr.length > 0) + newarr.sort(compare("sort")); + //----安排其他的分类----- + if (qita.length > 0) { + var item = { + cat_id: -1, + name: "其他", + s_arr: qita + }; + newarr.push(item); + } + th.setData({ + is_show_sto_cat: 1, + all_sto: newarr + }); + + } else { + th.setData({ + is_show_sto_cat: -1, + only_pk: e.data.data.pageData + }); + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------ + if (!th.data.def_pick_store) { + th.setData({def_pick_store: e.data.data.pageData[0]}) + } + } + } else { + th.setData({ + is_show_sto_cat: -1, + only_pk: e.data.data.pageData + }); + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------ + if (!th.data.def_pick_store) { + th.setData({def_pick_store: e.data.data.pageData[0]}) + } + } + } + }); + } else { + th.setData({ + is_show_sto_cat: 0, + only_pk: e.data.data.pageData + }); + //-----如果没有默认门店,要取第一个门店作为默认店------ + if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) { + if (e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) { + th.setData({ + def_pick_store: e.data.data.pageData[0], + sto_sele_name: e.data.data.pageData[0].pickup_name, + sto_sele_id: e.data.data.pageData[0].pickup_id, + sto_sele_distr: e.data.data.pageData[0].distr_type + }) + } + } + } + }, + + //---选择分类门店--- + 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; + //判断门店的配送方式是不是匹配 + var g_distr_type = th.data.sele_g.distr_type; + if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) { + wx.showToast({ + title: "门店配送方式不匹配", + icon: 'none', + duration: 2000 + }); + 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, + sort_store: 0 + }); + + //只是单纯的选择门店 + if (this.data.only) { + this.data.only = 0; + return false; + } + th.check_is_in_cart(function () { + th.add_cart_func(); + }) + }, + + + //---点击二级之后的选择--- + 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]; + } + + //判断门店的配送方式是不是匹配 + var g_distr_type = th.data.sele_g.distr_type; + if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) { + wx.showToast({ + title: "门店配送方式不匹配", + icon: 'none', + duration: 2000 + }); + return false; + } + + //先设置之前,要判断是不是有库存 + 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 { + //s.showWarning("设置默认门店地址失败", null, 500, !1); + getApp().my_warnning("设置默认门店地址失败", 0, th) + } + + } + }); + + 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, + sort_store: 0, //关闭门店2级 + }); + + th.add_cart_func(); + }, + + // 返回按钮 + returns: function () { + this.setData({ + sort_store: 0, + choice_sort_store: 0 + }); + }, + //选择更多门店 + more_store: function () { + this.setData({ + sort_store: 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 + }) + }, + + //-------------获取购买数量的总函数---------------- + get_buy_num: function (gd, func) { + var map = this.data.g_buy_num, + th = this, user_id = getApp().globalData.user_id; + + if (user_id == null) { + getApp().goto("/pages/togoin/togoin"); + return false; + } + if (map && map.has(gd.goods_id)) { + "function" == typeof func && func(); + } else { + //----获取商品购买数---- + getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", { + data: { + store_id: os.stoid, + user_id: user_id, + goods_id: gd.goods_id + }, + success: function (t) { + if (t.data.code == 0) { + var g_buy_num = t.data.data.goodsbuynum; + if (!map) map = new Map(); + map.set(gd.goods_id, g_buy_num); + th.setData({ + g_buy_num: map + }); + "function" == typeof func && func(); + } + } + }); + } + }, + + //-- 当是减数量的调用 -- + sub_updata_cart(){ + var th = this; + var index = this.data.sele_index; + var txt = "list[" + index + "].haveAdded"; + var txt1 = "list[" + index + "].num"; + var txt2 = "list[" + index + "].showNum"; + + var cur_price = this.data.sele_g.shop_price; + if (th.data.card_field && this.data.sele_g[th.data.card_field]) { + cur_price = this.data.sele_g[th.data.card_field]; + } + var updata = { + id: th.data.sele_g.cart_id, + goods_num: th.data.goodsInputNum, + goods_price: cur_price, + store_id: os.stoid, + }; + //---是不是从收藏夹出来的--- + if (th.data.c_guide_id) { + updata['guide_id'] = th.data.c_guide_id; + updata['guide_type'] = 3; //加入购物车之后就变成了3 + } else { + if (getApp().globalData.guide_id) { + updata['guide_id'] = getApp().globalData.guide_id; + updata['guide_type'] = 0; + } + } + //调用接口,更新购物车 + getApp().request.put("/api/weshop/cart/update", { + data: updata, + success: function (t) { + th.setData({ + [txt1]: updata.goods_num, + [txt2]: true, + [txt]: true, + }); + + th.data.adding = 0; + th.data.sele_store = 1; + th.re_sum_price();//重新统计数量和总金额 + } + }); + }, + //一 开始的选择门店 -- + choose_store: function (e) { + var userInfo = getApp().globalData.userInfo; + if (!userInfo) { + getApp().goto("/pages/togoin/togoin"); + return false; + } + this.data.only = 1; + this.setData({ + store: 1 + }) + }, + + // -- 加入之前,先判断有没有在购物车中,没有商品就添加 -- + check_is_in_cart: function (func) { + var th = this; + var index = th.data.sele_index; + var txt = "list[" + index + "].haveAdded"; + var txt1 = "list[" + index + "].num"; + var txt2 = "list[" + index + "].showNum"; + var txt3 = "list[" + index + "].cart_id"; + var txt4 = "list[" + index + "].current_price"; + + + + //----先看会员在购物车中是否加入了该商品----- + getApp().request.get("/api/weshop/cart/page", { + data: { + store_id: os.stoid, + user_id: oo.user_id, + goods_id: th.data.sele_g.goods_id, + pick_id: th.data.sto_sele_id, + }, + success: function (re) { + if (re.data.data.total > 0) { + var item = re.data.data.pageData[0]; + + //当前的价格要更新进去 + var cur_price = th.data.sele_g.shop_price; + if (th.data.card_field && th.data.sele_g[th.data.card_field]) { + cur_price = th.data.sele_g[th.data.card_field]; + } + + th.setData({ + [txt1]: item.goods_num, + [txt2]: true, + [txt]: true, + [txt3]: item.id, + [txt4]: cur_price, + }); + + var updata = { + id: item.id, + prom_type: 7, + goods_price: cur_price, + prom_id: th.data.act.id + }; + if (getApp().globalData.guide_id) { + updata['guide_id'] = getApp().globalData.guide_id; + updata['guide_type'] = 0; + } + + getApp().request.put("/api/weshop/cart/update", { + data: updata, + success: function (t) { + } + }); + + th.re_sum_price(); + } else { + func(); + } + } + }) + }, + + //-- 计算统计之后的金额 -- + re_sum_price: function () { + var all_num = 0; //商品数量之和 + var all_price = 0; + var need_to_buy = 0; + var data = this.data.list; + var all_zhqty = 0; //所有商品要求起购数之后 + + var no_in_arr = []; + for (var i in data) { + var item = data[i]; + if (item.num) { + all_num += item.num; + all_price += item.num * item.current_price; + //当有起购数的控制的时候 + if (item.zhqty) { + all_zhqty += item.zhqty; + if (item.num < item.zhqty) { + need_to_buy += item.zhqty - item.num; + } + if (item.num > item.zhqty) { + for (var i = 0; i < item.num - item.zhqty; i++) { + no_in_arr.push({price: item.current_price}) + } + } + } else { + for (var j = 0; j < item.num; j++) { + no_in_arr.push({price: item.current_price}) + } + } + } else { + if (item.zhqty) need_to_buy += item.zhqty; + } + } + + //当满足组合的要求:总数要满足,起购数要满足 + if (all_num >= this.data.act.zhbuyqty && !need_to_buy) { + function sortData(a, b) { + return a.price - b.price + } + + no_in_arr.sort(sortData); + var aprice = this.data.act.zhprice; + if (this.data.act.zhbuyqty > all_zhqty) { + for (var n = 0; n < this.data.act.zhbuyqty; n++) { + no_in_arr.pop(); + } + } + + //看一下剩下的数量有没有满足组合购的要求,以及要不要倍增 + if (this.data.act.is_bz && no_in_arr.length > this.data.act.zhbuyqty) { + //看一下是几倍 + var be = parseInt(no_in_arr / this.data.act.zhbuyqty); + aprice += be * aprice; + for (var m = 0; m < be * this.data.act.zhbuyqty; m++) { + no_in_arr.pop(); + } + } + + //算一下剩余的钱 + if (no_in_arr.length) { + for (var ii in no_in_arr) { + var item = no_in_arr[ii]; + aprice += item.price; + } + } + all_price = aprice; + } + + this.setData({ + all_price: all_price, + need_to_buy: need_to_buy, + all_num: all_num + }) + }, + + go_cart:function () { + getApp().goto("/pages/cart/cart/cart"); + } + }) \ No newline at end of file diff --git a/packageB/pages/zuhegou/index/index.json b/packageB/pages/zuhegou/index/index.json index 427d12f..1a3f45b 100644 --- a/packageB/pages/zuhegou/index/index.json +++ b/packageB/pages/zuhegou/index/index.json @@ -2,7 +2,8 @@ "usingComponents": { "catch": "/components/catch/catch", "nodata": "/components/nodata/nodata", - "painter": "/packageB/components/painter/painter" + "painter": "/packageB/components/painter/painter", + "warn": "/components/long_warn/long_warn" }, "enablePullDownRefresh": false, "navigationBarTitleText": "组合购" diff --git a/packageB/pages/zuhegou/index/index.wxml b/packageB/pages/zuhegou/index/index.wxml index 085da13..8dcad6e 100644 --- a/packageB/pages/zuhegou/index/index.wxml +++ b/packageB/pages/zuhegou/index/index.wxml @@ -1,108 +1,313 @@ + - - 以下商品10元任选3件 - 规则详情 - - 距结束还剩 1天12:12:00 - - - - - - - - - 商品名称商品名称 - - - - {{num}} - + - - - - - - 0.01 - 200.00 - - - - - - - - - - - - 没有更多了 - - - - - - 再买2件,下单立享【10元任选3件】 - - 合计:0.01 - 去购物车 - - - - - - 分享 - - - - - - {{!type ? '规则详情':'提示'}} - - - 活动时间 - 2020.12.11 18:00:00 至 2020.12.11 18:00:00 - - - 活动内容 - - 1、活动商品范围内,任选3件仅需10元; - 2、此优惠可无限叠加,买得越多优惠越多; - - - - 优惠叠加 - 不可与其他优惠活动同时使用 - - - - - - - - 合计金额及提示仅为初步预估,请以最终下单金额为准。 - - - - 我知道了 - - - - - - - - - - - 长按图片保存至相册 - - - + + 以下商品{{act.zhprice}}元任选{{act.zhbuyqty}}件 + 规则详情 + + + + 距结束还剩 + {{djs.day}}天 + {{djs.hou}} + : + {{djs.min}} + : + {{djs.sec}} + + + + 门店: + {{def_pick_store.pickup_name}} + 请选择门店 + + + + + + + + + + + + + {{item.goods_name}} + 此商品还需购买{{item.zhqty-(item.num?item.num:0)}}件 + + - + {{item.num}} + + + + + + + + + + {{filters.toFix(item[card_field],2)}} + + + {{filters.toFix(item.shop_price,2)}} + + {{filters.toFix(item.market_price,2)}} + + + + + + + + + + + 没有更多了 + + + + + + + + + 再买{{need_to_buy}}件,下单立享【{{act.zhprice}}元任选{{act.zhbuyqty}}件】 + + 下单立享【{{act.zhprice}}元任选{{act.zhbuyqty}}件】 + + + + 再买{{act.zhbuyqty-all_num>need_to_buy?act.zhbuyqty-all_num:need_to_buy}}件,{{need_to_buy}}下单立享【{{act.zhprice}}元任选{{act.zhbuyqty}}件】 + + + 买{{act.zhbuyqty}}件,下单立享【{{act.zhprice}}元任选{{act.zhbuyqty}}件】 + + + + 合计: + {{filters.toFix(all_price,2)}} + + + 去购物车 + + + + + + 分享 + + + + + + {{!type ? '规则详情':'提示'}} + + + + + 活动时间 + {{filters.format_time(act.start_time,1)}} 至 {{filters.format_time(act.end_time,1)}} + + + + 活动内容 + + {{act.remark}} + + + + + + + + 合计金额及提示仅为初步预估,请以最终下单金额为准。 + + + + + 我知道了 + + - + + + + + + + + + + + 长按图片保存至相册 + + + + + + + + + + + + + + {{choice_sort_store==0?'附近的门店':region_name}} + + + + + + {{choice_sort_store==0?'更多门店':'返回'}} + + + + + + + + + + + + + + + Г + + + + + + + + {{item.pickup_name}} + (不匹配) + + + + + 距离:{{item.distance>1000?filters.toFix(item.distance/1000,2)+'km':filters.toFix(item.distance,0)+"m"}} + + + + 地址:{{item.fulladdress}} + + + + + + + + + + Г + + + + + + + + + {{item.pickup_name}} + (不匹配) + + + + + 距离:{{item.distance>1000?filters.toFix(item.distance/1000,2)+"km":filters.toFix(item.distance,0)+"m"}} + + + + 地址:{{item.fulladdress}} + + + + + + + + + + + Г + + + + + + + + + {{item.pickup_name}} + + + + 距离:{{item.distance>1000?filters.toFix(item.distance/1000,2)+"km":filters.toFix(item.distance,0)+"m"}} + + + + 地址:{{item.fulladdress}} + + + + + + + + + + + 确定 + + 设为默认 + + + + + + + + + + 门店分类选择 + + + + + + 返回 + + + + + + + + {{item.name}} + + + + + + + + + + diff --git a/packageB/pages/zuhegou/index/index.wxss b/packageB/pages/zuhegou/index/index.wxss index fcd7d91..0f67567 100644 --- a/packageB/pages/zuhegou/index/index.wxss +++ b/packageB/pages/zuhegou/index/index.wxss @@ -3,7 +3,7 @@ page { background: #f5f5f5 linear-gradient(to bottom, #FB5A2F, #FA7958, #f5f5f5 26%) no-repeat; } .container { - padding: 20rpx 20rpx 240rpx 20rpx; + padding: 20rpx; } .countdown-container { font-size: 26rpx; @@ -42,6 +42,7 @@ page { .list { border-radius: 10rpx; background-color: white; + max-height:calc(100vh - 360rpx); } .list-item { @@ -196,4 +197,161 @@ page { .white2 { color: rgba(255,255,255,.8); -} \ No newline at end of file +} + + + +/* 选择门店的弹窗 */ +.mongolia-layer{ + position: fixed; + left: 0; + top: 0; + right: 0; + bottom: 0; + z-index: 11; + background: rgba(0,0,0,0.4); + width: 100%; + height: 91.9%; + +} + +.popup-frame{ + position: fixed; + z-index: 20; + background: white; + width: 100%; + border-radius: 20rpx 20rpx 0 0; + height: auto; + bottom: 0; +} +.popup-top{ + border-bottom: 1rpx solid #eee; + height: 155rpx; + width: 95%; + margin: auto; + line-height: 155rpx; + +} +.bg_rights{ + border-top: 2rpx solid ; + border-right: 2rpx solid ; + transform: rotate(45deg); + display:inline-block; + width:15rpx;height:15rpx; + border-color:#da0b31; + position: relative; + top:5rpx +} +.modal-closes { + position: absolute; + right: 30rpx; + top: -15rpx; + height: 25rpx; + +} +.choose_more{ + margin-top: 100rpx; + margin-right: 20rpx; + +} +.choose_mores{ + margin-top: 30rpx; + margin-right: 15rpx; + +} +.store-list{ + width: 95%; + min-height: 300rpx; + overflow-y: scroll; + margin: auto; + max-height: 610rpx; +} +.store-list .store_choose{ + width: 100%; + height: 120rpx; + line-height: 125rpx; + border-bottom: 1rpx solid #eee; + +} +.store-list .store_choose .store{ + width: 100%; + margin: auto; + line-height: 37rpx; + padding-left: 20rpx; + +} +.xc-hook{ + width: 35rpx; + height: 35rpx; + transform: rotate(-145deg); + line-height: 37rpx; + text-align: center; +} +.xc-hooks{ + width: 30rpx; + height: 30rpx; + border: 1rpx solid #999; +} +.address-frame{ + width: 93%; + margin-left: 7rpx; + +} +.nearby_store{ + margin-left: 17rpx; +} +.address_name{ + margin-right: 10rpx; + +} +.address-val{ + height: 38rpx; + line-height: 38rpx; + +} +.store-bottom{ + width: 85%; + margin: auto; + height: 90rpx; +} +.determine{ + width: 260rpx; + height: 55rpx; + border-radius: 50rpx; + line-height: 55rpx; +} +.default{ + width: 260rpx; + height: 55rpx; + border:3rpx solid #c8c8c8; + border-radius: 50rpx; + line-height: 55rpx; +} +.store-bottom-frame{ + width: 95%; + margin: auto; + +} +/* 门店分类列表 */ +.sort_store_list{ + height: 82%; + overflow: hidden; + overflow-y: scroll; + width: 95%; + margin: auto; +} +.sort_store_list .sort-store-frame{ + width: 100%; + height: 100rpx; + line-height:100rpx; + border-bottom: 1rpx solid #eee; + +} +.sort_store_list .sort-store-frame .sort-store{ + width: 94.5%; + margin: auto; +} + +.c_w{ color: #fff;} +.mt10{ margin-top: 10rpx;} +.mt20{ margin-top: 20rpx;} \ No newline at end of file