Commit 8b9fa55269eefdf172345336dd5c1a5846640413
1 parent
a857a0be
fix;服务卡项购物车超限购
Showing
1 changed file
with
40 additions
and
77 deletions
packageA/pages/goodsInfo/goodsInfo.js
... | ... | @@ -859,16 +859,16 @@ Page({ |
859 | 859 | return false; |
860 | 860 | }; |
861 | 861 | |
862 | - | |
862 | + // 秒杀活动 | |
863 | 863 | if(this.data.prom_type == 1) { |
864 | 864 | |
865 | 865 | this.data.sele_g.viplimited = this.data.sele_g.buy_limit; |
866 | 866 | |
867 | - // 每人限购数 | |
867 | + // 每人最大限购数 | |
868 | 868 | th.data.sele_g.viplimited = th.data.sele_g.buy_limit; |
869 | 869 | |
870 | 870 | //----获取用户活动购买数---- |
871 | - // 已经付款的单数 | |
871 | + // 已经付款的单数,已经成功购买的数量 | |
872 | 872 | var gd_buy_num = 0; |
873 | 873 | await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum?store_id="+os.stoid+"&user_id="+getApp().globalData.user_id+"&card_id="+th.data.options.goods_id+"&prom_type="+th.data.options.prom_type+"&prom_id="+th.data.options.prom_id, { |
874 | 874 | }).then(res => { |
... | ... | @@ -884,51 +884,51 @@ Page({ |
884 | 884 | }; |
885 | 885 | }); |
886 | 886 | |
887 | - // 获取购物车同款数量 判断是否超库存 | |
888 | - var cartGoodsNum = 0; | |
889 | - await getApp().request.promiseGet("/api/weshop/cartService/page?store_id="+os.stoid+"&user_id="+oo.user_id+"&service_id="+th.data.data.id+"&pick_id="+th.data.sto_sele_id, | |
890 | - { }).then(res => { | |
891 | - if (res.data.data.pageData.length > 0) { | |
892 | - const tmpObj = res.data.data.pageData[0]; | |
893 | - cartGoodsNum = !tmpObj.goods_num ? 0 : tmpObj.goods_num; | |
894 | - } | |
895 | - | |
896 | - }); | |
897 | - | |
898 | - | |
899 | 887 | |
900 | 888 | // 有库存的情况下,走秒杀活动流程 否则 走正常购买流程 |
901 | - // 没有库存,已抢光的情况下,走正常购买流程 | |
889 | + // 没有库存,已抢光的情况下,走正常购买流程 | |
902 | 890 | if(redisNum > 0 && !this.data.is_normal) { |
903 | 891 | // 输入的数量 |
904 | 892 | var t = th.data.goodsInputNum; |
893 | + // 获取购物车同款数量 | |
894 | + var cartGoodsNum = 0; | |
895 | + | |
896 | + // 购物车 | |
897 | + if (action != "buy") { | |
898 | + await getApp().request.promiseGet("/api/weshop/cartService/page?store_id="+os.stoid+"&user_id="+oo.user_id+"&service_id="+th.data.data.id+"&pick_id="+th.data.sto_sele_id, | |
899 | + { }).then(res => { | |
900 | + if (res.data.data.pageData.length > 0) { | |
901 | + const tmpObj = res.data.data.pageData[0]; | |
902 | + cartGoodsNum = !tmpObj.goods_num ? 0 : tmpObj.goods_num; | |
903 | + } | |
904 | + | |
905 | + }); | |
906 | + | |
907 | + // 输入的数量 + 购物车同款商品的数量 | |
908 | + t = parseInt(t) + parseInt(cartGoodsNum); | |
909 | + } | |
910 | + | |
911 | + // 剩余购买数量 | |
912 | + let num = th.data.sele_g.viplimited - gd_buy_num; | |
913 | + num = num < 0 ? 0 : num; | |
905 | 914 | |
906 | 915 | if (t > redisNum) { |
907 | 916 | wx.showToast({ |
908 | - title: '超出活动库存' + redisNum, | |
917 | + title: '超出活动库存', | |
909 | 918 | icon: 'none' |
910 | 919 | }); |
911 | 920 | |
912 | 921 | // 开启限购 |
913 | 922 | if (th.data.sele_g.viplimited > 0) { |
914 | 923 | |
915 | - let num = th.data.sele_g.viplimited - gd_buy_num; | |
916 | - if (action !="buy") { | |
917 | - // 购物车 | |
918 | - if (num > redisNum) { | |
919 | - th.setData({goodsInputNum: redisNum}); | |
920 | - } else { | |
921 | - th.setData({goodsInputNum: num}); | |
922 | - } | |
923 | - } else { | |
924 | - // 立即购买 | |
925 | - if (num > redisNum) { | |
926 | - th.setData({goodsInputNum: redisNum}); | |
927 | - } else { | |
928 | - th.setData({goodsInputNum: num}); | |
929 | - } | |
924 | + if (t > num) { | |
925 | + th.setData({goodsInputNum: num}); | |
930 | 926 | } |
931 | 927 | |
928 | + if (redisNum < num) { | |
929 | + th.setData({goodsInputNum: redisNum}); | |
930 | + } | |
931 | + | |
932 | 932 | |
933 | 933 | } else { |
934 | 934 | th.setData({goodsInputNum: redisNum}); |
... | ... | @@ -937,64 +937,27 @@ Page({ |
937 | 937 | return false; |
938 | 938 | } |
939 | 939 | |
940 | - | |
941 | - | |
942 | - // 跳过<立即购买> 购物车 | |
943 | - if (action !="buy") { | |
944 | - | |
945 | - // 输入的数量 + 购物车同款商品的数量 | |
946 | - var maxNum = parseInt(t) + parseInt(cartGoodsNum); | |
947 | - // 是否开启个人限购 | |
948 | - if (th.data.sele_g.viplimited > 0) { | |
949 | - if (maxNum + gd_buy_num > th.data.sele_g.buy_limit) { | |
950 | - wx.showToast({ | |
951 | - title: '超出活动限购数量', | |
952 | - icon: 'none' | |
953 | - }); | |
954 | - | |
955 | - // 可购买数量 | |
956 | - let num = th.data.sele_g.viplimited - gd_buy_num - cartGoodsNum; | |
957 | - th.setData({goodsInputNum: num < 0 ? 0 : num}); | |
958 | - return false; | |
959 | - } | |
960 | - | |
961 | - } | |
962 | - | |
963 | - if (maxNum > redisNum) { | |
964 | - wx.showToast({ | |
965 | - title: '超出活动库存', | |
966 | - icon: 'none' | |
967 | - }); | |
968 | - // 可购买数量 | |
969 | - let num = redisNum - cartGoodsNum; | |
970 | - th.setData({goodsInputNum: num}); | |
971 | - return false; | |
972 | - } | |
973 | - | |
974 | - } else { | |
975 | - // 以下为立即购买 | |
976 | - // 是否开启个人限购 | |
940 | + // 以下小于等于库存 | |
941 | + if (t <= redisNum) { | |
977 | 942 | if (th.data.sele_g.viplimited > 0) { |
978 | 943 | |
979 | - if (t + gd_buy_num > th.data.sele_g.viplimited) { | |
944 | + if (t > num) { | |
980 | 945 | wx.showToast({ |
981 | 946 | title: '超出活动限购数量', |
982 | 947 | icon: 'none' |
983 | 948 | }); |
984 | - | |
985 | - let num = th.data.sele_g.viplimited - gd_buy_num; | |
949 | + | |
986 | 950 | if (num > redisNum) { |
987 | 951 | th.setData({goodsInputNum: redisNum}); |
988 | 952 | } else { |
989 | 953 | th.setData({goodsInputNum: num}); |
990 | 954 | } |
991 | 955 | return false; |
992 | - } | |
993 | - | |
994 | - | |
995 | - }; | |
996 | - | |
956 | + } | |
957 | + | |
958 | + } | |
997 | 959 | } |
960 | + | |
998 | 961 | |
999 | 962 | }; |
1000 | 963 | }; | ... | ... |