Commit bc8b6f63849d51ed23c9e9fac62bdf34db0f4223
1 parent
95d640b5
不同门店,在赠品限购的时候,不重复送赠品,要计算限购的数量
Showing
1 changed file
with
28 additions
and
4 deletions
packageE/pages/cart/cart2/cart2.js
| ... | ... | @@ -271,6 +271,7 @@ Page({ |
| 271 | 271 | |
| 272 | 272 | //----------子页返回父页触发---------- |
| 273 | 273 | onShow: function () { |
| 274 | + | |
| 274 | 275 | //富友支付取消支付强行回去 |
| 275 | 276 | var fy=ut.fy_back("/pages/user/order_list/order_list",1); |
| 276 | 277 | if(fy) return false; |
| ... | ... | @@ -284,7 +285,6 @@ Page({ |
| 284 | 285 | wx.navigateTo({ |
| 285 | 286 | url: "/pages/index/index/index" |
| 286 | 287 | }) |
| 287 | - | |
| 288 | 288 | } else { |
| 289 | 289 | this.getuser_addr(function (ie) { |
| 290 | 290 | console.log("getuser_addr") |
| ... | ... | @@ -2121,9 +2121,9 @@ Page({ |
| 2121 | 2121 | var th=this; |
| 2122 | 2122 | var pos=this.find_pro_last(ord_goods,3,item_map.prom_id); |
| 2123 | 2123 | var is_has_gift=this.is_has_gift(ord_goods,item_map.prom_id) |
| 2124 | + | |
| 2124 | 2125 | //-- 没有赠品的时候才添加,避免购物车重复出现 -- |
| 2125 | 2126 | if(pos>-1 && !is_has_gift){ |
| 2126 | - | |
| 2127 | 2127 | var newd = { |
| 2128 | 2128 | goods_id: get_data.goods_id, |
| 2129 | 2129 | goods_num: get_data.bs * get_data.zp_num, //是赠品的翻倍 |
| ... | ... | @@ -2155,6 +2155,25 @@ Page({ |
| 2155 | 2155 | |
| 2156 | 2156 | }, |
| 2157 | 2157 | |
| 2158 | + //-- 其他门店赠品的总和 -- | |
| 2159 | + get_other_gift(c_arr,gift_id,pickid){ | |
| 2160 | + var num=0; | |
| 2161 | + for (var i in c_arr) { | |
| 2162 | + var cart_item = c_arr[i]; //就是每一单的意思 | |
| 2163 | + var pickid0 = cart_item.pickup_id; | |
| 2164 | + //相同门店不用统计 | |
| 2165 | + if(pickid0==pickid) continue; | |
| 2166 | + var ord_goods = cart_item.goods; //就是每一单的从表的意思 | |
| 2167 | + var fd=ord_goods.find(function (er){ | |
| 2168 | + return er.is_gift && er.gift_id==gift_id | |
| 2169 | + }) | |
| 2170 | + if(fd){ | |
| 2171 | + num+=fd.goods_num; | |
| 2172 | + } | |
| 2173 | + } | |
| 2174 | + return num; | |
| 2175 | + }, | |
| 2176 | + | |
| 2158 | 2177 | calc_per: async function (c_arr) { |
| 2159 | 2178 | |
| 2160 | 2179 | var send_gf = {}; |
| ... | ... | @@ -2171,7 +2190,6 @@ Page({ |
| 2171 | 2190 | var o_price = 0, q_conditin = 0; |
| 2172 | 2191 | //--------循环计算总价----------- |
| 2173 | 2192 | for (var j = 0; j < ord_goods.length; j++) { |
| 2174 | - | |
| 2175 | 2193 | if (ord_goods[j].whsle_id) continue; |
| 2176 | 2194 | o_price += ord_goods[j].goods_price * ord_goods[j].goods_num; |
| 2177 | 2195 | } |
| ... | ... | @@ -2208,9 +2226,15 @@ Page({ |
| 2208 | 2226 | item_map.zxlbtitle = get_data.zxlbtitle; |
| 2209 | 2227 | //每月礼包 |
| 2210 | 2228 | item_map.monthlbtitle = get_data.monthlbtitle; |
| 2229 | + | |
| 2230 | + | |
| 2231 | + //-- 其他门店赠品的总和 -- | |
| 2232 | + var other_gift=0; | |
| 2233 | + other_gift=th.get_other_gift(c_arr,get_data.gift_id,pickid); | |
| 2234 | + | |
| 2211 | 2235 | //------end------- |
| 2212 | 2236 | if (get_data.gift_id && parseInt(get_data.zp_mode) != 1 |
| 2213 | - && get_data.zp_num * item_map.bs <= get_data.limit_num | |
| 2237 | + && get_data.zp_num * item_map.bs <= get_data.limit_num-other_gift | |
| 2214 | 2238 | && get_data.zp_num * item_map.bs <= get_data.gift_storecount |
| 2215 | 2239 | ) { |
| 2216 | 2240 | ... | ... |