Commit 8b9fa55269eefdf172345336dd5c1a5846640413

Authored by 泉州测试
1 parent a857a0be

fix;服务卡项购物车超限购

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