Commit af05b82dbb06e1dfe290e8cea45235b3718ce9cb
1 parent
9ef2e7b5
1、计算金额的bug优化
2、确认订单的立即购买的优化
Showing
3 changed files
with
76 additions
and
17 deletions
pages/user/order_detail/order_detail.js
... | ... | @@ -822,6 +822,17 @@ Page({ |
822 | 822 | }) |
823 | 823 | |
824 | 824 | |
825 | + if(gg.prom_type==3){ | |
826 | + var prom_pc=null; | |
827 | + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => { | |
828 | + if (res.data.code == 0) { prom_pc = res.data.data; } | |
829 | + }) | |
830 | + | |
831 | + if(prom_pc){ | |
832 | + gg.discount_field=prom_pc.discount_field; | |
833 | + } | |
834 | + } | |
835 | + | |
825 | 836 | if ((gg.prom_type == 1 || gg.prom_type == 2 || gg.prom_type == 4 || gg.prom_type == 6 || gg.prom_type == 8 || gg.prom_type == 9) |
826 | 837 | && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) { |
827 | 838 | var prom = null; |
... | ... | @@ -1043,17 +1054,30 @@ Page({ |
1043 | 1054 | |
1044 | 1055 | //-- 如果会员是等级会员,商品有等级价,且不是活动商品,同时线下取价的要放在最后来判断 -- |
1045 | 1056 | if (!good.is_gift && !good.is_collocation && gg.prom_type != 9) { |
1046 | - if (card_field && gg[card_field] > 0) { | |
1047 | - if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | |
1048 | - if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1049 | 1057 | |
1050 | - } else { | |
1051 | - if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | |
1052 | - if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1058 | + //-- 优惠促销的时候控制取价规则 -- | |
1059 | + if(gg.prom_type!=3 || gg.discount_field==undefined || gg.discount_field==0 ) { | |
1060 | + if (card_field && gg[card_field] > 0) { | |
1061 | + if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | |
1062 | + if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1063 | + | |
1064 | + } else { | |
1065 | + if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | |
1066 | + if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1067 | + } | |
1068 | + }else{ | |
1069 | + switch (gg.discount_field){ | |
1070 | + case 1: | |
1071 | + if (good.goods_price != gg.shop_price) isok = 0; | |
1072 | + break; | |
1073 | + case 2: | |
1074 | + if (good.goods_price != gg.market_price) isok = 0; | |
1075 | + break; | |
1076 | + } | |
1053 | 1077 | } |
1078 | + | |
1054 | 1079 | var is_h = 0; |
1055 | 1080 | if (!isok) { |
1056 | - | |
1057 | 1081 | var content = gg.goods_name + '商品的价格发生了变化,请取消订单重新购买1' |
1058 | 1082 | th.toast(content); |
1059 | 1083 | th.setData({ paying: 0 }); | ... | ... |
pages/user/order_list/order_list.js
... | ... | @@ -17,6 +17,8 @@ var ut = require('../../../utils/util.js'); |
17 | 17 | var t = require("../../../utils/pay.js"); |
18 | 18 | var t_pay = require("../../../utils/pay2.js"); |
19 | 19 | |
20 | + | |
21 | + | |
20 | 22 | Page({ |
21 | 23 | data: { |
22 | 24 | url: e.globalData.setting.url, |
... | ... | @@ -1105,13 +1107,26 @@ Page({ |
1105 | 1107 | return e.s_time < ut.gettimestamp() || (e.warm_uptime && e.warm_uptime < ut.gettimestamp()) |
1106 | 1108 | }) |
1107 | 1109 | if (arr2.length == 1) { |
1108 | - gg.prom_type=arr2[0].prom_type; | |
1109 | - gg.prom_id=arr2[0].act_id; | |
1110 | + gg.prom_type=arr2[0].prom_type; | |
1111 | + gg.prom_id=arr2[0].act_id; | |
1110 | 1112 | } |
1111 | 1113 | } |
1112 | 1114 | }) |
1113 | 1115 | |
1114 | 1116 | |
1117 | + if(gg.prom_type==3){ | |
1118 | + var prom_pc=null; | |
1119 | + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => { | |
1120 | + if (res.data.code == 0) { prom_pc = res.data.data; } | |
1121 | + }) | |
1122 | + | |
1123 | + if(prom_pc){ | |
1124 | + gg.discount_field=prom_pc.discount_field; | |
1125 | + } | |
1126 | + | |
1127 | + } | |
1128 | + | |
1129 | + | |
1115 | 1130 | if ((gg.prom_type == 1 || gg.prom_type == 2 || gg.prom_type == 4 || gg.prom_type == 6 || gg.prom_type == 8 || gg.prom_type == 9) |
1116 | 1131 | && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) { |
1117 | 1132 | var prom = null; |
... | ... | @@ -1216,6 +1231,9 @@ Page({ |
1216 | 1231 | if(!the_yh_map[gg.prom_id]) the_yh_map[gg.prom_id]=[]; |
1217 | 1232 | the_yh_map[gg.prom_id].push(good); |
1218 | 1233 | } |
1234 | + | |
1235 | + good.discount_field=prom.discount_field; | |
1236 | + | |
1219 | 1237 | break |
1220 | 1238 | case 7: |
1221 | 1239 | //获取组合购活动 |
... | ... | @@ -1329,14 +1347,30 @@ Page({ |
1329 | 1347 | |
1330 | 1348 | //-- 如果会员是等级会员,商品有等级价,且不是活动商品,同时线下取价的要放在最后来判断 -- |
1331 | 1349 | if (!good.is_gift && !good.is_collocation && gg.prom_type != 9) { |
1332 | - if (card_field && gg[card_field] > 0) { | |
1333 | - if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | |
1334 | - if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1335 | 1350 | |
1336 | - } else { | |
1337 | - if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | |
1338 | - if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1351 | + | |
1352 | + //-- 优惠促销的时候控制取价规则 -- | |
1353 | + if(gg.prom_type!=3 || gg.discount_field==undefined || gg.discount_field==0 ){ | |
1354 | + if (card_field && gg[card_field] > 0) { | |
1355 | + if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | |
1356 | + if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1357 | + | |
1358 | + } else { | |
1359 | + if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | |
1360 | + if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | |
1361 | + } | |
1362 | + }else{ | |
1363 | + switch (gg.discount_field){ | |
1364 | + case 1: | |
1365 | + if (good.goods_price != gg.shop_price) isok = 0; | |
1366 | + break; | |
1367 | + case 2: | |
1368 | + if (good.goods_price != gg.market_price) isok = 0; | |
1369 | + break; | |
1370 | + } | |
1339 | 1371 | } |
1372 | + | |
1373 | + | |
1340 | 1374 | var is_h = 0; |
1341 | 1375 | if (!isok) { |
1342 | 1376 | ... | ... |
utils/more_cx.js
... | ... | @@ -424,8 +424,9 @@ module.exports = { |
424 | 424 | var cx_act_map=[]; |
425 | 425 | for(var i=0; i<goods.length;i++){ |
426 | 426 | |
427 | - //商品的价格要还原 | |
428 | - goods[i].goods_price=goods[i].init_goods_price; | |
427 | + //商品的价格要还原,只有在购物车时候有init_goods_price,因为购物车要还原 | |
428 | + if(goods[i].init_goods_price!=undefined) | |
429 | + goods[i].goods_price=goods[i].init_goods_price; | |
429 | 430 | //进行深拷贝 |
430 | 431 | var c_item=JSON.parse(JSON.stringify(goods[i])); |
431 | 432 | //没有选中 | ... | ... |