Commit 846498126701f77e62d3370fcc45b798b316165b
1 parent
b0cec5a2
1、赠品限量 超量的优化
2、多门店的时候,一起超出商品限购的时候,不能提交订单!
Showing
3 changed files
with
43 additions
and
12 deletions
packageE/pages/cart/cart2/cart2.js
@@ -2333,6 +2333,7 @@ Page({ | @@ -2333,6 +2333,7 @@ Page({ | ||
2333 | if (get_data.gift_id && parseInt(get_data.zp_mode) != 1 | 2333 | if (get_data.gift_id && parseInt(get_data.zp_mode) != 1 |
2334 | && get_data.zp_num * item_map.bs <= get_data.limit_num-other_gift | 2334 | && get_data.zp_num * item_map.bs <= get_data.limit_num-other_gift |
2335 | && get_data.zp_num * item_map.bs <= get_data.gift_storecount | 2335 | && get_data.zp_num * item_map.bs <= get_data.gift_storecount |
2336 | + && get_data.zp_num>get_data.must_num //增加一个超量 | ||
2336 | ) { | 2337 | ) { |
2337 | 2338 | ||
2338 | item_map.gift_id = get_data.gift_id; | 2339 | item_map.gift_id = get_data.gift_id; |
@@ -4711,6 +4712,8 @@ Page({ | @@ -4711,6 +4712,8 @@ Page({ | ||
4711 | 4712 | ||
4712 | var order_prom_list_cart = th.data.order_prom_list_cart; | 4713 | var order_prom_list_cart = th.data.order_prom_list_cart; |
4713 | 4714 | ||
4715 | + //优惠商品限购的优化 | ||
4716 | + var yh_lm_map={}; | ||
4714 | //--组装推送数据-- | 4717 | //--组装推送数据-- |
4715 | for (var i = 0; i < order_prom_list_cart.length; i++) { | 4718 | for (var i = 0; i < order_prom_list_cart.length; i++) { |
4716 | var t_item = order_prom_list_cart[i]; | 4719 | var t_item = order_prom_list_cart[i]; |
@@ -4877,8 +4880,6 @@ Page({ | @@ -4877,8 +4880,6 @@ Page({ | ||
4877 | var check_map = {}; | 4880 | var check_map = {}; |
4878 | let groupchat_ids=[] | 4881 | let groupchat_ids=[] |
4879 | 4882 | ||
4880 | - | ||
4881 | - | ||
4882 | //-------------让商品添加到商品列表-------------------- | 4883 | //-------------让商品添加到商品列表-------------------- |
4883 | for (var k = 0; k < t_item.goods.length; k++) { | 4884 | for (var k = 0; k < t_item.goods.length; k++) { |
4884 | 4885 | ||
@@ -4987,7 +4988,8 @@ Page({ | @@ -4987,7 +4988,8 @@ Page({ | ||
4987 | var mo_num=getApp().get_limit_qty(g_item,act.length); | 4988 | var mo_num=getApp().get_limit_qty(g_item,act.length); |
4988 | var steep=getApp().get_limit_qty(g_item,act.length,1); | 4989 | var steep=getApp().get_limit_qty(g_item,act.length,1); |
4989 | 4990 | ||
4990 | - if ([0,3,5,7,10].indexOf(goods.prom_type)>-1){ | 4991 | + //赠品要排除之外,不进行判断 |
4992 | + if ([0,3,5,7,10].indexOf(goods.prom_type)>-1 && !goods.is_gift){ | ||
4991 | if(mo_num>goods.goods_num){ | 4993 | if(mo_num>goods.goods_num){ |
4992 | getApp().confirmBox(goods.goods_name + "的未达到起订数量"); | 4994 | getApp().confirmBox(goods.goods_name + "的未达到起订数量"); |
4993 | th.data.is_summit_ing = 0; | 4995 | th.data.is_summit_ing = 0; |
@@ -5026,12 +5028,22 @@ Page({ | @@ -5026,12 +5028,22 @@ Page({ | ||
5026 | pro_by_num=gd_limit_rs.data.data.promgoodsbuynum | 5028 | pro_by_num=gd_limit_rs.data.data.promgoodsbuynum |
5027 | } | 5029 | } |
5028 | 5030 | ||
5029 | - if(pro_gd_limit_num>0 && pro_gd_limit_num<pro_by_num+goods.goods_num){ | 5031 | + var m_ky=goods.goods_id+'|'+goods.prom_id; |
5032 | + | ||
5033 | + var more_num=yh_lm_map[m_ky]?yh_lm_map[m_ky]:0; | ||
5034 | + | ||
5035 | + if(pro_gd_limit_num<pro_by_num+goods.goods_num+more_num){ | ||
5030 | getApp().confirmBox(goods.goods_name + "超优惠促销限购,无法购买"); | 5036 | getApp().confirmBox(goods.goods_name + "超优惠促销限购,无法购买"); |
5031 | th.data.is_summit_ing = 0; | 5037 | th.data.is_summit_ing = 0; |
5032 | th.setData({ submit: 0 }) | 5038 | th.setData({ submit: 0 }) |
5033 | return false; | 5039 | return false; |
5034 | } | 5040 | } |
5041 | + | ||
5042 | + //方便下一轮商品判断限购 | ||
5043 | + if(!yh_lm_map[m_ky]) { | ||
5044 | + yh_lm_map[m_ky]=0; | ||
5045 | + } | ||
5046 | + yh_lm_map[m_ky]+=goods.goods_num; | ||
5035 | } | 5047 | } |
5036 | } | 5048 | } |
5037 | 5049 | ||
@@ -7245,7 +7257,7 @@ Page({ | @@ -7245,7 +7257,7 @@ Page({ | ||
7245 | var gift_id = discount.gift_id; | 7257 | var gift_id = discount.gift_id; |
7246 | for (var i in alllist) { | 7258 | for (var i in alllist) { |
7247 | var list_item = alllist[i]; | 7259 | var list_item = alllist[i]; |
7248 | - //-- 门店相同,活动相同的时候 -- | 7260 | + //-- 门店相同,活动相同的时候,就continue掉 -- |
7249 | if (pick_id == list_item.pickup_id && prom_id == list_item.prom_id) continue; | 7261 | if (pick_id == list_item.pickup_id && prom_id == list_item.prom_id) continue; |
7250 | for (var j in list_item.goods) { | 7262 | for (var j in list_item.goods) { |
7251 | //如果赠品的ID一样,要进行统计数量 | 7263 | //如果赠品的ID一样,要进行统计数量 |
@@ -7254,7 +7266,7 @@ Page({ | @@ -7254,7 +7266,7 @@ Page({ | ||
7254 | all_num += list_item.goods[j].goods_num; | 7266 | all_num += list_item.goods[j].goods_num; |
7255 | } | 7267 | } |
7256 | if (list_item.goods[j].is_gift == 1 && list_item.goods[j].gift_id == gift_id && list_item.goods[j].prom_id == prom_id) { | 7268 | if (list_item.goods[j].is_gift == 1 && list_item.goods[j].gift_id == gift_id && list_item.goods[j].prom_id == prom_id) { |
7257 | - all_limit_num += list_item.goods[j].limit_num; | 7269 | + all_limit_num += list_item.goods[j].goods_num; |
7258 | } | 7270 | } |
7259 | } | 7271 | } |
7260 | } | 7272 | } |
@@ -7268,7 +7280,8 @@ Page({ | @@ -7268,7 +7280,8 @@ Page({ | ||
7268 | }); | 7280 | }); |
7269 | return false; | 7281 | return false; |
7270 | } | 7282 | } |
7271 | - if (discount.limit_num < all_limit_num) { | 7283 | + //-- 限购一定要大于0,否则就是不限的意思 -- |
7284 | + if (discount.limit_num>0 && discount.limit_num < all_limit_num) { | ||
7272 | wx.showToast({ | 7285 | wx.showToast({ |
7273 | title: "超出赠品限购", | 7286 | title: "超出赠品限购", |
7274 | icon: 'none', | 7287 | icon: 'none', |
@@ -7292,6 +7305,11 @@ Page({ | @@ -7292,6 +7305,11 @@ Page({ | ||
7292 | for (let i in giftsinfo) { | 7305 | for (let i in giftsinfo) { |
7293 | let item = giftsinfo[i]; | 7306 | let item = giftsinfo[i]; |
7294 | if (!item.selected) continue; | 7307 | if (!item.selected) continue; |
7308 | + | ||
7309 | + if(item.must_num>0 && item.goods_num<item.must_num){ | ||
7310 | + ut.m_toast("活动赠品的超量数量不足"); | ||
7311 | + return false; | ||
7312 | + } | ||
7295 | all_num += item.goods_num; | 7313 | all_num += item.goods_num; |
7296 | } | 7314 | } |
7297 | if (all_num > zp_num) { | 7315 | if (all_num > zp_num) { |
@@ -7323,7 +7341,6 @@ Page({ | @@ -7323,7 +7341,6 @@ Page({ | ||
7323 | var pos=this.find_pro_last(pk_list_goods,3,this.data.gf_prom_id); | 7341 | var pos=this.find_pro_last(pk_list_goods,3,this.data.gf_prom_id); |
7324 | var fd_gd=pk_list_goods[pos] | 7342 | var fd_gd=pk_list_goods[pos] |
7325 | 7343 | ||
7326 | - | ||
7327 | var url = "/api/weshop/cart/delGift?store_id=" + os.stoid + "&user_id=" | 7344 | var url = "/api/weshop/cart/delGift?store_id=" + os.stoid + "&user_id=" |
7328 | + getApp().globalData.user_id + "&is_gift=1&pick_id=" + this.data.gift_pkid + "&prom_id=" + this.data.gf_prom_id; | 7345 | + getApp().globalData.user_id + "&is_gift=1&pick_id=" + this.data.gift_pkid + "&prom_id=" + this.data.gf_prom_id; |
7329 | await getApp().request.promiseDelete(url, {}); | 7346 | await getApp().request.promiseDelete(url, {}); |
packageE/pages/cart/cart2/cart2.wxml
@@ -1054,17 +1054,21 @@ | @@ -1054,17 +1054,21 @@ | ||
1054 | </view> | 1054 | </view> |
1055 | 1055 | ||
1056 | <navigator class="goods-img rel" bindtap="go_gd" data-gd="{{items.goods_id}}"> | 1056 | <navigator class="goods-img rel" bindtap="go_gd" data-gd="{{items.goods_id}}"> |
1057 | - <image class="wh100" src="{{imgUrl+items.goodsinfo.original_img}}" binderror="bind_bnerr2" data-errorimg="gift_goods[{{idx}}].goodsinfo.original_img"></image> | 1057 | + <image class="wh100" src="{{imgUrl+items.goodsinfo.original_img}}" binderror="cart_set_err1" data-err="giftsinfo[{{idx}}].goodsinfo.original_img"></image> |
1058 | </navigator> | 1058 | </navigator> |
1059 | <view class="goods-cont"> | 1059 | <view class="goods-cont"> |
1060 | - <view class="goods-name"> | ||
1061 | - <navigator bindtap="go_gd" class="ellipsis-2 fs30" data-gd="{{items.goods_id}}">{{items.goods_name}}</navigator> | 1060 | + <view class="goods-name2"> |
1061 | + <navigator bindtap="go_gd" class="ellipsis-2 fs30" data-gd="{{items.goods_id}}">{{items.goods_name}} | ||
1062 | + </navigator> | ||
1062 | 1063 | ||
1063 | <view class="specifications ellipsis-1"> | 1064 | <view class="specifications ellipsis-1"> |
1064 | <view wx:if="{{items.goodsinfo.goods_color || items.goodsinfo.goods_spec}}"> | 1065 | <view wx:if="{{items.goodsinfo.goods_color || items.goodsinfo.goods_spec}}"> |
1065 | {{items.goodsinfo.goods_color}}{{items.goodsinfo.goods_color?"/":''}}{{items.goodsinfo.goods_spec}}</view> | 1066 | {{items.goodsinfo.goods_color}}{{items.goodsinfo.goods_color?"/":''}}{{items.goodsinfo.goods_spec}}</view> |
1066 | <view wx:else>规格1</view> | 1067 | <view wx:else>规格1</view> |
1067 | </view> | 1068 | </view> |
1069 | + <text class="c-red" wx:if="{{items.must_num>0 && items.limit_num>0 && items.must_num>items.limit_num}}">(超量不足)</text> | ||
1070 | + <text class="c-red" wx:elif="{{items.must_num>0}}">必选{{items.must_num}}件</text> | ||
1071 | + | ||
1068 | </view> | 1072 | </view> |
1069 | 1073 | ||
1070 | <view class="flex alend jc_sb"> | 1074 | <view class="flex alend jc_sb"> |
packageE/pages/cart/cart2/cart2.wxss
@@ -130,7 +130,13 @@ page { | @@ -130,7 +130,13 @@ page { | ||
130 | margin-bottom: 16rpx; | 130 | margin-bottom: 16rpx; |
131 | font-size: 28rpx; | 131 | font-size: 28rpx; |
132 | color: #333; | 132 | color: #333; |
133 | - | 133 | +} |
134 | +.goods-name2 { | ||
135 | + height: 74rpx; | ||
136 | + line-height: 40rpx; | ||
137 | + margin-bottom: 16rpx; | ||
138 | + font-size: 28rpx; | ||
139 | + color: #333; | ||
134 | } | 140 | } |
135 | 141 | ||
136 | .goods-color { | 142 | .goods-color { |
@@ -1228,6 +1234,10 @@ margin-left: 20rpx; | @@ -1228,6 +1234,10 @@ margin-left: 20rpx; | ||
1228 | margin-top: 6rpx; | 1234 | margin-top: 6rpx; |
1229 | } | 1235 | } |
1230 | 1236 | ||
1237 | +.c-red { | ||
1238 | + color: #f23030;vertical-align: top;position: relative;top: 3rpx;font-size: 21rpx;margin-left: 2rpx; | ||
1239 | +} | ||
1240 | + | ||
1231 | 1241 | ||
1232 | 1242 | ||
1233 | 1243 |