diff --git a/pages/cart/cart2/cart2.js b/pages/cart/cart2/cart2.js index 14bcd0c..c16c5c0 100644 --- a/pages/cart/cart2/cart2.js +++ b/pages/cart/cart2/cart2.js @@ -2544,6 +2544,15 @@ Page({ //房间号的ids var room_ids = ""; + + //-- 把券的钱,写入从表 --- + if (t_item.quan_youhui_list && t_item.coupon_price) { + for (var kk in t_item.quan_youhui_list) { + var you_item = t_item.quan_youhui_list[kk]; + //-- 对券的价格进行平摊 -- + await th.split_set_goods_quanprice(you_item,t_item); + } + } //-------------让商品添加到商品列表-------------------- for (var k = 0; k < t_item.goods.length; k++) { var g_item = t_item.goods[k]; @@ -2567,17 +2576,6 @@ Page({ goods.pricing_type = g_item.pricing_type; } - //--把券的钱,写入从表--- - if (t_item.quan_youhui_list && t_item.coupon_price) { - for (var kk in t_item.quan_youhui_list) { - var you_item = t_item.quan_youhui_list[kk]; - if (g_item.prom_type!=7 && g_item.erpwareid == you_item.WareId) { - goods.quan_num = you_item.WareCashSum; - goods.quan_no = you_item.CashRepNo; - } - } - } - //--判断活动的类型-- switch (g_item.prom_type) { case 1: @@ -4040,6 +4038,73 @@ Page({ go_url:function (e) { var url = e.currentTarget.dataset.url; getApp().goto(url); + }, + + //进行对商品的平摊g_item是单个商品,you_item是这个商品分多少优惠券的钱,goods是商品列表 + split_set_goods_quanprice:async function (you_item,t_item) { + var coupon_price=t_item.coupon_price; + var goods=t_item.goods; + var arr=[]; + //判断是不是有goods_id重复 + for(var i=0;i { + if (res.data.code == 0) { + pt_res = res.data.data; + } + }) + if (pt_res) { + var q_s_num = 0; + for (var i in pt_res) { + var idx = pt_res[i].idx; + //有account的实收价,就要用account实收价 + var price=(t_item.goods[idx].account?t_item.goods[idx].account:t_item.goods[idx].goods_price); + price=(price - pt_res[i].fisrt_account)* t_item.goods[idx].goods_num; + t_item.goods[idx].quan_num =price; + + t_item.goods[idx].quan_num =Math.floor(t_item.goods[idx].quan_num * 100) / 100; + t_item.goods[idx].quan_no=t_item.quan_no; + q_s_num += t_item.goods[idx].quan_num; + } + + if (q_s_num > parseFloat(coupon_price) || q_s_num < parseFloat(coupon_price)){ + for (var ik in arr) { + if (arr[ik].goods_num == 1) { + var id = arr[ik].idx; + var pri=Math.floor(coupon_price*100)/100-Math.floor(q_s_num*100)/100 + t_item.goods[id].quan_num+=pri; + break; + } + } + } + } }