Commit d9b51885d995f9bc6d62ca34ced97539458f26e8

Authored by yvan.ni
1 parent 02bfb03f

商品组合购的 店铺优惠的计算优化

pages/cart/cart/cart.js
@@ -619,7 +619,7 @@ Page({ @@ -619,7 +619,7 @@ Page({
619 var wlist=""; 619 var wlist="";
620 for(var i in list.goods){ 620 for(var i in list.goods){
621 //如果商品有促销活动 621 //如果商品有促销活动
622 - if(list.goods[i].prom_type>0 || list.goods[i].prom_type==7 ) continue; 622 + if(list.goods[i].prom_type>0 && list.goods[i].prom_type!=7) continue;
623 wlist+= encodeURIComponent(list.goods[i].erpwareid)+","; 623 wlist+= encodeURIComponent(list.goods[i].erpwareid)+",";
624 } 624 }
625 wlist=ut.sub_last(wlist); 625 wlist=ut.sub_last(wlist);
@@ -644,7 +644,7 @@ Page({ @@ -644,7 +644,7 @@ Page({
644 set_cart_offline_price:function(data,glist) 644 set_cart_offline_price:function(data,glist)
645 { 645 {
646 for(var i in glist) { 646 for(var i in glist) {
647 - if(glist[i].erpwareid==data.WareId && glist[i].prom_type==0){ 647 + if(glist[i].erpwareid==data.WareId && (glist[i].prom_type==0 || glist[i].prom_type==7)){
648 if(glist[i].goods_price>=data.WarePrice){ 648 if(glist[i].goods_price>=data.WarePrice){
649 glist[i].is_offline=1; 649 glist[i].is_offline=1;
650 glist[i].offline_price=data.WarePrice; 650 glist[i].offline_price=data.WarePrice;
@@ -1243,6 +1243,15 @@ Page({ @@ -1243,6 +1243,15 @@ Page({
1243 [txt1]: offline_price.toFixed(2), 1243 [txt1]: offline_price.toFixed(2),
1244 [txt2]: offline_num, 1244 [txt2]: offline_num,
1245 }); 1245 });
  1246 + }else{
  1247 + if(car[a].offline_price>0){
  1248 + var txt1= "requestData[" + a + "].offline_price";
  1249 + var txt2= "requestData[" + a + "].offline_num";
  1250 + th.setData({
  1251 + [txt1]: 0,
  1252 + [txt2]: 0
  1253 + });
  1254 + }
1246 } 1255 }
1247 1256
1248 } 1257 }
pages/cart/cart/cart.wxml
@@ -122,7 +122,7 @@ @@ -122,7 +122,7 @@
122 <view class="fs20">¥</view> 122 <view class="fs20">¥</view>
123 <view class="fs28">{{items.goods_price}}</view> 123 <view class="fs28">{{items.goods_price}}</view>
124 124
125 - <view wx:if="{{items.is_offline}}" class="quan_color flex ai-center"><text>券后 ¥{{items.offline_price}}</text></view> 125 + <view wx:if="{{items.is_offline}}" class="quan_color flex ai-center"><text>券后 ¥{{g_filter.toFix(items.offline_price,2)}}</text></view>
126 126
127 </view> 127 </view>
128 <view class="count"> 128 <view class="count">
pages/cart/cart/g_filter.wxs
@@ -20,10 +20,19 @@ var g_filters = { @@ -20,10 +20,19 @@ var g_filters = {
20 var tnow=getDate(); 20 var tnow=getDate();
21 if(t1>=tnow) return 1; 21 if(t1>=tnow) return 1;
22 return 0; 22 return 0;
23 - } 23 + },
  24 +
  25 + toFix: function (val, count) {
  26 + if(!val){
  27 + return parseFloat(0).toFixed(count);
  28 + }
  29 + val = parseFloat(val);
  30 + return val.toFixed(count)
  31 + }
24 } 32 }
25 module.exports = { 33 module.exports = {
26 has_char: g_filters.has_char, 34 has_char: g_filters.has_char,
27 beg_time: g_filters.beg_time, 35 beg_time: g_filters.beg_time,
28 end_time: g_filters.end_time, 36 end_time: g_filters.end_time,
  37 + toFix: g_filters.toFix,
29 } 38 }
30 \ No newline at end of file 39 \ No newline at end of file
pages/cart/cart/zh_calculate.js
@@ -217,7 +217,7 @@ module.exports = { @@ -217,7 +217,7 @@ module.exports = {
217 } 217 }
218 aprice += item.price; 218 aprice += item.price;
219 if (item.offline_price) { 219 if (item.offline_price) {
220 - offline_price += item.goods_price - item.offline_price; 220 + offline_price += gitem.goods_price - gitem.offline_price;
221 offline_num += 1; 221 offline_num += 1;
222 } 222 }
223 } 223 }
@@ -237,8 +237,8 @@ module.exports = { @@ -237,8 +237,8 @@ module.exports = {
237 gitem.need_downlow_num+=item.num; 237 gitem.need_downlow_num+=item.num;
238 } 238 }
239 aprice += item.price*item.num; 239 aprice += item.price*item.num;
240 - if (item.offline_price) {  
241 - offline_price += (item.goods_price - item.offline_price)*item.num; 240 + if (item.offline_price && th.data.sales_rules==2) {
  241 + offline_price += (gitem.goods_price - gitem.offline_price)*item.num;
242 offline_num += item.num; 242 offline_num += item.num;
243 } 243 }
244 244
@@ -264,13 +264,13 @@ module.exports = { @@ -264,13 +264,13 @@ module.exports = {
264 for (var ii in goods) { 264 for (var ii in goods) {
265 var item = goods[ii]; 265 var item = goods[ii];
266 var gitem=get_num2(item); 266 var gitem=get_num2(item);
267 - if(gitem) {  
268 - gitem.need_downlow_num = item.num; 267 + if(gitem && gitem.selected) {
  268 +
  269 + gitem.need_downlow_num = gitem.goods_num;
269 270
270 - if (item.offline_price) {  
271 - offline_price += (item[ii].goods_price - item[ii].offline_price) * item[ii]  
272 - .goods_num;  
273 - offline_num += item[ii].goods_num; 271 + if (item.offline_price && th.data.sales_rules==2) {
  272 + offline_price += (item.goods_price - item.offline_price) * gitem.goods_num;
  273 + offline_num += gitem.goods_num;
274 } 274 }
275 } 275 }
276 } 276 }