Commit 03f818f4742f1aa3ffdea4beca3ff797acc6d04e
1 parent
d1f73fbb
服务卡秒杀-单独购买
Showing
5 changed files
with
805 additions
and
154 deletions
packageA/pages/goodsInfo/buy_flash_normal.wxml
0 → 100644
| 1 | +<view bindtap="closeSpecModal_flash_normal" class="cover-layer"></view> | |
| 2 | + <view class="spec-model"> | |
| 3 | + <view class="pding"> | |
| 4 | + <icon bindtap="closeSpecModal_flash_normal" class="modal-close" color="black" size="22" type="cancel"></icon> | |
| 5 | + <view class="spec-goods"> | |
| 6 | + <image class="wh100 spec-img xc-distance-bottom" bindtap="previewImage" src="{{iurl + (data.image_url ? data.image_url:'miniapp/images/default_g_img.gif')}}" binderror="pop_err_img" data-errorimg="data.img_url"></image> | |
| 7 | + <view class="spec-goods-info"> | |
| 8 | + <view class="spec-goods-name ellipsis-2">{{data.goods_name}}</view> | |
| 9 | + <view class="flex ai_end xc-val-money"> | |
| 10 | + <text class="fs20">¥</text>{{data.shop_price}} | |
| 11 | + <!-- 如果是等级会员,且有等级价 --> | |
| 12 | + <!-- <block wx:if="{{card_field && sele_g[card_field]>0}}">{{sele_g[card_field]}} </block> --> | |
| 13 | + <!-- <block wx:else>{{sele_g.shop_price}}</block> --> | |
| 14 | + </view> | |
| 15 | + | |
| 16 | + <!-- <view class="flex"> | |
| 17 | + <view class="spec-goods-stock">已售:{{sele_g.sales_sum}}</view> | |
| 18 | + <block wx:if="{{sales_rules==2}}"> | |
| 19 | + <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}">可售:{{def_pick_store.CanOutQty}}</view> | |
| 20 | + <view class="spec-goods-stock" wx:else>可售:0</view> | |
| 21 | + </block> | |
| 22 | + <block wx:else><view class="spec-goods-stock">可售:{{sele_g.store_count}}</view></block> | |
| 23 | + </view> --> | |
| 24 | + | |
| 25 | + | |
| 26 | + </view> | |
| 27 | + | |
| 28 | + <!-- 选择门店模块 --> | |
| 29 | + <view class="flex-space-between address ai_end xc-width "> | |
| 30 | + | |
| 31 | + <view class="flex ai_end" wx:if="{{def_pick_store && def_pick_store.pickup_name}}"> | |
| 32 | + <text class="fs30 xc-black3 shop_name">{{def_pick_store.pickup_name}}</text> | |
| 33 | + <view class="distance fs24 xc-ash"wx:if="{{def_pick_store.distance!=null}}"> | |
| 34 | + 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}} | |
| 35 | + | |
| 36 | + </view> | |
| 37 | + </view> | |
| 38 | + | |
| 39 | + <!-- 没有门店的时候 --> | |
| 40 | + <view class="flex" bindtap="choice_store" wx:else> | |
| 41 | + <image class="stores-img" src="{{iurl}}/miniapp/images/stores.png"></image> | |
| 42 | + <view class="fs30" style="color:black;">选择门店</view> | |
| 43 | + </view> | |
| 44 | + | |
| 45 | + <view class="red-co fs28" bindtap="choice_store" >更多门店<text class="right-arrow"></text></view> | |
| 46 | + </view> | |
| 47 | + <view wx:if="{{only_pk && !only_pk.length}}">(库存不足)</view> | |
| 48 | + <block wx:else> | |
| 49 | + <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> | |
| 50 | + <block wx:else> | |
| 51 | + <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view> | |
| 52 | + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}">(库存不足)</view> | |
| 53 | + </block> | |
| 54 | + </block> | |
| 55 | + <view class="fs24 xc-ash-9f xc-distance-top "wx:if="{{def_pick_store && def_pick_store.fulladdress}}">地址:{{def_pick_store.fulladdress}}</view> | |
| 56 | + | |
| 57 | + | |
| 58 | + <!--商品的属性项目--> | |
| 59 | + <!-- <view class="xc-goods-attribute"> | |
| 60 | + <view hidden="{{ismend==1}}" class="spec-name">商品规格</view> | |
| 61 | + <view hidden="{{ismend==1}}" style="max-height: 120rpx;overflow-y: auto;"> | |
| 62 | + <view class="spec_bt {{gid==item.goods_id?'act':''}}" bindtap="sele_spec" data-nor="1" data-gid='{{item.goods_id}}' wx:for="{{sku_g_pt}}" wx:key="sku_g"> | |
| 63 | + {{item.gg}} | |
| 64 | + </view> | |
| 65 | + </view> | |
| 66 | + </view> --> | |
| 67 | + | |
| 68 | + <view class="b_num"> | |
| 69 | + <view>购买数量</view> | |
| 70 | + <view class="count"> | |
| 71 | + <view bindtap="{{goodsInputNum <= 1 ? '':'subCartNum'}}" class="sub {{goodsInputNum <= 1 ? 'active':''}}">-</view> | |
| 72 | + <input bindblur="inputCartNum" type="number" value="{{goodsInputNum}}"></input> | |
| 73 | + <view bindtap="addCartNum" class="add">+</view> | |
| 74 | + </view> | |
| 75 | + </view> | |
| 76 | + </view> | |
| 77 | + | |
| 78 | + | |
| 79 | + <!-- 提示再买多少优惠 --> | |
| 80 | + <view style="margin-top: 35rpx;color:#333;font-size:28rpx;" wx:if="{{hui_condition}}"> | |
| 81 | + 再买{{hui_condition.need}} | |
| 82 | + <text wx:if="{{hui_condition.money}}">,免{{hui_condition.money}}元</text> | |
| 83 | + <text wx:if="{{hui_condition.sale}}">,打{{hui_condition.sale}}折</text> | |
| 84 | + <text wx:if="{{hui_condition.past==1}}">,包邮</text> | |
| 85 | + <text wx:if="{{hui_condition.intValue>0}}">,送{{hui_condition.intValue}}积分</text> | |
| 86 | + <text wx:if="{{hui_condition.couponId>0}}">,送优惠券</text> | |
| 87 | + <text wx:if="{{hui_condition.gift_id>0}}">,送赠品</text> | |
| 88 | + <text wx:if="{{hui_condition.lb_id>0}}">,送礼包</text> | |
| 89 | + <text wx:if="{{hui_condition.zxlb_id>0}}">,送专享礼包</text> | |
| 90 | + </view> | |
| 91 | + | |
| 92 | + | |
| 93 | + <!-- 按钮部分 --> | |
| 94 | + <view class="spec-cart-btns"> | |
| 95 | + | |
| 96 | + <!-- 根本就找不到门店 --> | |
| 97 | + <block wx:if="{{def_pick_store && def_pick_store.is_no_dis}}"> | |
| 98 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999;">配送不匹配</view> | |
| 99 | + </block> | |
| 100 | + <block wx:else> | |
| 101 | + <!-- 根本就找不到门店 --> | |
| 102 | + <block wx:if="{{!only_pk && !def_pickpu_list}}"> | |
| 103 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999;">库存不足</view> | |
| 104 | + </block> | |
| 105 | + <block wx:else> | |
| 106 | + | |
| 107 | + | |
| 108 | + <block wx:if="{{only_pk.length && !only_pk.length}}"> | |
| 109 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999;">库存不足</view> | |
| 110 | + </block> | |
| 111 | + <block wx:else> | |
| 112 | + <block wx:if="{{def_pickpu_list && !def_pickpu_list.length}}"> | |
| 113 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">库存不足</view> | |
| 114 | + </block> | |
| 115 | + <block wx:else> | |
| 116 | + <block wx:if="{{!def_pick_store}}"> | |
| 117 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">请先选择门店</view> | |
| 118 | + </block> | |
| 119 | + <block wx:else> | |
| 120 | + <block wx:if="{{data.store_count<=0}}"> | |
| 121 | + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">库存不足</view> | |
| 122 | + </block> | |
| 123 | + <block wx:else> | |
| 124 | + <view class="flex jc_sb"> | |
| 125 | + <view class="spec-cart-btn spec-buy w40" bindtap="addCart" | |
| 126 | + data-action="add" style="background-color: #ffb03f;">加入购物车</view> | |
| 127 | + <view class="spec-cart-btn spec-buy w40" bindtap="addCart" | |
| 128 | + data-action="buy">立即购买</view> | |
| 129 | + </view> | |
| 130 | + </block> | |
| 131 | + | |
| 132 | + </block> | |
| 133 | + </block> | |
| 134 | + </block> | |
| 135 | + </block> | |
| 136 | + </block> | |
| 137 | + </view> | |
| 138 | + | |
| 139 | + </view> | |
| 140 | + </view> | |
| 141 | + <view class="clear"></view> | |
| 0 | 142 | \ No newline at end of file | ... | ... |
packageA/pages/goodsInfo/goodsInfo.js
| ... | ... | @@ -207,7 +207,7 @@ Page({ |
| 207 | 207 | sto_sele_name_1:'',//分享的门店名称 |
| 208 | 208 | |
| 209 | 209 | // 秒杀 |
| 210 | - prom_st: 1, | |
| 210 | + prom_st: 0, | |
| 211 | 211 | prom_r_null: 0, |
| 212 | 212 | |
| 213 | 213 | hiddenCS: true, //控制客服操作菜单显示和控制 |
| ... | ... | @@ -700,6 +700,7 @@ Page({ |
| 700 | 700 | that.setData({ |
| 701 | 701 | 'data.goods_name': t.data.data.serviceName, |
| 702 | 702 | 'data.shop_price': t.data.data.money, |
| 703 | + 'data.show_price': t.data.data.show_price, | |
| 703 | 704 | 'data.validDays': t.data.data.validDays, |
| 704 | 705 | 'data.serviceContent': t.data.data.serviceContent, |
| 705 | 706 | 'data.image_url': t.data.data.imgUrl, |
| ... | ... | @@ -877,20 +878,20 @@ Page({ |
| 877 | 878 | //000000 |
| 878 | 879 | |
| 879 | 880 | |
| 880 | - if(this.data.options.prom_type == 1) { | |
| 881 | - var t = th.data.goodsInputNum; | |
| 881 | + if(this.data.options.prom_type == 1 && !this.data.prom_act.is_shop_buy) { | |
| 882 | + var t = th.data.goodsInputNum + 1; | |
| 882 | 883 | th.data.sele_g.viplimited = th.data.sele_g.buy_limit; |
| 883 | 884 | if (th.data.sele_g.viplimited > 0) { |
| 884 | 885 | var gd_buy_num = th.data.sele_g.buy_num; |
| 885 | 886 | |
| 886 | - if (t + gd_buy_num >= th.data.sele_g.viplimited) { | |
| 887 | + if (t + gd_buy_num > th.data.sele_g.viplimited) { | |
| 887 | 888 | wx.showModal({ |
| 888 | 889 | title: '超出商品限购', |
| 889 | 890 | }); |
| 890 | 891 | |
| 891 | - // var num = th.data.sele_g.viplimited - gd_buy_num; | |
| 892 | - // if (num < 0) num = th.data.sele_g.viplimited; | |
| 893 | - th.setData({goodsInputNum: 0}); | |
| 892 | + let num = th.data.sele_g.viplimited - gd_buy_num; | |
| 893 | + if (num < 0) num = 0; | |
| 894 | + th.setData({goodsInputNum: num}); | |
| 894 | 895 | return false; |
| 895 | 896 | } |
| 896 | 897 | }; |
| ... | ... | @@ -919,7 +920,12 @@ Page({ |
| 919 | 920 | newd['prom_type'] = this.data.prom_type; |
| 920 | 921 | newd['prom_id'] = this.data.prom_id; |
| 921 | 922 | newd['prom_price'] = this.data.prom_price; |
| 922 | - } | |
| 923 | + }; | |
| 924 | + | |
| 925 | + if(this.data.prom_act.is_shop_buy) { | |
| 926 | + newd['prom_type'] = 0; | |
| 927 | + newd['prom_price'] = this.data.data.shop_price; | |
| 928 | + }; | |
| 923 | 929 | |
| 924 | 930 | // console.log('newd++++++++', newd); |
| 925 | 931 | th.buyNow(newd); |
| ... | ... | @@ -1025,90 +1031,107 @@ Page({ |
| 1025 | 1031 | //------检查数量是不是超出限购------ |
| 1026 | 1032 | checkCartNum: function(t) { |
| 1027 | 1033 | |
| 1028 | - if(t<=0) return false; | |
| 1029 | - var th = this; | |
| 1030 | - th.setData({goodsInputNum:t}); | |
| 1031 | - | |
| 1032 | - | |
| 1033 | 1034 | var th = this; |
| 1034 | - this.get_buy_num(this.data.sele_g, async function () { | |
| 1035 | - th.data.sele_g.viplimited = th.data.sele_g.buy_limit; | |
| 1036 | - | |
| 1037 | - //--判断商品是否超出限购-- | |
| 1038 | - // if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { | |
| 1039 | - if (th.data.sele_g.viplimited > 0) { | |
| 1040 | - var gd_buy_num = th.data.sele_g.buy_num; | |
| 1041 | - | |
| 1042 | - if (t + gd_buy_num > th.data.sele_g.viplimited) { | |
| 1043 | - wx.showModal({ | |
| 1044 | - title: '超出商品限购', | |
| 1045 | - }); | |
| 1046 | 1035 | |
| 1047 | - var num = th.data.sele_g.viplimited - gd_buy_num; | |
| 1048 | - if (num < 0) num = 0; | |
| 1049 | - th.setData({goodsInputNum: num}) | |
| 1050 | - return false; | |
| 1051 | - } | |
| 1052 | - } | |
| 1053 | - | |
| 1054 | - //如果是普通购买的情况下 | |
| 1055 | - if(th.data.openSpecModal_flash_normal) th.data.is_normal=1; | |
| 1036 | + // if(this.data.prom_act.is_shop_buy && this.data.options.prom_type != 1) { | |
| 1037 | + // if(th.data.is_normal) { | |
| 1038 | + | |
| 1039 | + if(t<=0) return false; | |
| 1040 | + th.setData({goodsInputNum:t}); | |
| 1041 | + // } else { | |
| 1056 | 1042 | |
| 1057 | - //--判断商品是否超出活动限购-- | |
| 1058 | - if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && !th.data.is_normal) { | |
| 1059 | - if (t + th.data.prom_buy_num > th.data.prom_buy_limit) { | |
| 1060 | - wx.showModal({ | |
| 1061 | - title: '超出商品活动限购', | |
| 1062 | - }); | |
| 1043 | + if(this.data.options.prom_type == 1 && !this.data.openSpecModal_flash_normal) { | |
| 1044 | + | |
| 1045 | + this.get_buy_num(this.data.sele_g, async function () { | |
| 1046 | + th.data.sele_g.viplimited = th.data.sele_g.buy_limit; | |
| 1047 | + | |
| 1048 | + //--判断商品是否超出限购-- | |
| 1049 | + // if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { | |
| 1050 | + if(!th.data.prom_act.is_shop_buy) { | |
| 1051 | + | |
| 1052 | + if (th.data.sele_g.viplimited > 0) { | |
| 1053 | + var gd_buy_num = th.data.sele_g.buy_num; | |
| 1054 | + | |
| 1055 | + if (t + gd_buy_num> th.data.sele_g.viplimited) { | |
| 1056 | + wx.showModal({ | |
| 1057 | + title: '超出商品限购', | |
| 1058 | + }); | |
| 1059 | + | |
| 1060 | + var num = th.data.sele_g.viplimited - gd_buy_num; | |
| 1061 | + if (num < 0) num = 0; | |
| 1062 | + th.setData({goodsInputNum: num}) | |
| 1063 | + return false; | |
| 1064 | + } | |
| 1065 | + } | |
| 1066 | + | |
| 1067 | + }; | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + //如果是普通购买的情况下 | |
| 1071 | + if(th.data.openSpecModal_flash_normal) th.data.is_normal=1; | |
| 1072 | + | |
| 1073 | + //--判断商品是否超出活动限购-- | |
| 1074 | + if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && !th.data.is_normal) { | |
| 1075 | + if (t + th.data.prom_buy_num > th.data.prom_buy_limit) { | |
| 1076 | + wx.showModal({ | |
| 1077 | + title: '超出商品活动限购', | |
| 1078 | + }); | |
| 1079 | + | |
| 1080 | + var num = th.data.prom_buy_limit - th.data.prom_buy_num; | |
| 1081 | + if (num < 0) num = 0; | |
| 1082 | + th.setData({goodsInputNum: num}) | |
| 1083 | + return false; | |
| 1084 | + } | |
| 1085 | + } | |
| 1086 | + | |
| 1087 | + if (th.data.sele_g.prom_type == 1 && !th.data.is_normal) { | |
| 1088 | + var redis_num = 0; | |
| 1089 | + //------判断活动是否抢光----- | |
| 1090 | + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + | |
| 1091 | + os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, { | |
| 1092 | + 1: 1 | |
| 1093 | + }).then(res => { | |
| 1094 | + redis_num = res.data.data; | |
| 1095 | + }); | |
| 1096 | + | |
| 1097 | + if (t > redis_num) { | |
| 1098 | + wx.showModal({ | |
| 1099 | + title: '超出商品活动库存', | |
| 1100 | + }); | |
| 1101 | + th.setData({goodsInputNum: redis_num}) | |
| 1102 | + return false; | |
| 1103 | + } | |
| 1104 | + } | |
| 1105 | + var e = th.data.sele_g.store_count; | |
| 1106 | + var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 | |
| 1107 | + if (th.data.sales_rules == 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | |
| 1108 | + if (!th.data.def_pick_store) { | |
| 1109 | + wx.showModal({title: '请选择门店',}); | |
| 1110 | + return false; | |
| 1111 | + } else { | |
| 1112 | + e = th.data.def_pick_store.CanOutQty; | |
| 1113 | + } | |
| 1114 | + } | |
| 1115 | + if (!e) e = 0; | |
| 1116 | + //库存不足,不增加 | |
| 1117 | + if (e < t) { | |
| 1118 | + wx.showModal({title: '库存不足',}); | |
| 1119 | + if (e < 0) e = 0; | |
| 1120 | + th.setData({goodsInputNum: e}); | |
| 1121 | + return false; | |
| 1122 | + } | |
| 1123 | + t > e || 0 == e ? t = e : t < 1 && (t = 1); | |
| 1124 | + th.setData({goodsInputNum: t}); | |
| 1125 | + // th.is_show_more_buy(); | |
| 1126 | + | |
| 1127 | + }) | |
| 1128 | + | |
| 1129 | + }; | |
| 1130 | + | |
| 1063 | 1131 | |
| 1064 | - var num = th.data.prom_buy_limit - th.data.prom_buy_num; | |
| 1065 | - if (num < 0) num = 0; | |
| 1066 | - th.setData({goodsInputNum: num}) | |
| 1067 | - return false; | |
| 1068 | - } | |
| 1069 | - } | |
| 1070 | 1132 | |
| 1071 | - if ((th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) && !th.data.is_normal) { | |
| 1072 | - var redis_num = 0; | |
| 1073 | - //------判断活动是否抢光----- | |
| 1074 | - await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + | |
| 1075 | - os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, { | |
| 1076 | - 1: 1 | |
| 1077 | - }).then(res => { | |
| 1078 | - redis_num = res.data.data; | |
| 1079 | - }); | |
| 1080 | 1133 | |
| 1081 | - if (t > redis_num) { | |
| 1082 | - wx.showModal({ | |
| 1083 | - title: '超出商品活动库存', | |
| 1084 | - }); | |
| 1085 | - th.setData({goodsInputNum: redis_num}) | |
| 1086 | - return false; | |
| 1087 | - } | |
| 1088 | - } | |
| 1089 | - var e = th.data.sele_g.store_count; | |
| 1090 | - var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 | |
| 1091 | - if (th.data.sales_rules == 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | |
| 1092 | - if (!th.data.def_pick_store) { | |
| 1093 | - wx.showModal({title: '请选择门店',}); | |
| 1094 | - return false; | |
| 1095 | - } else { | |
| 1096 | - e = th.data.def_pick_store.CanOutQty; | |
| 1097 | - } | |
| 1098 | - } | |
| 1099 | - if (!e) e = 0; | |
| 1100 | - //库存不足,不增加 | |
| 1101 | - if (e < t) { | |
| 1102 | - wx.showModal({title: '库存不足',}); | |
| 1103 | - if (e < 0) e = 0; | |
| 1104 | - th.setData({goodsInputNum: e}); | |
| 1105 | - return false; | |
| 1106 | - } | |
| 1107 | - t > e || 0 == e ? t = e : t < 1 && (t = 1); | |
| 1108 | - th.setData({goodsInputNum: t}); | |
| 1109 | - // th.is_show_more_buy(); | |
| 1110 | 1134 | |
| 1111 | - }) | |
| 1112 | 1135 | }, |
| 1113 | 1136 | |
| 1114 | 1137 | |
| ... | ... | @@ -3151,14 +3174,10 @@ Page({ |
| 3151 | 3174 | var em = res; |
| 3152 | 3175 | if (em.data.code == 0) { |
| 3153 | 3176 | |
| 3154 | - if (em.data.data <= 0) { | |
| 3155 | - wx.showModal({ | |
| 3156 | - title: '来晚了,已被抢光!', | |
| 3157 | - }); | |
| 3158 | - | |
| 3159 | - ee.setData({ | |
| 3177 | + if (em.data.data <= 0) { | |
| 3178 | + th.setData({ | |
| 3160 | 3179 | prom_r_null: 1, |
| 3161 | - goodsInputNum: 0 | |
| 3180 | + goodsInputNum: res.data.data, | |
| 3162 | 3181 | }); |
| 3163 | 3182 | |
| 3164 | 3183 | // th.setData({goodsInputNum: redis_num}) |
| ... | ... | @@ -3212,7 +3231,7 @@ Page({ |
| 3212 | 3231 | var endTime1 = t.data.data.start_time; |
| 3213 | 3232 | if (endTime1 > newTime) { |
| 3214 | 3233 | ee.setData({ |
| 3215 | - prom_time_text: '距秒杀开始还有' | |
| 3234 | + prom_time_text: '距秒杀开始还有', | |
| 3216 | 3235 | }) |
| 3217 | 3236 | ee.countDown(endTime1, 0); |
| 3218 | 3237 | } else { |
| ... | ... | @@ -3430,18 +3449,22 @@ Page({ |
| 3430 | 3449 | this.data.g_buy_num = new Map(); |
| 3431 | 3450 | var th = this; |
| 3432 | 3451 | this.setData({open_ind_store: 5, goodsInputNum: 1});//拼团直接给4 |
| 3433 | - if (th.data.sku_g_pt) { | |
| 3434 | - this.get_sto(1) | |
| 3435 | - this.setData({openSpecModal_flash_normal: 1}); | |
| 3436 | - } else { | |
| 3437 | - th.get_sto(1); | |
| 3438 | - th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () { | |
| 3439 | - th.setData({ | |
| 3440 | - openSpecModal_flash_normal: 1 | |
| 3441 | - }); | |
| 3442 | - }); | |
| 3443 | - } | |
| 3444 | - this.check_is_youhui(th.data.gid, 1); | |
| 3452 | + | |
| 3453 | + this.setData({openSpecModal_flash_normal: 1}); | |
| 3454 | + | |
| 3455 | + | |
| 3456 | + // if (th.data.sku_g_pt) { | |
| 3457 | + // // this.get_sto(1) | |
| 3458 | + // this.setData({openSpecModal_flash_normal: 1}); | |
| 3459 | + // } else { | |
| 3460 | + // th.get_sto(1); | |
| 3461 | + // th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () { | |
| 3462 | + // th.setData({ | |
| 3463 | + // openSpecModal_flash_normal: 1 | |
| 3464 | + // }); | |
| 3465 | + // }); | |
| 3466 | + // } | |
| 3467 | + // this.check_is_youhui(th.data.gid, 1); | |
| 3445 | 3468 | }, |
| 3446 | 3469 | |
| 3447 | 3470 | closeSpecModal_flash_normal: function () { |
| ... | ... | @@ -3475,11 +3498,502 @@ Page({ |
| 3475 | 3498 | this.setData({ |
| 3476 | 3499 | hiddenCS: true, |
| 3477 | 3500 | }); |
| 3478 | - } | |
| 3501 | + }, | |
| 3479 | 3502 | |
| 3480 | 3503 | |
| 3481 | 3504 | |
| 3482 | - | |
| 3505 | + | |
| 3506 | + | |
| 3507 | + | |
| 3508 | + | |
| 3509 | + //-- 加入购物的函数 -- | |
| 3510 | + add_cart_func: function (t) { | |
| 3511 | + var i = getApp().request; | |
| 3512 | + if (oo.user_id == null) { | |
| 3513 | + return s.my_warnning("还未登录!", 0, this); | |
| 3514 | + } | |
| 3515 | + | |
| 3516 | + if (!getApp().globalData.userInfo) { | |
| 3517 | + return s.my_warnning("还未登录!", 0, this); | |
| 3518 | + } | |
| 3519 | + | |
| 3520 | + var e = this, | |
| 3521 | + th = e, | |
| 3522 | + a = 0, | |
| 3523 | + o = this.data.sele_g; | |
| 3524 | + a = o.goods_id; | |
| 3525 | + | |
| 3526 | + //----------添加到购物车时,要判断限购数量,-------- | |
| 3527 | + e.get_buy_num(o, function (ee) { | |
| 3528 | + //---判断商品是否超出限购--- | |
| 3529 | + if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { | |
| 3530 | + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) { | |
| 3531 | + wx.showModal({ | |
| 3532 | + title: '提示', | |
| 3533 | + content: '超出商品限购' | |
| 3534 | + }); | |
| 3535 | + return false; | |
| 3536 | + } | |
| 3537 | + } | |
| 3538 | + //---判断商品是否超出活动限购--- | |
| 3539 | + if ((th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) && !th.data.is_normal) { | |
| 3540 | + if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) { | |
| 3541 | + wx.showModal({ | |
| 3542 | + title: '提示', | |
| 3543 | + content: '超出商品活动限购' | |
| 3544 | + }); | |
| 3545 | + return false; | |
| 3546 | + } | |
| 3547 | + } | |
| 3548 | + | |
| 3549 | + if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th); | |
| 3550 | + if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined) | |
| 3551 | + this.setData({ | |
| 3552 | + sto_sele_name: "" | |
| 3553 | + }); | |
| 3554 | + if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th); | |
| 3555 | + | |
| 3556 | + //--------------此时操作的数据------------ | |
| 3557 | + var newd = { | |
| 3558 | + goods_id: o.goods_id, | |
| 3559 | + goods_num: th.data.goodsInputNum, | |
| 3560 | + pick_id: th.data.sto_sele_id, | |
| 3561 | + user_id: oo.user_id, | |
| 3562 | + store_id: th.data.stoid, | |
| 3563 | + goods_price: o.shop_price, | |
| 3564 | + member_goods_price: o.shop_price, | |
| 3565 | + goods_name: o.goods_name, | |
| 3566 | + goods_sn: o.goods_sn, | |
| 3567 | + sku: o.sku, | |
| 3568 | + prom_id: th.data.sele_g.prom_id, | |
| 3569 | + prom_type: th.data.sele_g.prom_type, | |
| 3570 | + }; | |
| 3571 | + | |
| 3572 | + //---是不是从收藏夹出来的--- | |
| 3573 | + if (th.data.c_guide_id) { | |
| 3574 | + newd['guide_id'] = th.data.c_guide_id; | |
| 3575 | + newd['guide_type'] = 2; | |
| 3576 | + if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3; | |
| 3577 | + } else { | |
| 3578 | + if (getApp().globalData.guide_id) { | |
| 3579 | + newd['guide_id'] = getApp().globalData.guide_id; | |
| 3580 | + newd['guide_type'] = 0; | |
| 3581 | + if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1; | |
| 3582 | + } | |
| 3583 | + } | |
| 3584 | + | |
| 3585 | + //让商品带上房间号 | |
| 3586 | + //让商品带上房间号 | |
| 3587 | + if (th.data.sys_switch.is_skuroom_id == 1) { | |
| 3588 | + if (th.data.data.goods_id == getApp().globalData.room_goods_id) { | |
| 3589 | + newd.room_id = getApp().globalData.room_id; | |
| 3590 | + } | |
| 3591 | + } else { | |
| 3592 | + if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id; | |
| 3593 | + } | |
| 3594 | + | |
| 3595 | + //如果是积分够,is_integral_normal就要有积分购普通购买字段 | |
| 3596 | + if (o.prom_type == 4) { | |
| 3597 | + newd.is_integral_normal = 1; | |
| 3598 | + } | |
| 3599 | + | |
| 3600 | + //如果有线下取价 | |
| 3601 | + if (o.offline_price) { | |
| 3602 | + newd.offline_price = o.offline_price; | |
| 3603 | + newd.pricing_type = o.pricing_type; | |
| 3604 | + } | |
| 3605 | + | |
| 3606 | + //-----如果是秒杀,团购,积分购,拼团----- | |
| 3607 | + if (th.data.prom_type == 1 || th.data.prom_type == 2) { | |
| 3608 | + | |
| 3609 | + if (th.data.openSpecModal_flash_normal) { | |
| 3610 | + | |
| 3611 | + newd.prom_type = 0; | |
| 3612 | + newd.prom_id = 0; | |
| 3613 | + | |
| 3614 | + //---如果是线下门店销售的时候--- | |
| 3615 | + if (th.data.sales_rules == 2) { | |
| 3616 | + var pick = th.get_pick_from_list(th.data.sto_sele_id) | |
| 3617 | + //---通过接口获取门店的线下库存信息-- | |
| 3618 | + getApp().request.get("/api/weshop/goods/getWareStorages", { | |
| 3619 | + data: { | |
| 3620 | + storageNos: pick.pickup_no, | |
| 3621 | + wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | |
| 3622 | + storeId: os.stoid | |
| 3623 | + }, | |
| 3624 | + success: function (res) { | |
| 3625 | + if (res.data.code == 0) { | |
| 3626 | + if (res.data.data.pageData.length > 0) { | |
| 3627 | + var CanOutQty = res.data.data.pageData[0].CanOutQty; | |
| 3628 | + if (CanOutQty < e.data.goodsInputNum) { | |
| 3629 | + return s.my_warnning("库存不足!", 0, th); | |
| 3630 | + } | |
| 3631 | + //在调一次接口,读取商品的预出库的数量,lock | |
| 3632 | + getApp().request.get("/api/weshop/order/ware/lock/page", { | |
| 3633 | + data: { | |
| 3634 | + store_id: os.stoid, | |
| 3635 | + wareId: th.data.sele_g.goods_id, | |
| 3636 | + storageId: pick.pickup_id, | |
| 3637 | + pageSize: 1000 | |
| 3638 | + }, | |
| 3639 | + success: function (res_data) { | |
| 3640 | + if (res_data.data.code == 0 && res_data.data.data.total > 0) { | |
| 3641 | + | |
| 3642 | + var lock = 0; | |
| 3643 | + for (var i in res_data.data.data.pageData) { | |
| 3644 | + lock += res_data.data.data.pageData[i].outQty; | |
| 3645 | + } | |
| 3646 | + | |
| 3647 | + if (CanOutQty <= lock) { | |
| 3648 | + return s.my_warnning("库存不足!", 0, th); | |
| 3649 | + } | |
| 3650 | + th.add_cart_next(e, t, a, o, newd, CanOutQty - lock); | |
| 3651 | + } else { | |
| 3652 | + th.add_cart_next(e, t, a, o, newd, CanOutQty); | |
| 3653 | + } | |
| 3654 | + } | |
| 3655 | + }) | |
| 3656 | + } else { | |
| 3657 | + return s.my_warnning("库存不足!", 0, th); | |
| 3658 | + } | |
| 3659 | + | |
| 3660 | + } | |
| 3661 | + } | |
| 3662 | + }) | |
| 3663 | + } else { | |
| 3664 | + if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | |
| 3665 | + if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | |
| 3666 | + th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | |
| 3667 | + } | |
| 3668 | + | |
| 3669 | + return false; | |
| 3670 | + } | |
| 3671 | + | |
| 3672 | + | |
| 3673 | + newd.goods_price = th.data.prom_price; | |
| 3674 | + newd.member_goods_price = th.data.prom_price, | |
| 3675 | + newd.prom_type = th.data.prom_type; | |
| 3676 | + newd.prom_id = th.data.prom_id; | |
| 3677 | + | |
| 3678 | + if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | |
| 3679 | + if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | |
| 3680 | + | |
| 3681 | + th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | |
| 3682 | + | |
| 3683 | + } else if (o.prom_type == 7) { | |
| 3684 | + | |
| 3685 | + //判断进行中的活动,是不是要判断线下库存 | |
| 3686 | + th.check_zh_acting(function (ee) { | |
| 3687 | + newd.prom_id = 0; | |
| 3688 | + newd.prom_type = 0; | |
| 3689 | + if (ee && th.data.sele_g.act) { | |
| 3690 | + newd.prom_id = th.data.sele_g.act.id; | |
| 3691 | + newd.prom_type = 7; | |
| 3692 | + if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | |
| 3693 | + if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | |
| 3694 | + th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | |
| 3695 | + return false; | |
| 3696 | + } else { | |
| 3697 | + //---如果是线下门店销售的时候--- | |
| 3698 | + if (th.data.sales_rules == 2) { | |
| 3699 | + var pick = th.get_pick_from_list(th.data.sto_sele_id) | |
| 3700 | + //---通过接口获取门店的线下库存信息-- | |
| 3701 | + getApp().request.get("/api/weshop/goods/getWareStorages", { | |
| 3702 | + data: { | |
| 3703 | + storageNos: pick.pickup_no, | |
| 3704 | + wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | |
| 3705 | + storeId: os.stoid | |
| 3706 | + }, | |
| 3707 | + success: function (res) { | |
| 3708 | + if (res.data.code == 0) { | |
| 3709 | + if (res.data.data.pageData.length > 0) { | |
| 3710 | + var CanOutQty = res.data.data.pageData[0].CanOutQty; | |
| 3711 | + if (CanOutQty < e.data.goodsInputNum) { | |
| 3712 | + return s.my_warnning("库存不足!", 0, th); | |
| 3713 | + } | |
| 3714 | + //在调一次接口,读取商品的预出库的数量,lock | |
| 3715 | + getApp().request.get("/api/weshop/order/ware/lock/page", { | |
| 3716 | + data: { | |
| 3717 | + store_id: os.stoid, | |
| 3718 | + wareId: th.data.sele_g.goods_id, | |
| 3719 | + storageId: pick.pickup_id, | |
| 3720 | + pageSize: 1000 | |
| 3721 | + }, | |
| 3722 | + success: function (res_data) { | |
| 3723 | + if (res_data.data.code == 0 && res_data.data.data.total > 0) { | |
| 3724 | + | |
| 3725 | + var lock = 0; | |
| 3726 | + for (var i in res_data.data.data.pageData) { | |
| 3727 | + lock += res_data.data.data.pageData[i].outQty; | |
| 3728 | + } | |
| 3729 | + | |
| 3730 | + if (CanOutQty <= lock) { | |
| 3731 | + return s.my_warnning("库存不足!", 0, th); | |
| 3732 | + } | |
| 3733 | + th.add_cart_next(e, t, a, o, newd, CanOutQty - lock); | |
| 3734 | + } else { | |
| 3735 | + th.add_cart_next(e, t, a, o, newd, CanOutQty); | |
| 3736 | + } | |
| 3737 | + } | |
| 3738 | + }) | |
| 3739 | + } else { | |
| 3740 | + return s.my_warnning("库存不足!", 0, th); | |
| 3741 | + } | |
| 3742 | + | |
| 3743 | + } | |
| 3744 | + } | |
| 3745 | + }) | |
| 3746 | + } else { | |
| 3747 | + if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | |
| 3748 | + if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | |
| 3749 | + th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | |
| 3750 | + } | |
| 3751 | + } | |
| 3752 | + }) | |
| 3753 | + | |
| 3754 | + } | |
| 3755 | + else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5 || th.data.prom_type == 10) { | |
| 3756 | + newd.prom_type = 0; | |
| 3757 | + newd.prom_id = 0; | |
| 3758 | + | |
| 3759 | + if (th.data.prom_type == 10) { | |
| 3760 | + newd.prom_type = th.data.prom_type; | |
| 3761 | + newd.prom_id = th.data.prom_id; | |
| 3762 | + } | |
| 3763 | + | |
| 3764 | + //---如果是线下门店销售的时候--- | |
| 3765 | + if (th.data.sales_rules == 2) { | |
| 3766 | + var pick = th.get_pick_from_list(th.data.sto_sele_id) | |
| 3767 | + //---通过接口获取门店的线下库存信息-- | |
| 3768 | + getApp().request.get("/api/weshop/goods/getWareStorages", { | |
| 3769 | + data: { | |
| 3770 | + storageNos: pick.pickup_no, | |
| 3771 | + wareIds: encodeURIComponent(th.data.sele_g.erpwareid), | |
| 3772 | + storeId: os.stoid | |
| 3773 | + }, | |
| 3774 | + success: function (res) { | |
| 3775 | + if (res.data.code == 0) { | |
| 3776 | + if (res.data.data.pageData.length > 0) { | |
| 3777 | + var CanOutQty = res.data.data.pageData[0].CanOutQty; | |
| 3778 | + if (CanOutQty < e.data.goodsInputNum) { | |
| 3779 | + return s.my_warnning("库存不足!", 0, th); | |
| 3780 | + } | |
| 3781 | + //在调一次接口,读取商品的预出库的数量,lock | |
| 3782 | + getApp().request.get("/api/weshop/order/ware/lock/page", { | |
| 3783 | + data: { | |
| 3784 | + store_id: os.stoid, | |
| 3785 | + wareId: th.data.sele_g.goods_id, | |
| 3786 | + storageId: pick.pickup_id, | |
| 3787 | + pageSize: 1000 | |
| 3788 | + }, | |
| 3789 | + success: function (res_data) { | |
| 3790 | + if (res_data.data.code == 0 && res_data.data.data.total > 0) { | |
| 3791 | + | |
| 3792 | + var lock = 0; | |
| 3793 | + for (var i in res_data.data.data.pageData) { | |
| 3794 | + lock += res_data.data.data.pageData[i].outQty; | |
| 3795 | + } | |
| 3796 | + | |
| 3797 | + if (CanOutQty <= lock) { | |
| 3798 | + return s.my_warnning("库存不足!", 0, th); | |
| 3799 | + } | |
| 3800 | + th.add_cart_next(e, t, a, o, newd, CanOutQty - lock); | |
| 3801 | + } else { | |
| 3802 | + th.add_cart_next(e, t, a, o, newd, CanOutQty); | |
| 3803 | + } | |
| 3804 | + } | |
| 3805 | + }) | |
| 3806 | + } else { | |
| 3807 | + return s.my_warnning("库存不足!", 0, th); | |
| 3808 | + } | |
| 3809 | + | |
| 3810 | + } | |
| 3811 | + } | |
| 3812 | + }) | |
| 3813 | + } else { | |
| 3814 | + if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th); | |
| 3815 | + if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th); | |
| 3816 | + th.add_cart_next(e, t, a, o, newd); //加入购物车下一步 | |
| 3817 | + } | |
| 3818 | + } | |
| 3819 | + }) | |
| 3820 | + }, | |
| 3821 | + | |
| 3822 | + //---加入购物车的最后一步--- | |
| 3823 | + add_cart_next(e, t, a, o, newd, CanOutQty) { | |
| 3824 | + var th = this, i = getApp().request; | |
| 3825 | + //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------ | |
| 3826 | + if ((o.prom_type != 1 || o.prom_id <= 0) && ((o.prom_type != 6 && o.prom_type != 4 && o.prom_type != 2 ) || th.data.is_normal)) { | |
| 3827 | + var conf = th.data.bconfig; | |
| 3828 | + if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) { | |
| 3829 | + var s_list = JSON.parse(conf.switch_list); | |
| 3830 | + var now = ut.gettimestamp(); | |
| 3831 | + | |
| 3832 | + | |
| 3833 | + var str = getApp().globalData.userInfo['card_expiredate'].replace(/-/g, '/'); | |
| 3834 | + var end = new Date(str); | |
| 3835 | + end = Date.parse(end) / 1000; | |
| 3836 | + | |
| 3837 | + //--如果后台有开启等级价的功能,而且会员的等级没有过期的情况下-- | |
| 3838 | + if (parseInt(s_list.rank_switch) == 2 && end > now) { | |
| 3839 | + var card_price = o[getApp().globalData.userInfo['card_field']]; | |
| 3840 | + //如果会员有等级价 | |
| 3841 | + if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null | |
| 3842 | + && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) { | |
| 3843 | + newd.goods_price = card_price; | |
| 3844 | + newd.member_goods_price = card_price; | |
| 3845 | + } | |
| 3846 | + } | |
| 3847 | + } | |
| 3848 | + } | |
| 3849 | + | |
| 3850 | + //if (this.data.data.goods.is_virtual) return this.buyVirtualGoods(d); | |
| 3851 | + if ("add" == t.currentTarget.dataset.action) { | |
| 3852 | + | |
| 3853 | + if (th.data.prom_goods) { | |
| 3854 | + newd.prom_type = 3; | |
| 3855 | + newd.prom_id = th.data.prom_goods[0].prom_id; | |
| 3856 | + } | |
| 3857 | + | |
| 3858 | + //----先看会员在购物车中是否加入了该商品----- | |
| 3859 | + i.get("/api/weshop/cart/page", { | |
| 3860 | + data: { | |
| 3861 | + store_id: e.data.stoid, | |
| 3862 | + user_id: oo.user_id, | |
| 3863 | + goods_id: a, | |
| 3864 | + pick_id: e.data.sto_sele_id, | |
| 3865 | + state: 0 | |
| 3866 | + }, | |
| 3867 | + success: function (re) { | |
| 3868 | + | |
| 3869 | + //-------如果购物车中有相关的数据--------- | |
| 3870 | + if (re.data.data.total > 0) { | |
| 3871 | + | |
| 3872 | + var item = re.data.data.pageData[0]; | |
| 3873 | + | |
| 3874 | + //判断数量,要看下购物车中有没有该商品 | |
| 3875 | + if (CanOutQty) { | |
| 3876 | + if (item.goods_num + th.data.goodsInputNum > CanOutQty) { | |
| 3877 | + return s.my_warnning("库存不足!", 0, th); | |
| 3878 | + } | |
| 3879 | + } else { | |
| 3880 | + if (item.goods_num + th.data.goodsInputNum > o.store_count) { | |
| 3881 | + return s.my_warnning("库存不足!", 0, th); | |
| 3882 | + } | |
| 3883 | + } | |
| 3884 | + | |
| 3885 | + var updata = { | |
| 3886 | + id: item.id, | |
| 3887 | + goods_num: e.data.goodsInputNum + item.goods_num, | |
| 3888 | + goods_price: newd.goods_price, | |
| 3889 | + member_goods_price: newd.goods_price, | |
| 3890 | + store_id: th.data.stoid, | |
| 3891 | + }; | |
| 3892 | + | |
| 3893 | + //---是不是从收藏夹出来的--- | |
| 3894 | + if (th.data.c_guide_id) { | |
| 3895 | + updata['guide_id'] = th.data.c_guide_id; | |
| 3896 | + updata['guide_type'] = 3; //加入购物车之后就变成了3 | |
| 3897 | + } else { | |
| 3898 | + if (getApp().globalData.guide_id) { | |
| 3899 | + updata['guide_id'] = getApp().globalData.guide_id; | |
| 3900 | + updata['guide_type'] = 0; | |
| 3901 | + } | |
| 3902 | + } | |
| 3903 | + | |
| 3904 | + i.put("/api/weshop/cart/update", { | |
| 3905 | + data: updata, | |
| 3906 | + success: function (t) { | |
| 3907 | + getApp().my_warnning('加入购物车成功', 1, th, 450); | |
| 3908 | + var c_num = th.data.cartGoodsNum + th.data.goodsInputNum; | |
| 3909 | + th.setData({ | |
| 3910 | + cartGoodsNum: c_num | |
| 3911 | + }); | |
| 3912 | + th.closeSpecModal(); | |
| 3913 | + } | |
| 3914 | + }); | |
| 3915 | + } else { | |
| 3916 | + | |
| 3917 | + | |
| 3918 | + i.post("/api/weshop/cart/save", { | |
| 3919 | + data: newd, | |
| 3920 | + success: function (t) { | |
| 3921 | + getApp().my_warnning('加入购物车成功', 1, th, 450); | |
| 3922 | + var c_num = th.data.cartGoodsNum + e.data.goodsInputNum; | |
| 3923 | + th.setData({ | |
| 3924 | + cartGoodsNum: c_num | |
| 3925 | + }); | |
| 3926 | + th.closeSpecModal(); | |
| 3927 | + } | |
| 3928 | + }); | |
| 3929 | + } | |
| 3930 | + } | |
| 3931 | + }); | |
| 3932 | + | |
| 3933 | + } | |
| 3934 | + else { | |
| 3935 | + | |
| 3936 | + //这一步主要是要让立即购买 走 购物车的逻辑 参与活动 | |
| 3937 | + if (newd.prom_type == 10 || newd.prom_type == 7) { | |
| 3938 | + //----先看会员在购物车中是否加入了该商品,立即购买的----- | |
| 3939 | + getApp().request.get("/api/weshop/cart/page", { | |
| 3940 | + data: { | |
| 3941 | + store_id: e.data.stoid, | |
| 3942 | + user_id: oo.user_id, | |
| 3943 | + state: 1 | |
| 3944 | + }, | |
| 3945 | + success: function (res) { | |
| 3946 | + //-------如果购物车中有相关的数据--------- | |
| 3947 | + if (res.data.code == 0 && res.data.data.total > 0) { | |
| 3948 | + for (let j in res.data.data.pageData) { | |
| 3949 | + let item_j = res.data.data.pageData[j]; | |
| 3950 | + var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id; | |
| 3951 | + getApp().request.delete(url, {}); | |
| 3952 | + } | |
| 3953 | + } | |
| 3954 | + newd.state = 1; | |
| 3955 | + getApp().request.post("/api/weshop/cart/save", { | |
| 3956 | + data: newd, | |
| 3957 | + success: function (t) { | |
| 3958 | + th.closeSpecModal(); | |
| 3959 | + getApp().goto("/pages/cart/cart2/cart2?state=1"); | |
| 3960 | + } | |
| 3961 | + }); | |
| 3962 | + } | |
| 3963 | + }) | |
| 3964 | + return false; | |
| 3965 | + } | |
| 3966 | + | |
| 3967 | + if (th.data.prom_goods) { | |
| 3968 | + var prom_d = th.data.prom_goods; | |
| 3969 | + for (var i in prom_d) { | |
| 3970 | + //判断活动有俩种条件,0元 1件 | |
| 3971 | + var condition_t = prom_d[i].prom_type; | |
| 3972 | + switch (condition_t) { | |
| 3973 | + case 0: //按钱 | |
| 3974 | + if (newd.goods_price >= condition_t) { | |
| 3975 | + newd.prom_type = 3; | |
| 3976 | + newd.prom_id = prom_d[i].prom_id; | |
| 3977 | + } | |
| 3978 | + break | |
| 3979 | + case 1://按购买数量 | |
| 3980 | + if (newd.goods_num >= condition_t) { | |
| 3981 | + newd.prom_type = 3; | |
| 3982 | + newd.prom_id = prom_d[i].prom_id; | |
| 3983 | + } | |
| 3984 | + break; | |
| 3985 | + } | |
| 3986 | + } | |
| 3987 | + | |
| 3988 | + } | |
| 3989 | + | |
| 3990 | + newd['pick_name'] = th.data.sto_sele_name; | |
| 3991 | + newd['pick_dis'] = th.data.sto_sele_distr; | |
| 3992 | + th.buyNow(newd); | |
| 3993 | + } | |
| 3994 | + }, | |
| 3995 | + | |
| 3996 | + | |
| 3483 | 3997 | |
| 3484 | 3998 | |
| 3485 | 3999 | ... | ... |
packageA/pages/goodsInfo/goodsInfo.wxml
| ... | ... | @@ -548,41 +548,45 @@ |
| 548 | 548 | <view class="flex f1 btn-group"> |
| 549 | 549 | |
| 550 | 550 | <!-- 从“秒杀”入口进入购买商品 --> |
| 551 | - <block wx:if="{{options.prom_type == 1}}"> | |
| 552 | - | |
| 553 | - <block wx:if="{{prom_st==1 && !prom_r_null}}"> | |
| 554 | - <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn f1">加入购物车</view> | |
| 555 | - <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn f1">立即抢购</view> | |
| 556 | - </block> | |
| 551 | + <block wx:if="{{options.prom_type == 1}}"> | |
| 552 | + <!-- 活动正在开始,商品还没抢光 --> | |
| 553 | + <block wx:if="{{prom_st==1 && !prom_r_null}}"> | |
| 554 | + <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn f1">加入购物车</view> | |
| 555 | + <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn f1">立即抢购</view> | |
| 556 | + </block> | |
| 557 | 557 | |
| 558 | - <block wx:if="{{prom_st == 0 && !prom_r_null}}"> | |
| 559 | - <!-- 秒杀预热要单独购买 --> | |
| 560 | - <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}"> | |
| 561 | - <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> | |
| 562 | - <view class="buy-btn cart-btn lanse">即将开始</view> | |
| 563 | - </block> | |
| 564 | - <block wx:else> | |
| 565 | - <view class="buy-btn cart-btn cart-btn-lg lanse set_width f1">即将开始</view> | |
| 566 | - </block> | |
| 567 | - </block> | |
| 558 | + <!-- 活动还没开始,商品还没抢光 --> | |
| 559 | + <block wx:if="{{prom_st == 0 && !prom_r_null}}"> | |
| 560 | + <!-- 秒杀预热要单独购买 --> | |
| 561 | + <!-- is_shop_buy支持以原价购买 --> | |
| 562 | + <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}"> | |
| 563 | + <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> | |
| 564 | + <view class="buy-btn cart-btn lanse">即将开始</view> | |
| 565 | + </block> | |
| 566 | + <block wx:else> | |
| 567 | + <view class="buy-btn cart-btn cart-btn-lg lanse set_width f1">即将开始</view> | |
| 568 | + </block> | |
| 569 | + </block> | |
| 568 | 570 | |
| 569 | - <block wx:if="{{prom_r_null}}"> | |
| 570 | - <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}"> | |
| 571 | - <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> | |
| 572 | - <view class="buy-btn cart-btn huise f1">已抢光</view> | |
| 573 | - </block> | |
| 574 | - <view wx:else class="buy-btn cart-btn cart-btn-lg huise set_width f1">已抢光</view> | |
| 575 | - </block> | |
| 576 | - | |
| 577 | - <block wx:if="{{prom_st==3 && !prom_r_null}}"> | |
| 578 | - <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}"> | |
| 579 | - <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> | |
| 580 | - <view class="buy-btn cart-btn huise f1">活动已经结束</view> | |
| 581 | - </block> | |
| 582 | - <view wx:else class="buy-btn cart-btn cart-btn-lg huise set_width f1">活动已经结束</view> | |
| 583 | - </block> | |
| 584 | - | |
| 571 | + <!-- 商品已被抢光 --> | |
| 572 | + <block wx:if="{{prom_r_null}}"> | |
| 573 | + <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}"> | |
| 574 | + <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> | |
| 575 | + <view class="buy-btn cart-btn huise f1">已抢光</view> | |
| 576 | + </block> | |
| 577 | + <view wx:else class="buy-btn cart-btn cart-btn-lg huise set_width f1">已抢光</view> | |
| 578 | + </block> | |
| 579 | + | |
| 580 | + <!-- 活动已经结束,商品还没抢光 --> | |
| 581 | + <block wx:if="{{prom_st==3 && !prom_r_null}}"> | |
| 582 | + <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}"> | |
| 583 | + <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> | |
| 584 | + <view class="buy-btn cart-btn huise f1">活动已经结束</view> | |
| 585 | + </block> | |
| 586 | + <view wx:else class="buy-btn cart-btn cart-btn-lg huise set_width f1">活动已经结束</view> | |
| 585 | 587 | </block> |
| 588 | + | |
| 589 | + </block> | |
| 586 | 590 | |
| 587 | 591 | |
| 588 | 592 | <!-- 从“我的服务”入口进入购买商品 --> |
| ... | ... | @@ -590,15 +594,9 @@ |
| 590 | 594 | <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn f1">加入购物车</view> |
| 591 | 595 | <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn f1">立即购买</view> |
| 592 | 596 | </block> |
| 593 | - | |
| 594 | - | |
| 595 | - | |
| 597 | + | |
| 596 | 598 | </view> |
| 597 | 599 | |
| 598 | - | |
| 599 | - | |
| 600 | - | |
| 601 | - | |
| 602 | 600 | </view> |
| 603 | 601 | |
| 604 | 602 | <!-- 制作一个圆球导航 --> |
| ... | ... | @@ -907,6 +905,11 @@ |
| 907 | 905 | </view> |
| 908 | 906 | </view> |
| 909 | 907 | |
| 908 | +<!-- 弹起来,购买预热商品的普通购买 --> | |
| 909 | +<view hidden="{{!openSpecModal_flash_normal}}"> | |
| 910 | + <include src="buy_flash_normal.wxml" /> | |
| 911 | +</view> | |
| 912 | + | |
| 910 | 913 | |
| 911 | 914 | <!-- 联系客服操作菜单 --> |
| 912 | 915 | <view class="action {{!hiddenCS ? 'active':''}}" hidden="{{hiddenCS}}"> | ... | ... |
packageA/pages/goodsInfo/goodsInfo.wxss
utils/weapp-icon.wxss
| ... | ... | @@ -13,13 +13,6 @@ |
| 13 | 13 | background: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20width%3D%27100%25%27%20height%3D%27100%25%27%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20id%3D%22t-icon-gowudai%22%20viewBox%3D%220%200%201024%201024%22%3E%3Cpath%20d%3D%22M150.72-1.06666667l-5.86666667%20169.49333334%20738.13333334%2016.53333333L870.4-1.06666667z%22%20fill%3D%22%23cdcdcd%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M150.72-1.06666667l72.64%2049.38666667-78.50666667%20106.56z%22%20fill%3D%22%23A2A2A2%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M120.64%201025.70666667L69.33333333%20969.49333333h884.37333334l-54.29333334%2056.21333334z%22%20fill%3D%22%23bfbfbf%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M223.36%2047.36l-20.37333333%20113.38666667-103.57333334-8.74666667z%22%20fill%3D%22%23AEADAD%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M870.4-1.06666667l-71.68%2049.38666667%2084.26666667%20108.48z%22%20fill%3D%22%23A2A2A2%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M798.72%2048.32l20.37333333%20112.42666667%20105.49333334-8.74666667z%22%20fill%3D%22%23AEADAD%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M99.41333333%20152h825.17333334L954.66666667%20969.49333333H69.33333333z%22%20fill%3D%22%23dbdbdb%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M718.82666667%20256.10666667H770.13333333v255.68c0%20141.22666667-114.45333333%20255.68-255.68%20255.68S258.66666667%20653.01333333%20258.66666667%20511.78666667V256.10666667h51.30666666v255.68c0%20112.85333333%2091.52%20204.37333333%20204.37333334%20204.37333333s204.37333333-91.52%20204.37333333-204.37333333V256.10666667z%22%20fill%3D%22%23A5A5A5%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M718.82666667%20312.32H770.13333333v149.12c0%20141.22666667-114.45333333%20255.68-255.68%20255.68S258.66666667%20602.66666667%20258.66666667%20461.44V312.32h51.30666666v149.12c0%20112.85333333%2091.52%20204.37333333%20204.37333334%20204.37333333s204.37333333-91.52%20204.37333333-204.37333333V312.32z%22%20fill%3D%22%23FFFFFF%22%20%3E%3C%2Fpath%3E%3C%2Fsvg%3E); |
| 14 | 14 | } |
| 15 | 15 | |
| 16 | -/* .t-icon-liwu { | |
| 17 | - background: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20width%3D%27100%25%27%20height%3D%27100%25%27%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20id%3D%22t-icon-liwu%22%20viewBox%3D%220%200%201024%201024%22%3E%3Cpath%20d%3D%22M85.93%20950.016c0%2024.576%207.126%2031.317%2029.44%2031.317h353.366V511.744H85.931v438.272z%20m469.334%2031.317h353.365c22.358%200%2029.44-6.698%2029.44-31.317V511.744H555.221v469.59zM938.667%20256H725.333c51.499-11.733%20105.899-49.707%20112.598-94.293%207.85-50.859-52.566-127.958-125.654-118.187-87.424%2012.117-151.509%2089.259-196.736%20149.077C470.656%20133.931%20412.16%2065.408%20328.363%2045.483c-81.152-19.2-136.747%2064.938-135.254%20116.992%201.451%2044.245%2052.608%2081.834%20105.558%2093.525H85.333c-26.368%200-42.666%2014.848-42.666%2042.667v170.581l426.666%200.085V256h85.334v213.333l426.666-0.085V298.667c0-27.819-16.341-42.667-42.666-42.667z%20m-687.019-77.824c-14.763-16.427-4.779-38.741%204.48-55.595%2017.024-29.696%2040.747-47.744%2081.152-30.933%2056.32%2023.51%2097.792%2073.216%20131.584%20117.803-71.552%207.893-178.304%2010.965-217.216-31.275z%20m311.296%2030.507c34.816-44.63%2075.221-89.942%20131.157-117.803%2058.582-28.97%20113.024%2049.323%2085.206%2086.912-21.419%2028.544-89.259%2031.232-125.91%2032.853-30.08%201.536-60.501%200.811-90.453-1.962z%22%20fill%3D%22%22%20%3E%3C%2Fpath%3E%3C%2Fsvg%3E); | |
| 18 | -} | |
| 19 | - | |
| 20 | -.t-icon-echarts { | |
| 21 | - background: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20width%3D%27100%25%27%20height%3D%27100%25%27%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20id%3D%22t-icon-echarts%22%20viewBox%3D%220%200%201024%201024%22%3E%3Cpath%20d%3D%22M436.59925293%20533.33333333c0-65.04312613%2035.34952507-123.72333775%2088.37381267-153.41693881l-206.44122641-353.49525068c-282.79620057%20159.07286282-376.82593725%20518.22403753-217.75307443%20801.02023808l359.15117471-206.44122642c-11.31184801-22.62369604-23.33068654-52.31729711-23.33068654-87.66682217z%22%20fill%3D%22%23DADADA%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M613.34687829%20356.58570799c65.04312613%200%20123.72333775%2035.34952507%20153.41693879%2088.37381266l253.1025995-147.05402428C890.48715482%2073.78950741%20602.03503025-2.56546674%20377.91904132%20126.81379502l147.05402428%20253.1025995c24.03767705-11.31184801%2059.38720211-23.33068654%2088.37381269-23.33068653z%22%20fill%3D%22%23EBEBEB%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M701.72069095%20686.75027214c-23.33068654%2017.67476253-58.68021163%2023.33068654-88.37381266%2023.33068653-65.04312613%200-123.72333775-35.34952507-153.41693882-88.37381266L201.17141596%20775.12408481c41.00544908%2070.69905013%20100.3926512%20129.37926176%20171.09170135%20171.09170134%20153.41693881%2088.37381268%20335.82048816%2082.71788866%20477.21858844-5.65592402l-147.7610148-253.80958999z%22%20fill%3D%22%23B8B8B8%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M920.18075589%20356.58570799L766.76381708%20444.95952065c12.01883853%2029.69360106%2023.33068654%2058.68021163%2023.33068654%2088.37381268%200%2065.04312613-35.34952507%20123.72333775-88.37381267%20153.41693881l88.37381267%20153.41693881c171.09170134-100.3926512%20229.77191295-312.48980161%20130.08625227-483.58150296z%22%20fill%3D%22%23C7C7C7%22%20%3E%3C%2Fpath%3E%3C%2Fsvg%3E); | |
| 22 | -} */ | |
| 23 | 16 | |
| 24 | 17 | .t-icon-sort-up { |
| 25 | 18 | background: url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%3Csvg%20version%3D%221.1%22%20width%3D%27100%25%27%20height%3D%27100%25%27%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20id%3D%22t-icon-sort-up%22%20viewBox%3D%220%200%201024%201024%22%3E%3Cpath%20d%3D%22M-109.37837037-109.37837037h1242.75674074v1242.75674074H-109.37837037z%22%20fill%3D%22%23FFFFFF%22%20fill-opacity%3D%220%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M242.7360391%20615.56306132h538.5279218a20.71261275%2020.71261275%200%200%201%2016.57008947%2033.14018016l-269.2639609%20359.05313542a20.71261275%2020.71261275%200%200%201-33.14017894%200L226.16594963%20648.70324148A20.71261275%2020.71261275%200%200%201%20242.7360391%20615.56306132z%22%20fill%3D%22%23C7C7C7%22%20%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M528.57008947%2016.2436231l269.2639609%20359.05313542A20.71261275%2020.71261275%200%200%201%20781.2639609%20408.43693868H242.7360391a20.71261275%2020.71261275%200%200%201-16.57008947-33.14018016l269.2639609-359.05313542a20.71261275%2020.71261275%200%200%201%2033.14017894%200z%22%20fill%3D%22%235A5A5A%22%20%3E%3C%2Fpath%3E%3C%2Fsvg%3E); | ... | ... |