Commit 811ef375f7a5032d318b2c550a2462480c1e8aa1
Merge branch 'dev' into 'test'
Dev See merge request !909
Showing
42 changed files
with
1680 additions
and
422 deletions
app.js
| ... | ... | @@ -50,7 +50,7 @@ App({ |
| 50 | 50 | config: null, //门店参数 |
| 51 | 51 | config2: null, //门店配置 |
| 52 | 52 | code: null, |
| 53 | - user_id:null,//3277,// 6519901,//6453964,// 4687,// 6519870,//5682094, | |
| 53 | + user_id:null,// 6519870,//5682094, | |
| 54 | 54 | buy_now:null, |
| 55 | 55 | picklist:null, //门店列表 |
| 56 | 56 | wuliuprice: null, //物流价格表 |
| ... | ... | @@ -661,8 +661,10 @@ App({ |
| 661 | 661 | this.globalData.config=null; //清除config的缓存 |
| 662 | 662 | this.globalData.gr_index=0; //商品分组的序列 |
| 663 | 663 | this.globalData.pk_store=null; |
| 664 | - this.globalData.wxapp_buy_obj=null | |
| 665 | - | |
| 664 | + this.globalData.wxapp_buy_obj=null; | |
| 665 | + this.globalData.dis_buy_obj=null; //等级卡的购买记录 | |
| 666 | + this.globalData.storeFooter=null; //底部的导航 | |
| 667 | + this.globalData.full_screen=null; //全屏 | |
| 666 | 668 | }, |
| 667 | 669 | |
| 668 | 670 | clear_word:function (word) { | ... | ... |
components/diy_goodsGroup/diy_goodsGroup.wxml
| ... | ... | @@ -669,7 +669,7 @@ |
| 669 | 669 | <view class="sp"> |
| 670 | 670 | <swiper-item class="s_it" wx:for="{{goods_array}}"> |
| 671 | 671 | <block wx:for="{{item}}" wx:for-item="aitem" wx:for-index="aind"> |
| 672 | - <navigator url="{{g_filter.get_url_by_type(item)}}" style="width: 32%" > | |
| 672 | + <navigator url="{{g_filter.get_url_by_type(aitem)}}" style="width: 32%" > | |
| 673 | 673 | <view class="one {{object.big_order_type==0?'zj':''}}{{object.big_order_type==1?'yj':''}} " style="margin-left: 10rpx"> |
| 674 | 674 | <view class='sp_top'> |
| 675 | 675 | <view class='s_img' style="position: relative; width: 100%"> | ... | ... |
components/diy_pingd_buy/diy_pingd_buy.js
components/diy_seckill/diy_seckill.js
| ... | ... | @@ -35,6 +35,7 @@ Component({ |
| 35 | 35 | ylp_img: "https://mshopimg.yolipai.net/", |
| 36 | 36 | imghost: os.imghost, |
| 37 | 37 | timer: null, |
| 38 | + user_id:0 | |
| 38 | 39 | }, |
| 39 | 40 | |
| 40 | 41 | pageLifetimes: { |
| ... | ... | @@ -43,7 +44,12 @@ Component({ |
| 43 | 44 | //会员身份变化 |
| 44 | 45 | var th = this; |
| 45 | 46 | var g_id = this.data.object; |
| 46 | - this.init(g_id); | |
| 47 | + //只有再会员登陆之后,才重新调用接口 | |
| 48 | + | |
| 49 | + if(this.data.user_id!=getApp().globalData.user_id){ | |
| 50 | + this.data.user_id=getApp().globalData.user_id | |
| 51 | + this.init(g_id); | |
| 52 | + } | |
| 47 | 53 | setTimeout(function () { |
| 48 | 54 | if (th.data.goods_array && th.data.goods_array.length > 0) { |
| 49 | 55 | th.data.timer = setInterval(function () { |
| ... | ... | @@ -51,12 +57,18 @@ Component({ |
| 51 | 57 | }, 1000); |
| 52 | 58 | } |
| 53 | 59 | },600) |
| 60 | + }, | |
| 61 | + | |
| 62 | + hide:function () { | |
| 63 | + // 页面被被销毁的时候,清除定时器 | |
| 64 | + clearInterval(this.data.timer); | |
| 54 | 65 | } |
| 55 | 66 | }, |
| 56 | 67 | |
| 57 | 68 | ready: function () { |
| 58 | 69 | var g_id = this.data.object; |
| 59 | 70 | this.init(g_id); |
| 71 | + this.data.user_id=getApp().globalData.user_id; | |
| 60 | 72 | }, |
| 61 | 73 | detached() { |
| 62 | 74 | // 页面被被销毁的时候,清除定时器 | ... | ... |
components/goods_list/goods_list.js
components/goods_list/goods_list.wxml
| ... | ... | @@ -5,17 +5,17 @@ |
| 5 | 5 | <view class="hang "> |
| 6 | 6 | <!-- 商品详情 --> |
| 7 | 7 | |
| 8 | - <view class="collect ib" wx:for="{{recommend}}" bindtap="go_url" data-url="{{get_url_by_type(item)}}"> | |
| 8 | + <view class="collect ib" wx:for="{{recommend}}" bindtap="go_url" data-url="{{g_filter.get_url_by_type(item)}}"> | |
| 9 | 9 | <!--<view class="collect ib" wx:for="{{recommend}}" bindtap="go_url" data-url="{{item.prom_type == 9 ? ('/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo?goods_id=' + item.goods_id + '&group_id=' + item.prom_id):('/pages/goods/goodsInfo/goodsInfo?goods_id='+item.goods_id+'&title='+item.goods_name+'&prom_type='+item.prom_type+'&prom_id='+item.prom_id)}}">--> |
| 10 | 10 | <!-- <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&title={{item.goods_name}}&prom_type={{item.prom_type}}&prom_id={{item.prom_id}}" hover-class="none"> --> |
| 11 | - <navigator url="{{item.prom_type == 9 ? ('/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo?goods_id=' + item.goods_id + '&group_id=' + item.prom_id):('/pages/goods/goodsInfo/goodsInfo?goods_id='+item.goods_id+'&title='+item.goods_name+'&prom_type='+item.prom_type+'&prom_id='+item.prom_id)}}" hover-class="none"> | |
| 11 | + <navigator hover-class="none"> | |
| 12 | 12 | <!-- 商品图⽚ --> |
| 13 | 13 | <image class="sp" src="{{url+item.original_img}}" mode="aspectFill" binderror="bind_bnerr_xc" data-url="{{url+item.original_img}}" data-errorimg="recommend[{{index}}].original_img"></image> |
| 14 | 14 | <view class="bottom"> |
| 15 | 15 | <!-- 商品名称 --> |
| 16 | 16 | <view class="goods_name ellipsis-2 fs28">{{item.goods_name}}</view> |
| 17 | 17 | <!-- 判断是否有活动价 --> |
| 18 | - <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_id>0 && item.prom_type!=7}}"> | |
| 18 | + <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_id>0 && item.prom_type!=7 && item.prom_type!=10}}"> | |
| 19 | 19 | <view class="pdt10"> |
| 20 | 20 | <view class="money flex xc-wc" > |
| 21 | 21 | <text wx:if="{{item.prom_integral}}"><text class="fs35" style="font-weight: bold;">{{item.prom_integral}}</text>积分</text> | ... | ... |
custom-tab-bar/index.js
| ... | ... | @@ -9,33 +9,43 @@ Component({ |
| 9 | 9 | list:app.def_list, |
| 10 | 10 | cartGoodsNum:0, |
| 11 | 11 | }, |
| 12 | - | |
| 13 | 12 | |
| 14 | 13 | lifetimes: { |
| 15 | 14 | attached: function() { |
| 16 | 15 | var th=this; |
| 17 | - | |
| 18 | 16 | getApp().promiseGet("/api/weshop/storeDistribut/get/"+os.stoid,{}).then(rs=>{ |
| 19 | 17 | var dis=rs.data.data; |
| 20 | 18 | if( dis && dis.switch==0){ |
| 21 | 19 | th.setData({is_no_distri:1}) |
| 22 | 20 | } |
| 23 | - }) | |
| 24 | - | |
| 25 | - getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=5",{}).then(res=>{ | |
| 26 | - if(res.data.code==0){ | |
| 27 | - var arr = res.data.data.pageData; | |
| 28 | - if (arr.length > 0) { | |
| 29 | - var item=arr[0]; | |
| 30 | - if(item.is_sy==0){ | |
| 31 | - var now = Date.parse(new Date());now = now / 1000; | |
| 32 | - if(item.end_time<now) th.setData({is_no_distri:1}) | |
| 33 | - } | |
| 34 | - } | |
| 35 | - } | |
| 36 | 21 | }) |
| 37 | - | |
| 38 | - | |
| 22 | + | |
| 23 | + //购买的信息用全局缓存 | |
| 24 | + if(getApp().globalData.dis_buy_obj){ | |
| 25 | + var arr = getApp().globalData.dis_buy_obj; | |
| 26 | + if (arr.length > 0) { | |
| 27 | + var item=arr[0]; | |
| 28 | + if(item.is_sy==0){ | |
| 29 | + var now = Date.parse(new Date());now = now / 1000; | |
| 30 | + if(item.end_time<now) th.setData({is_no_distri:1}) | |
| 31 | + } | |
| 32 | + } | |
| 33 | + }else{ | |
| 34 | + getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=5",{}).then(res=>{ | |
| 35 | + if(res.data.code==0){ | |
| 36 | + var arr = res.data.data.pageData; | |
| 37 | + getApp().globalData.dis_buy_obj=arr; | |
| 38 | + if (arr.length > 0) { | |
| 39 | + var item=arr[0]; | |
| 40 | + if(item.is_sy==0){ | |
| 41 | + var now = Date.parse(new Date());now = now / 1000; | |
| 42 | + if(item.end_time<now) th.setData({is_no_distri:1}) | |
| 43 | + } | |
| 44 | + } | |
| 45 | + } | |
| 46 | + }) | |
| 47 | + } | |
| 48 | + | |
| 39 | 49 | //购物车显示商品金额 |
| 40 | 50 | this.setData({cartGoodsNum:getApp().globalData.cartGoodsNum}); |
| 41 | 51 | var th=this; |
| ... | ... | @@ -47,24 +57,37 @@ Component({ |
| 47 | 57 | this.set_list(custum_data); |
| 48 | 58 | } |
| 49 | 59 | }else{ |
| 50 | - var stoid=os.stoid | |
| 51 | - getApp().request.promiseGet("/api/weshop/storeFooter/get/"+stoid, { | |
| 52 | - }).then(res => { | |
| 53 | - getApp().globalData.is_read=true; | |
| 54 | - var e = res; | |
| 55 | - if(e.data.code != -1 && e.data.data && e.data.data.data){ | |
| 56 | - var itemList = e.data.data.data; | |
| 57 | - itemList = JSON.parse(itemList) | |
| 58 | - //如果是有定义自定义导航的小程序链接 | |
| 59 | - if(itemList[0].weappurl && itemList[0].weappurl!=""){ | |
| 60 | - getApp().globalData.custum_data=e.data.data; | |
| 61 | - var custum_data=e.data.data; | |
| 62 | - th.set_list(custum_data); | |
| 63 | - } | |
| 64 | - | |
| 65 | - } | |
| 66 | - | |
| 67 | - }) | |
| 60 | + | |
| 61 | + //全局缓存 | |
| 62 | + if(getApp().globalData.storeFooter) { | |
| 63 | + var itemList = getApp().globalData.storeFooter; | |
| 64 | + itemList = JSON.parse(itemList) | |
| 65 | + //-- 如果是有定义自定义导航的小程序链接 -- | |
| 66 | + if (itemList[0].weappurl && itemList[0].weappurl != "") { | |
| 67 | + getApp().globalData.custum_data = e.data.data; | |
| 68 | + var custum_data = e.data.data; | |
| 69 | + th.set_list(custum_data); | |
| 70 | + } | |
| 71 | + | |
| 72 | + }else{ | |
| 73 | + var stoid = os.stoid; | |
| 74 | + getApp().request.promiseGet("/api/weshop/storeFooter/get/" + stoid, {}).then(res => { | |
| 75 | + getApp().globalData.is_read = true; | |
| 76 | + var e = res; | |
| 77 | + if (e.data.code != -1 && e.data.data && e.data.data.data) { | |
| 78 | + var itemList = e.data.data.data; | |
| 79 | + getApp().globalData.storeFooter=itemList; | |
| 80 | + itemList = JSON.parse(itemList) | |
| 81 | + //-- 如果是有定义自定义导航的小程序链接 -- | |
| 82 | + if (itemList[0].weappurl && itemList[0].weappurl != "") { | |
| 83 | + getApp().globalData.custum_data = e.data.data; | |
| 84 | + var custum_data = e.data.data; | |
| 85 | + th.set_list(custum_data); | |
| 86 | + } | |
| 87 | + } | |
| 88 | + | |
| 89 | + }) | |
| 90 | + } | |
| 68 | 91 | } |
| 69 | 92 | }, |
| 70 | 93 | }, | ... | ... |
packageA/pages/goodsInfo/goodsInfo.js
| ... | ... | @@ -333,7 +333,7 @@ Page({ |
| 333 | 333 | getApp().request.promiseGet("/api/weshop/pickup/list",{ |
| 334 | 334 | data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon, is_pos: 1}, |
| 335 | 335 | }).then(res=>{ |
| 336 | - if(res.data.code==0){ | |
| 336 | + if(ut.ajax_ok(res)){ | |
| 337 | 337 | e=res.data.data.pageData[0]; |
| 338 | 338 | if (e){ |
| 339 | 339 | e.is_no_dis=ee.is_no_dis; | ... | ... |
packageA/pages/my_service/appment_main.js
| ... | ... | @@ -697,7 +697,7 @@ Page({ |
| 697 | 697 | } |
| 698 | 698 | }).then(res => { |
| 699 | 699 | //-- 如果是门店的话 -- |
| 700 | - if (res.data.code == 0 && res.data.data && res.data.data.pageData) { | |
| 700 | + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) { | |
| 701 | 701 | var store_data=null; |
| 702 | 702 | for(var i in res.data.data.pageData){ |
| 703 | 703 | var it=res.data.data.pageData[i]; | ... | ... |
packageA/pages/profile/profile.js
| ... | ... | @@ -1246,13 +1246,15 @@ Page({ |
| 1246 | 1246 | getApp().request.promiseGet("/api/weshop/pickup/list", { |
| 1247 | 1247 | data: dd, |
| 1248 | 1248 | }).then(res => { |
| 1249 | - var top_store=res.data.data.pageData[0]; | |
| 1250 | - th.setData({ | |
| 1251 | - stoname: top_store.pickup_name, | |
| 1252 | - sto_sele_name: top_store.pickup_name, | |
| 1253 | - sto_sele_id: top_store.pickup_id, | |
| 1254 | - sto_sele_distr: top_store.distr_type, | |
| 1255 | - }) | |
| 1249 | + if(ut.ajax_ok(res)){ | |
| 1250 | + var top_store=res.data.data.pageData[0]; | |
| 1251 | + th.setData({ | |
| 1252 | + stoname: top_store.pickup_name, | |
| 1253 | + sto_sele_name: top_store.pickup_name, | |
| 1254 | + sto_sele_id: top_store.pickup_id, | |
| 1255 | + sto_sele_distr: top_store.distr_type, | |
| 1256 | + }) | |
| 1257 | + } | |
| 1256 | 1258 | }) |
| 1257 | 1259 | |
| 1258 | 1260 | }else{ | ... | ... |
packageA/pages/prom_list/prom_list.js
| ... | ... | @@ -120,7 +120,7 @@ Page({ |
| 120 | 120 | getApp().request.promiseGet("/api/weshop/pickup/list",{ |
| 121 | 121 | data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon,is_pos: 1}, |
| 122 | 122 | }).then(res=>{ |
| 123 | - if(res.data.code==0 && res.data.data && res.data.data.pageData){ | |
| 123 | + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length){ | |
| 124 | 124 | e=res.data.data.pageData[0]; |
| 125 | 125 | if (e){ |
| 126 | 126 | appd.pk_store=e; |
| ... | ... | @@ -1030,7 +1030,7 @@ Page({ |
| 1030 | 1030 | }) |
| 1031 | 1031 | }).then(res=>{ |
| 1032 | 1032 | if(res.data.code==0){ |
| 1033 | - if(res.data.data.pageData){ | |
| 1033 | + if(res.data.data.pageData && res.data.data.pageData.length){ | |
| 1034 | 1034 | var plist=res.data.data.pageData; |
| 1035 | 1035 | var def_pick_store=th.data.def_pick_store; |
| 1036 | 1036 | //以原来的数组为外循环,保证距离的顺序 | ... | ... |
packageB/pages/user/add_comment/add_comment.js
| 1 | -var t = getApp(), oo = t.globalData, a = t.globalData.setting, os = a, e = t.request, s = require("../../../../utils/util.js"), | |
| 1 | +var t = getApp(), oo = t.globalData, a = t.globalData.setting, os = a, e = t.request, s = require("../../../../utils/util.js"),ut=s, | |
| 2 | 2 | i = require("../../../../utils/selectFiles.js"); |
| 3 | 3 | var regeneratorRuntime = require('../../../../utils/runtime.js'); |
| 4 | 4 | |
| ... | ... | @@ -27,9 +27,11 @@ Page({ |
| 27 | 27 | var th = this; |
| 28 | 28 | await getApp().request.promiseGet("/api/weshop/ordergoods/pageGoods", { data:{store_id:os.stoid,goods_id:a.goods_id, order_id:a.order_id}}).then(res => { |
| 29 | 29 | |
| 30 | - a.img = th.data.iurl + res.data.data.pageData[0].original_img; | |
| 31 | - a.goods_name=res.data.data.pageData[0].goods_name; | |
| 32 | - a.goods_num=res.data.data.pageData[0].goods_num; | |
| 30 | + if(ut.ajax_ok(res)) { | |
| 31 | + a.img = th.data.iurl + res.data.data.pageData[0].original_img; | |
| 32 | + a.goods_name = res.data.data.pageData[0].goods_name; | |
| 33 | + a.goods_num = res.data.data.pageData[0].goods_num; | |
| 34 | + } | |
| 33 | 35 | }) |
| 34 | 36 | this.setData({ options: a }); |
| 35 | 37 | t.getUserInfo(function (e) { | ... | ... |
pages/activity/pind_list/pind_list.js
| ... | ... | @@ -129,12 +129,13 @@ Page({ |
| 129 | 129 | await getApp().request.promiseGet(i, |
| 130 | 130 | {isShowLoading:1,data:{store_id:os.stoid,is_end:0,is_show:1}} |
| 131 | 131 | ).then(res=>{ |
| 132 | - plist=res.data.data.pageData; | |
| 132 | + if(ut.ajax_ok(res)) plist=res.data.data.pageData; | |
| 133 | 133 | }); |
| 134 | 134 | |
| 135 | - if(plist.length<=0){ | |
| 135 | + if(!plist || plist.length<=0){ | |
| 136 | 136 | getApp().showWarning("没有更多数据"); |
| 137 | 137 | th.data.ismore=0; |
| 138 | + return false; | |
| 138 | 139 | } |
| 139 | 140 | //--循环读取接口--- |
| 140 | 141 | for(var i=0;i<plist.length;i++){ | ... | ... |
pages/activity/seckill_list/seckill_list.js
| ... | ... | @@ -131,8 +131,8 @@ Page({ |
| 131 | 131 | await getApp().request.promiseGet(i, |
| 132 | 132 | {isShowLoading:1,data:req} |
| 133 | 133 | ).then(res=>{ |
| 134 | - plist=res.data.data.pageData; | |
| 135 | - console.log("是什么即将开始",plist); | |
| 134 | + if(ut.ajax_ok(res)) plist=res.data.data.pageData; | |
| 135 | + | |
| 136 | 136 | }); |
| 137 | 137 | |
| 138 | 138 | if(plist.length<=0){ | ... | ... |
pages/cart/cart/cart.js
| ... | ... | @@ -5,8 +5,9 @@ var t = getApp(), |
| 5 | 5 | app = getApp(), |
| 6 | 6 | rq = t.request, |
| 7 | 7 | ut = require("../../../utils/util.js"), |
| 8 | - zh_calc = require("zh_calculate.js"); | |
| 9 | - var regeneratorRuntime = require('../../../utils/runtime.js'); | |
| 8 | + zh_calc = require("zh_calculate.js"), | |
| 9 | + ladder_calc = require("ladder_calculate.js"); | |
| 10 | + var regeneratorRuntime = require('../../../utils/runtime.js'); | |
| 10 | 11 | |
| 11 | 12 | Page({ |
| 12 | 13 | data: { |
| ... | ... | @@ -38,6 +39,8 @@ Page({ |
| 38 | 39 | zuhe_map:{}, |
| 39 | 40 | zuhe_map_good:{}, |
| 40 | 41 | in_zhact_gdmap:{}, //不同门店参与同一活动的限购 |
| 42 | + | |
| 43 | + ladder_map:{}, //阶梯促销需要的map | |
| 41 | 44 | }, |
| 42 | 45 | onLoad: function() { |
| 43 | 46 | var a = this,ee=a; |
| ... | ... | @@ -83,7 +86,6 @@ Page({ |
| 83 | 86 | th.setData({ |
| 84 | 87 | bconfig: e,sales_rules:e.sales_rules |
| 85 | 88 | }); |
| 86 | - | |
| 87 | 89 | getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=6",{}).then(res=>{ |
| 88 | 90 | //未购买 |
| 89 | 91 | if(res.data.code!=0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length){ |
| ... | ... | @@ -210,6 +212,8 @@ Page({ |
| 210 | 212 | get_cart: function() { |
| 211 | 213 | var th = this; |
| 212 | 214 | th.data.in_zhact_gdmap={}; |
| 215 | + th.data.ladder_map={}; | |
| 216 | + | |
| 213 | 217 | var rd = Math.random().toString(36).substr(2, 15); |
| 214 | 218 | var user_id=getApp().globalData.userInfo.user_id; |
| 215 | 219 | getApp().request.get("/api/weshop/cart/list", { |
| ... | ... | @@ -223,8 +227,7 @@ Page({ |
| 223 | 227 | success:async function(su) { |
| 224 | 228 | console.log(su,10000); |
| 225 | 229 | //按门店分类的数组 |
| 226 | - var arr = new Array(), | |
| 227 | - carr = su.data.data.pageData; | |
| 230 | + var arr = new Array(), carr = su.data.data.pageData; | |
| 228 | 231 | var all_num = 0; |
| 229 | 232 | |
| 230 | 233 | if(carr && carr.length>0) { |
| ... | ... | @@ -353,21 +356,22 @@ Page({ |
| 353 | 356 | }) |
| 354 | 357 | } |
| 355 | 358 | } |
| 356 | - | |
| 357 | - //--判断优惠活动有没有过期-- | |
| 359 | + //--判断优惠活动有没有过期,-- | |
| 358 | 360 | else if (item.prom_type == 3) { |
| 359 | 361 | var isok = 1,is_g_prom=0; |
| 362 | + | |
| 360 | 363 | //因为有全场优惠活动,商品参加的活动还未开始 |
| 361 | 364 | var url="/api/weshop/activitylist/getGoodActInfo"; |
| 362 | 365 | var req_data={ |
| 363 | - store_id:os.stoid,goodsidlist:item.goods_id,is_detail:1,user_id:user_id | |
| 366 | + store_id:os.stoid,goodsidlist:item.goods_id,is_detail:1,user_id:user_id | |
| 364 | 367 | }; |
| 365 | 368 | await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) { |
| 366 | 369 | if(res.data.code==0 && res.data.data && res.data.data.length){ |
| 367 | 370 | for(let i in res.data.data){ |
| 368 | - let item=res.data.data[i]; | |
| 369 | - if(item.prom_type==3) { | |
| 370 | - is_g_prom=1; break; | |
| 371 | + let item=res.data.data[i]; | |
| 372 | + if(item.prom_type==3) { | |
| 373 | + is_g_prom=1; break; | |
| 374 | + | |
| 371 | 375 | } |
| 372 | 376 | } |
| 373 | 377 | } |
| ... | ... | @@ -430,6 +434,7 @@ Page({ |
| 430 | 434 | } |
| 431 | 435 | |
| 432 | 436 | if (!isok) continue; |
| 437 | + | |
| 433 | 438 | } |
| 434 | 439 | else if (item.prom_type == 7) { |
| 435 | 440 | if(!th.data.zuhe_map[item.prom_id]){ |
| ... | ... | @@ -517,6 +522,68 @@ Page({ |
| 517 | 522 | // continue; |
| 518 | 523 | // } |
| 519 | 524 | } |
| 525 | + else if (item.prom_type == 10) { | |
| 526 | + if(!th.data.ladder_map[item.prom_id]){ | |
| 527 | + //如果有组合购 | |
| 528 | + var isok = 1; | |
| 529 | + var is_flag=1; | |
| 530 | + var act=null; | |
| 531 | + var url="/api/weshop/prom/ladderForm/getNew/"+os.stoid+"/"+user_id+"/"+item.prom_id; | |
| 532 | + await getApp().request.promiseGet(url, {}).then(res => { | |
| 533 | + console.log(res,1000); | |
| 534 | + if(res.data.code==0 && res.data.data){ | |
| 535 | + if(res.data.data.isuse!=1){ | |
| 536 | + isok=0; | |
| 537 | + } | |
| 538 | + //如果活动已经结束 | |
| 539 | + if(res.data.data.is_end==1){ | |
| 540 | + isok=0; | |
| 541 | + } | |
| 542 | + //已经结束 | |
| 543 | + if(ut.gettimestamp()>res.data.data.end_time){ | |
| 544 | + isok=0; | |
| 545 | + } | |
| 546 | + //还未开始 | |
| 547 | + if(ut.gettimestamp()<res.data.data.start_time){ | |
| 548 | + isok=0; | |
| 549 | + } | |
| 550 | + act=res.data.data; | |
| 551 | + | |
| 552 | + }else{ | |
| 553 | + //未找到商品的活动 | |
| 554 | + is_flag = 0; | |
| 555 | + } | |
| 556 | + }) | |
| 557 | + if (!isok){ | |
| 558 | + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; | |
| 559 | + getApp().request.delete(url, {}); | |
| 560 | + th.data.ladder_map[item.prom_id]=-1; | |
| 561 | + continue; | |
| 562 | + } | |
| 563 | + th.data.ladder_map[item.prom_id]=act; | |
| 564 | + | |
| 565 | + //-- 获取阶梯规则 -- | |
| 566 | + var url1 = "/api/weshop/prom/ladderList/list"; | |
| 567 | + var req_data = { | |
| 568 | + store_id: os.stoid, | |
| 569 | + form_id: item.prom_id, | |
| 570 | + } | |
| 571 | + await getApp().request.promiseGet(url1, { | |
| 572 | + data: req_data | |
| 573 | + }).then(rs1 => { | |
| 574 | + if (rs1.data.code==0 && rs1.data.data) { | |
| 575 | + var gdlist = rs1.data.data; | |
| 576 | + th.data.ladder_map[item.prom_id].ladder_list=gdlist; | |
| 577 | + } | |
| 578 | + }) | |
| 579 | + } | |
| 580 | + //直接把活动赋值给元素 | |
| 581 | + if(th.data.ladder_map[item.prom_id] && th.data.ladder_map[item.prom_id]!=-1 ){ | |
| 582 | + item.act=th.data.ladder_map[item.prom_id]; | |
| 583 | + } | |
| 584 | + | |
| 585 | + } | |
| 586 | + | |
| 520 | 587 | else if(item.prom_type == 0) { |
| 521 | 588 | //如果有优惠活动,要更新活动 |
| 522 | 589 | await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + item.goods_id + "/1", {}).then(res => { |
| ... | ... | @@ -529,9 +596,79 @@ Page({ |
| 529 | 596 | }); |
| 530 | 597 | item.prom_type=3; |
| 531 | 598 | item.prom_id=r_data.promGoodsLists[0].prom_id; |
| 599 | + }else if(r_data.ladderLists){ | |
| 600 | + var url = '/api/weshop/cart/update'; | |
| 601 | + getApp().request.put(url, { | |
| 602 | + data:{id:item.id,store_id:oo.stoid,prom_type:10,prom_id:r_data.ladderLists[0].form_id} | |
| 603 | + }); | |
| 604 | + item.prom_type=10; | |
| 605 | + item.prom_id=r_data.ladderLists[0].form_id; | |
| 606 | + | |
| 532 | 607 | } |
| 533 | 608 | } |
| 534 | 609 | }) |
| 610 | + | |
| 611 | + //如果是阶梯购的时候 | |
| 612 | + if(item.prom_type==10){ | |
| 613 | + if(!th.data.ladder_map[item.prom_id]){ | |
| 614 | + //如果有阶梯购,要判断身份 | |
| 615 | + var isok = 1; | |
| 616 | + var is_flag=1; | |
| 617 | + var act=null; | |
| 618 | + var url="/api/weshop/prom/ladderForm/getNew/"+os.stoid+"/"+user_id+"/"+item.prom_id; | |
| 619 | + await getApp().request.promiseGet(url, {}).then(res => { | |
| 620 | + console.log(res,1000); | |
| 621 | + if(res.data.code==0 && res.data.data){ | |
| 622 | + if(res.data.data.isuse!=1){ | |
| 623 | + isok=0; | |
| 624 | + } | |
| 625 | + //如果活动已经结束 | |
| 626 | + if(res.data.data.is_end==1){ | |
| 627 | + isok=0; | |
| 628 | + } | |
| 629 | + //已经结束 | |
| 630 | + if(ut.gettimestamp()>res.data.data.end_time){ | |
| 631 | + isok=0; | |
| 632 | + } | |
| 633 | + //还未开始 | |
| 634 | + if(ut.gettimestamp()<res.data.data.start_time){ | |
| 635 | + isok=0; | |
| 636 | + } | |
| 637 | + act=res.data.data; | |
| 638 | + | |
| 639 | + }else{ | |
| 640 | + //未找到商品的活动 | |
| 641 | + isok = 0; | |
| 642 | + } | |
| 643 | + }) | |
| 644 | + if (!isok){ | |
| 645 | + item.prom_type=0; | |
| 646 | + item.prom_id=0; | |
| 647 | + continue; | |
| 648 | + | |
| 649 | + } | |
| 650 | + th.data.ladder_map[item.prom_id]=act; | |
| 651 | + //-- 获取阶梯规则 -- | |
| 652 | + var url1 = "/api/weshop/prom/ladderList/list"; | |
| 653 | + var req_data = { | |
| 654 | + store_id: os.stoid, | |
| 655 | + form_id: item.prom_id, | |
| 656 | + } | |
| 657 | + await getApp().request.promiseGet(url1, { | |
| 658 | + data: req_data | |
| 659 | + }).then(rs1 => { | |
| 660 | + if (rs1.data.code==0 && rs1.data.data) { | |
| 661 | + var gdlist = rs1.data.data; | |
| 662 | + th.data.ladder_map[item.prom_id].ladder_list=gdlist; | |
| 663 | + } | |
| 664 | + }) | |
| 665 | + } | |
| 666 | + //直接把活动赋值给元素 | |
| 667 | + if(th.data.ladder_map[item.prom_id] && th.data.ladder_map[item.prom_id]!=-1 ){ | |
| 668 | + item.act=th.data.ladder_map[item.prom_id]; | |
| 669 | + } | |
| 670 | + } | |
| 671 | + | |
| 535 | 672 | } |
| 536 | 673 | |
| 537 | 674 | all_num += item.goods_num; |
| ... | ... | @@ -622,9 +759,6 @@ Page({ |
| 622 | 759 | } |
| 623 | 760 | } |
| 624 | 761 | |
| 625 | - // console.log('AAAAAAAAAAAA', all_num); | |
| 626 | - // getApp().globalData.cartGoodsNum = all_num; | |
| 627 | - | |
| 628 | 762 | th.setData({ |
| 629 | 763 | requestData: arr, |
| 630 | 764 | all_num: all_num, |
| ... | ... | @@ -995,11 +1129,13 @@ Page({ |
| 995 | 1129 | if(item[j].is_gift) continue; |
| 996 | 1130 | |
| 997 | 1131 | var obj=JSON.parse(JSON.stringify(item[j])); |
| 998 | - //计算之前先移除 | |
| 1132 | + //计算之前先移除组合购的计算 | |
| 999 | 1133 | if(obj.prom_type==7) |
| 1000 | 1134 | zh_calc.remove_zhprom(dda,i,obj); |
| 1001 | - | |
| 1002 | - | |
| 1135 | + //计算之前先移除阶梯购的计算 | |
| 1136 | + if(obj.prom_type==10) | |
| 1137 | + ladder_calc.remove_ladder_prom(dda,i,obj); | |
| 1138 | + | |
| 1003 | 1139 | if (fir == 0) { |
| 1004 | 1140 | fir = item[j].distr_type; |
| 1005 | 1141 | } else { |
| ... | ... | @@ -1012,8 +1148,12 @@ Page({ |
| 1012 | 1148 | var txt = "requestData[" + i + "].goods[" + j + "].selected"; |
| 1013 | 1149 | |
| 1014 | 1150 | if(e.data.checkAllToggle) obj.goods_num=0; |
| 1015 | - if(obj.prom_type==7) | |
| 1016 | - zh_calc.add_zhprom(dda,i,obj); | |
| 1151 | + | |
| 1152 | + //加入组合购计算 | |
| 1153 | + if(obj.prom_type==7) zh_calc.add_zhprom(dda,i,obj); | |
| 1154 | + //加入阶梯促销计算 | |
| 1155 | + if(obj.prom_type==10) ladder_calc.add_ladder_prom(dda,i,obj); | |
| 1156 | + | |
| 1017 | 1157 | |
| 1018 | 1158 | e.setData({ |
| 1019 | 1159 | [txt]: !e.data.checkAllToggle, |
| ... | ... | @@ -1021,7 +1161,7 @@ Page({ |
| 1021 | 1161 | |
| 1022 | 1162 | if (!e.data.checkAllToggle) { |
| 1023 | 1163 | //组合购的金额要另外算 |
| 1024 | - if(item[j].prom_type!=7) | |
| 1164 | + if(item[j].prom_type!=7 && item[j].prom_type!=10) | |
| 1025 | 1165 | tfeel += item[j].goods_num * item[j].goods_price; |
| 1026 | 1166 | t_num += item[j].goods_num; |
| 1027 | 1167 | } |
| ... | ... | @@ -1059,6 +1199,12 @@ Page({ |
| 1059 | 1199 | offline_price+=zh_calc_res.offline_price; |
| 1060 | 1200 | offline_num+=zh_calc_res.offline_num; |
| 1061 | 1201 | |
| 1202 | + //总的价格,把阶梯促销的商品的价格拿出来 | |
| 1203 | + var ladder_calc_res=ladder_calc.calculate_ladder(dda,i,this); | |
| 1204 | + tfeel+=ladder_calc_res.tfeel; | |
| 1205 | + offline_price+=ladder_calc_res.offline_price; | |
| 1206 | + offline_num+=ladder_calc_res.offline_num; | |
| 1207 | + | |
| 1062 | 1208 | //当有线下取价的时候 |
| 1063 | 1209 | if(offline_price){ |
| 1064 | 1210 | var txt1= "requestData[" + i + "].offline_price"; |
| ... | ... | @@ -1363,8 +1509,7 @@ Page({ |
| 1363 | 1509 | if(car && car.length>0){ |
| 1364 | 1510 | th.data.in_zhact_gdmap={}; |
| 1365 | 1511 | for (var a = 0; a < car.length; a++) { |
| 1366 | - var item = car[a].goods, | |
| 1367 | - is_s_sele = 1; | |
| 1512 | + var item = car[a].goods,is_s_sele = 1; | |
| 1368 | 1513 | var offline_price=0; |
| 1369 | 1514 | var offline_num=0; |
| 1370 | 1515 | for (var c = 0; c < item.length; c++) { |
| ... | ... | @@ -1373,7 +1518,10 @@ Page({ |
| 1373 | 1518 | |
| 1374 | 1519 | //不管怎么样都要移出去 |
| 1375 | 1520 | var obj=JSON.parse(JSON.stringify(item[c])); |
| 1521 | + | |
| 1376 | 1522 | zh_calc.remove_zhprom(car,a,obj); |
| 1523 | + ladder_calc.remove_ladder_prom(car,a,obj); | |
| 1524 | + | |
| 1377 | 1525 | if (item[c].selected == 0) { |
| 1378 | 1526 | ischeck = 0; |
| 1379 | 1527 | is_s_sele = 0; |
| ... | ... | @@ -1381,11 +1529,20 @@ Page({ |
| 1381 | 1529 | obj.goods_num=0; |
| 1382 | 1530 | zh_calc.add_zhprom(car,a,obj); |
| 1383 | 1531 | } |
| 1532 | + if(item[c].prom_type==10) { | |
| 1533 | + obj.goods_num=0; | |
| 1534 | + ladder_calc.add_ladder_prom(car,a,obj); | |
| 1535 | + } | |
| 1536 | + | |
| 1537 | + | |
| 1384 | 1538 | } else { |
| 1385 | 1539 | if(item[c].prom_type==7){ |
| 1386 | - //先把商品放入组合计算的专用的区域 | |
| 1387 | - zh_calc.add_zhprom(car,a,obj); | |
| 1388 | - }else{ | |
| 1540 | + //先把商品放入组合计算的专用的区域 | |
| 1541 | + zh_calc.add_zhprom(car,a,obj); | |
| 1542 | + }else if(item[c].prom_type==10){ | |
| 1543 | + ladder_calc.add_ladder_prom(car,a,obj); | |
| 1544 | + } | |
| 1545 | + else{ | |
| 1389 | 1546 | tfeel += item[c].goods_num * item[c].goods_price; |
| 1390 | 1547 | } |
| 1391 | 1548 | t_num += item[c].goods_num; |
| ... | ... | @@ -1400,10 +1557,17 @@ Page({ |
| 1400 | 1557 | |
| 1401 | 1558 | //总的价格,把组合商品的价格拿出来 |
| 1402 | 1559 | var zh_calc_res=zh_calc.calculate_zh(car,a,th); |
| 1560 | + //总的价格,把阶梯促销商品的价格拿出来 | |
| 1561 | + var ladder_calc_res=ladder_calc.calculate_ladder(car,a,th); | |
| 1562 | + | |
| 1403 | 1563 | tfeel+=zh_calc_res.tfeel; |
| 1404 | 1564 | offline_price+=zh_calc_res.offline_price; |
| 1405 | 1565 | offline_num+=zh_calc_res.offline_num; |
| 1406 | 1566 | |
| 1567 | + tfeel+=ladder_calc_res.tfeel; | |
| 1568 | + offline_price+=ladder_calc_res.offline_price; | |
| 1569 | + offline_num+=ladder_calc_res.offline_num; | |
| 1570 | + | |
| 1407 | 1571 | var txt = "requestData[" + a + "].selected"; |
| 1408 | 1572 | th.setData({ |
| 1409 | 1573 | [txt]: Number(is_s_sele) |
| ... | ... | @@ -1456,9 +1620,6 @@ Page({ |
| 1456 | 1620 | }); |
| 1457 | 1621 | } |
| 1458 | 1622 | } |
| 1459 | - | |
| 1460 | - // getApp().globalData.cartGoodsNum = all_num; | |
| 1461 | - // console.log('CCCCCCC', all_num, getApp().globalData.cartGoodsNum); | |
| 1462 | 1623 | |
| 1463 | 1624 | this.setData({ |
| 1464 | 1625 | checkAllToggle: ischeck, |
| ... | ... | @@ -1494,6 +1655,8 @@ Page({ |
| 1494 | 1655 | |
| 1495 | 1656 | // console.log('update'); |
| 1496 | 1657 | // console.log('9995959595959',t); |
| 1658 | + var e = this,th=e; | |
| 1659 | + var user_id = getApp().globalData.user_id; | |
| 1497 | 1660 | rq.get("/api/weshop/goods/get/" + oo.stoid + "/" + t.goods_id, { |
| 1498 | 1661 | isShowLoading: 0, |
| 1499 | 1662 | async success(d) { |
| ... | ... | @@ -1523,8 +1686,10 @@ Page({ |
| 1523 | 1686 | } |
| 1524 | 1687 | goodsbuynum = buy_num_data.goodsbuynum; |
| 1525 | 1688 | |
| 1689 | + | |
| 1526 | 1690 | }) |
| 1527 | 1691 | |
| 1692 | + | |
| 1528 | 1693 | var buyed_mum2 = t.goods_num + goodsbuynum; |
| 1529 | 1694 | if (buyed_mum2 > limit && limit > 0) { |
| 1530 | 1695 | wx.showModal({ |
| ... | ... | @@ -1778,7 +1943,7 @@ Page({ |
| 1778 | 1943 | await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{ |
| 1779 | 1944 | data:{storageNos:pick_no,wareIds:encodeURIComponent(erpwareid),storeId:os.stoid} |
| 1780 | 1945 | }).then(res=>{ |
| 1781 | - if(res.data.code==0){ | |
| 1946 | + if(ut.ajax_ok(res)){ | |
| 1782 | 1947 | plist=res.data.data.pageData[0]; |
| 1783 | 1948 | } |
| 1784 | 1949 | }) | ... | ... |
pages/cart/cart/cart.wxml
| ... | ... | @@ -164,6 +164,15 @@ |
| 164 | 164 | </view> |
| 165 | 165 | </block> |
| 166 | 166 | |
| 167 | + <!-- 阶梯促销提示多少件的优惠 --> | |
| 168 | + <block wx:if="{{item.l_need_list && item.l_need_list.length>0 && !is_edit}}"> | |
| 169 | + | |
| 170 | + <view class="fs28 pdr20 pdl20 pdb20 c-red2 flex jc_sb" wx:for="{{item.l_need_list}}"> | |
| 171 | + <text>{{item.title}}</text> | |
| 172 | + <text data-url="/pages/goods/goodsList/goodsList?ladder_id={{item.id}}" bindtap="go_url">去凑单</text> | |
| 173 | + </view> | |
| 174 | + </block> | |
| 175 | + | |
| 167 | 176 | |
| 168 | 177 | <!-- 线下取价 --> |
| 169 | 178 | <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28"> | ... | ... |
pages/cart/cart/ladder_calculate.js
0 → 100644
| 1 | +module.exports = { | |
| 2 | + //辅助数组添加元素功能 | |
| 3 | + find_in_add: function(list, ele) { | |
| 4 | + var idx=list.findIndex(function (e) { | |
| 5 | + return e.goods_id==ele.goods_id; | |
| 6 | + }) | |
| 7 | + if(idx>-1) return false; | |
| 8 | + list.push(ele); | |
| 9 | + }, | |
| 10 | + //辅助数组添加元素功能 | |
| 11 | + find_in_remove: function(list, ele) { | |
| 12 | + var idx=list.findIndex(function (e) { | |
| 13 | + return e.goods_id==ele.goods_id; | |
| 14 | + }) | |
| 15 | + if(idx==-1) return false; | |
| 16 | + list.splice(idx, 1); | |
| 17 | + }, | |
| 18 | + | |
| 19 | + //主要是把组合购的商品分离出来 | |
| 20 | + add_ladder_prom: function(car, a, ele) { | |
| 21 | + var point = car[a]; | |
| 22 | + if (point.ladder_map) { | |
| 23 | + if (point.ladder_map[ele.prom_id]) { | |
| 24 | + this.find_in_add(point.ladder_map[ele.prom_id].goods, ele); | |
| 25 | + } else { | |
| 26 | + point.ladder_map[ele.prom_id] = { | |
| 27 | + goods: [], | |
| 28 | + act: ele.act | |
| 29 | + }; | |
| 30 | + point.ladder_map[ele.prom_id].goods.push(ele); | |
| 31 | + } | |
| 32 | + } else { | |
| 33 | + point.ladder_map = {}; | |
| 34 | + point.ladder_map[ele.prom_id] = { | |
| 35 | + goods: [], | |
| 36 | + act: ele.act | |
| 37 | + }; | |
| 38 | + point.ladder_map[ele.prom_id].goods.push(ele); | |
| 39 | + } | |
| 40 | + }, | |
| 41 | + //未选中的商品,要从中剔除 | |
| 42 | + remove_ladder_prom: function(car, a, ele) { | |
| 43 | + var point = car[a]; | |
| 44 | + if (point.ladder_map) { | |
| 45 | + if (point.ladder_map[ele.prom_id]) { | |
| 46 | + this.find_in_remove(point.ladder_map[ele.prom_id].goods, ele); | |
| 47 | + } | |
| 48 | + } | |
| 49 | + }, | |
| 50 | + | |
| 51 | + //把组合购的商品价格计算出来,同时每个会员都有购买组合商品的上限!ladder_b_num是已经购买了多少件 | |
| 52 | + calculate_ladder: function(car, a, th) { | |
| 53 | + var car_item = car[a]; | |
| 54 | + var tfeel = 0,offline_price = 0,offline_num = 0; | |
| 55 | + var txt = "requestData[" + a + "].l_need_list"; | |
| 56 | + var need_to=[]; | |
| 57 | + | |
| 58 | + //活动的列表都存储在这里面,可以快速查询 | |
| 59 | + if (!car_item.ladder_map) { | |
| 60 | + var res = { | |
| 61 | + tfeel: tfeel, | |
| 62 | + offline_price: offline_price, | |
| 63 | + offline_num: offline_num | |
| 64 | + }; | |
| 65 | + th.setData({ | |
| 66 | + [txt]: null | |
| 67 | + }); | |
| 68 | + return res; | |
| 69 | + } | |
| 70 | + | |
| 71 | + //因为可能有多个组合购的活动 | |
| 72 | + for (var mi in car_item.ladder_map) { | |
| 73 | + var bitem = car_item.ladder_map[mi]; | |
| 74 | + var act = bitem.act; //获取到组合购的详情 | |
| 75 | + var all_num = 0; //商品数量之和 | |
| 76 | + var all_price = 0; | |
| 77 | + var aprice=0; | |
| 78 | + var no_in_arr = []; //剩余的未加入组合购 | |
| 79 | + | |
| 80 | + var title =""; //提示语; | |
| 81 | + var goods = car_item.goods; | |
| 82 | + | |
| 83 | + //-- 每件商品要剔除的量 -- | |
| 84 | + for (let v3 in car_item.goods) { | |
| 85 | + car_item.goods[v3].l_need_downlow_num=0; | |
| 86 | + } | |
| 87 | + | |
| 88 | + //寻找一下 | |
| 89 | + function get_num2(ite) { | |
| 90 | + var vh=car_item.goods.findIndex(function (e) { | |
| 91 | + return e.goods_id == ite.goods_id | |
| 92 | + }) | |
| 93 | + if(vh>-1) return car_item.goods[vh]; | |
| 94 | + return 0; | |
| 95 | + } | |
| 96 | + | |
| 97 | + for (var i in goods) { | |
| 98 | + if(goods[i].prom_type!=10) continue; | |
| 99 | + if(!goods[i].selected) continue; | |
| 100 | + if(goods[i].prom_id!=act.id) continue; | |
| 101 | + var item = goods[i]; | |
| 102 | + item.goods_price=item.goods_price; | |
| 103 | + item.offline_price=item.offline_price; | |
| 104 | + item.cart_num =item.goods_num; | |
| 105 | + all_num += item.cart_num; | |
| 106 | + for (var j = 0; j < item.cart_num; j++) { | |
| 107 | + no_in_arr.push({ | |
| 108 | + price: item.goods_price,offline_price:item.offline_price,goods_id:item.goods_id,shop_price:item.shop_price | |
| 109 | + }) | |
| 110 | + } | |
| 111 | + } | |
| 112 | + | |
| 113 | + function sortData(a, b) { | |
| 114 | + return a.price - b.price | |
| 115 | + } | |
| 116 | + no_in_arr.sort(sortData); | |
| 117 | + | |
| 118 | + //开始阶梯计算价格 | |
| 119 | + var lev=0; | |
| 120 | + for(let j in act.ladder_list){ | |
| 121 | + if(no_in_arr.length==0) break; | |
| 122 | + let item_j=act.ladder_list[j]; | |
| 123 | + var end=no_in_arr.pop(); | |
| 124 | + var new_price=parseInt(item_j.discount_field)==1?end.shop_price:end.price; | |
| 125 | + aprice+=new_price* parseFloat(item_j.discount)/10; | |
| 126 | + lev++; | |
| 127 | + } | |
| 128 | + | |
| 129 | + //获取阶梯促销的下一个促销 | |
| 130 | + if(lev>0 && lev<act.ladder_list.length){ | |
| 131 | + title = "再买1件,第"+(lev+1)+"件"+act.ladder_list[lev].discount+"折"; | |
| 132 | + var it = { | |
| 133 | + id: act.id, | |
| 134 | + pickup_id: car_item.pid, | |
| 135 | + title: title | |
| 136 | + }; | |
| 137 | + need_to.push(it); | |
| 138 | + } | |
| 139 | + | |
| 140 | + all_price+=aprice; | |
| 141 | + //算一下剩余的钱 | |
| 142 | + if (no_in_arr.length) { | |
| 143 | + for (var ii in no_in_arr) { | |
| 144 | + var item = no_in_arr[ii]; | |
| 145 | + var gitem=get_num2(item); | |
| 146 | + if(gitem) { | |
| 147 | + if (!gitem.l_need_downlow_num) { | |
| 148 | + gitem.l_need_downlow_num = 1; | |
| 149 | + } | |
| 150 | + else { | |
| 151 | + gitem.l_need_downlow_num++; | |
| 152 | + } | |
| 153 | + all_price += item.price; | |
| 154 | + if (item.offline_price) { | |
| 155 | + offline_price += gitem.goods_price - gitem.offline_price; | |
| 156 | + offline_num += 1; | |
| 157 | + } | |
| 158 | + } | |
| 159 | + } | |
| 160 | + } | |
| 161 | + tfeel += all_price; | |
| 162 | + } | |
| 163 | + var res = { | |
| 164 | + tfeel: tfeel, | |
| 165 | + aprice:aprice, | |
| 166 | + offline_price: offline_price, | |
| 167 | + offline_num: offline_num, | |
| 168 | + }; | |
| 169 | + | |
| 170 | + th.setData({ [txt]: need_to}); | |
| 171 | + return res; | |
| 172 | + }, | |
| 173 | + | |
| 174 | + find_need_to: function(list, iter) { | |
| 175 | + if (!list || list.length <= 0) return -1; | |
| 176 | + for (var i in list) { | |
| 177 | + var item = list[i]; | |
| 178 | + if (item.id == iter.id) { | |
| 179 | + return i; | |
| 180 | + } | |
| 181 | + } | |
| 182 | + return -1; | |
| 183 | + }, | |
| 184 | + | |
| 185 | + //筛选阶梯促销,纯粹的数组按活动id分组 | |
| 186 | + find_split: function(arr) { | |
| 187 | + //过滤只有团购的商品 | |
| 188 | + var oarr = arr.goods.filter(function(ele) { | |
| 189 | + return ele.prom_type == 10 | |
| 190 | + }) | |
| 191 | + if(!oarr || oarr.length==0) return null; | |
| 192 | + //看一下有多少个不同的团购 | |
| 193 | + var map = {},dest = []; | |
| 194 | + for (var i = 0; i < oarr.length; i++) { | |
| 195 | + var ai = oarr[i]; | |
| 196 | + var index=map[ai.prom_id] | |
| 197 | + if (!index) { | |
| 198 | + dest.push({ | |
| 199 | + prom_id: ai.prom_id, | |
| 200 | + data: [ai] | |
| 201 | + }); | |
| 202 | + map[ai.prom_id]=dest.length; //存储下标 | |
| 203 | + } else { | |
| 204 | + var dj = dest[index-1]; | |
| 205 | + dj.data.push(ai); | |
| 206 | + } | |
| 207 | + } | |
| 208 | + return dest; | |
| 209 | + } | |
| 210 | + | |
| 211 | + | |
| 212 | +} | ... | ... |
pages/cart/cart2/cart2.js
| ... | ... | @@ -4,6 +4,7 @@ var oo = t.globalData.setting, os = oo; |
| 4 | 4 | var regeneratorRuntime = require('../../../utils/runtime.js'); |
| 5 | 5 | var util_pay = require("../../../utils/pay.js"); |
| 6 | 6 | var zh_calc = require("zh_calculate.js"); |
| 7 | +var ladder_calc = require("ladder_calculate.js"); | |
| 7 | 8 | |
| 8 | 9 | Page({ |
| 9 | 10 | data: { |
| ... | ... | @@ -33,6 +34,7 @@ Page({ |
| 33 | 34 | couponCode: "",//使用优惠券(多单就用逗号隔开) |
| 34 | 35 | shipping_price: 0,//物流费用 |
| 35 | 36 | }, |
| 37 | + | |
| 36 | 38 | /*-----------当是购物车结算的时候-------------*/ |
| 37 | 39 | cartlist: null, |
| 38 | 40 | old_cartlist: null, |
| ... | ... | @@ -124,7 +126,10 @@ Page({ |
| 124 | 126 | in_zhact_gdmap:{}, //不同门店参与同一活动的限购 |
| 125 | 127 | hid_inp:1, |
| 126 | 128 | user_note:{}, |
| 127 | - zuhe_map_good:{}, | |
| 129 | + zuhe_map_good:{}, //组合购的map表 | |
| 130 | + ladder_map:{}, //阶梯促销的map表 | |
| 131 | + | |
| 132 | + state:0, //阶梯促销的的立即购买也走购物车流程state=1 | |
| 128 | 133 | }, |
| 129 | 134 | onLoad: function (t) { |
| 130 | 135 | wx.setNavigationBarTitle({title: "填写订单",}) |
| ... | ... | @@ -140,6 +145,11 @@ Page({ |
| 140 | 145 | } |
| 141 | 146 | }); |
| 142 | 147 | |
| 148 | + //阶梯购的立即购买 | |
| 149 | + if(t.state){ | |
| 150 | + th.data.state=1; | |
| 151 | + } | |
| 152 | + | |
| 143 | 153 | |
| 144 | 154 | }, |
| 145 | 155 | onUnload: function () { |
| ... | ... | @@ -407,9 +417,11 @@ Page({ |
| 407 | 417 | //-----真的获取购物车,入口-------- |
| 408 | 418 | get_cart: function () { |
| 409 | 419 | var th = this, app = getApp(); |
| 420 | + var state=0; | |
| 421 | + if(th.data.state) state=1; | |
| 410 | 422 | a.get("/api/weshop/cart/list", { |
| 411 | 423 | data: { |
| 412 | - user_id: to.globalData.user_id, selected: 1, state: 0, | |
| 424 | + user_id: to.globalData.user_id, selected: 1, state: state, | |
| 413 | 425 | store_id: oo.stoid, pageSize: 600 |
| 414 | 426 | }, |
| 415 | 427 | success: async function (su) { |
| ... | ... | @@ -452,54 +464,113 @@ Page({ |
| 452 | 464 | } |
| 453 | 465 | |
| 454 | 466 | //要把组合购的东西拿出来算一下 |
| 455 | - if (item1.prom_type == 7) { | |
| 456 | - var isok = 1; | |
| 457 | - var is_flag=1; | |
| 458 | - //如果有组合购 | |
| 459 | - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item1.prom_id+'/'+getApp().globalData.userInfo.user_id; | |
| 460 | - await getApp().request.promiseGet(url, {}).then(res => { | |
| 461 | - if (res.data.code == 0 && res.data.data) { | |
| 462 | - //如果活动已经结束 | |
| 463 | - if (res.data.data.is_end == 1) { | |
| 464 | - isok = 0; | |
| 465 | - } | |
| 466 | - if (ut.gettimestamp() > res.data.data.end_time) { | |
| 467 | - isok = 0; | |
| 467 | + if(item1.prom_type == 7) { | |
| 468 | + if(!th.data.zuhe_map_good[item1.prom_id]) { | |
| 469 | + var isok = 1; | |
| 470 | + var is_flag = 1; | |
| 471 | + //如果有组合购 | |
| 472 | + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item1.prom_id + '/' + getApp().globalData.userInfo.user_id; | |
| 473 | + await getApp().request.promiseGet(url, {}).then(res => { | |
| 474 | + if (res.data.code == 0 && res.data.data) { | |
| 475 | + //如果活动已经结束 | |
| 476 | + if (res.data.data.is_end == 1) { | |
| 477 | + isok = 0; | |
| 478 | + } | |
| 479 | + if (ut.gettimestamp() > res.data.data.end_time) { | |
| 480 | + isok = 0; | |
| 481 | + } | |
| 482 | + item1.act = res.data.data; | |
| 483 | + } else { | |
| 484 | + //未找到商品的活动 | |
| 485 | + is_flag = 0; | |
| 468 | 486 | } |
| 469 | - item1.act = res.data.data; | |
| 470 | - } else { | |
| 471 | - //未找到商品的活动 | |
| 472 | - is_flag = 0; | |
| 487 | + }) | |
| 488 | + if (!isok) { | |
| 489 | + getApp().my_warnning("组合购的活动已经过期", 0, th); | |
| 490 | + return false; | |
| 473 | 491 | } |
| 474 | - }) | |
| 475 | - if (!isok) { | |
| 476 | - getApp().my_warnning("组合购的活动已经过期", 0, th); | |
| 477 | - return false; | |
| 478 | - } | |
| 479 | - var url1 = "/api/weshop/prom/zhbuyGoods/page"; | |
| 480 | - var req_data = { | |
| 481 | - page: 1, | |
| 482 | - pageSize: 2000, | |
| 483 | - store_id: os.stoid, | |
| 484 | - zh_id: item1.prom_id, | |
| 492 | + var url1 = "/api/weshop/prom/zhbuyGoods/page"; | |
| 493 | + var req_data = { | |
| 494 | + page: 1, | |
| 495 | + pageSize: 2000, | |
| 496 | + store_id: os.stoid, | |
| 497 | + zh_id: item1.prom_id, | |
| 498 | + } | |
| 499 | + await getApp().request.promiseGet(url1, { | |
| 500 | + data: req_data | |
| 501 | + }).then(res => { | |
| 502 | + if (ut.ajax_ok(res)) { | |
| 503 | + var gdlist = res.data.data.pageData; | |
| 504 | + gdlist.forEach(i => { | |
| 505 | + if (item1.goods_id == i.goods_id && !is_flag) { | |
| 506 | + item1.prom_type = 0; | |
| 507 | + item1.prom_type1 = 0; | |
| 508 | + item1.prom_id = 0; | |
| 509 | + item1.prom_id1 = 0 | |
| 510 | + } | |
| 511 | + }) | |
| 512 | + th.data.zuhe_map_good[item1.prom_id] = gdlist; | |
| 513 | + } | |
| 514 | + }) | |
| 485 | 515 | } |
| 486 | - await getApp().request.promiseGet(url1, { | |
| 487 | - data: req_data | |
| 488 | - }).then(res => { | |
| 489 | - if (ut.ajax_ok(res)) { | |
| 490 | - var gdlist = res.data.data.pageData; | |
| 491 | - gdlist.forEach(i=>{ | |
| 492 | - if(item1.goods_id==i.goods_id&&!is_flag){ | |
| 493 | - item1.prom_type=0; | |
| 494 | - item1.prom_type1=0; | |
| 495 | - item1.prom_id=0; | |
| 496 | - item1.prom_id1=0 | |
| 516 | + } | |
| 517 | + if(item1.prom_type==10){ | |
| 518 | + if(!th.data.ladder_map[item1.prom_id]){ | |
| 519 | + //如果有组合购 | |
| 520 | + var isok = 1; | |
| 521 | + var is_flag=1; | |
| 522 | + var act=null; | |
| 523 | + var url="/api/weshop/prom/ladderForm/get/"+os.stoid+"/"+item1.prom_id; | |
| 524 | + await getApp().request.promiseGet(url, {}).then(res => { | |
| 525 | + console.log(res,1000); | |
| 526 | + if(res.data.code==0 && res.data.data){ | |
| 527 | + if(res.data.data.isuse!=1){ | |
| 528 | + isok=0; | |
| 497 | 529 | } |
| 498 | - }) | |
| 499 | - th.data.zuhe_map_good[item1.prom_id]=gdlist; | |
| 530 | + //如果活动已经结束 | |
| 531 | + if(res.data.data.is_end==1){ | |
| 532 | + isok=0; | |
| 533 | + } | |
| 534 | + //已经结束 | |
| 535 | + if(ut.gettimestamp()>res.data.data.end_time){ | |
| 536 | + isok=0; | |
| 537 | + } | |
| 538 | + //还未开始 | |
| 539 | + if(ut.gettimestamp()<res.data.data.start_time){ | |
| 540 | + isok=0; | |
| 541 | + } | |
| 542 | + act=res.data.data; | |
| 543 | + | |
| 544 | + }else{ | |
| 545 | + //未找到商品的活动 | |
| 546 | + is_flag = 0; | |
| 547 | + } | |
| 548 | + }) | |
| 549 | + if (!isok){ | |
| 550 | + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; | |
| 551 | + getApp().request.delete(url, {}); | |
| 552 | + th.data.ladder_map[item1.prom_id]=-1; | |
| 553 | + continue; | |
| 500 | 554 | } |
| 501 | - }) | |
| 555 | + th.data.ladder_map[item1.prom_id]=act; | |
| 556 | + | |
| 557 | + //-- 获取阶梯规则 -- | |
| 558 | + var url1 = "/api/weshop/prom/ladderList/list"; | |
| 559 | + var req_data = { | |
| 560 | + store_id: os.stoid, | |
| 561 | + form_id: item1.prom_id, | |
| 562 | + } | |
| 563 | + await getApp().request.promiseGet(url1, { | |
| 564 | + data: req_data | |
| 565 | + }).then(rs1 => { | |
| 566 | + if (rs1.data.code==0 && rs1.data.data) { | |
| 567 | + var gdlist = rs1.data.data; | |
| 568 | + th.data.ladder_map[item1.prom_id].ladder_list=gdlist; | |
| 569 | + } | |
| 570 | + }) | |
| 571 | + } | |
| 502 | 572 | } |
| 573 | + | |
| 503 | 574 | } |
| 504 | 575 | |
| 505 | 576 | //在分组的时候,就不要再调用接口,await |
| ... | ... | @@ -560,6 +631,7 @@ Page({ |
| 560 | 631 | } |
| 561 | 632 | arr[j].exp_type = e_t; |
| 562 | 633 | if (e_t == 0) th.setData({is_all_zt: 0}); |
| 634 | + else if(e_t==1) th.setData({is_all_zt: 1}); | |
| 563 | 635 | //} |
| 564 | 636 | |
| 565 | 637 | //-- 把等级卡会优惠多少钱装进去 -- |
| ... | ... | @@ -688,31 +760,31 @@ Page({ |
| 688 | 760 | //存储不同活动的商品列表 |
| 689 | 761 | u_item.zh_prom_goods = {}; |
| 690 | 762 | for (let var1 in obj) { |
| 691 | - var h_item=obj[var1]; | |
| 692 | - var gdlist= th.data.zuhe_map_good[h_item.prom_id]; | |
| 693 | - //获取活动需要的商品列表 | |
| 694 | - // u_item.zh_prom_goods[h_item.prom_id]=gdlist; | |
| 695 | - // var h_item = obj[var1]; | |
| 696 | - // var gdlist = null; | |
| 697 | - // var url1 = "/api/weshop/prom/zhbuyGoods/page"; | |
| 698 | - // var req_data = { | |
| 699 | - // page: 1, | |
| 700 | - // pageSize: 2000, | |
| 701 | - // store_id: os.stoid, | |
| 702 | - // zh_id: h_item.prom_id, | |
| 703 | - // } | |
| 704 | - // await getApp().request.promiseGet(url1, { | |
| 705 | - // data: req_data | |
| 706 | - // }).then(res => { | |
| 707 | - // if (ut.ajax_ok(res)) { | |
| 708 | - // gdlist = res.data.data.pageData; | |
| 709 | - // } | |
| 710 | - // }) | |
| 763 | + var h_item = obj[var1]; | |
| 764 | + var gdlist = th.data.zuhe_map_good[h_item.prom_id]; | |
| 711 | 765 | //获取活动需要的商品列表 |
| 712 | 766 | u_item.zh_prom_goods[h_item.prom_id] = {gdlist: gdlist, act: h_item.act}; |
| 713 | 767 | } |
| 714 | 768 | zh_calc.fir_set_arr(u_item, th); |
| 715 | 769 | } |
| 770 | + | |
| 771 | + //每一个门店内的阶梯促销要进行拆分, | |
| 772 | + //还得把阶梯促销商品的多余商品的线下价格算一算 | |
| 773 | + for (let var1 in arr) { | |
| 774 | + //把阶梯促销进行分组 | |
| 775 | + var obj = ladder_calc.find_split(u_item); | |
| 776 | + if (!obj) continue; | |
| 777 | + //存储不同阶梯促销活动的商品列表 | |
| 778 | + u_item.ladder_map = {}; | |
| 779 | + for (let var1 in obj) { | |
| 780 | + var h_item=obj[var1]; | |
| 781 | + var act= th.data.ladder_map[h_item.prom_id]; | |
| 782 | + //获取活动需要的商品列表 | |
| 783 | + u_item.ladder_map[h_item.prom_id] =act; | |
| 784 | + } | |
| 785 | + ladder_calc.fir_set_arr(u_item, th); | |
| 786 | + } | |
| 787 | + | |
| 716 | 788 | //深拷贝 |
| 717 | 789 | th.data.old_cartlist = JSON.parse(JSON.stringify(arr)); |
| 718 | 790 | th.setData({ |
| ... | ... | @@ -1270,6 +1342,7 @@ Page({ |
| 1270 | 1342 | var all_coupon_price_m = 0; //所有的订单用户使用优惠券价格 |
| 1271 | 1343 | var all_cutprice = 0; //所有的优惠减 |
| 1272 | 1344 | var all_zh_cutprice = 0; //所有的组合优惠减 |
| 1345 | + var all_ladder_cutprice = 0; //所有的阶梯促销优惠减 | |
| 1273 | 1346 | var all_order_prom = 0; //所有的订单优惠 |
| 1274 | 1347 | |
| 1275 | 1348 | var umoney = th.data.userinfo.user_money - th.data.txmon - (th.data.userinfo.frozen_money ? th.data.userinfo.frozen_money : 0); |
| ... | ... | @@ -1302,6 +1375,8 @@ Page({ |
| 1302 | 1375 | await th.calc_per(c_arr); |
| 1303 | 1376 | //调用函数计算每件组合购商品的单价, |
| 1304 | 1377 | await zh_calc.calc_zh_split_price(c_arr,th); |
| 1378 | + //调用函数计算每件阶梯促销商品的单价, | |
| 1379 | + await ladder_calc.calc_split_price(c_arr,th); | |
| 1305 | 1380 | //调用函数计算,优惠券优惠什么商品价格,优惠券优惠什么商品 |
| 1306 | 1381 | await th.get_cart_quan(c_arr); |
| 1307 | 1382 | //---循环购物车--- |
| ... | ... | @@ -1333,7 +1408,10 @@ Page({ |
| 1333 | 1408 | var coupon_price = 0; |
| 1334 | 1409 | var quan_no = null; |
| 1335 | 1410 | var is_has_zh=c_arr[i].is_has_zh; |
| 1336 | - var zh_prom_goods=c_arr[i].zh_prom_goods; //组合购计算的原始数据存储空间 | |
| 1411 | + var is_has_ladder=c_arr[i].is_has_ladder; | |
| 1412 | + | |
| 1413 | + var zh_prom_goods=c_arr[i].zh_prom_goods; //组合购计算的原始数据存储空间 | |
| 1414 | + var ladder_prom_goods=c_arr[i].ladder_prom_goods; //组合购计算的原始数据存储空间 | |
| 1337 | 1415 | |
| 1338 | 1416 | if (th.data.using_quan[pickid] != null && th.data.using_quan[pickid] != undefined) |
| 1339 | 1417 | quan_no = th.data.using_quan[pickid].coupon_no; |
| ... | ... | @@ -1361,12 +1439,24 @@ Page({ |
| 1361 | 1439 | |
| 1362 | 1440 | //--------循环计算总价----------- |
| 1363 | 1441 | for (var j = 0; j < item.length; j++) { |
| 1364 | - if(item[j].prom_type!=7){ | |
| 1365 | - o_price_no_zh += item[j].goods_price * item[j].goods_num; | |
| 1442 | + | |
| 1443 | + var is_no_zh=0; | |
| 1444 | + if(item[j].prom_type!=7 && item[j].prom_type!=10 ) is_no_zh=1; | |
| 1445 | + | |
| 1446 | + //组合购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加 | |
| 1447 | + if(item[j].prom_type==7 && zh_prom_goods && zh_prom_goods[item[j].prom_id] | |
| 1448 | + && zh_prom_goods[item[j].prom_id].act.is_orderyh ) | |
| 1449 | + { | |
| 1450 | + is_no_zh=1; | |
| 1366 | 1451 | } |
| 1367 | 1452 | //组合购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加 |
| 1368 | - else if(zh_prom_goods && zh_prom_goods[item[j].prom_id] && zh_prom_goods[item[j].prom_id].act.is_orderyh ) | |
| 1453 | + if(item[j].prom_type==10 && ladder_prom_goods && ladder_prom_goods[item[j].prom_id] | |
| 1454 | + && th.data.ladder_map[item[j].prom_id].is_useorderyh ) | |
| 1369 | 1455 | { |
| 1456 | + is_no_zh=1; | |
| 1457 | + } | |
| 1458 | + | |
| 1459 | + if(is_no_zh){ | |
| 1370 | 1460 | o_price_no_zh += item[j].goods_price * item[j].goods_num; |
| 1371 | 1461 | } |
| 1372 | 1462 | o_price += item[j].goods_price * item[j].goods_num; |
| ... | ... | @@ -1385,13 +1475,25 @@ Page({ |
| 1385 | 1475 | //找到那些可以订单优惠叠加的 |
| 1386 | 1476 | for(let ij in zh_prom_goods){ |
| 1387 | 1477 | let kitem=zh_prom_goods[ij]; |
| 1388 | - var is_has_zh=kitem.is_has_zh; | |
| 1389 | 1478 | if(kitem.act.is_orderyh) |
| 1390 | 1479 | o_price_no_zh-=kitem.cut_price; |
| 1391 | 1480 | } |
| 1392 | 1481 | } |
| 1393 | 1482 | } |
| 1394 | 1483 | |
| 1484 | + //如果有组合购优惠的钱,就要减价 | |
| 1485 | + if (c_arr[i].ladder_cut_price>0 || c_arr[i].ladder_cut_price<0){ | |
| 1486 | + o_price -= c_arr[i].ladder_cut_price; | |
| 1487 | + if(o_price_no_zh>0){ | |
| 1488 | + //找到那些可以订单优惠叠加的 | |
| 1489 | + for(let ij in ladder_prom_goods){ | |
| 1490 | + let kitem=ladder_prom_goods[ij]; | |
| 1491 | + if(th.data.ladder_map[ij].is_useorderyh ) | |
| 1492 | + o_price_no_zh-=kitem.cut_price; | |
| 1493 | + } | |
| 1494 | + } | |
| 1495 | + } | |
| 1496 | + | |
| 1395 | 1497 | //-- 计算线下取价的功能 -- |
| 1396 | 1498 | if (cart_item.is_offline == 1) { |
| 1397 | 1499 | o_price = o_price - cart_item.offline_price; |
| ... | ... | @@ -1581,6 +1683,13 @@ Page({ |
| 1581 | 1683 | o_condition=o_price_no_zh-quan_price; |
| 1582 | 1684 | } |
| 1583 | 1685 | |
| 1686 | + //看一下是不是不用组合购的订单优惠的叠加 | |
| 1687 | + if(is_has_ladder){ | |
| 1688 | + o_condition=o_price_no_zh-quan_price; | |
| 1689 | + } | |
| 1690 | + | |
| 1691 | + | |
| 1692 | + | |
| 1584 | 1693 | var order_m = 0; |
| 1585 | 1694 | //---判断是不是有订单优惠--- |
| 1586 | 1695 | await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { |
| ... | ... | @@ -1664,6 +1773,7 @@ Page({ |
| 1664 | 1773 | all_coupon_price_m += parseFloat(cart_item.coupon_price); |
| 1665 | 1774 | all_cutprice += parseFloat(cart_item.cut_price); |
| 1666 | 1775 | all_zh_cutprice += parseFloat(cart_item.zh_cut_price); |
| 1776 | + all_ladder_cutprice += parseFloat(cart_item.ladder_cut_price); | |
| 1667 | 1777 | all_order_prom += parseFloat(cart_item.order_prom_amount); |
| 1668 | 1778 | } |
| 1669 | 1779 | |
| ... | ... | @@ -1677,6 +1787,7 @@ Page({ |
| 1677 | 1787 | all_cutprice = all_cutprice.toFixed(2); |
| 1678 | 1788 | all_order_prom = all_order_prom.toFixed(2); |
| 1679 | 1789 | all_zh_cutprice = parseFloat(all_zh_cutprice).toFixed(2); |
| 1790 | + all_ladder_cutprice = parseFloat(all_ladder_cutprice).toFixed(2); | |
| 1680 | 1791 | |
| 1681 | 1792 | var atxt = "formData.total_amount"; |
| 1682 | 1793 | var atxt1 = "formData.order_amount"; |
| ... | ... | @@ -1687,12 +1798,13 @@ Page({ |
| 1687 | 1798 | var atxt6 = "formData.cut_price"; |
| 1688 | 1799 | var atxt7 = "formData.order_prom_amount"; |
| 1689 | 1800 | var atxt8 = "formData.zh_cut_price"; |
| 1801 | + var atxt9 = "formData.ladder_cut_price"; | |
| 1690 | 1802 | |
| 1691 | 1803 | th.setData({ |
| 1692 | 1804 | [atxt]: all_total_m, [atxt1]: all_order_m, |
| 1693 | 1805 | [atxt2]: all_price, [atxt3]: all_user_m, [atxt4]: all_shipping_m, |
| 1694 | 1806 | [atxt5]: all_coupon_price_m, [atxt6]: all_cutprice, |
| 1695 | - [atxt7]: all_order_prom, show_submit: 1, [atxt8]: all_zh_cutprice | |
| 1807 | + [atxt7]: all_order_prom, show_submit: 1, [atxt8]: all_zh_cutprice, [atxt9]: all_ladder_cutprice | |
| 1696 | 1808 | }) |
| 1697 | 1809 | th.data.order_prom_list_cart = c_arr; |
| 1698 | 1810 | th.set_can_num(); |
| ... | ... | @@ -2380,13 +2492,22 @@ Page({ |
| 2380 | 2492 | //--判断优惠活动的提交-- |
| 2381 | 2493 | if (t_item.cut_price > 0) { |
| 2382 | 2494 | order_prom_list.discount_amount += t_item.cut_price; |
| 2383 | - order_prom_list.prom_pt_json = JSON.stringify(t_item.prom_pt_json); | |
| 2384 | 2495 | } |
| 2385 | 2496 | //--判断组合优惠活动的提交-- |
| 2386 | 2497 | if (t_item.zh_cut_price > 0 || t_item.zh_cut_price<0) { |
| 2387 | 2498 | order_prom_list.discount_amount += t_item.zh_cut_price; |
| 2388 | 2499 | order_prom_list.zh_pt_json = JSON.stringify(t_item.zh_pt_json); |
| 2389 | 2500 | } |
| 2501 | + | |
| 2502 | + //--判断阶梯优惠活动的提交-- | |
| 2503 | + if (t_item.ladder_cut_price > 0 || t_item.ladder_cut_price<0) { | |
| 2504 | + order_prom_list.discount_amount += t_item.ladder_cut_price; | |
| 2505 | + } | |
| 2506 | + | |
| 2507 | + if(t_item.prom_pt_json){ | |
| 2508 | + order_prom_list.prom_pt_json = JSON.stringify(t_item.prom_pt_json); | |
| 2509 | + } | |
| 2510 | + | |
| 2390 | 2511 | if (t_item.s_intValue > 0) { |
| 2391 | 2512 | order_prom_list.give_integral = t_item.s_intValue; |
| 2392 | 2513 | } |
| ... | ... | @@ -2423,6 +2544,15 @@ Page({ |
| 2423 | 2544 | |
| 2424 | 2545 | //房间号的ids |
| 2425 | 2546 | var room_ids = ""; |
| 2547 | + | |
| 2548 | + //-- 把券的钱,写入从表 --- | |
| 2549 | + if (t_item.quan_youhui_list && t_item.coupon_price) { | |
| 2550 | + for (var kk in t_item.quan_youhui_list) { | |
| 2551 | + var you_item = t_item.quan_youhui_list[kk]; | |
| 2552 | + //-- 对券的价格进行平摊 -- | |
| 2553 | + await th.split_set_goods_quanprice(you_item,t_item); | |
| 2554 | + } | |
| 2555 | + } | |
| 2426 | 2556 | //-------------让商品添加到商品列表-------------------- |
| 2427 | 2557 | for (var k = 0; k < t_item.goods.length; k++) { |
| 2428 | 2558 | var g_item = t_item.goods[k]; |
| ... | ... | @@ -2445,22 +2575,15 @@ Page({ |
| 2445 | 2575 | goods.offline_cut = (g_item.goods_price - g_item.offline_price).toFixed(2); |
| 2446 | 2576 | goods.pricing_type = g_item.pricing_type; |
| 2447 | 2577 | } |
| 2448 | - | |
| 2449 | - //--把券的钱,写入从表--- | |
| 2450 | - if (t_item.quan_youhui_list && t_item.coupon_price) { | |
| 2451 | - for (var kk in t_item.quan_youhui_list) { | |
| 2452 | - var you_item = t_item.quan_youhui_list[kk]; | |
| 2453 | - if (g_item.prom_type!=7 && g_item.erpwareid == you_item.WareId) { | |
| 2454 | - goods.quan_num = you_item.WareCashSum; | |
| 2455 | - goods.quan_no = you_item.CashRepNo; | |
| 2456 | - } | |
| 2457 | - } | |
| 2578 | + if(g_item.quan_num){ | |
| 2579 | + goods.quan_num=g_item.quan_num; | |
| 2580 | + goods.quan_no=g_item.quan_no; | |
| 2458 | 2581 | } |
| 2459 | - | |
| 2460 | 2582 | //--判断活动的类型-- |
| 2461 | 2583 | switch (g_item.prom_type) { |
| 2462 | 2584 | case 1: |
| 2463 | 2585 | case 2: |
| 2586 | + case 10: | |
| 2464 | 2587 | goods.prom_type = g_item.prom_type; |
| 2465 | 2588 | goods.prom_id = g_item.prom_id; |
| 2466 | 2589 | break; |
| ... | ... | @@ -2525,6 +2648,12 @@ Page({ |
| 2525 | 2648 | goods.room_id = g_item.room_id; |
| 2526 | 2649 | room_ids += g_item.room_id + ","; |
| 2527 | 2650 | } |
| 2651 | + | |
| 2652 | + //如果有阶梯促销 | |
| 2653 | + if(g_item.ladder_list_id){ | |
| 2654 | + goods.ladder_list_id=g_item.ladder_list_id; | |
| 2655 | + } | |
| 2656 | + | |
| 2528 | 2657 | item.order_goods.push(goods); |
| 2529 | 2658 | } |
| 2530 | 2659 | |
| ... | ... | @@ -3409,6 +3538,7 @@ Page({ |
| 3409 | 3538 | get_cart_quan: async function (order_prom_list_cart) { |
| 3410 | 3539 | var th = this; |
| 3411 | 3540 | var is_xz_yh = 1; |
| 3541 | + var user_id=getApp().globalData.user_id; | |
| 3412 | 3542 | //等待值的出现 |
| 3413 | 3543 | //getApp().waitfor2(this,"g_cart_q_time","order_prom_list_cart",async function () { |
| 3414 | 3544 | //var arr=th.data.order_prom_list_cart; |
| ... | ... | @@ -3442,7 +3572,19 @@ Page({ |
| 3442 | 3572 | }).then(res => { |
| 3443 | 3573 | if (res.data.code == 0) prom1 = res.data.data; |
| 3444 | 3574 | }) |
| 3445 | - if(!prom1.isQuan){ | |
| 3575 | + if(prom1 && !prom1.isQuan){ | |
| 3576 | + continue; | |
| 3577 | + } | |
| 3578 | + } | |
| 3579 | + | |
| 3580 | + //--如果是团购,要判断有没有限制使用优惠券 | |
| 3581 | + if(gd.prom_type == 10){ | |
| 3582 | + var prom1=null; | |
| 3583 | + await getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/"+ os.stoid +"/"+user_id+"/"+ gd.prom_id, { | |
| 3584 | + }).then(res => { | |
| 3585 | + if (res.data.code == 0) prom1 = res.data.data; | |
| 3586 | + }) | |
| 3587 | + if(prom1 && prom1.isuse && prom1. is_usecoupon){ | |
| 3446 | 3588 | continue; |
| 3447 | 3589 | } |
| 3448 | 3590 | } |
| ... | ... | @@ -3899,6 +4041,73 @@ Page({ |
| 3899 | 4041 | go_url:function (e) { |
| 3900 | 4042 | var url = e.currentTarget.dataset.url; |
| 3901 | 4043 | getApp().goto(url); |
| 4044 | + }, | |
| 4045 | + | |
| 4046 | + //进行对商品的平摊g_item是单个商品,you_item是这个商品分多少优惠券的钱,goods是商品列表 | |
| 4047 | + split_set_goods_quanprice:async function (you_item,t_item) { | |
| 4048 | + var coupon_price=you_item.WareCashSum; | |
| 4049 | + var goods=t_item.goods; | |
| 4050 | + var arr=[]; | |
| 4051 | + //判断是不是有goods_id重复 | |
| 4052 | + for(var i=0;i<goods.length;i++){ | |
| 4053 | + if(goods[i].prom_type!=7 && goods[i].erpwareid==you_item.WareId){ | |
| 4054 | + var gg_ite={ | |
| 4055 | + goods_id:goods[i].goods_id, | |
| 4056 | + goods_num:goods[i].goods_num, | |
| 4057 | + goods_price:goods[i].goods_price, | |
| 4058 | + }; | |
| 4059 | + if(goods[i].account) gg_ite.goods_price=goods[i].account; | |
| 4060 | + gg_ite.idx=i;arr.push(gg_ite); | |
| 4061 | + } | |
| 4062 | + } | |
| 4063 | + | |
| 4064 | + if(arr.length<=0) return false; | |
| 4065 | + if(arr.length==1){ | |
| 4066 | + var idx=arr[0].idx; | |
| 4067 | + t_item.goods[idx].quan_num =Math.floor(coupon_price* 100) / 100; | |
| 4068 | + t_item.goods[idx].quan_no=t_item.quan_no; | |
| 4069 | + return false; | |
| 4070 | + } | |
| 4071 | + | |
| 4072 | + var pt_data = { | |
| 4073 | + 'dis': parseFloat(coupon_price), | |
| 4074 | + 'goods': arr, | |
| 4075 | + } | |
| 4076 | + | |
| 4077 | + var pt_res = null; | |
| 4078 | + await getApp().request.promisePost("/api/weshop/order/getGoodsSplit", { | |
| 4079 | + is_json: 1, | |
| 4080 | + data: pt_data | |
| 4081 | + }).then(res => { | |
| 4082 | + if (res.data.code == 0) { | |
| 4083 | + pt_res = res.data.data; | |
| 4084 | + } | |
| 4085 | + }) | |
| 4086 | + if (pt_res) { | |
| 4087 | + var q_s_num = 0; | |
| 4088 | + for (var i in pt_res) { | |
| 4089 | + var idx = pt_res[i].idx; | |
| 4090 | + //有account的实收价,就要用account实收价 | |
| 4091 | + var price=(t_item.goods[idx].account?t_item.goods[idx].account:t_item.goods[idx].goods_price); | |
| 4092 | + price=(price - pt_res[i].fisrt_account)* t_item.goods[idx].goods_num; | |
| 4093 | + t_item.goods[idx].quan_num =price; | |
| 4094 | + | |
| 4095 | + t_item.goods[idx].quan_num =Math.floor(t_item.goods[idx].quan_num * 100) / 100; | |
| 4096 | + t_item.goods[idx].quan_no=t_item.quan_no; | |
| 4097 | + q_s_num += t_item.goods[idx].quan_num; | |
| 4098 | + } | |
| 4099 | + | |
| 4100 | + if (q_s_num > parseFloat(coupon_price) || q_s_num < parseFloat(coupon_price)){ | |
| 4101 | + for (var ik in arr) { | |
| 4102 | + if (arr[ik].goods_num == 1) { | |
| 4103 | + var id = arr[ik].idx; | |
| 4104 | + var pri=Math.floor(coupon_price*100)/100-Math.floor(q_s_num*100)/100 | |
| 4105 | + t_item.goods[id].quan_num+=pri; | |
| 4106 | + break; | |
| 4107 | + } | |
| 4108 | + } | |
| 4109 | + } | |
| 4110 | + } | |
| 3902 | 4111 | } |
| 3903 | 4112 | |
| 3904 | 4113 | ... | ... |
pages/cart/cart2/cart2.wxml
| ... | ... | @@ -95,7 +95,8 @@ |
| 95 | 95 | |
| 96 | 96 | <!-----商品名称规格------> |
| 97 | 97 | <view class="order-num flex-space-between"> |
| 98 | - <view class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text></view> | |
| 98 | + <view wx:if="{{items.prom_type==10}}" class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text><text>({{items.discount}}折)</text></view> | |
| 99 | + <view wx:else class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text></view> | |
| 99 | 100 | <view class="goods-num">x{{items.goods_num}}</view> |
| 100 | 101 | </view> |
| 101 | 102 | </navigator> |
| ... | ... | @@ -431,6 +432,11 @@ |
| 431 | 432 | <view>组合购优惠</view> |
| 432 | 433 | <view class="co-red">- ¥ {{filters.toFix(formData.zh_cut_price,2)}}元</view> |
| 433 | 434 | </view> |
| 435 | + <!-- 组合购优惠金额 --> | |
| 436 | + <view class="item" wx:if="{{formData.ladder_cut_price>0 || formData.ladder_cut_price<0}}"> | |
| 437 | + <view>阶梯促销优惠</view> | |
| 438 | + <view class="co-red">- ¥ {{filters.toFix(formData.ladder_cut_price,2)}}元</view> | |
| 439 | + </view> | |
| 434 | 440 | |
| 435 | 441 | <!-- 订单优惠优惠金额 --> |
| 436 | 442 | <view class="item" wx:if="{{formData.order_prom_amount>0}}"> | ... | ... |
pages/cart/cart2/ladder_calculate.js
0 → 100644
| 1 | +var regeneratorRuntime = require('../../../utils/runtime.js'); | |
| 2 | +module.exports = { | |
| 3 | + //主要的作用,就是把阶梯促销多余的商品进行拆分, | |
| 4 | + //如果没有达成阶梯促销的要求,所有的商品都打回原价购买 | |
| 5 | + fir_set_arr: function (c_item, th) { | |
| 6 | + //寻找一下 | |
| 7 | + function get_num2(ite) { | |
| 8 | + var vh = c_item.goods.findIndex(function (e) { | |
| 9 | + return e.goods_id == ite.goods_id | |
| 10 | + }) | |
| 11 | + if (vh > -1) return vh; | |
| 12 | + return 0; | |
| 13 | + } | |
| 14 | + | |
| 15 | + //组合活动,以及组合活动从表的商品 | |
| 16 | + let ladder_map = c_item.ladder_map; | |
| 17 | + let goods = c_item.goods; //一个门店中所有的商品 | |
| 18 | + let tfeel = 0, cut_price = 0, offline_price = 0, offline_num = 0; | |
| 19 | + //多个活动要拿来循环一下 | |
| 20 | + for (let i in ladder_map) { | |
| 21 | + let title = ""; //提示语; | |
| 22 | + //其中的一个活动 | |
| 23 | + let act_item = ladder_map[i]; | |
| 24 | + let ladder_list = act_item.ladder_list; | |
| 25 | + | |
| 26 | + let all_num = 0; //商品数量之和 | |
| 27 | + let all_price0 = 0; //商品数量之和 | |
| 28 | + let aprice = 0; //达到活动条件的购买价格 | |
| 29 | + | |
| 30 | + let no_in_arr = []; //剩余的未加入组合购 | |
| 31 | + let del_g=[]; | |
| 32 | + for (var li in goods) { | |
| 33 | + if (goods[li].prom_type != 10) continue; | |
| 34 | + if (goods[li].prom_id != act_item.id) continue; | |
| 35 | + var item = goods[li]; | |
| 36 | + item.goods_price = item.goods_price; | |
| 37 | + item.offline_price = item.offline_price; | |
| 38 | + item.cart_num = item.goods_num; | |
| 39 | + all_num += item.cart_num; | |
| 40 | + for (var j = 0; j < item.cart_num; j++) { | |
| 41 | + no_in_arr.push({ | |
| 42 | + price: item.goods_price, | |
| 43 | + offline_price: item.offline_price, | |
| 44 | + goods_id: item.goods_id, | |
| 45 | + shop_price: item.shop_price, | |
| 46 | + item:item | |
| 47 | + }) | |
| 48 | + } | |
| 49 | + del_g.push(item); | |
| 50 | + } | |
| 51 | + | |
| 52 | + function sortData(a, b) { | |
| 53 | + return a.price - b.price | |
| 54 | + } | |
| 55 | + no_in_arr.sort(sortData); | |
| 56 | + | |
| 57 | + //开始阶梯计算价格 | |
| 58 | + var lev = 0; | |
| 59 | + for (let j in ladder_list) { | |
| 60 | + if (no_in_arr.length == 0) break; | |
| 61 | + let item_j =ladder_list[j]; | |
| 62 | + var end = no_in_arr.pop(); | |
| 63 | + var new_price = parseInt(item_j.discount_field) == 1 ? end.shop_price : end.price; | |
| 64 | + var account=new_price * parseFloat(item_j.discount) / 10; | |
| 65 | + aprice +=account; | |
| 66 | + | |
| 67 | + //-- 单个文件新增 -- | |
| 68 | + let new_g = JSON.parse(JSON.stringify(end.item)); | |
| 69 | + new_g.goods_num = 1; | |
| 70 | + //如果有平摊到单品的时候,account要显示 | |
| 71 | + if(!th.data.ispt_goods) new_g.account = account.toFixed(2); | |
| 72 | + new_g.discount = item_j.discount; | |
| 73 | + new_g.goods_price =new_price; | |
| 74 | + new_g.ladder_list_id =item_j.id; | |
| 75 | + goods.push(new_g); | |
| 76 | + lev++; | |
| 77 | + } | |
| 78 | + | |
| 79 | + let goods_map = {}; | |
| 80 | + //算一下剩余的商品 | |
| 81 | + if (no_in_arr.length) { | |
| 82 | + for (let ii in no_in_arr) { | |
| 83 | + let item = no_in_arr[ii]; | |
| 84 | + if (item.offline_price) { | |
| 85 | + offline_price += item.price - item.offline_price; | |
| 86 | + offline_num += 1; | |
| 87 | + } | |
| 88 | + if (goods_map[item.goods_id]) { | |
| 89 | + var num = goods_map[item.goods_id]; | |
| 90 | + goods_map[item.goods_id] = ++num; | |
| 91 | + } else { | |
| 92 | + goods_map[item.goods_id] = 1; | |
| 93 | + } | |
| 94 | + } | |
| 95 | + } | |
| 96 | + | |
| 97 | + if (Object.keys(goods_map).length) { | |
| 98 | + //这里就开始拆分提交订单时的列表 | |
| 99 | + for (let j in goods_map) { | |
| 100 | + //map中存的就是商品的数量 | |
| 101 | + let num = goods_map[j]; | |
| 102 | + //找到相应的商品 | |
| 103 | + let idx = goods.findIndex(function (ele) { | |
| 104 | + return ele.goods_id == j; | |
| 105 | + }) | |
| 106 | + //goods[idx].goods_num -= num; | |
| 107 | + let new_g = JSON.parse(JSON.stringify(goods[idx])); | |
| 108 | + new_g.goods_num = num; | |
| 109 | + new_g.prom_type = 0; | |
| 110 | + new_g.prom_id = 0; | |
| 111 | + goods.push(new_g); | |
| 112 | + //goods.splice(idx, 1); | |
| 113 | + } | |
| 114 | + } | |
| 115 | + | |
| 116 | + //-- 最后剔除不要参与的数据 -- | |
| 117 | + for(var h in del_g){ | |
| 118 | + var it=del_g[h]; | |
| 119 | + let idx = goods.findIndex(function (ele) { | |
| 120 | + return ele.goods_id == it.goods_id | |
| 121 | + }) | |
| 122 | + goods.splice(idx, 1); | |
| 123 | + } | |
| 124 | + | |
| 125 | + //-- 只统计是参与活动的商品 -- | |
| 126 | + for (var ij in goods) { | |
| 127 | + var iter = goods[ij]; | |
| 128 | + if (iter.prom_type != 10 || iter.prom_id != act_item.id) { | |
| 129 | + continue; | |
| 130 | + } | |
| 131 | + all_price0 += iter.goods_num * iter.goods_price; | |
| 132 | + } | |
| 133 | + | |
| 134 | + if(!c_item.ladder_prom_goods) c_item.ladder_prom_goods={}; | |
| 135 | + if(!c_item.ladder_prom_goods[act_item.id]) c_item.ladder_prom_goods[act_item.id]={}; | |
| 136 | + | |
| 137 | + //-- 活动的条件已经满足 -- | |
| 138 | + c_item.ladder_prom_goods[act_item.id].is_has_ladder = 1; | |
| 139 | + c_item.is_has_ladder = 1; | |
| 140 | + c_item.ladder_prom_goods[act_item.id].actual_price = aprice; | |
| 141 | + c_item.ladder_prom_goods[act_item.id].cut_price = all_price0 - aprice; | |
| 142 | + | |
| 143 | + tfeel += aprice; | |
| 144 | + cut_price += all_price0 - aprice; | |
| 145 | + | |
| 146 | + } | |
| 147 | + | |
| 148 | + c_item.ladder_all_price = tfeel; | |
| 149 | + c_item.ladder_cut_price = cut_price; | |
| 150 | + | |
| 151 | + if (c_item.is_offline == 1) { | |
| 152 | + c_item.offline_price += offline_price; | |
| 153 | + c_item.offline_num += offline_num; | |
| 154 | + } else { | |
| 155 | + c_item.is_offline == 1; | |
| 156 | + c_item.offline_price = offline_price; | |
| 157 | + c_item.offline_num = offline_num; | |
| 158 | + } | |
| 159 | + }, | |
| 160 | + //筛选组合购,纯粹的数组按活动id分组 | |
| 161 | + find_split: function (arr) { | |
| 162 | + //过滤只有团购的商品 | |
| 163 | + let oarr = arr.goods.filter(function (ele) { | |
| 164 | + return ele.prom_type == 10 | |
| 165 | + }) | |
| 166 | + if (!oarr || oarr.length == 0) return null; | |
| 167 | + //看一下有多少个不同的团购 | |
| 168 | + let map = {}, | |
| 169 | + dest = []; | |
| 170 | + for (let i = 0; i < oarr.length; i++) { | |
| 171 | + let ai = oarr[i]; | |
| 172 | + let index = map[ai.prom_id] | |
| 173 | + if (!index) { | |
| 174 | + dest.push({ | |
| 175 | + prom_id: ai.prom_id, | |
| 176 | + act: ai.act, | |
| 177 | + data: [ai] | |
| 178 | + }); | |
| 179 | + map[ai.prom_id] = dest.length; //存储下标 | |
| 180 | + } else { | |
| 181 | + let dj = dest[index - 1]; | |
| 182 | + dj.data.push(ai); | |
| 183 | + } | |
| 184 | + } | |
| 185 | + return dest; | |
| 186 | + }, | |
| 187 | + | |
| 188 | + //-- 组装阶梯购的价格 -- | |
| 189 | + calc_split_price: async function (c_arr, th) { | |
| 190 | + //-- 循环处理 -- | |
| 191 | + for (var k in c_arr) { | |
| 192 | + var cart_item = c_arr[k]; //就是每一单的意思 | |
| 193 | + var ord_goods = c_arr[k].goods; //就是每一单的从表的意思 | |
| 194 | + | |
| 195 | + var ladder_map = cart_item.ladder_prom_goods; //一单中所有的组合购的集合 | |
| 196 | + var item_map = {}; | |
| 197 | + for (let i in ladder_map) { | |
| 198 | + let item = ladder_map[i]; | |
| 199 | + let prom_id = i; | |
| 200 | + //如果这个活动还没有达到要求,继续下一个计算 | |
| 201 | + if (!item.is_has_ladder) continue; | |
| 202 | + //过滤出相应组合购活动的商品 | |
| 203 | + let glist = ord_goods.filter(function (ele) { | |
| 204 | + return ele.prom_type == 10 && ele.prom_id == i; | |
| 205 | + }) | |
| 206 | + | |
| 207 | + var all_good_price = 0; | |
| 208 | + var post_gd = []; | |
| 209 | + for (let j in glist) { | |
| 210 | + let item = glist[j]; | |
| 211 | + all_good_price += item.goods_price * item.goods_num; | |
| 212 | + var gitem = { | |
| 213 | + goods_id: item.goods_id, | |
| 214 | + goods_num: item.goods_num, | |
| 215 | + goods_price: item.goods_price | |
| 216 | + } | |
| 217 | + post_gd.push(gitem); | |
| 218 | + } | |
| 219 | + //要进行优惠的计算 | |
| 220 | + if (all_good_price - item.actual_price) { | |
| 221 | + if (cart_item.prom_pt_json) { | |
| 222 | + cart_item.prom_pt_json.push({ | |
| 223 | + "ladder_prom_id": prom_id, | |
| 224 | + "dis": (all_good_price - item.actual_price).toFixed(2), | |
| 225 | + "ispt": 0 | |
| 226 | + }) | |
| 227 | + } else { | |
| 228 | + cart_item.prom_pt_json = [{ | |
| 229 | + "ladder_prom_id": prom_id, | |
| 230 | + "dis": (all_good_price - item.actual_price).toFixed(2), | |
| 231 | + "ispt": 0 | |
| 232 | + }]; | |
| 233 | + } | |
| 234 | + } | |
| 235 | + } | |
| 236 | + | |
| 237 | + | |
| 238 | + } | |
| 239 | + } | |
| 240 | + | |
| 241 | + | |
| 242 | +} | ... | ... |
pages/cart/cart2_inte/cart2_inte.js
| ... | ... | @@ -839,7 +839,7 @@ Page({ |
| 839 | 839 | await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{ |
| 840 | 840 | data:{storageNos:pick_no,wareIds:encodeURIComponent(erpwareid),storeId:os.stoid} |
| 841 | 841 | }).then(res=>{ |
| 842 | - if(res.data.code==0){ | |
| 842 | + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length){ | |
| 843 | 843 | plist=res.data.data.pageData[0]; |
| 844 | 844 | } |
| 845 | 845 | }) | ... | ... |
pages/cart/cart2_pt/cart2_pt.js
| ... | ... | @@ -296,7 +296,7 @@ Page({ |
| 296 | 296 | th.setData({ user_addr: ie }); |
| 297 | 297 | if (!th.data.user_addr || th.data.user_addr.address_id != ie.address_id) { |
| 298 | 298 | th.setData({ add_back: 1 }); |
| 299 | - if (this.data.bn_goods) th.calculatePrice2(); | |
| 299 | + if (th.data.bn_goods) th.calculatePrice2(); | |
| 300 | 300 | } |
| 301 | 301 | }) |
| 302 | 302 | //--更新默认地址--,看一下是不是跳到地址页面 | ... | ... |
pages/goods/goodsInfo/goodsInfo.js
| ... | ... | @@ -845,7 +845,7 @@ Page({ |
| 845 | 845 | |
| 846 | 846 | |
| 847 | 847 | //获取统一条形码,普通商品和优惠促销的商品 |
| 848 | - if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 5 || ee.data.data.prom_type == 7 || ee.data.data.prom_type == 9) { | |
| 848 | + if (ee.data.data.prom_type == 0 || ee.data.data.prom_type == 3 || ee.data.data.prom_type == 5 || ee.data.data.prom_type == 7 || ee.data.data.prom_type == 9 || ee.data.data.prom_type == 10) { | |
| 849 | 849 | //默认门店要拿下门店库存 |
| 850 | 850 | if (that.data.sales_rules == 2 && that.data.is_newsales_rules) { |
| 851 | 851 | //获取门店 |
| ... | ... | @@ -1348,10 +1348,15 @@ Page({ |
| 1348 | 1348 | }) |
| 1349 | 1349 | |
| 1350 | 1350 | } |
| 1351 | - else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5) { | |
| 1351 | + else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5 || th.data.prom_type==10) { | |
| 1352 | 1352 | newd.prom_type = 0; |
| 1353 | 1353 | newd.prom_id = 0; |
| 1354 | 1354 | |
| 1355 | + if(th.data.prom_type == 10){ | |
| 1356 | + newd.prom_type = th.data.prom_type; | |
| 1357 | + newd.prom_id = th.data.prom_id; | |
| 1358 | + } | |
| 1359 | + | |
| 1355 | 1360 | //---如果是线下门店销售的时候--- |
| 1356 | 1361 | if (th.data.sales_rules == 2) { |
| 1357 | 1362 | var pick = th.get_pick_from_list(th.data.sto_sele_id) |
| ... | ... | @@ -1444,6 +1449,7 @@ Page({ |
| 1444 | 1449 | user_id: oo.user_id, |
| 1445 | 1450 | goods_id: a, |
| 1446 | 1451 | pick_id: e.data.sto_sele_id, |
| 1452 | + state:0 | |
| 1447 | 1453 | }, |
| 1448 | 1454 | success: function (re) { |
| 1449 | 1455 | |
| ... | ... | @@ -1512,9 +1518,41 @@ Page({ |
| 1512 | 1518 | }); |
| 1513 | 1519 | |
| 1514 | 1520 | } |
| 1515 | - //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d); | |
| 1516 | 1521 | else { |
| 1517 | 1522 | |
| 1523 | + if(newd.prom_type==10){ | |
| 1524 | + //----先看会员在购物车中是否加入了该商品,立即购买的----- | |
| 1525 | + getApp().request.get("/api/weshop/cart/page", { | |
| 1526 | + data: { | |
| 1527 | + store_id: e.data.stoid, | |
| 1528 | + user_id: oo.user_id, | |
| 1529 | + state:1 | |
| 1530 | + }, | |
| 1531 | + success: function (res) { | |
| 1532 | + //-------如果购物车中有相关的数据--------- | |
| 1533 | + if (res.data.code==0 && res.data.data.total > 0) { | |
| 1534 | + for(let j in res.data.data.pageData){ | |
| 1535 | + let item_j=res.data.data.pageData[j]; | |
| 1536 | + var url = '/api/weshop/cart/del/' +e.data.stoid+ '/' + item_j.id; | |
| 1537 | + getApp().request.delete(url, {}); | |
| 1538 | + } | |
| 1539 | + } | |
| 1540 | + newd.state=1; | |
| 1541 | + getApp().request.post("/api/weshop/cart/save", { | |
| 1542 | + data: newd, | |
| 1543 | + success: function (t) { | |
| 1544 | + th.closeSpecModal(); | |
| 1545 | + getApp().goto("/pages/cart/cart2/cart2?state=1"); | |
| 1546 | + } | |
| 1547 | + }); | |
| 1548 | + | |
| 1549 | + | |
| 1550 | + } | |
| 1551 | + }) | |
| 1552 | + return false; | |
| 1553 | + } | |
| 1554 | + | |
| 1555 | + | |
| 1518 | 1556 | if (th.data.prom_goods) { |
| 1519 | 1557 | var prom_d = th.data.prom_goods; |
| 1520 | 1558 | for (var i in prom_d) { |
| ... | ... | @@ -1820,6 +1858,7 @@ Page({ |
| 1820 | 1858 | }); |
| 1821 | 1859 | }, |
| 1822 | 1860 | |
| 1861 | + | |
| 1823 | 1862 | openSpecModel: function (t) { |
| 1824 | 1863 | var th = this; |
| 1825 | 1864 | var open_store = t.currentTarget.dataset.ind; |
| ... | ... | @@ -1864,9 +1903,35 @@ Page({ |
| 1864 | 1903 | //var is_open=th.data.config |
| 1865 | 1904 | th.get_off_price(); |
| 1866 | 1905 | }) |
| 1906 | + //--先判断会员状态-- | |
| 1907 | + var user_info = getApp().globalData.userInfo; | |
| 1908 | + if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | |
| 1909 | + wx.navigateTo({ | |
| 1910 | + url: '/pages/togoin/togoin', | |
| 1911 | + }) | |
| 1912 | + return false; | |
| 1913 | + } | |
| 1914 | + var is_go_next = 1; | |
| 1915 | + if (th.data.more_flash && th.data.more_flash.length > 1 && open_store == 1) { | |
| 1916 | + is_go_next = 0; | |
| 1917 | + } | |
| 1918 | + if (is_go_next) { | |
| 1919 | + var ind = t.currentTarget.dataset.ind; | |
| 1920 | + //回调。判断是不是优惠促销 | |
| 1921 | + th.check_is_prom_goods(function () { | |
| 1922 | + th.setData({ | |
| 1923 | + openSpecModal: !0, | |
| 1924 | + openSpecModal_ind: ind, | |
| 1925 | + }); | |
| 1926 | + //var is_open=th.data.config | |
| 1927 | + th.get_off_price(); | |
| 1928 | + }) | |
| 1929 | + } else { | |
| 1930 | + th.setData({is_pop_more: 1}); | |
| 1931 | + | |
| 1932 | + } | |
| 1867 | 1933 | } |
| 1868 | 1934 | }, |
| 1869 | - | |
| 1870 | 1935 | open_next(){ |
| 1871 | 1936 | var th=this; |
| 1872 | 1937 | //回调。判断是不是优惠促销 |
| ... | ... | @@ -2256,10 +2321,12 @@ Page({ |
| 2256 | 2321 | |
| 2257 | 2322 | switch (goodsinfo.prom_type) { |
| 2258 | 2323 | case 1: |
| 2259 | - await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + goodsinfo.prom_id, { | |
| 2260 | - }).then(res => { | |
| 2261 | - if (res.data.code == 0) prom = res.data.data; | |
| 2262 | - }) | |
| 2324 | + | |
| 2325 | + if(goodsinfo.prom_id) { | |
| 2326 | + await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => { | |
| 2327 | + if (res.data.code == 0) prom = res.data.data; | |
| 2328 | + }) | |
| 2329 | + } | |
| 2263 | 2330 | |
| 2264 | 2331 | break; |
| 2265 | 2332 | case 6: |
| ... | ... | @@ -3035,7 +3102,7 @@ Page({ |
| 3035 | 3102 | var user_id=getApp().globalData.user_id; |
| 3036 | 3103 | if(!user_id) user_id=0; |
| 3037 | 3104 | |
| 3038 | - if (prom_type == 3 || prom_type == 0 || prom_type == 5 || prom_type == 7 || prom_type == 9) { | |
| 3105 | + if (prom_type == 3 || prom_type == 0 || prom_type == 5 || prom_type == 7 || prom_type == 9 || prom_type == 10) { | |
| 3039 | 3106 | this.setData({ |
| 3040 | 3107 | prom_type: 0,isshow: 1, |
| 3041 | 3108 | }); |
| ... | ... | @@ -5655,12 +5722,40 @@ Page({ |
| 5655 | 5722 | //---检查有没有优惠活动--- |
| 5656 | 5723 | check_is_youhui: function (gid, is_nor) { |
| 5657 | 5724 | var th = this; |
| 5725 | + var user_id=getApp().globalData.user_id; | |
| 5726 | + if(!user_id) user_id=0; | |
| 5658 | 5727 | //如果是普通购买的时候,要进行调用 |
| 5659 | 5728 | if (is_nor) { |
| 5660 | 5729 | getApp().request.get("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + gid, { |
| 5661 | 5730 | success: function (res) { |
| 5662 | 5731 | if (res.data.code == 0) { |
| 5663 | 5732 | var r_data = res.data.data; |
| 5733 | + | |
| 5734 | + if(r_data.ladderLists){ | |
| 5735 | + var act_id=r_data.ladderLists[0].form_id; | |
| 5736 | + //-- 判断会员能不能参与阶梯促销 -- | |
| 5737 | + getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid+"/"+user_id + "/"+act_id, { | |
| 5738 | + }).then(res=>{ | |
| 5739 | + if(res.data.code==0 && res.data.data){ | |
| 5740 | + var prom_content=""; | |
| 5741 | + for(let jj in r_data.ladderLists){ | |
| 5742 | + if(r_data.ladderLists[jj].discount==10){ | |
| 5743 | + prom_content+="第"+(parseInt(jj)+1)+"件原价,"; | |
| 5744 | + }else{ | |
| 5745 | + prom_content+="第"+(parseInt(jj)+1)+"件"+r_data.ladderLists[jj].discount+"折,"; | |
| 5746 | + } | |
| 5747 | + } | |
| 5748 | + prom_content=ut.sub_last(prom_content); | |
| 5749 | + th.data.prom_type=10; | |
| 5750 | + th.data.prom_id=act_id; | |
| 5751 | + th.setData({ | |
| 5752 | + jieti_prom:prom_content, | |
| 5753 | + ladder_act_id:act_id | |
| 5754 | + }) | |
| 5755 | + } | |
| 5756 | + }) | |
| 5757 | + } | |
| 5758 | + | |
| 5664 | 5759 | th.setData({ |
| 5665 | 5760 | prom_goods: r_data.promGoodsLists, |
| 5666 | 5761 | }) |
| ... | ... | @@ -5674,7 +5769,7 @@ Page({ |
| 5674 | 5769 | getApp().request.get("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + gid + "/0", { |
| 5675 | 5770 | success: function (res) { |
| 5676 | 5771 | console.log(res); |
| 5677 | - if (res.data.code == 0) { | |
| 5772 | + if (res.data.code == 0 && res.data.data) { | |
| 5678 | 5773 | var r_data = res.data.data; |
| 5679 | 5774 | var max = 0, min = 0; |
| 5680 | 5775 | if (r_data.collocationList) { |
| ... | ... | @@ -5688,6 +5783,32 @@ Page({ |
| 5688 | 5783 | r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2); |
| 5689 | 5784 | r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2); |
| 5690 | 5785 | } |
| 5786 | + | |
| 5787 | + if(r_data.ladderLists){ | |
| 5788 | + var act_id=r_data.ladderLists[0].form_id; | |
| 5789 | + //-- 判断会员能不能参与阶梯促销 -- | |
| 5790 | + getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid+"/"+user_id + "/"+act_id, { | |
| 5791 | + }).then(res=>{ | |
| 5792 | + if(res.data.code==0 && res.data.data){ | |
| 5793 | + var prom_content=""; | |
| 5794 | + for(let jj in r_data.ladderLists){ | |
| 5795 | + if(r_data.ladderLists[jj].discount==10){ | |
| 5796 | + prom_content+="第"+(parseInt(jj)+1)+"件原价,"; | |
| 5797 | + }else{ | |
| 5798 | + prom_content+="第"+(parseInt(jj)+1)+"件"+r_data.ladderLists[jj].discount+"折,"; | |
| 5799 | + } | |
| 5800 | + } | |
| 5801 | + prom_content=ut.sub_last(prom_content); | |
| 5802 | + th.data.prom_type=10; | |
| 5803 | + th.data.prom_id=act_id; | |
| 5804 | + th.setData({ | |
| 5805 | + jieti_prom:prom_content, | |
| 5806 | + ladder_act_id:act_id | |
| 5807 | + }) | |
| 5808 | + } | |
| 5809 | + }) | |
| 5810 | + } | |
| 5811 | + | |
| 5691 | 5812 | th.setData({ |
| 5692 | 5813 | order_prom: r_data.promOrder, |
| 5693 | 5814 | collocationGoods: r_data.collocationPromList, |
| ... | ... | @@ -5696,11 +5817,8 @@ Page({ |
| 5696 | 5817 | th.is_show_more_buy(); |
| 5697 | 5818 | } |
| 5698 | 5819 | } |
| 5699 | - | |
| 5700 | 5820 | }) |
| 5701 | 5821 | } |
| 5702 | - | |
| 5703 | - | |
| 5704 | 5822 | }, |
| 5705 | 5823 | |
| 5706 | 5824 | closePoster() { |
| ... | ... | @@ -6021,13 +6139,31 @@ Page({ |
| 6021 | 6139 | check_has_flash:function () { |
| 6022 | 6140 | var th=this; |
| 6023 | 6141 | var url="/api/weshop/activitylist/getGoodActInfo"; |
| 6142 | + var user_id=getApp().globalData.user_id; | |
| 6143 | + if(!user_id) user_id=0; | |
| 6144 | + | |
| 6024 | 6145 | var req_data={ |
| 6025 | - store_id:os.stoid,goodsidlist:this.data.data.goods_id,is_detail:1 | |
| 6146 | + store_id:os.stoid,goodsidlist:this.data.data.goods_id,is_detail:1,user_id:user_id | |
| 6026 | 6147 | }; |
| 6027 | 6148 | //获取秒杀的多规格 |
| 6028 | - getApp().request.promiseGet(url, {data:req_data}).then(res=>{ | |
| 6149 | + getApp().request.promiseGet(url, {data:req_data}).then(async function (res) { | |
| 6029 | 6150 | if(res.data.code==0 && res.data.data && res.data.data.length){ |
| 6030 | - th.setData({more_flash:res.data.data}); | |
| 6151 | + var arr_data=res.data.data; | |
| 6152 | + var new_arr=[]; | |
| 6153 | + for(let i in arr_data){ | |
| 6154 | + let item=arr_data[i]; | |
| 6155 | + //找不到活动要剔除 | |
| 6156 | + if(!item.act_name) continue; | |
| 6157 | + if(item.prom_type!=1) continue; | |
| 6158 | + new_arr.push(item); | |
| 6159 | + } | |
| 6160 | + | |
| 6161 | + if(new_arr.length==1){ | |
| 6162 | + th.data.prom_id=new_arr[0].act_id; | |
| 6163 | + th.data.prom_type=new_arr[0].prom_type; | |
| 6164 | + } | |
| 6165 | + | |
| 6166 | + th.setData({more_flash:new_arr}); | |
| 6031 | 6167 | } |
| 6032 | 6168 | }) |
| 6033 | 6169 | }, |
| ... | ... | @@ -6053,7 +6189,6 @@ Page({ |
| 6053 | 6189 | success(res) {} |
| 6054 | 6190 | }) |
| 6055 | 6191 | }, |
| 6056 | - | |
| 6057 | 6192 | get_normal(gid){ |
| 6058 | 6193 | this.setData({ |
| 6059 | 6194 | prom_type: 0, |
| ... | ... | @@ -6063,10 +6198,12 @@ Page({ |
| 6063 | 6198 | this.get_sto(); |
| 6064 | 6199 | this.check_is_youhui(gid,1); |
| 6065 | 6200 | this.data.is_normal=1; |
| 6201 | + }, | |
| 6202 | + go_more_ladder:function (e) { | |
| 6203 | + var prom_id=e.currentTarget.dataset.id; | |
| 6204 | + getApp().goto("/pages/goods/goodsList/goodsList?ladder_id="+prom_id); | |
| 6066 | 6205 | } |
| 6067 | 6206 | |
| 6068 | 6207 | |
| 6069 | 6208 | |
| 6070 | - | |
| 6071 | - | |
| 6072 | 6209 | }); | ... | ... |
pages/goods/goodsInfo/goodsInfo.wxml
| ... | ... | @@ -612,6 +612,24 @@ |
| 612 | 612 | </view> |
| 613 | 613 | </block> |
| 614 | 614 | |
| 615 | + <block wx:if="{{jieti_prom}}"> | |
| 616 | + <view class="cx-frame flex jc_sb" bindtap="go_more_ladder" data-id="{{ladder_act_id}}" | |
| 617 | + style="position: relative; height: auto"> | |
| 618 | + <view class="flex" style="width: 92%"> | |
| 619 | + <view class="cx-sizs fs30" style="width: 90rpx;flex-shrink: 0">阶梯促</view> | |
| 620 | + <!-- 中间显示层 --> | |
| 621 | + <view class="ellipsis-1 fs24"> | |
| 622 | + <text class="jie_show fs22">阶</text> | |
| 623 | + {{jieti_prom}} | |
| 624 | + </view> | |
| 625 | + </view> | |
| 626 | + <view data-coupon="1" bindtap="show_more_cx" class="cx-obtain-coupon wsize"> | |
| 627 | + <text class="bg_jj" style="position: relative;right: 3rpx"></text> | |
| 628 | + </view> | |
| 629 | + </view> | |
| 630 | + </block> | |
| 631 | + | |
| 632 | + | |
| 615 | 633 | <!-- 要判断是不是有订单优惠 --> |
| 616 | 634 | <block wx:if="{{order_prom}}"> |
| 617 | 635 | <view class="cx-frame flex" style="position: relative; height: auto"> |
| ... | ... | @@ -652,26 +670,30 @@ |
| 652 | 670 | <!-- 判断是不是有秒杀 --> |
| 653 | 671 | <block wx:if="{{more_flash}}"> |
| 654 | 672 | |
| 655 | - <block wx:for="{{more_flash}}"> | |
| 656 | - | |
| 657 | - <view class="cx-frame flex" style="position: relative; height: auto" wx:if="{{item.prom_type==1}}" > | |
| 658 | - <view class="cx-sizs wsize" style="width: 144rpx">秒杀</view> | |
| 659 | - <!-- 中间显示层 --> | |
| 660 | - <view class="flex ai-center jc_sb" style="width: 570rpx" bindtap="go_more_flash" data-id="{{item.act_id}}"> | |
| 661 | - <view class="flex"> | |
| 662 | - <view class="miao_lab">秒</view> | |
| 663 | - <view class="order_hui"> | |
| 664 | - <view class="fs28 ellipsis-1">{{item.act_name}}</view> | |
| 665 | - <view class="fs26"> | |
| 666 | - (活动时间:{{tool.format_tt(item.s_time)}} - {{tool.format_tt(item.e_time)}}) | |
| 673 | + <block wx:for="{{more_flash}}"> | |
| 674 | + <view class="cx-frame flex" style="position: relative; height: auto" wx:if="{{item.prom_type==1}}"> | |
| 675 | + <view class="cx-sizs wsize" style="width: 144rpx">秒杀</view> | |
| 676 | + <!-- 中间显示层 --> | |
| 677 | + <view class="flex ai-center jc_sb" style="width: 570rpx" bindtap="go_more_flash" | |
| 678 | + data-id="{{item.act_id}}"> | |
| 679 | + <view class="flex"> | |
| 680 | + <view class="miao_lab">秒</view> | |
| 681 | + <view class="order_hui"> | |
| 682 | + <view class="fs28 ellipsis-1">{{item.act_name}}</view> | |
| 683 | + <view class="fs26"> | |
| 684 | + (活动时间:{{tool.format_tt(item.s_time)}} - {{tool.format_tt(item.e_time)}}) | |
| 685 | + </view> | |
| 667 | 686 | </view> |
| 668 | 687 | </view> |
| 688 | + <view> | |
| 689 | + <text class="bg_jj is_more_cx" style="position: relative;top:-10rpx"></text> | |
| 690 | + </view> | |
| 669 | 691 | </view> |
| 670 | - <view><text class="bg_jj is_more_cx" style="position: relative;top:-10rpx"></text></view> | |
| 671 | 692 | </view> |
| 672 | - </view> | |
| 673 | 693 | </block> |
| 674 | 694 | </block> |
| 695 | + | |
| 696 | + <!-- 保障服务 --> | |
| 675 | 697 | <view class="bz_view flex bdt16" wx:if="{{bconfig}}" style=""> |
| 676 | 698 | <image class="bzfu_img" src="{{iurl}}/miniapp/images/bzfu_w.png"></image> |
| 677 | 699 | <view class="flex f1 ai_c rel"> |
| ... | ... | @@ -679,8 +701,6 @@ |
| 679 | 701 | <view bindtap="clickCollapse" class="cx-obtain-coupon wsize arrow"> |
| 680 | 702 | <text class="bg_jj {{flag?'down1':''}}"></text> |
| 681 | 703 | </view> |
| 682 | - <!-- <text class="bg_jj" bindtap="clickCollapse"></text> --> | |
| 683 | - <!-- <text class="iconfont icon-shuangjiantouxia c-db"></text> --> | |
| 684 | 704 | </view> |
| 685 | 705 | </view> |
| 686 | 706 | <!-- - 搭配促销 -- --> | ... | ... |
pages/goods/goodsInfo/goodsInfo.wxss
| ... | ... | @@ -2875,4 +2875,6 @@ button.custom-service::after{ |
| 2875 | 2875 | line-height: 70rpx; |
| 2876 | 2876 | border-radius: 50%; |
| 2877 | 2877 | color: #aaa; |
| 2878 | -} | |
| 2879 | 2878 | \ No newline at end of file |
| 2879 | +} | |
| 2880 | + | |
| 2881 | +.jie_show{ display: inline-block; width: 40rpx; height: 40rpx; background-color:#ff0505;border-radius:50%;color: #fff;text-align: center; margin: 0 20rpx } | |
| 2880 | 2882 | \ No newline at end of file | ... | ... |
pages/goods/goodsList/goodsList.js
| ... | ... | @@ -22,7 +22,8 @@ Page({ |
| 22 | 22 | is_hot:0, |
| 23 | 23 | prom_goods_list:null, |
| 24 | 24 | rq_data:null, |
| 25 | - isToggle: false, //切换商品视图控制符 | |
| 25 | + isToggle: false, //切换商品视图控制符 | |
| 26 | + show_all:1, //判断显示 | |
| 26 | 27 | }, |
| 27 | 28 | |
| 28 | 29 | onLoad: function(t) { |
| ... | ... | @@ -69,8 +70,18 @@ Page({ |
| 69 | 70 | |
| 70 | 71 | if (0 != t.is_new && t.is_new != undefined) { url += "&is_new=" + t.is_new; } |
| 71 | 72 | if (0 != t.is_hot && t.is_hot != undefined) { url += "&is_hot=" + t.is_hot; } |
| 72 | - | |
| 73 | - | |
| 73 | + if (0 != t.ladder_id && t.ladder_id != undefined) { | |
| 74 | + url += "&ladder_id=" + t.ladder_id; | |
| 75 | + this.setData({ | |
| 76 | + ladder_id:t.ladder_id, | |
| 77 | + baseUrl:url, | |
| 78 | + }) | |
| 79 | + } | |
| 80 | + | |
| 81 | + var user_id=getApp().globalData.user_id; | |
| 82 | + if(!user_id) user_id=0; | |
| 83 | + url += "&user_id="+user_id; | |
| 84 | + | |
| 74 | 85 | // 优惠促销列表 |
| 75 | 86 | if(t.prom_goods_id) { |
| 76 | 87 | url += '&prom_goods_id=' + t.prom_goods_id; |
| ... | ... | @@ -96,6 +107,53 @@ Page({ |
| 96 | 107 | } |
| 97 | 108 | }) |
| 98 | 109 | } |
| 110 | + | |
| 111 | + //--- 阶梯优惠活动的凑单 --- | |
| 112 | + if(t.ladder_id){ | |
| 113 | + var user_id=getApp().globalData.user_id; | |
| 114 | + if(!user_id) user_id=0; | |
| 115 | + getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/"+oo.stoid+"/"+user_id+"/"+t.ladder_id,{ | |
| 116 | + }).then(res=>{ | |
| 117 | + if(res.data.code==0 && res.data.data){ | |
| 118 | + var arr= res.data.data; | |
| 119 | + | |
| 120 | + if(arr.is_end==1){ | |
| 121 | + th.setData({show_all:0}); | |
| 122 | + th.setData({err_txt:'活动已结束'}); | |
| 123 | + return false; | |
| 124 | + } | |
| 125 | + if(arr.start_time>ut.gettimestamp()){ | |
| 126 | + th.setData({show_all:0}); | |
| 127 | + th.setData({err_txt:'活动还未开始'}); | |
| 128 | + return false; | |
| 129 | + } | |
| 130 | + if(arr.end_time<ut.gettimestamp()){ | |
| 131 | + th.setData({show_all:0}); | |
| 132 | + th.setData({err_txt:'活动还未开始'}); | |
| 133 | + return false; | |
| 134 | + } | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + var url1="/api/weshop/prom/ladderList/list?store_id="+oo.stoid+"&form_id="+arr.id; | |
| 139 | + getApp().request.promiseGet(url1, {}).then(rs=>{ | |
| 140 | + if(rs.data.code==0 && rs.data.data && rs.data.data.length) { | |
| 141 | + var prom_content=""; | |
| 142 | + for(let jj in rs.data.data){ | |
| 143 | + if(rs.data.data[jj].discount==10){ | |
| 144 | + prom_content+="第"+(parseInt(jj)+1)+"件原价,"; | |
| 145 | + }else{ | |
| 146 | + prom_content+="第"+(parseInt(jj)+1)+"件"+rs.data.data[jj].discount+"折,"; | |
| 147 | + } | |
| 148 | + } | |
| 149 | + prom_content=ut.sub_last(prom_content); | |
| 150 | + th.setData({jieti_prom:prom_content}) | |
| 151 | + } | |
| 152 | + }) | |
| 153 | + } | |
| 154 | + }) | |
| 155 | + } | |
| 156 | + | |
| 99 | 157 | this.requestGoodsList(url); |
| 100 | 158 | getApp().getConfig2(function(rs){ |
| 101 | 159 | //计算等级价相关 |
| ... | ... | @@ -152,7 +210,7 @@ Page({ |
| 152 | 210 | //-- 获取 -- |
| 153 | 211 | await getApp().request.promiseGet("/api/weshop/prom/gift/page?id="+content.gift+"&store_id="+oo.stoid, { |
| 154 | 212 | }).then(res => { |
| 155 | - if(res.data.code==0) | |
| 213 | + if(ut.ajax_ok(res)) | |
| 156 | 214 | arr[i].content.gift_name=res.data.data.pageData[0].goods_name; |
| 157 | 215 | }) |
| 158 | 216 | } | ... | ... |
pages/goods/goodsList/goodsList.wxml
| 1 | 1 | <wxs module="g_filter" src="g_filter.wxs"></wxs> |
| 2 | -<view class="container"> | |
| 2 | +<view class="container" wx:if="{{show_all}}"> | |
| 3 | 3 | <view> |
| 4 | 4 | <block wx:for="{{prom_goods_list}}"> |
| 5 | 5 | <view class="fs30 ellipsis-1" style="padding: 20rpx 30rpx"> |
| ... | ... | @@ -12,12 +12,14 @@ |
| 12 | 12 | <text space="{{true}}" wx:if="{{item.content.is_libao && item.content.is_libao!='0'}}">送{{item.content.lb_name}} </text> |
| 13 | 13 | </view> |
| 14 | 14 | </block> |
| 15 | + <!-- 新增 --> | |
| 16 | + <view wx:if="{{jieti_prom}}" class="fs30 ellipsis-1" style="padding: 20rpx">阶梯促销:{{jieti_prom}}</view> | |
| 17 | + | |
| 15 | 18 | </view> |
| 16 | - | |
| 17 | 19 | <view class="pd20 flex ai-center jc_sb"> |
| 18 | 20 | <!-- 搜索框 --> |
| 19 | 21 | <view class="search-box f1"> |
| 20 | - <navigator hover-class="none" url="/pages/goods/search/search"><text class="iconfont icon-sousuo pdr10"></text>搜索店铺商品</navigator> | |
| 22 | + <navigator hover-class="none" url="/pages/goods/search/search?ladder_id={{ladder_id}}"><text class="iconfont icon-sousuo pdr10"></text>搜索店铺商品</navigator> | |
| 21 | 23 | </view> |
| 22 | 24 | <!-- 单列/双列 显示切换 --> |
| 23 | 25 | <text class="iconfont {{isToggle ? 'icon-fenxiang':'icon-fenlie'}} pdl30 fs36" bindtap="bindToggleDisplay"></text> |
| ... | ... | @@ -330,4 +332,11 @@ |
| 330 | 332 | </view> |
| 331 | 333 | </view> |
| 332 | 334 | |
| 333 | -<share_box id="share"></share_box> | |
| 334 | 335 | \ No newline at end of file |
| 336 | +<share_box id="share"></share_box> | |
| 337 | +<view class="t-c fs32" wx:if="{{err_txt}}"> | |
| 338 | + <view class="no-data" wx:if="{{(!requestData||requestData.length==0) && is_go}}"> | |
| 339 | + <image class="cart-image" src="{{iurl}}/miniapp/images/cart-null.png"></image> | |
| 340 | + <view class="no-data-title">{{err_txt}}</view> | |
| 341 | + <navigator class="lookat" url="/pages/index/index/index">回到首页</navigator> | |
| 342 | + </view> | |
| 343 | +</view> | |
| 335 | 344 | \ No newline at end of file | ... | ... |
pages/goods/search/search.js
| ... | ... | @@ -108,7 +108,13 @@ Page({ |
| 108 | 108 | if (0 != t.brand_id && t.brand_id!=undefined){ url += "&brand_id=" + t.brand_id;} |
| 109 | 109 | if (0 != t.nation_id && t.nation_id!=undefined) { url += "&nation_id=" + t.nation_id;} |
| 110 | 110 | if (0 != t.max_price && t.max_price!=undefined) { url += "&min_pirce=" + t.min_pirce + "&max_price=" + t.max_price;} |
| 111 | - | |
| 111 | + if (0 != t.ladder_id && t.ladder_id != undefined) { | |
| 112 | + url += "&ladder_id=" + t.ladder_id; | |
| 113 | + this.setData({ | |
| 114 | + baseUrl:url, | |
| 115 | + | |
| 116 | + }) | |
| 117 | + } | |
| 112 | 118 | if (url != this.data.baseUrl) return this.requestSearch(url); |
| 113 | 119 | this.openSearchModal(); |
| 114 | 120 | // 获取历史搜索记录 |
| ... | ... | @@ -200,23 +206,43 @@ Page({ |
| 200 | 206 | break |
| 201 | 207 | } |
| 202 | 208 | if(url!=null && url!=''){ |
| 203 | - await getApp().request.promiseGet(url, {}).then(res => { | |
| 209 | + await getApp().request.promiseGet(url, {}).then(async res => { | |
| 204 | 210 | var prom =null; |
| 205 | - if(res && res.data) prom=res.data.data; | |
| 206 | - if (prom != null && prom.is_end==0 && prom.end_time>now && (prom.start_time<now || (prom.show_time && prom.show_time<now)) ) { | |
| 207 | - item.prom_price = res.data.data.price; | |
| 208 | - if(res.data.data.user_price) item.prom_price=res.data.data.user_price; | |
| 209 | - var vNum=res.data.data.virtual_num?res.data.data.virtual_num:0; | |
| 210 | - var vNum1=res.data.data.virtualNum?res.data.data.virtualNum:0; | |
| 211 | - var vNum2=res.data.data.virtual?res.data.data.virtual:0; | |
| 212 | - item.sales_sum=res.data.data.buy_num+(vNum+vNum1+vNum2); | |
| 213 | - }else{ | |
| 214 | - item.prom_type=0; | |
| 215 | - item.prom_id=0; | |
| 216 | - item.prom_price=null; | |
| 211 | + var flag=null; | |
| 212 | + if(res.data.code==0 && res.data.data){ | |
| 213 | + prom=res.data.data; | |
| 214 | + await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/1",{ | |
| 215 | + data:{ | |
| 216 | + store_id: oo.stoid, | |
| 217 | + is_end: 0, | |
| 218 | + is_show: 1, | |
| 219 | + user_id: getApp().globalData.user_id, | |
| 220 | + pageSize:1000 | |
| 221 | + } | |
| 222 | + }).then(pd=>{ | |
| 223 | + let pd_list=pd.data.data.pageData; | |
| 224 | + if(res.data.code==0 && pd_list.length>0){ | |
| 225 | + flag =pd_list.some(pd=>{ | |
| 226 | + return pd.goods_id==item.goods_id | |
| 227 | + }) | |
| 228 | + } | |
| 229 | + if (prom != null && prom.is_end==0 && prom.end_time>now && flag && (prom.start_time<now || (prom.show_time && prom.show_time<now)) ) { | |
| 230 | + item.prom_price = res.data.data.price; | |
| 231 | + if(res.data.data.user_price) item.prom_price=res.data.data.user_price; | |
| 232 | + var vNum=prom.virtual_num?prom.virtual_num:0; | |
| 233 | + var vNum1=prom.virtualNum?prom.virtualNum:0; | |
| 234 | + var vNum2=prom.virtual?prom.virtual:0; | |
| 235 | + item.sales_sum=prom.buy_num+(vNum+vNum1+vNum2); | |
| 236 | + }else{ | |
| 237 | + item.prom_type=0; | |
| 238 | + item.prom_id=0; | |
| 239 | + item.prom_price=null; | |
| 240 | + } | |
| 241 | + }) | |
| 217 | 242 | } |
| 218 | 243 | }) |
| 219 | 244 | } |
| 245 | + if(!th.data.requestData) th.data.requestData=[]; | |
| 220 | 246 | th.data.requestData.push(item); |
| 221 | 247 | e.setData({requestData: e.data.requestData}); |
| 222 | 248 | } | ... | ... |
pages/index/index/full_screen.js
| 1 | 1 | module.exports = { |
| 2 | 2 | //判断要不要显示全屏广告 |
| 3 | 3 | get_the_full_screen(th){ |
| 4 | - var stoid=getApp().globalData.setting.stoid; | |
| 5 | - if(th.data.full_ad) { | |
| 4 | + var stoid=getApp().globalData.setting.stoid; | |
| 5 | + if(getApp().globalData.full_screen) { | |
| 6 | + return false; | |
| 7 | + } | |
| 8 | + if(th.data.full_ad) { | |
| 6 | 9 | return false; |
| 7 | 10 | } |
| 11 | + | |
| 8 | 12 | //获取全屏的广告 |
| 9 | 13 | getApp().promiseGet("/api/weshop/ad/page?pid=1001&store_id=" + stoid,{ |
| 10 | 14 | data: { enabled: 1 } |
| 11 | 15 | }).then(res=>{ |
| 12 | - //判断是不是有全屏广告 | |
| 13 | - if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){ | |
| 14 | - th.setData({ | |
| 15 | - is_full_screen_show:1, | |
| 16 | - full_ad:res.data.data.pageData[0], | |
| 17 | - }) | |
| 18 | - //--定时关闭-- | |
| 19 | - th.data.full_screen=setInterval(function(){ | |
| 20 | - if(!th.data.sec_show) { | |
| 21 | - clearInterval(th.data.full_screen); | |
| 22 | - th.close_full_screen(); | |
| 23 | - return false; | |
| 24 | - } | |
| 25 | - th.data.sec_show--; | |
| 26 | - th.setData({sec_show:th.data.sec_show}); | |
| 27 | - },1000) | |
| 28 | - } | |
| 16 | + //判断是不是有全屏广告 | |
| 17 | + if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){ | |
| 18 | + getApp().globalData.full_screen=res.data.data.pageData[0]; | |
| 19 | + th.setData({ | |
| 20 | + is_full_screen_show:1, | |
| 21 | + full_ad:res.data.data.pageData[0], | |
| 22 | + }) | |
| 23 | + //--定时关闭-- | |
| 24 | + th.data.full_screen=setInterval(function(){ | |
| 25 | + if(!th.data.sec_show) { | |
| 26 | + clearInterval(th.data.full_screen); | |
| 27 | + th.close_full_screen(); | |
| 28 | + return false; | |
| 29 | + } | |
| 30 | + th.data.sec_show--; | |
| 31 | + th.setData({sec_show:th.data.sec_show}); | |
| 32 | + },1000) | |
| 33 | + }else{ | |
| 34 | + getApp().globalData.full_screen=true; | |
| 35 | + } | |
| 29 | 36 | }) |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 30 | 41 | } |
| 31 | 42 | } |
| 32 | 43 | \ No newline at end of file | ... | ... |
pages/index/index/index.js
| ... | ... | @@ -318,74 +318,99 @@ Page({ |
| 318 | 318 | } |
| 319 | 319 | } |
| 320 | 320 | |
| 321 | - var pre_data={store_id:os.stoid,is_end:0,timetype:1,isuse:1}; | |
| 322 | - if(user_id){ | |
| 323 | - pre_data.user_id= user_id; | |
| 324 | - } | |
| 321 | + console.log(this.data.isTemplate,'首页'); | |
| 325 | 322 | |
| 326 | - getApp().request.get("/api/weshop/marketing/marketingPresellList/page",{ | |
| 327 | - data:pre_data, | |
| 328 | - success:function (e) { | |
| 329 | - if(e.data.code==0 && e.data.data.pageData && e.data.data.pageData.length>0 ){ | |
| 330 | - var pre_data=e.data.data.pageData; | |
| 331 | - var arr = new Array(); | |
| 332 | - //--三个三个一组--- | |
| 333 | - for (var i = 0; i < pre_data.length; i += 3) { | |
| 334 | - arr.push(pre_data.slice(i, i + 3)); | |
| 323 | + if(!this.data.isTemplate){ | |
| 324 | + var pre_data={store_id:os.stoid,is_end:0,timetype:1,isuse:1}; | |
| 325 | + if(user_id){ | |
| 326 | + pre_data.user_id= user_id; | |
| 327 | + } | |
| 328 | + | |
| 329 | + getApp().request.get("/api/weshop/marketing/marketingPresellList/page",{ | |
| 330 | + data:pre_data, | |
| 331 | + success:function (e) { | |
| 332 | + if(e.data.code==0 && e.data.data.pageData && e.data.data.pageData.length>0 ){ | |
| 333 | + var pre_data=e.data.data.pageData; | |
| 334 | + var arr = new Array(); | |
| 335 | + //--三个三个一组--- | |
| 336 | + for (var i = 0; i < pre_data.length; i += 3) { | |
| 337 | + arr.push(pre_data.slice(i, i + 3)); | |
| 338 | + } | |
| 339 | + th.setData({ | |
| 340 | + preGoods: arr | |
| 341 | + }); | |
| 342 | + }else{ | |
| 343 | + th.setData({ | |
| 344 | + preGoods: null | |
| 345 | + }); | |
| 335 | 346 | } |
| 347 | + } | |
| 348 | + }) | |
| 349 | + | |
| 350 | + // 获取幸运购活动列表 | |
| 351 | + getApp().request.promiseGet('/api/weshop/prom/luckyActivity/page', { | |
| 352 | + data: { | |
| 353 | + store_id: getApp().globalData.setting.stoid, | |
| 354 | + is_end: 0, | |
| 355 | + timetype: 1, | |
| 356 | + } | |
| 357 | + }).then(res => { | |
| 358 | + if(res.data.code == 0) { | |
| 336 | 359 | th.setData({ |
| 337 | - preGoods: arr | |
| 360 | + luckGo_list: res.data.data.pageData.slice(0,3), | |
| 361 | + }); | |
| 362 | + } | |
| 363 | + }); | |
| 364 | + | |
| 365 | + //-----秒杀----- | |
| 366 | + var flash_data = null; | |
| 367 | + var f_req={ | |
| 368 | + store_id: os.stoid, | |
| 369 | + timetype: 2, | |
| 370 | + is_end: 0, | |
| 371 | + is_show: 1, | |
| 372 | + pageSize: 9, | |
| 373 | + user_id:0 | |
| 374 | + }; | |
| 375 | + if(user_id) f_req.user_id=user_id; | |
| 376 | + //--获取活动-- | |
| 377 | + await getApp().request.promiseGet("/api/ms/flash_sale/spikepage", { | |
| 378 | + data:f_req , | |
| 379 | + }).then(res => { | |
| 380 | + var e = res; | |
| 381 | + if (e.data.code == 0) { | |
| 382 | + flash_data = e.data.data.pageData; | |
| 383 | + if (flash_data == null || flash_data.length <= 0) return false; | |
| 384 | + | |
| 385 | + //当前时间戳 | |
| 386 | + var nt = ut.gettimestamp(); | |
| 387 | + | |
| 388 | + flash_data.forEach(function (val, ind) { | |
| 389 | + | |
| 390 | + if(val.user_price) val.price=val.user_price; | |
| 391 | + if (val.start_time > nt) flash_data[ind].status = 0; | |
| 392 | + else if (val.end_time > nt) flash_data[ind].status = 1; | |
| 393 | + if (val.buy_num >= val.goods_num) flash_data[ind].status = 2; | |
| 338 | 394 | }); |
| 339 | - }else{ | |
| 395 | + | |
| 396 | + var arr = new Array(); | |
| 397 | + //--三个三个一组--- | |
| 398 | + for (var i = 0; i < flash_data.length; i += 3) { | |
| 399 | + arr.push(flash_data.slice(i, i + 3)); | |
| 400 | + } | |
| 340 | 401 | th.setData({ |
| 341 | - preGoods: null | |
| 402 | + saleGoods: arr | |
| 342 | 403 | }); |
| 343 | 404 | } |
| 344 | - } | |
| 345 | - }) | |
| 405 | + }); | |
| 406 | + | |
| 407 | + } | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 346 | 412 | |
| 347 | 413 | |
| 348 | - //-----秒杀----- | |
| 349 | - var flash_data = null; | |
| 350 | - var f_req={ | |
| 351 | - store_id: os.stoid, | |
| 352 | - timetype: 2, | |
| 353 | - is_end: 0, | |
| 354 | - is_show: 1, | |
| 355 | - pageSize: 9, | |
| 356 | - user_id:0 | |
| 357 | - }; | |
| 358 | - if(user_id) f_req.user_id=user_id; | |
| 359 | - //--获取活动-- | |
| 360 | - await getApp().request.promiseGet("/api/ms/flash_sale/spikepage", { | |
| 361 | - data:f_req , | |
| 362 | - }).then(res => { | |
| 363 | - var e = res; | |
| 364 | - if (e.data.code == 0) { | |
| 365 | - flash_data = e.data.data.pageData; | |
| 366 | - if (flash_data == null || flash_data.length <= 0) return false; | |
| 367 | - | |
| 368 | - //当前时间戳 | |
| 369 | - var nt = ut.gettimestamp(); | |
| 370 | - | |
| 371 | - flash_data.forEach(function (val, ind) { | |
| 372 | - | |
| 373 | - if(val.user_price) val.price=val.user_price; | |
| 374 | - if (val.start_time > nt) flash_data[ind].status = 0; | |
| 375 | - else if (val.end_time > nt) flash_data[ind].status = 1; | |
| 376 | - if (val.buy_num >= val.goods_num) flash_data[ind].status = 2; | |
| 377 | - }); | |
| 378 | - | |
| 379 | - var arr = new Array(); | |
| 380 | - //--三个三个一组--- | |
| 381 | - for (var i = 0; i < flash_data.length; i += 3) { | |
| 382 | - arr.push(flash_data.slice(i, i + 3)); | |
| 383 | - } | |
| 384 | - th.setData({ | |
| 385 | - saleGoods: arr | |
| 386 | - }); | |
| 387 | - } | |
| 388 | - }); | |
| 389 | 414 | |
| 390 | 415 | |
| 391 | 416 | |
| ... | ... | @@ -394,7 +419,7 @@ Page({ |
| 394 | 419 | var json_d = JSON.parse(e.switch_list); |
| 395 | 420 | th.setData({ is_closecoupon: json_d.is_closecoupon }) |
| 396 | 421 | th.setData({ is_topstore: json_d.is_show_storeselect }) |
| 397 | - th.setData({is_gz_h5:json_d.is_gz_h5}) | |
| 422 | + if(json_d.is_gz_h5) th.setData({is_gz_h5:json_d.is_gz_h5}) | |
| 398 | 423 | }, 1) |
| 399 | 424 | |
| 400 | 425 | if (typeof this.getTabBar === 'function' && this.getTabBar()) { |
| ... | ... | @@ -403,7 +428,7 @@ Page({ |
| 403 | 428 | active: index //数字是当前页面在tabbar的索引 |
| 404 | 429 | }) |
| 405 | 430 | |
| 406 | - //sty | |
| 431 | + | |
| 407 | 432 | getApp().requestCardNum(this); |
| 408 | 433 | } |
| 409 | 434 | |
| ... | ... | @@ -434,22 +459,6 @@ Page({ |
| 434 | 459 | } |
| 435 | 460 | }, 1500) |
| 436 | 461 | |
| 437 | - | |
| 438 | - // 获取幸运购活动列表 | |
| 439 | - getApp().request.promiseGet('/api/weshop/prom/luckyActivity/page', { | |
| 440 | - data: { | |
| 441 | - store_id: getApp().globalData.setting.stoid, | |
| 442 | - is_end: 0, | |
| 443 | - timetype: 1, | |
| 444 | - } | |
| 445 | - }).then(res => { | |
| 446 | - if(res.data.code == 0) { | |
| 447 | - th.setData({ | |
| 448 | - luckGo_list: res.data.data.pageData.slice(0,3), | |
| 449 | - }); | |
| 450 | - } | |
| 451 | - }); | |
| 452 | - | |
| 453 | 462 | |
| 454 | 463 | }, |
| 455 | 464 | //当隐藏的时候就关闭计时器 | ... | ... |
pages/payment/pay_success/pay_success.js
| 1 | 1 | var e = getApp(); |
| 2 | 2 | var regeneratorRuntime = require('../../../utils/runtime.js'); |
| 3 | +var ut = require("../../../utils/util.js"); | |
| 3 | 4 | Page({ |
| 4 | 5 | /** |
| 5 | 6 | * 页面的初始数据 |
| ... | ... | @@ -30,21 +31,28 @@ Page({ |
| 30 | 31 | if(type==1){ |
| 31 | 32 | await getApp().request.promiseGet("/api/weshop/order/page", |
| 32 | 33 | {data:{store_id:e.globalData.setting.stoid,order_sn:order_sn}}).then(res=>{ |
| 33 | - order=res.data.data.pageData[0]; | |
| 34 | - th.setData({order:order,order_sn:order_sn}) | |
| 34 | + if(ut.ajax_ok(res)){ | |
| 35 | + order=res.data.data.pageData[0]; | |
| 36 | + th.setData({order:order,order_sn:order_sn}) | |
| 37 | + } | |
| 38 | + | |
| 35 | 39 | }) |
| 36 | 40 | }else{ |
| 37 | 41 | await getApp().request.promiseGet("/api/weshop/order/page", |
| 38 | 42 | {data:{store_id:e.globalData.setting.stoid,parent_sn:order_sn}}).then(res=>{ |
| 39 | 43 | |
| 40 | - var allmoney=0,user_money=0; | |
| 41 | - for(var i in res.data.data.pageData){ | |
| 42 | - var item=res.data.data.pageData[i]; | |
| 43 | - allmoney+=item.order_amount; | |
| 44 | - user_money += item.user_money?item.user_money:0; | |
| 45 | - } | |
| 46 | - order=res.data.data.pageData[0]; | |
| 47 | - th.setData({ order: order, type: 2, allmoney: allmoney, order_sn: order_sn, user_money: user_money}) | |
| 44 | + if(ut.ajax_ok(res)){ | |
| 45 | + var allmoney=0,user_money=0; | |
| 46 | + for(var i in res.data.data.pageData){ | |
| 47 | + var item=res.data.data.pageData[i]; | |
| 48 | + allmoney+=item.order_amount; | |
| 49 | + user_money += item.user_money?item.user_money:0; | |
| 50 | + } | |
| 51 | + order=res.data.data.pageData[0]; | |
| 52 | + th.setData({ order: order, type: 2, allmoney: allmoney, order_sn: order_sn, user_money: user_money}) | |
| 53 | + } | |
| 54 | + | |
| 55 | + | |
| 48 | 56 | }) |
| 49 | 57 | } |
| 50 | 58 | //--获取门店-- | ... | ... |
pages/team/team_show/team_show.js
| ... | ... | @@ -561,7 +561,9 @@ Page({ |
| 561 | 561 | is_show: 1 |
| 562 | 562 | } |
| 563 | 563 | }).then(res => { |
| 564 | - pageteam = res.data.data.pageData; | |
| 564 | + if(ut.ajax_ok(res)){ | |
| 565 | + pageteam = res.data.data.pageData; | |
| 566 | + } | |
| 565 | 567 | }); |
| 566 | 568 | |
| 567 | 569 | //-- 获取用户的默认门店 -- |
| ... | ... | @@ -604,7 +606,7 @@ Page({ |
| 604 | 606 | getApp().request.promiseGet("/api/weshop/pickup/list",{ |
| 605 | 607 | data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon,is_pos: 1}, |
| 606 | 608 | }).then(res=>{ |
| 607 | - if(res.data.code==0){ | |
| 609 | + if(ut.ajax_ok(res)){ | |
| 608 | 610 | e=res.data.data.pageData[0]; |
| 609 | 611 | if (e){ |
| 610 | 612 | appd.pk_store=e; | ... | ... |
pages/user/cardinfo/cardinfo.js
| ... | ... | @@ -765,7 +765,7 @@ Page({ |
| 765 | 765 | var th = this,is_card = 0,end_time=0; |
| 766 | 766 | await getApp().request.promiseGet("/store/storemoduleendtime/page?store_id="+os.stoid+"&type=3", |
| 767 | 767 | {1:1}).then(res => { |
| 768 | - if (res.data.code == 0) { | |
| 768 | + if (ut.ajax_ok(res)) { | |
| 769 | 769 | end_time=res.data.data.pageData[0].end_time; |
| 770 | 770 | } |
| 771 | 771 | }) |
| ... | ... | @@ -828,7 +828,7 @@ Page({ |
| 828 | 828 | var th = this,card_id =e.currentTarget.dataset.cid ,end_time=0; |
| 829 | 829 | await getApp().request.promiseGet("/store/storemoduleendtime/page?store_id="+os.stoid+"&type=3", |
| 830 | 830 | {1:1}).then(res => { |
| 831 | - if (res.data.code == 0) { | |
| 831 | + if (ut.ajax_ok(res)) { | |
| 832 | 832 | end_time=res.data.data.pageData[0].end_time; |
| 833 | 833 | } |
| 834 | 834 | }) | ... | ... |
pages/user/deposit/prepaid/prepaid.js
| ... | ... | @@ -125,7 +125,16 @@ Page({ |
| 125 | 125 | } |
| 126 | 126 | }).then(res => { |
| 127 | 127 | console.log(res); |
| 128 | - | |
| 128 | + var getcode=res.data.code; | |
| 129 | + if (getcode!=0) | |
| 130 | + { | |
| 131 | + wx.showModal({ | |
| 132 | + title: '提示', | |
| 133 | + content:res.data.msg | |
| 134 | + }); | |
| 135 | + return false; | |
| 136 | + } | |
| 137 | + | |
| 129 | 138 | |
| 130 | 139 | var msg = res.data.data; |
| 131 | 140 | var parentSn = msg.order_sn; | ... | ... |
pages/user/index/index.js
| ... | ... | @@ -63,7 +63,7 @@ Page({ |
| 63 | 63 | //-- 读取会员中心按钮列表 -- |
| 64 | 64 | getApp().request.get("/api/weshop/userTool/page?pageSize=100", { |
| 65 | 65 | success:function(res){ |
| 66 | - if(res.data.code==0 ){ | |
| 66 | + if(ut.ajax_ok(res)) { | |
| 67 | 67 | var d_list=res.data.data.pageData; |
| 68 | 68 | getApp().promiseGet("/api/weshop/storeDistribut/get/"+os.stoid,{}).then(rs=>{ |
| 69 | 69 | var dis=rs.data.data; |
| ... | ... | @@ -79,7 +79,7 @@ Page({ |
| 79 | 79 | enabled: 1 |
| 80 | 80 | }, |
| 81 | 81 | success:function(res){ |
| 82 | - if(res.data.code==0 && res.data.data){ | |
| 82 | + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length){ | |
| 83 | 83 | var item=res.data.data.pageData[0]; |
| 84 | 84 | if (item && item.ad_code) th.setData({ad_img:item.ad_code}) |
| 85 | 85 | } | ... | ... |
pages/user/my_service/appment_main.js
| ... | ... | @@ -657,7 +657,7 @@ Page({ |
| 657 | 657 | } |
| 658 | 658 | }).then(res => { |
| 659 | 659 | //-- 如果是门店的话 -- |
| 660 | - if (res.data.code == 0 && res.data.data && res.data.data.pageData) { | |
| 660 | + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) { | |
| 661 | 661 | var store_data=null; |
| 662 | 662 | for(var i in res.data.data.pageData){ |
| 663 | 663 | var it=res.data.data.pageData[i]; | ... | ... |
pages/user/order_detail/order_detail.js
| ... | ... | @@ -101,7 +101,25 @@ Page({ |
| 101 | 101 | r.order_status_detail = "组团中"; |
| 102 | 102 | |
| 103 | 103 | |
| 104 | - r['is_all_return'] = 0; | |
| 104 | + r['is_all_return'] = 0; | |
| 105 | + | |
| 106 | + var discount_price=r['discount_amount']; | |
| 107 | + var dis_json=r['prom_pt_json']; | |
| 108 | + | |
| 109 | + if(dis_json && discount_price){ | |
| 110 | + var prom_pt_json=JSON.parse(dis_json); | |
| 111 | + var ladder_amount=0; | |
| 112 | + for (var ll_item of prom_pt_json) { | |
| 113 | + if(ll_item['ladder_prom_id']){ | |
| 114 | + ladder_amount += ll_item['dis']; | |
| 115 | + } | |
| 116 | + } | |
| 117 | + r['ladder_amount']=ladder_amount; | |
| 118 | + r['discount_amount']=Math.floor((discount_price-ladder_amount)*100)/100; | |
| 119 | + } | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 105 | 123 | |
| 106 | 124 | //------获取订单商品------- |
| 107 | 125 | rq.get("/api/weshop/ordergoods/list",{ |
| ... | ... | @@ -553,7 +571,7 @@ Page({ |
| 553 | 571 | await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1",{ |
| 554 | 572 | data:{store_id:os.stoid,goods_id:gg.goods_id} |
| 555 | 573 | }).then(res=>{ |
| 556 | - if(res.data.code==0 && res.data.data && res.data.data.pageData){ | |
| 574 | + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length){ | |
| 557 | 575 | prom=res.data.data.pageData[0]; |
| 558 | 576 | } |
| 559 | 577 | }) |
| ... | ... | @@ -672,7 +690,7 @@ Page({ |
| 672 | 690 | await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1",{ |
| 673 | 691 | data:{store_id:os.stoid,goods_id:goodsinfo.goods_id} |
| 674 | 692 | }).then(res=>{ |
| 675 | - if(res.data.code==0 && res.data.data && res.data.data.pageData){ | |
| 693 | + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length){ | |
| 676 | 694 | prom=res.data.data.pageData[0]; |
| 677 | 695 | } |
| 678 | 696 | }) |
| ... | ... | @@ -993,7 +1011,8 @@ Page({ |
| 993 | 1011 | var back_goods_arr=[]; |
| 994 | 1012 | var err_text=""; |
| 995 | 1013 | for(var i in goods_list){ |
| 996 | - var g_item=goods_list[i]; | |
| 1014 | + var g_item=goods_list[i]; | |
| 1015 | + var b_item={}; | |
| 997 | 1016 | //--如果是赠品,不加入购物车-- |
| 998 | 1017 | if(g_item['is_gift']) continue; |
| 999 | 1018 | if(g_item['prom_type']==4 ){ |
| ... | ... | @@ -1015,7 +1034,22 @@ Page({ |
| 1015 | 1034 | |
| 1016 | 1035 | }).then(res=>{ |
| 1017 | 1036 | good=res.data.data; |
| 1018 | - }) | |
| 1037 | + }) | |
| 1038 | + | |
| 1039 | + //调用接口判断订单优惠, | |
| 1040 | + const res = await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + g_item.goods_id + "/0", {}) | |
| 1041 | + if (res.data.code == 0 && res.data.data) { | |
| 1042 | + var r_data = res.data.data; | |
| 1043 | + if (r_data.ladderLists) { | |
| 1044 | + var act_id = r_data.ladderLists[0].form_id; | |
| 1045 | + //-- 判断会员能不能参与阶梯促销 -- | |
| 1046 | + const data = await getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid + "/" + user_id + "/" + act_id, {}) | |
| 1047 | + if (data.data.code == 0 && data.data.data && data.data.data.isuse && data.data.data.is_end == 0) { | |
| 1048 | + b_item.prom_type = 10; | |
| 1049 | + b_item.prom_id = data.data.data.id; | |
| 1050 | + } | |
| 1051 | + } | |
| 1052 | + } | |
| 1019 | 1053 | |
| 1020 | 1054 | if(!good){ |
| 1021 | 1055 | err_text+= g_item['goods_name']+"未找到商品\n"; |
| ... | ... | @@ -1045,7 +1079,7 @@ Page({ |
| 1045 | 1079 | } |
| 1046 | 1080 | |
| 1047 | 1081 | var prom=null; |
| 1048 | - var b_item={} | |
| 1082 | + | |
| 1049 | 1083 | b_item.goods_id=g_item.goods_id; |
| 1050 | 1084 | b_item.goods_name=g_item.goods_name; |
| 1051 | 1085 | b_item.goods_num=g_item.goods_num; |
| ... | ... | @@ -1110,28 +1144,38 @@ Page({ |
| 1110 | 1144 | b_item.price = prom.price; |
| 1111 | 1145 | } |
| 1112 | 1146 | break; |
| 1113 | - case 6: | |
| 1114 | - b_item.is_pd_normal = 1; | |
| 1115 | - break; | |
| 1116 | - case 7: | |
| 1117 | - //如果有组合购 | |
| 1118 | - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id; | |
| 1119 | - await getApp().request.promiseGet(url, {}).then(res => { | |
| 1120 | - if (res.data.code == 0 && res.data.data) { | |
| 1121 | - if (res.data.data.is_show == 1 && res.data.data.is_end == 0 | |
| 1122 | - && ut.gettimestamp() < res.data.data.end_time | |
| 1123 | - && ut.gettimestamp() > res.data.data.start_time | |
| 1124 | - ) { | |
| 1125 | - b_item.prom_type = 7; | |
| 1126 | - b_item.prom_id = res.data.data.id; | |
| 1127 | - good.prom_type = 7; | |
| 1128 | - good.prom_id = res.data.data.id; | |
| 1129 | - } | |
| 1130 | - } | |
| 1131 | - }) | |
| 1132 | - break; | |
| 1133 | - } | |
| 1134 | - } | |
| 1147 | + case 6: | |
| 1148 | + b_item.is_pd_normal = 1; | |
| 1149 | + break; | |
| 1150 | + case 7: | |
| 1151 | + //如果有组合购 | |
| 1152 | + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id; | |
| 1153 | + await getApp().request.promiseGet(url, {}).then(res => { | |
| 1154 | + if (res.data.code == 0 && res.data.data) { | |
| 1155 | + if (res.data.data.is_show == 1 && res.data.data.is_end == 0 | |
| 1156 | + && ut.gettimestamp() < res.data.data.end_time | |
| 1157 | + && ut.gettimestamp() > res.data.data.start_time | |
| 1158 | + ) { | |
| 1159 | + b_item.prom_type = 7; | |
| 1160 | + b_item.prom_id = res.data.data.id; | |
| 1161 | + good.prom_type = 7; | |
| 1162 | + good.prom_id = res.data.data.id; | |
| 1163 | + } | |
| 1164 | + } | |
| 1165 | + }) | |
| 1166 | + break; | |
| 1167 | + case 10: | |
| 1168 | + let user_id = getApp().globalData.userInfo.user_id; | |
| 1169 | + var url = `/api/weshop/prom/ladderForm/getNew/${os.stoid}/${user_id}/${good.prom_id}`; | |
| 1170 | + await getApp().request.promiseGet(url, {}).then(res => { | |
| 1171 | + if (res.data.code == 0 && res.data.data && res.data.data.isuse && res.data.data.is_end == 0) { | |
| 1172 | + b_item.prom_type = 10; | |
| 1173 | + b_item.prom_id = res.data.data.id; | |
| 1174 | + } | |
| 1175 | + }) | |
| 1176 | + break; | |
| 1177 | + } | |
| 1178 | + } | |
| 1135 | 1179 | |
| 1136 | 1180 | //如果有优惠促销的时候,要看下商品的优惠活动有没有过期 |
| 1137 | 1181 | if(g_item.prom_type==3 || good.prom_type==3){ | ... | ... |
pages/user/order_detail/order_detail.wxml
| ... | ... | @@ -32,7 +32,7 @@ |
| 32 | 32 | </navigator> |
| 33 | 33 | |
| 34 | 34 | <view class="order-num"> |
| 35 | - <view class="goods-price">¥{{item.member_goods_price}}</view> | |
| 35 | + <view class="goods-price">¥{{item.member_goods_price}}<text wx:if="{{item.prom_type==10}}" style="margin-left: 5rpx">({{item.ladder_discount}}折)</text> </view> | |
| 36 | 36 | <view class="goods-num">×{{item.goods_num}}</view> |
| 37 | 37 | |
| 38 | 38 | <!-- 不是整单退的时候 --> |
| ... | ... | @@ -120,7 +120,12 @@ |
| 120 | 120 | |
| 121 | 121 | <view class="item pnew" wx:if="{{order.discount_amount>0}}"> |
| 122 | 122 | <view>优惠活动</view> |
| 123 | - <view>¥ {{order.discount_amount}}元</view> | |
| 123 | + <view>¥ {{filters.toFix(order.discount_amount,2)}}元</view> | |
| 124 | + </view> | |
| 125 | + | |
| 126 | + <view class="item pnew" wx:if="{{order.ladder_amount>0}}"> | |
| 127 | + <view>阶梯优惠活动</view> | |
| 128 | + <view>¥ {{filters.toFix(order.ladder_amount,2)}}元</view> | |
| 124 | 129 | </view> |
| 125 | 130 | |
| 126 | 131 | <view class="item pnew" wx:if="{{order.order_prom_amount>0}}"> | ... | ... |
pages/user/order_list/order_list.js
| ... | ... | @@ -1205,6 +1205,7 @@ Page({ |
| 1205 | 1205 | var err_text=""; |
| 1206 | 1206 | for(var i in goods_list){ |
| 1207 | 1207 | var g_item=goods_list[i]; |
| 1208 | + var b_item={}; | |
| 1208 | 1209 | //--如果是赠品,不加入购物车-- |
| 1209 | 1210 | if(g_item['is_gift']) continue; |
| 1210 | 1211 | if(g_item['prom_type']==4 ){ |
| ... | ... | @@ -1228,6 +1229,20 @@ Page({ |
| 1228 | 1229 | good=res.data.data; |
| 1229 | 1230 | }) |
| 1230 | 1231 | |
| 1232 | + //调用接口判断订单优惠, | |
| 1233 | + // const res = await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + g_item.goods_id + "/0", {}) | |
| 1234 | + // if (res.data.code == 0 && res.data.data) { | |
| 1235 | + // var r_data = res.data.data; | |
| 1236 | + // if (r_data.ladderLists) { | |
| 1237 | + // var act_id = r_data.ladderLists[0].form_id; | |
| 1238 | + // //-- 判断会员能不能参与阶梯促销 -- | |
| 1239 | + // const data = await getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid + "/" + user_id + "/" + act_id, {}) | |
| 1240 | + // if (data.data.code == 0 && data.data.data && data.data.data.isuse && data.data.data.is_end == 0) { | |
| 1241 | + // b_item.prom_type = 10; | |
| 1242 | + // b_item.prom_id = data.data.data.id; | |
| 1243 | + // } | |
| 1244 | + // } | |
| 1245 | + // } | |
| 1231 | 1246 | if(!good){ |
| 1232 | 1247 | err_text+= g_item['goods_name']+"未找到商品\n"; |
| 1233 | 1248 | continue; |
| ... | ... | @@ -1256,7 +1271,7 @@ Page({ |
| 1256 | 1271 | } |
| 1257 | 1272 | |
| 1258 | 1273 | var prom=null; |
| 1259 | - var b_item={} | |
| 1274 | + | |
| 1260 | 1275 | b_item.goods_id=g_item.goods_id; |
| 1261 | 1276 | b_item.goods_name=g_item.goods_name; |
| 1262 | 1277 | b_item.goods_num=g_item.goods_num; |
| ... | ... | @@ -1287,7 +1302,6 @@ Page({ |
| 1287 | 1302 | } |
| 1288 | 1303 | } |
| 1289 | 1304 | }) |
| 1290 | - | |
| 1291 | 1305 | if(!prom) { |
| 1292 | 1306 | //--判断商品当前的活动情况-- |
| 1293 | 1307 | switch (good.prom_type) { |
| ... | ... | @@ -1342,6 +1356,16 @@ Page({ |
| 1342 | 1356 | } |
| 1343 | 1357 | }) |
| 1344 | 1358 | break; |
| 1359 | + case 10: | |
| 1360 | + let user_id = getApp().globalData.userInfo.user_id; | |
| 1361 | + var url = `/api/weshop/prom/ladderForm/getNew/${os.stoid}/${user_id}/${good.prom_id}`; | |
| 1362 | + await getApp().request.promiseGet(url, {}).then(res => { | |
| 1363 | + if (res.data.code == 0 && res.data.data && res.data.data.isuse && res.data.data.is_end == 0) { | |
| 1364 | + b_item.prom_type = 10; | |
| 1365 | + b_item.prom_id = res.data.data.id; | |
| 1366 | + } | |
| 1367 | + }) | |
| 1368 | + break; | |
| 1345 | 1369 | } |
| 1346 | 1370 | } |
| 1347 | 1371 | |
| ... | ... | @@ -1682,7 +1706,8 @@ Page({ |
| 1682 | 1706 | store_id: os.stoid, |
| 1683 | 1707 | user_id: oo.user_id, |
| 1684 | 1708 | goods_id: g_item.goods_id, |
| 1685 | - pick_id: g_item.pickup_id, | |
| 1709 | + pick_id: g_item.pickup_id, | |
| 1710 | + state:0, | |
| 1686 | 1711 | }, |
| 1687 | 1712 | }).then(res=>{ |
| 1688 | 1713 | //-------如果购物车中有相关的数据------- | ... | ... |
pages/user/order_list/order_list.wxml
| ... | ... | @@ -148,7 +148,7 @@ |
| 148 | 148 | <!-- 幸运购prom_type等于9 --> |
| 149 | 149 | <!-- 如果是幸运购就显示幸运购参团价格 --> |
| 150 | 150 | <view class="fs26" wx:if="{{goods.prom_type == 9}}">{{filters.toFix(goods.goods_price,2)}}</view> |
| 151 | - <view class="fs26" wx:else>{{filters.toFix(goods.member_goods_price,2)}}</view> | |
| 151 | + <view class="fs26" wx:else>{{filters.toFix(goods.member_goods_price,2)}} <text wx:if="{{goods.prom_type==10}}">({{goods.ladder_discount}}折)</text> </view> | |
| 152 | 152 | </view> |
| 153 | 153 | <view class="fs26 c-a9">x{{goods.goods_num}}</view> |
| 154 | 154 | </view> | ... | ... |
pages/user/userqy/userqy.js
| ... | ... | @@ -81,7 +81,7 @@ Page({ |
| 81 | 81 | await getApp().request.promiseGet("/api/weshop/users/grade/vipgradeinfo/page",{ |
| 82 | 82 | data:{ storeId:os.stoid} |
| 83 | 83 | }).then(res=>{ |
| 84 | - if (res.data.data) | |
| 84 | + if (res.data.data && res.data.data.pageData && res.data.data.pageData.length) | |
| 85 | 85 | backClass=res.data.data.pageData; |
| 86 | 86 | }) |
| 87 | 87 | |
| ... | ... | @@ -100,7 +100,7 @@ Page({ |
| 100 | 100 | await getApp().request.promiseGet("/api/weshop/users/grade/vipprivilegeinfo/page",{ |
| 101 | 101 | data:{storeId:os.stoid,pageSize:100} |
| 102 | 102 | }).then(res=>{ |
| 103 | - if (res.data.data) | |
| 103 | + if (res.data.data && res.data.data.pageData && res.data.data.pageData.length) | |
| 104 | 104 | qy_list=res.data.data.pageData; |
| 105 | 105 | }) |
| 106 | 106 | |
| ... | ... | @@ -108,7 +108,7 @@ Page({ |
| 108 | 108 | await getApp().request.promiseGet("/api/weshop/users/grade/privilegeform/list/page",{ |
| 109 | 109 | data: { storeId: os.stoid, GradeId: gradeId, userId: gl_data.user_id, pageSize: 100 } |
| 110 | 110 | }).then(res=>{ |
| 111 | - if (res.data.data) | |
| 111 | + if (res.data.data && res.data.data.pageData && res.data.data.pageData.length) | |
| 112 | 112 | g_qy_list=res.data.data.pageData; |
| 113 | 113 | }); |
| 114 | 114 | |
| ... | ... | @@ -227,7 +227,7 @@ Page({ |
| 227 | 227 | await getApp().request.promiseGet("/api/weshop/users/grade/privilegeform/list/page",{ |
| 228 | 228 | data: { storeId: os.stoid, GradeId: gr_id, userId: gl_data.user_id, pageSize: 100} |
| 229 | 229 | }).then(res=>{ |
| 230 | - g_qy_list=res.data.data.pageData; | |
| 230 | + if(ut.ajax_ok(res)) g_qy_list=res.data.data.pageData; | |
| 231 | 231 | }) |
| 232 | 232 | |
| 233 | 233 | for(var i in qy_list){ | ... | ... |
utils/LoadMore.js
| ... | ... | @@ -59,52 +59,49 @@ var e = function() { |
| 59 | 59 | var n = !0; |
| 60 | 60 | |
| 61 | 61 | var i, r = s.data.listName, l = s.data.resultName, d = s.data.resultListName; |
| 62 | - i = "" != r ? t.data.data[r] : t.data.data.pageData; //data.pageData是接口固定会出现的,封装好了 | |
| 62 | + i = "" != r ? t.data.data[r] : (t.data.data && t.data.data.pageData?t.data.data.pageData:null); //data.pageData是接口固定会出现的,封装好了 | |
| 63 | 63 | var u = !1, g = null, c = s.data.page; |
| 64 | 64 | |
| 65 | - console.log('loadmore'); | |
| 66 | - console.log(t.data.data.pageData); | |
| 67 | - console.log(c ); | |
| 68 | - | |
| 69 | 65 | //如果已经的第二页的时候,就是把数据加入数组 |
| 70 | 66 | if (c !=undefined && c.data[l]) { |
| 71 | 67 | u = !0; |
| 72 | 68 | var f = null; |
| 73 | 69 | f = "" != d ? c.data[l][d] : c.data[l], [].push.apply(f, i), g = c.data[l]; |
| 74 | - } else g = t.data.data.pageData; | |
| 70 | + } else g = (t.data.data && t.data.data.pageData?t.data.data.pageData:null); | |
| 75 | 71 | |
| 76 | 72 | |
| 77 | 73 | //格式化 |
| 78 | 74 | var glist=""; |
| 79 | - | |
| 80 | - for (var ii = 0; ii < g.length; ii++) { | |
| 81 | - //if(g[i].prom_type == 1 || g[i].prom_type == 2 || g[i].prom_type == 6) { | |
| 82 | - if (g[ii].prom_type && g[ii].prom_type == 1) { | |
| 83 | - glist += g[ii].goods_id+","; | |
| 84 | - } | |
| 85 | - if (g[ii].original_img!=undefined){ | |
| 86 | - if (g[ii].original_img.indexOf(oo.imghost)==-1) | |
| 87 | - g[ii].original_img = oo.imghost + g[ii].original_img; | |
| 88 | - } | |
| 89 | - | |
| 90 | - if (g[ii].add_time != undefined && rurl.indexOf("goodscollect")<0){ | |
| 91 | - var tx = g[ii].add_time + ""; | |
| 92 | - if (tx.indexOf('-') == -1) { | |
| 93 | - g[ii].add_time = ut.formatTime(g[ii].add_time, 'yyyy-MM-dd hh:mm:ss'); | |
| 75 | + if(g) { | |
| 76 | + for (var ii = 0; ii < g.length; ii++) { | |
| 77 | + //if(g[i].prom_type == 1 || g[i].prom_type == 2 || g[i].prom_type == 6) { | |
| 78 | + if (g[ii].prom_type && g[ii].prom_type == 1) { | |
| 79 | + glist += g[ii].goods_id + ","; | |
| 80 | + } | |
| 81 | + if (g[ii].original_img != undefined) { | |
| 82 | + if (g[ii].original_img.indexOf(oo.imghost) == -1) | |
| 83 | + g[ii].original_img = oo.imghost + g[ii].original_img; | |
| 84 | + } | |
| 85 | + | |
| 86 | + if (g[ii].add_time != undefined && rurl.indexOf("goodscollect") < 0) { | |
| 87 | + var tx = g[ii].add_time + ""; | |
| 88 | + if (tx.indexOf('-') == -1) { | |
| 89 | + g[ii].add_time = ut.formatTime(g[ii].add_time, 'yyyy-MM-dd hh:mm:ss'); | |
| 90 | + } | |
| 91 | + } | |
| 92 | + if (rurl.indexOf('comment/page') != -1) { | |
| 93 | + console.log('comment/page'); | |
| 94 | + console.log(g[ii].img); | |
| 95 | + var tx1 = g[ii].img; | |
| 96 | + | |
| 97 | + if (tx1 != "" && tx1 != null && ut.isString(tx1)) { | |
| 98 | + var arr = ut.unserialize(tx1); | |
| 99 | + g[ii].img = arr; | |
| 100 | + } else if (!ut.isArray(tx1)) { | |
| 101 | + g[ii].img = ""; | |
| 102 | + } | |
| 103 | + } | |
| 94 | 104 | } |
| 95 | - } | |
| 96 | - if (rurl.indexOf('comment/page')!=-1){ | |
| 97 | - console.log('comment/page'); | |
| 98 | - console.log(g[ii].img); | |
| 99 | - var tx1 = g[ii].img; | |
| 100 | - | |
| 101 | - if (tx1 != "" && tx1 != null && ut.isString(tx1)){ | |
| 102 | - var arr = ut.unserialize(tx1); | |
| 103 | - g[ii].img=arr; | |
| 104 | - } else if (!ut.isArray(tx1)){ | |
| 105 | - g[ii].img=""; | |
| 106 | - } | |
| 107 | - } | |
| 108 | 105 | } |
| 109 | 106 | |
| 110 | 107 | ... | ... |