Commit bc8b6f63849d51ed23c9e9fac62bdf34db0f4223

Authored by yvan.ni
1 parent 95d640b5

不同门店,在赠品限购的时候,不重复送赠品,要计算限购的数量

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  
... ...