Commit 8588059297dfe7a4cd4223b943a4a4e543f4983f
解决app.json冲突
Showing
18 changed files
with
1522 additions
and
493 deletions
app.json
| ... | ... | @@ -105,41 +105,42 @@ |
| 105 | 105 | "pages/quan_pro/quan_pro", |
| 106 | 106 | "pages/liveStream/liveStream", |
| 107 | 107 | "pages/liveStreamDetails/liveStreamDetails", |
| 108 | - "pages/addCustomer/addCustomer", | |
| 109 | - "pages/goods_share/goods_share", | |
| 110 | - "pages/activity_share/activity_share", | |
| 111 | - "pages/live_share/live_share", | |
| 112 | - "pages/quan/quan", | |
| 113 | - "pages/chongzhi/chongzhi", | |
| 114 | - "pages/chongzhiDetails/chongzhiDetails", | |
| 115 | - "pages/jfbuy/jfbuy", | |
| 116 | - "pages/hongBao/hongBao", | |
| 117 | - "pages/hongBaoDetails/hongBaoDetails", | |
| 118 | - "pages/service_record/service_record", | |
| 119 | - "pages/checkin/checkin", | |
| 120 | - "pages/distribution/myteam/myteam", | |
| 121 | - "pages/distribution/order/order", | |
| 122 | - "pages/distribution/commision/commision", | |
| 123 | - "pages/distribution/rank/rank", | |
| 124 | - "pages/distribution/card/card", | |
| 125 | - "pages/distribution/goods/goods", | |
| 126 | - "pages/distribution/shop/shop", | |
| 127 | - "pages/distribution/rookie/rookie", | |
| 128 | - "pages/service_share/service_share", | |
| 129 | - "pages/cardList/cardList", | |
| 130 | - "pages/goodsInfo/goodsInfo", | |
| 131 | - "pages/my_service/appment_main", | |
| 132 | - "pages/my_service/i_service", | |
| 133 | - "pages/my_service/cosmetology_list", | |
| 134 | - "pages/my_service/hist_service", | |
| 135 | - "pages/my_service/tment_details", | |
| 136 | - "pages/my_service/tment_eval", | |
| 137 | - "pages/my_service/tment_order_list", | |
| 138 | - "pages/my_service/beauty_deta", | |
| 139 | - "pages/profile/profile", | |
| 140 | - "pages/parseHtml/parseHtml", | |
| 141 | - "pages/myGift/myGift", | |
| 142 | - "pages/myGiftDetails/myGiftDetails" | |
| 108 | + "pages/addCustomer/addCustomer", | |
| 109 | + "pages/goods_share/goods_share", | |
| 110 | + "pages/activity_share/activity_share", | |
| 111 | + "pages/live_share/live_share", | |
| 112 | + "pages/quan/quan", | |
| 113 | + "pages/chongzhi/chongzhi", | |
| 114 | + "pages/chongzhiDetails/chongzhiDetails", | |
| 115 | + "pages/jfbuy/jfbuy", | |
| 116 | + "pages/hongBao/hongBao", | |
| 117 | + "pages/hongBaoDetails/hongBaoDetails", | |
| 118 | + "pages/service_record/service_record", | |
| 119 | + "pages/checkin/checkin", | |
| 120 | + "pages/distribution/myteam/myteam", | |
| 121 | + "pages/distribution/order/order", | |
| 122 | + "pages/distribution/commision/commision", | |
| 123 | + "pages/distribution/rank/rank", | |
| 124 | + "pages/distribution/card/card", | |
| 125 | + "pages/distribution/goods/goods", | |
| 126 | + "pages/distribution/shop/shop", | |
| 127 | + "pages/distribution/rookie/rookie", | |
| 128 | + "pages/service_share/service_share", | |
| 129 | + "pages/cardList/cardList", | |
| 130 | + "pages/goodsInfo/goodsInfo", | |
| 131 | + "pages/my_service/appment_main", | |
| 132 | + "pages/my_service/i_service", | |
| 133 | + "pages/my_service/cosmetology_list", | |
| 134 | + "pages/my_service/hist_service", | |
| 135 | + "pages/my_service/tment_details", | |
| 136 | + "pages/my_service/tment_eval", | |
| 137 | + "pages/my_service/tment_order_list", | |
| 138 | + "pages/my_service/beauty_deta", | |
| 139 | + "pages/profile/profile", | |
| 140 | + "pages/parseHtml/parseHtml", | |
| 141 | + "pages/myGift/myGift", | |
| 142 | + "pages/myGiftDetails/myGiftDetails", | |
| 143 | + "pages/cart2_ser/cart2_ser" | |
| 143 | 144 | ] |
| 144 | 145 | |
| 145 | 146 | }, | ... | ... |
packageA/pages/cart2_ser/cart2_ser.js
| ... | ... | @@ -38,8 +38,8 @@ Page({ |
| 38 | 38 | bn_pickname: "", //选择的门店名称 |
| 39 | 39 | |
| 40 | 40 | /*------------------------*/ |
| 41 | - //判断页面是返回回来的还是 首次进入的 | |
| 42 | 41 | yuer:0, |
| 42 | + is_cart:0, //是不是购物车进来的购买 | |
| 43 | 43 | }, |
| 44 | 44 | onLoad: function(t) { |
| 45 | 45 | wx.setNavigationBarTitle({ |
| ... | ... | @@ -48,7 +48,11 @@ Page({ |
| 48 | 48 | |
| 49 | 49 | var appD=getApp().globalData.service_now; |
| 50 | 50 | this.data.postdata=appD; |
| 51 | - this.data.param=t; | |
| 51 | + this.data.param=t; | |
| 52 | + if(t.is_cart){ | |
| 53 | + this.setData({is_cart:1}); | |
| 54 | + } | |
| 55 | + | |
| 52 | 56 | var th=this; |
| 53 | 57 | |
| 54 | 58 | getApp().promiseGet("/api/wx/weappSendlist/page", { |
| ... | ... | @@ -71,7 +75,6 @@ Page({ |
| 71 | 75 | to.auth.get_u(func); |
| 72 | 76 | }, |
| 73 | 77 | |
| 74 | - | |
| 75 | 78 | //----------------展示页面,是再获取用户信息之后-------------- |
| 76 | 79 | show_page:function(){ |
| 77 | 80 | var th=this; |
| ... | ... | @@ -84,7 +87,15 @@ Page({ |
| 84 | 87 | getApp().globalData.userInfo = e.data.data; |
| 85 | 88 | th.setData({userinfo:e.data.data}); |
| 86 | 89 | //获取立即购买的商品信息 |
| 87 | - th.get_buy_goods(); | |
| 90 | + if(th.data.is_cart){ | |
| 91 | + //读取门店 | |
| 92 | + to.get_allsto(function (e) { | |
| 93 | + th.setData({ allsto: e }); | |
| 94 | + th.get_cart(); | |
| 95 | + }) | |
| 96 | + }else{ | |
| 97 | + th.get_buy_goods(); | |
| 98 | + } | |
| 88 | 99 | |
| 89 | 100 | //获取提现金额 |
| 90 | 101 | getApp().request.get("/api/weshop/withdrawals/summoney", { |
| ... | ... | @@ -101,6 +112,75 @@ Page({ |
| 101 | 112 | }); |
| 102 | 113 | }, |
| 103 | 114 | |
| 115 | + //-----获取购物车,入口-------- | |
| 116 | + get_cart: function () { | |
| 117 | + var th = this,app=getApp(); | |
| 118 | + a.get("/api/weshop/cartService/page", { | |
| 119 | + data: { | |
| 120 | + user_id: to.globalData.user_id, selected:1, | |
| 121 | + store_id: oo.stoid, pageSize: 600 }, | |
| 122 | + success:async function (su) { | |
| 123 | + //按门店分类的数组 | |
| 124 | + var arr = new Array(); | |
| 125 | + var carr = su.data.data.pageData; | |
| 126 | + th.data.cartlist_y = carr; //存储原始购物车列表 | |
| 127 | + | |
| 128 | + //---是不是购买等级卡成功的返回---等级卡显示的判断--- | |
| 129 | + var is_card_back=getApp().globalData.is_card_back; | |
| 130 | + | |
| 131 | + | |
| 132 | + //在分组的时候,就不要再调用接口,await | |
| 133 | + for (var i = 0; i < carr.length; i++) { | |
| 134 | + var good=null; | |
| 135 | + var item = carr[i]; | |
| 136 | + await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + oo.stoid + "/" + item.service_id, {}).then(res => { | |
| 137 | + good = res.data.data; | |
| 138 | + }) | |
| 139 | + | |
| 140 | + item.img_url = oo.imghost + good.img_url; | |
| 141 | + item.erpItemID=good.erpItemID; | |
| 142 | + | |
| 143 | + /*----接口要弄出来的,先顶着-----*/ | |
| 144 | + var pcid = item.pick_id; | |
| 145 | + var find = 0; | |
| 146 | + //----如果有就加进去,没有就新增一个---- | |
| 147 | + //-----------循环查找门店------------- | |
| 148 | + if (arr.length > 0) { | |
| 149 | + for (var j = 0; j < arr.length; j++) { | |
| 150 | + if (arr[j].pickup_id == pcid) { | |
| 151 | + arr[j].goods.push(item); | |
| 152 | + find = 1;break; | |
| 153 | + } | |
| 154 | + } | |
| 155 | + } | |
| 156 | + //------如果没有找到----- | |
| 157 | + if (find == 0) { | |
| 158 | + var pikname = '',sto=null; | |
| 159 | + //----找到门店名称----- | |
| 160 | + for (var k = 0; k < th.data.allsto.length; k++) { | |
| 161 | + if (pcid == th.data.allsto[k].pickup_id) { | |
| 162 | + pikname = th.data.allsto[k].pickup_name; sto = th.data.allsto[k]; break; | |
| 163 | + } | |
| 164 | + } | |
| 165 | + var narr = new Array(); narr.push(item); | |
| 166 | + var ie = { | |
| 167 | + pickup_id: pcid, pname: pikname, goods: narr,keyid:sto.keyid, | |
| 168 | + goods_price: 0, shipping_price: 0, user_money: 0, total_amount: 0, order_amount: 0}; | |
| 169 | + arr.push(ie); | |
| 170 | + | |
| 171 | + } | |
| 172 | + } | |
| 173 | + | |
| 174 | + //深拷贝 | |
| 175 | + th.data.old_cartlist= JSON.parse(JSON.stringify(arr)); | |
| 176 | + th.setData({ | |
| 177 | + cartlist: arr, | |
| 178 | + }); | |
| 179 | + th.calculatePrice(); | |
| 180 | + } | |
| 181 | + }); | |
| 182 | + }, | |
| 183 | + | |
| 104 | 184 | //-----获取立即购买的商品信息---- |
| 105 | 185 | get_buy_goods: function (){ |
| 106 | 186 | var th=this,a=getApp().request; |
| ... | ... | @@ -147,7 +227,117 @@ Page({ |
| 147 | 227 | invoiceToggle: !this.data.invoiceToggle |
| 148 | 228 | }); |
| 149 | 229 | }, |
| 150 | - | |
| 230 | + | |
| 231 | + | |
| 232 | + //-------------------计算购物车订单价格------------------- | |
| 233 | + calculatePrice: function() { | |
| 234 | + var th = this; | |
| 235 | + to.getConfig2(async function(ee){ | |
| 236 | + wx.showLoading({ | |
| 237 | + title:"处理中." | |
| 238 | + }) | |
| 239 | + var all_price=0; //所有的商品总价 | |
| 240 | + var all_shipping_m= 0; //所有的物流总价 | |
| 241 | + var all_total_m = 0; //所有的订单应付总价 | |
| 242 | + var all_order_m = 0; //所有的订单应付总价 | |
| 243 | + var all_user_m=0; //所有的订单用户使用金额 | |
| 244 | + var all_coupon_price_m=0; //所有的订单用户使用优惠券价格 | |
| 245 | + var all_cutprice=0; //所有的优惠减件 | |
| 246 | + var all_order_prom=0; //所有的订单优惠 | |
| 247 | + | |
| 248 | + var umoney = th.data.userinfo.user_money - th.data.txmon - (th.data.userinfo.frozen_money?th.data.userinfo.frozen_money:0); | |
| 249 | + var freight_free = ee.freight_free; //全场满多少包邮 | |
| 250 | + var no_ex_id=ee.no_ex_id; | |
| 251 | + var no_ex_good=null; | |
| 252 | + var by_qc={}; | |
| 253 | + var c_arr=JSON.parse(JSON.stringify(th.data.old_cartlist)); | |
| 254 | + | |
| 255 | + //---循环购物车--- | |
| 256 | + for(var i in c_arr){ | |
| 257 | + | |
| 258 | + var cart_item=c_arr[i]; //就是每一单的意思 | |
| 259 | + var pickid=cart_item.pickup_id; | |
| 260 | + var o_price=0; | |
| 261 | + var o_shipping_price=0,goods_weight=-1, goods_piece=-1; | |
| 262 | + var item=c_arr[i].goods; //就是每一单的从表的意思 | |
| 263 | + | |
| 264 | + //---如果有选择优惠券的情况下--- | |
| 265 | + var quan_price=0; | |
| 266 | + var coupon_price=0; | |
| 267 | + var quan_no= null; | |
| 268 | + | |
| 269 | + //--------循环计算总价----------- | |
| 270 | + for(var j=0;j<item.length;j++){ | |
| 271 | + o_price += item[j].money * item[j].goods_num; | |
| 272 | + } | |
| 273 | + var f_o_price=o_price; | |
| 274 | + cart_item.goods_price = f_o_price.toFixed(2); //商品总费用,用f_o_price来计算 | |
| 275 | + //计算物流费用 | |
| 276 | + cart_item.shipping_price = 0; | |
| 277 | + | |
| 278 | + //总价计算,总价不包含运费 | |
| 279 | + cart_item.order_amount= (o_price -quan_price).toFixed(2); | |
| 280 | + cart_item.total_amount= f_o_price.toFixed(2); | |
| 281 | + | |
| 282 | + var order_prom_amount=0; var order_prom_id=0; var o_condition=cart_item.order_amount; | |
| 283 | + var order_m=0; | |
| 284 | + cart_item.order_prom_amount=0; | |
| 285 | + coupon_price=quan_price; | |
| 286 | + | |
| 287 | + | |
| 288 | + cart_item.total_amount= parseFloat(cart_item.total_amount)+parseFloat(cart_item.shipping_price); //总金额 | |
| 289 | + cart_item.order_amount=parseFloat(cart_item.order_amount)+parseFloat(cart_item.shipping_price); //总金额 | |
| 290 | + cart_item.total_amount= cart_item.total_amount.toFixed(2); | |
| 291 | + cart_item.order_amount=cart_item.order_amount.toFixed(2); | |
| 292 | + | |
| 293 | + //搭配购在使用余额 | |
| 294 | + if(th.data.bn_use_money==1 && th.data.is_b_now==1){ | |
| 295 | + | |
| 296 | + if (umoney > cart_item.order_amount) { | |
| 297 | + cart_item.user_money = cart_item.order_amount; | |
| 298 | + umoney = umoney - cart_item.order_amount; | |
| 299 | + }else { | |
| 300 | + cart_item.user_money = umoney; | |
| 301 | + umoney=0; | |
| 302 | + } | |
| 303 | + | |
| 304 | + }else{ | |
| 305 | + //--------------如果使用余额,购物车购买--------------------- | |
| 306 | + if (th.data.js_use_money == 1) { | |
| 307 | + if (umoney > cart_item.order_amount) { | |
| 308 | + cart_item.user_money = cart_item.order_amount; | |
| 309 | + umoney = umoney - cart_item.order_amount; | |
| 310 | + }else { | |
| 311 | + cart_item.user_money = umoney; | |
| 312 | + umoney=0; | |
| 313 | + } | |
| 314 | + }else{ | |
| 315 | + cart_item.user_money=0; | |
| 316 | + } | |
| 317 | + } | |
| 318 | + all_price += parseFloat(f_o_price); | |
| 319 | + all_total_m += parseFloat(cart_item.total_amount); | |
| 320 | + all_shipping_m += parseFloat(cart_item.shipping_price); | |
| 321 | + all_order_m += parseFloat(cart_item.order_amount); | |
| 322 | + } | |
| 323 | + | |
| 324 | + | |
| 325 | + all_total_m = parseFloat(all_total_m).toFixed(2); | |
| 326 | + all_order_m = parseFloat(all_order_m).toFixed(2); | |
| 327 | + all_price = parseFloat(all_price).toFixed(2); | |
| 328 | + all_total_m = parseFloat(all_total_m).toFixed(2); | |
| 329 | + | |
| 330 | + var atxt = "formData.total_amount"; | |
| 331 | + var atxt1 = "formData.order_amount"; | |
| 332 | + var atxt2 = "formData.all_price"; | |
| 333 | + | |
| 334 | + th.setData({ [atxt]: all_total_m, [atxt1]: all_order_m, | |
| 335 | + [atxt2]: all_price,show_submit:1 | |
| 336 | + }) | |
| 337 | + th.data.order_prom_list_cart=c_arr; | |
| 338 | + wx.hideLoading(); | |
| 339 | + }); | |
| 340 | + }, | |
| 151 | 341 | |
| 152 | 342 | //---------计算立即购买---------- |
| 153 | 343 | calculatePrice2: function () { |
| ... | ... | @@ -186,38 +376,73 @@ Page({ |
| 186 | 376 | if(this.data.is_summit_ing==1) return false; //--提交中退出-- |
| 187 | 377 | this.data.is_summit_ing=1; |
| 188 | 378 | var th=this,pdata=new Array(); |
| 189 | - var ff=true; | |
| 379 | + | |
| 190 | 380 | var item={ |
| 191 | - 'user_id': to.globalData.user_id, | |
| 192 | - 'account': th.data.formData.order_amount, //使用余额 | |
| 193 | - 'store_id':oo.stoid, //商家 | |
| 194 | - 'list':new Array(), | |
| 195 | - }; | |
| 196 | - var gg = getApp().globalData.service_now; | |
| 197 | - var goods={ | |
| 198 | - 'card_id': th.data.bn_goods.id, | |
| 199 | - 'itemid': th.data.bn_goods.erpItemID, | |
| 200 | - 'qty': gg.goods_num, | |
| 201 | - 'price': th.data.formData.order_amount, | |
| 202 | - 'pickup_id':gg.pick_id, | |
| 203 | - 'pickup_keyid':gg.keyid, | |
| 204 | - }; | |
| 205 | - | |
| 206 | - //--导购分享过来的id-- | |
| 207 | - if(gg.guide_id){ | |
| 208 | - goods.guide_id=gg.guide_id; | |
| 209 | - goods.guide_type=gg.guide_type; | |
| 210 | - //调用接口判断是不是会员 | |
| 211 | - await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/"+oo.stoid+"/"+gg.guide_id,{}).then(res=>{ | |
| 212 | - if(res.data.code==0){ | |
| 213 | - goods.guide_name=res.data.data.salesman; | |
| 214 | - goods.guide_sn=res.data.data.salesman_no; | |
| 215 | - } | |
| 216 | - }) | |
| 381 | + 'user_id': to.globalData.user_id, | |
| 382 | + 'account': th.data.formData.order_amount, //使用余额 | |
| 383 | + 'store_id':oo.stoid, //商家 | |
| 384 | + 'list':new Array(), | |
| 385 | + }; | |
| 386 | + | |
| 387 | + //判断是不是购物车购买还是立即购买 | |
| 388 | + if(this.data.is_cart){ | |
| 389 | + var list= th.data.cartlist; | |
| 390 | + for(var i in list){ | |
| 391 | + var gglist = list[i].goods; | |
| 392 | + for(var j in gglist){ | |
| 393 | + var gg=gglist[j]; | |
| 394 | + var goods={ | |
| 395 | + 'card_id': gg.service_id, | |
| 396 | + 'itemid': gg.erpItemID, | |
| 397 | + 'qty': gg.goods_num, | |
| 398 | + 'price': gg.money, | |
| 399 | + 'pickup_id':gg.pick_id, | |
| 400 | + 'pickup_keyid':list[i].keyid, | |
| 401 | + }; | |
| 402 | + //--导购分享过来的id-- | |
| 403 | + if(gg.guide_id){ | |
| 404 | + goods.guide_id=gg.guide_id; | |
| 405 | + goods.guide_type=gg.guide_type; | |
| 406 | + //调用接口判断是不是会员 | |
| 407 | + await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/"+oo.stoid+"/"+gg.guide_id,{}).then(res=>{ | |
| 408 | + if(res.data.code==0){ | |
| 409 | + goods.guide_name=res.data.data.salesman; | |
| 410 | + goods.guide_sn=res.data.data.salesman_no; | |
| 411 | + } | |
| 412 | + }) | |
| 413 | + } | |
| 414 | + item.list.push(goods); | |
| 415 | + } | |
| 416 | + } | |
| 417 | + }else{ | |
| 418 | + | |
| 419 | + var gg = getApp().globalData.service_now; | |
| 420 | + var goods={ | |
| 421 | + 'card_id': th.data.bn_goods.id, | |
| 422 | + 'itemid': th.data.bn_goods.erpItemID, | |
| 423 | + 'qty': gg.goods_num, | |
| 424 | + 'price': th.data.formData.order_amount, | |
| 425 | + 'pickup_id':gg.pick_id, | |
| 426 | + 'pickup_keyid':gg.keyid, | |
| 427 | + }; | |
| 428 | + | |
| 429 | + //--导购分享过来的id-- | |
| 430 | + if(gg.guide_id){ | |
| 431 | + goods.guide_id=gg.guide_id; | |
| 432 | + goods.guide_type=gg.guide_type; | |
| 433 | + //调用接口判断是不是会员 | |
| 434 | + await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/"+oo.stoid+"/"+gg.guide_id,{}).then(res=>{ | |
| 435 | + if(res.data.code==0){ | |
| 436 | + goods.guide_name=res.data.data.salesman; | |
| 437 | + goods.guide_sn=res.data.data.salesman_no; | |
| 438 | + } | |
| 439 | + }) | |
| 440 | + } | |
| 441 | + item.list.push(goods); | |
| 217 | 442 | } |
| 218 | - item.list.push(goods); | |
| 443 | + | |
| 444 | + | |
| 219 | 445 | pdata=item; |
| 220 | - | |
| 221 | 446 | var str = JSON.stringify(pdata); |
| 222 | 447 | console.log("支付数据"); |
| 223 | 448 | console.log(str); |
| ... | ... | @@ -236,7 +461,13 @@ Page({ |
| 236 | 461 | if (res.statusCode == 200) { |
| 237 | 462 | var data=res.data; |
| 238 | 463 | if(data.code==0){ |
| 239 | - | |
| 464 | + if(th.data.is_cart){ | |
| 465 | + var list = th.data.cartlist_y; | |
| 466 | + for (var i = 0; i < list.length; i++) { | |
| 467 | + //删除购物车 | |
| 468 | + a.delete("/api/weshop/cartService/del/" + oo.stoid + "/" + list[i].id, {}); | |
| 469 | + } | |
| 470 | + } | |
| 240 | 471 | var order_amount = pdata.account; |
| 241 | 472 | //要进行判断,如果是用微信支付,就要跳转到支付界面 |
| 242 | 473 | if (order_amount > 0) { | ... | ... |
packageA/pages/cart2_ser/cart2_ser.wxml
| 1 | 1 | <wxs module="filters" src="../../../utils/filter.wxs"></wxs> |
| 2 | 2 | <form bindsubmit="submitForm"> |
| 3 | 3 | <view class="container"> |
| 4 | - | |
| 4 | + | |
| 5 | + <!---------------------购物车进来,有可能多单----------------------> | |
| 6 | + <block wx:if="{{is_cart}}"> | |
| 7 | + <view wx:for="{{cartlist}}" wx:for-index="pidx"> | |
| 8 | + <view class="use-item bfff bdr_t-14 mgt20"> | |
| 9 | + <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'></image> | |
| 10 | + <!-- <view>门店:{{item.pname}}</view> --> | |
| 11 | + <view>{{item.pname}}</view> | |
| 12 | + </view> | |
| 13 | + <view class="order-detail" wx:for="{{item.goods}}" wx:for-index="idx" wx:for-item="items"> | |
| 14 | + <!----商品图片-----> | |
| 15 | + <view class="goods-img" style="position: relative"> | |
| 16 | + <image wx:if="{{items.is_gift}}" src="{{imgUrl}}/miniapp/images/giveaway.png" class="gift_image"></image> | |
| 17 | + <image class="wh100 bdr14" src="{{items.img_url}}" binderror='cart_set_err' data-err='cartlist[{{pidx}}].goods[{{idx}}].img_url'></image> | |
| 18 | + </view> | |
| 19 | + <!----商品名称规格----> | |
| 20 | + <navigator class="order-cont" url="/packageA/pages/goodsInfo/goodsInfo?goods_id={{items.service_id}}"> | |
| 21 | + <view class="goods-name ellipsis-2">{{items.service_name}}</view> | |
| 22 | + <!-----商品名称规格------> | |
| 23 | + <view class="order-num flex-space-between"> | |
| 24 | + <view class="co-red">¥<text class="fs36">{{filters.toFix(items.money,2)}}</text></view> | |
| 25 | + <view class="goods-num">x{{items.goods_num}}</view> | |
| 26 | + </view> | |
| 27 | + </navigator> | |
| 28 | + </view> | |
| 29 | + </view> | |
| 30 | + </block> | |
| 31 | + | |
| 5 | 32 | <!------立即购买--------> |
| 6 | - <block> | |
| 33 | + <block wx:else> | |
| 7 | 34 | <view class="use-item bfff bdr_t-14 mgt20"> |
| 8 | 35 | <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'> </image> <view>{{bn_pickname}}</view></view> |
| 9 | 36 | <view class="order-detail"> |
| ... | ... | @@ -24,14 +51,12 @@ |
| 24 | 51 | </view> |
| 25 | 52 | </navigator> |
| 26 | 53 | </view> |
| 27 | - </block> | |
| 28 | - <!-- | |
| 29 | - <view class="coupon-mes flex-vertical"> | |
| 30 | - <view>留言</view> | |
| 31 | - <view class="leave-word"> | |
| 32 | - <input placeholder-class="fs28" placeholder='给商家留言,最多100字'bindinput="keyUpChangeNum" disabled="{{disabled}}" class="word-box" maxlength="100" name="user_note"></input> | |
| 33 | - </view> | |
| 34 | - </view>--> | |
| 54 | + </block> | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 35 | 60 | |
| 36 | 61 | <view class="information bdr14"> |
| 37 | 62 | <view class="item"> | ... | ... |
packageA/pages/goodsInfo/goodsInfo.js
| ... | ... | @@ -400,8 +400,9 @@ Page({ |
| 400 | 400 | 'data.goods_id': t.data.data.id, |
| 401 | 401 | 'data.id': t.data.data.id, |
| 402 | 402 | 'data.sales_sum': t.data.data.sales_sum, |
| 403 | - 'data.storageId':t.data.data.storageId | |
| 404 | - }); | |
| 403 | + 'data.storageId':t.data.data.storageId, | |
| 404 | + 'data.service_sn':t.data.data.serviceSn, | |
| 405 | + }); | |
| 405 | 406 | |
| 406 | 407 | |
| 407 | 408 | //-----商品详情--- |
| ... | ... | @@ -522,9 +523,77 @@ Page({ |
| 522 | 523 | newd['pick_name'] = th.data.sto_sele_name; |
| 523 | 524 | newd['guide_id'] = getApp().globalData.guide_id; |
| 524 | 525 | newd['guide_type']=0; |
| 525 | - | |
| 526 | 526 | th.buyNow(newd); |
| 527 | - } | |
| 527 | + }else{ | |
| 528 | + | |
| 529 | + var newd = { | |
| 530 | + service_id: th.data.data.id, | |
| 531 | + service_sn:th.data.data.service_sn, | |
| 532 | + service_name:th.data.data.goods_name, | |
| 533 | + goods_num: th.data.goodsInputNum, | |
| 534 | + pick_id: th.data.sto_sele_id, | |
| 535 | + user_id:oo.user_id, | |
| 536 | + store_id:os.stoid, | |
| 537 | + money:th.data.data.shop_price | |
| 538 | + }; | |
| 539 | + if(getApp().globalData.guide_id){ | |
| 540 | + newd['guide_id'] = getApp().globalData.guide_id; | |
| 541 | + newd['guide_type']=0; | |
| 542 | + } | |
| 543 | + | |
| 544 | + //----先看会员在购物车中是否加入了该商品----- | |
| 545 | + getApp().request.get("/api/weshop/cartService/page", { | |
| 546 | + data: { | |
| 547 | + store_id: os.stoid, | |
| 548 | + user_id: oo.user_id, | |
| 549 | + service_id: th.data.data.id, | |
| 550 | + pick_id: th.data.sto_sele_id, | |
| 551 | + }, | |
| 552 | + success: function(re) { | |
| 553 | + | |
| 554 | + //-------如果购物车中有相关的数据--------- | |
| 555 | + if (re.data.data.total > 0) { | |
| 556 | + var item = re.data.data.pageData[0]; | |
| 557 | + var updata = { | |
| 558 | + id: item.id, | |
| 559 | + goods_num: th.data.goodsInputNum + item.goods_num, | |
| 560 | + money: th.data.data.shop_price, | |
| 561 | + store_id: os.stoid, | |
| 562 | + }; | |
| 563 | + | |
| 564 | + if (getApp().globalData.guide_id) { | |
| 565 | + updata['guide_id'] = getApp().globalData.guide_id; | |
| 566 | + updata['guide_type'] = 1; | |
| 567 | + } | |
| 568 | + getApp().request.put("/api/weshop/cartService/update", { | |
| 569 | + data: updata, | |
| 570 | + success: function(t) { | |
| 571 | + getApp().my_warnning('加入购物车成功', 1, th, 450); | |
| 572 | + var c_num = th.data.cartGoodsNum + th.data.goodsInputNum; | |
| 573 | + th.setData({ | |
| 574 | + cartGoodsNum: c_num | |
| 575 | + }); | |
| 576 | + th.closeSpecModal(); | |
| 577 | + } | |
| 578 | + }); | |
| 579 | + } else { | |
| 580 | + | |
| 581 | + getApp().request.post("/api/weshop/cartService/save", { | |
| 582 | + data: newd, | |
| 583 | + success: function(t) { | |
| 584 | + getApp().my_warnning('加入购物车成功', 1, th, 450); | |
| 585 | + var c_num = th.data.cartGoodsNum + th.data.goodsInputNum; | |
| 586 | + th.setData({ | |
| 587 | + cartGoodsNum: c_num | |
| 588 | + }); | |
| 589 | + th.closeSpecModal(); | |
| 590 | + } | |
| 591 | + }); | |
| 592 | + } | |
| 593 | + } | |
| 594 | + }); | |
| 595 | + | |
| 596 | + } | |
| 528 | 597 | |
| 529 | 598 | |
| 530 | 599 | }, | ... | ... |
packageA/pages/goodsInfo/goodsInfo.wxml
| ... | ... | @@ -160,8 +160,8 @@ |
| 160 | 160 | </view> |
| 161 | 161 | |
| 162 | 162 | <block> |
| 163 | - <!-- <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn">加入购物车</view> --> | |
| 164 | - <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn" style="width: 64%; border-radius: 56rpx;">立即购买</view> | |
| 163 | + <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn">加入购物车</view> | |
| 164 | + <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn">立即购买</view> | |
| 165 | 165 | </block> |
| 166 | 166 | |
| 167 | 167 | </view> | ... | ... |
pages/cart/cart/cart.js
| ... | ... | @@ -29,6 +29,8 @@ Page({ |
| 29 | 29 | card_field:"", |
| 30 | 30 | bconf:null, |
| 31 | 31 | btn_click:1, |
| 32 | + | |
| 33 | + service_data:null, | |
| 32 | 34 | }, |
| 33 | 35 | onLoad: function() { |
| 34 | 36 | var a = this,ee=a; |
| ... | ... | @@ -124,10 +126,7 @@ Page({ |
| 124 | 126 | } |
| 125 | 127 | }) |
| 126 | 128 | |
| 127 | - | |
| 128 | - | |
| 129 | - | |
| 130 | - | |
| 129 | + | |
| 131 | 130 | }, |
| 132 | 131 | |
| 133 | 132 | onHide(){ |
| ... | ... | @@ -147,9 +146,11 @@ Page({ |
| 147 | 146 | allsto: e |
| 148 | 147 | }); |
| 149 | 148 | th.get_cart(); |
| 149 | + th.get_ser_cart(); | |
| 150 | 150 | }) |
| 151 | 151 | } else { |
| 152 | 152 | th.get_cart(); |
| 153 | + th.get_ser_cart(); | |
| 153 | 154 | } |
| 154 | 155 | |
| 155 | 156 | //要获取会员是不是等级会员 |
| ... | ... | @@ -172,10 +173,18 @@ Page({ |
| 172 | 173 | } |
| 173 | 174 | } |
| 174 | 175 | }) |
| 175 | - | |
| 176 | - | |
| 176 | + if( (!this.data.requestData || this.data.requestData.length==0) && (!this.data.service_data || this.data.service_data.length==0)) { | |
| 177 | + setTimeout(function () { | |
| 178 | + var goods_list = th.selectComponent("#goods_list"); //组件的id | |
| 179 | + if(goods_list){ | |
| 180 | + goods_list.init(); | |
| 181 | + goods_list.get_list(); | |
| 182 | + } | |
| 183 | + }, 800) | |
| 184 | + } | |
| 177 | 185 | }, |
| 178 | - //-----真的获取购物车-------- | |
| 186 | + | |
| 187 | + //-----真的获取购物车-------- | |
| 179 | 188 | get_cart: function() { |
| 180 | 189 | var th = this; |
| 181 | 190 | var rd = Math.random().toString(36).substr(2, 15); |
| ... | ... | @@ -328,13 +337,7 @@ Page({ |
| 328 | 337 | } |
| 329 | 338 | } |
| 330 | 339 | |
| 331 | - if(arr.length==0) { | |
| 332 | - setTimeout(function () { | |
| 333 | - var goods_list = th.selectComponent("#goods_list"); //组件的id | |
| 334 | - goods_list.init(); | |
| 335 | - goods_list.get_list(); | |
| 336 | - }, 800) | |
| 337 | - } | |
| 340 | + | |
| 338 | 341 | |
| 339 | 342 | if(th.data.is_open_offline && th.data.is_open_offline>0){ |
| 340 | 343 | //-- 此时要实时更新线下取价价格 -- |
| ... | ... | @@ -357,6 +360,106 @@ Page({ |
| 357 | 360 | }); |
| 358 | 361 | }, |
| 359 | 362 | |
| 363 | + //-----真的获取购物车-------- | |
| 364 | + get_ser_cart: function() { | |
| 365 | + var th = this; | |
| 366 | + var rd = Math.random().toString(36).substr(2, 15); | |
| 367 | + getApp().request.get("/api/weshop/cartService/page", { | |
| 368 | + data: { | |
| 369 | + user_id: app.globalData.user_id, | |
| 370 | + rd: rd, | |
| 371 | + store_id: oo.stoid, | |
| 372 | + pageSize: 600, | |
| 373 | + }, | |
| 374 | + success:async function(su) { | |
| 375 | + //按门店分类的数组 | |
| 376 | + var arr = new Array(), | |
| 377 | + carr = su.data.data.pageData; | |
| 378 | + var all_num = 0; | |
| 379 | + | |
| 380 | + if(carr && carr.length>0) { | |
| 381 | + for (var i = 0; i < carr.length; i++) { | |
| 382 | + var item = carr[i]; | |
| 383 | + var good = null; | |
| 384 | + | |
| 385 | + await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + oo.stoid + "/" + item.service_id, {}).then(res => { | |
| 386 | + good = res.data.data; | |
| 387 | + }) | |
| 388 | + if(!good){ | |
| 389 | + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; | |
| 390 | + getApp().request.delete(url, { | |
| 391 | + success: function (t) { | |
| 392 | + } | |
| 393 | + }); | |
| 394 | + continue; | |
| 395 | + } | |
| 396 | + | |
| 397 | + | |
| 398 | + //如果商品下架了,或者商品是赠品,一开始都要清除 | |
| 399 | + if (good.is_show == 0) { | |
| 400 | + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; | |
| 401 | + getApp().request.delete(url, { | |
| 402 | + success: function (t) { | |
| 403 | + } | |
| 404 | + }); | |
| 405 | + //商品已经下架 | |
| 406 | + continue; | |
| 407 | + } | |
| 408 | + | |
| 409 | + all_num += item.goods_num; | |
| 410 | + item.img_url = oo.imghost + good.imgUrl; | |
| 411 | + item.selected = 0; | |
| 412 | + | |
| 413 | + | |
| 414 | + var pcid = item.pick_id; | |
| 415 | + var find = 0; | |
| 416 | + //---------循环查找门店--- | |
| 417 | + if (arr.length > 0) { | |
| 418 | + for (var j = 0; j < arr.length; j++) { | |
| 419 | + if (arr[j].pid == pcid) { | |
| 420 | + arr[j].goods.push(item); | |
| 421 | + find = 1; | |
| 422 | + break; | |
| 423 | + } | |
| 424 | + } | |
| 425 | + } | |
| 426 | + | |
| 427 | + //------如果没有找到----- | |
| 428 | + if (find == 0) { | |
| 429 | + var pikname = ''; | |
| 430 | + //找到门店名称 | |
| 431 | + for (var k = 0; k < th.data.allsto.length; k++) { | |
| 432 | + if (pcid == th.data.allsto[k].pickup_id) { | |
| 433 | + pikname = th.data.allsto[k].pickup_name; | |
| 434 | + break; | |
| 435 | + } | |
| 436 | + } | |
| 437 | + var narr = new Array(); | |
| 438 | + narr.push(item); | |
| 439 | + var ie = { | |
| 440 | + pid: pcid, | |
| 441 | + pname: pikname, | |
| 442 | + goods: narr, | |
| 443 | + selected: 0 | |
| 444 | + }; | |
| 445 | + arr.push(ie); | |
| 446 | + } | |
| 447 | + } | |
| 448 | + } | |
| 449 | + | |
| 450 | + | |
| 451 | + th.setData({ | |
| 452 | + service_data: arr, | |
| 453 | + all_num2: all_num, | |
| 454 | + is_edit: 0 | |
| 455 | + }), | |
| 456 | + th.doCheckAll(), wx.stopPullDownRefresh(); | |
| 457 | + | |
| 458 | + } | |
| 459 | + }); | |
| 460 | + }, | |
| 461 | + | |
| 462 | + | |
| 360 | 463 | //设置莫个门店的所有线下价格 |
| 361 | 464 | async set_offline(list){ |
| 362 | 465 | var th=this; |
| ... | ... | @@ -444,7 +547,6 @@ Page({ |
| 444 | 547 | }; |
| 445 | 548 | th.postCardList(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); |
| 446 | 549 | } |
| 447 | - | |
| 448 | 550 | }, |
| 449 | 551 | |
| 450 | 552 | //-------------加数量--------------------- |
| ... | ... | @@ -464,7 +566,6 @@ Page({ |
| 464 | 566 | goods_id: a.goods_id, |
| 465 | 567 | store_id: oo.stoid |
| 466 | 568 | }; |
| 467 | - isShowLoading: 0; | |
| 468 | 569 | this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); |
| 469 | 570 | } else { |
| 470 | 571 | wx.showModal({ |
| ... | ... | @@ -500,66 +601,180 @@ Page({ |
| 500 | 601 | this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); |
| 501 | 602 | } |
| 502 | 603 | }, |
| 503 | - //---------------全选,全选的时候要判断是否门店的匹配方式一致-------------- | |
| 604 | + | |
| 605 | + | |
| 606 | + //-----------------点击输入修改商品数量--------------- | |
| 607 | + valueToNum_ser: function(t) { | |
| 608 | + if(!this.data.is_load) return false; | |
| 609 | + //控制住,避免事件响应冲突,只有input有输入的时候,才刷新 | |
| 610 | + if(this.data.btn_click){ | |
| 611 | + return false; | |
| 612 | + } | |
| 613 | + this.data.btn_click=1; | |
| 614 | + | |
| 615 | + var a = t.currentTarget.dataset.item; | |
| 616 | + var b = t.currentTarget.dataset.pitems; | |
| 617 | + a = this.data.service_data[b].goods[a]; | |
| 618 | + var e = a; | |
| 619 | + var th=this; | |
| 620 | + | |
| 621 | + if (a = isNaN(t.detail.value) || t.detail.value < 1 ? 1 : parseInt(t.detail.value)) { | |
| 622 | + var s = { | |
| 623 | + goods_num: a, | |
| 624 | + goods_id: e.goods_id, | |
| 625 | + id: e.id, | |
| 626 | + store_id: oo.stoid | |
| 627 | + }; | |
| 628 | + th.postCardList_ser(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | |
| 629 | + } | |
| 630 | + }, | |
| 631 | + //-------------加数量--------------------- | |
| 632 | + addNum_ser: function(t) { | |
| 633 | + if(!this.data.is_load) return false; | |
| 634 | + if (this.data.up_dating == 1) return false; | |
| 635 | + this.data.up_dating = 1; | |
| 636 | + | |
| 637 | + var a = t.currentTarget.dataset.item; | |
| 638 | + var b = t.currentTarget.dataset.pitems; | |
| 639 | + a = this.data.service_data[b].goods[a]; | |
| 640 | + | |
| 641 | + var e = { | |
| 642 | + goods_num: a.goods_num + 1, | |
| 643 | + id: a.id, | |
| 644 | + goods_id: a.goods_id, | |
| 645 | + store_id: oo.stoid | |
| 646 | + }; | |
| 647 | + this.postCardList_ser(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | |
| 648 | + | |
| 649 | + }, | |
| 650 | + //-------------减数量--------------------- | |
| 651 | + subNum_ser: function(t) { | |
| 652 | + if(!this.data.is_load) return false; | |
| 653 | + if (this.data.up_dating == 1) return false; | |
| 654 | + this.data.up_dating = 1; | |
| 655 | + | |
| 656 | + var a = t.currentTarget.dataset.item; | |
| 657 | + var b = t.currentTarget.dataset.pitems; | |
| 658 | + a = this.data.service_data[b].goods[a]; | |
| 659 | + this.data.btn_click=1; | |
| 660 | + | |
| 661 | + if (a.goods_num - 1 < 0){ | |
| 662 | + this.data.up_dating = 0; | |
| 663 | + return false; | |
| 664 | + } | |
| 665 | + | |
| 666 | + if (1 != a.goods_num) { | |
| 667 | + var e = { | |
| 668 | + goods_num: a.goods_num - 1, | |
| 669 | + id: a.id, | |
| 670 | + goods_id: a.goods_id, | |
| 671 | + store_id: oo.stoid | |
| 672 | + }; | |
| 673 | + this.postCardList_ser(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | |
| 674 | + } | |
| 675 | + }, | |
| 676 | + | |
| 677 | + | |
| 678 | + //---------------全选,全选的时候要判断是否门店的匹配方式一致-------------- | |
| 504 | 679 | checkAll: function() { |
| 505 | 680 | var e = this, |
| 506 | 681 | dda = e.data.requestData, |
| 682 | + sdda = e.data.service_data, | |
| 507 | 683 | tfeel = 0, |
| 508 | 684 | t_num = 0, |
| 509 | 685 | text_arr = ""; |
| 686 | + | |
| 687 | + if(e.data.requestData && e.data.requestData.length>0 | |
| 688 | + && e.data.service_data && e.data.service_data.length>0){ | |
| 689 | + wx.showModal({ | |
| 690 | + title: '提示', | |
| 691 | + content: '服务卡项目不能和商品一起选择' | |
| 692 | + }); | |
| 693 | + return false; | |
| 694 | + } | |
| 695 | + | |
| 510 | 696 | this.data.btn_click=1; |
| 511 | 697 | |
| 512 | - for (var i = 0; i < dda.length; i++) { | |
| 513 | - var item = dda[i].goods; | |
| 514 | - if (!e.data.checkAllToggle) { | |
| 515 | - var txt = "requestData[" + i + "].selected"; | |
| 516 | - e.setData({ | |
| 517 | - [txt]: 0, | |
| 518 | - }); | |
| 519 | - } | |
| 520 | - var fir = 0; | |
| 521 | - for (var j = 0; j < item.length; j++) { | |
| 522 | - if(item[j].is_gift) continue; | |
| 523 | - if (fir == 0) { | |
| 524 | - fir = item[j].distr_type; | |
| 525 | - } else { | |
| 526 | - //如果同一门店有不同门店的商品,不能同一配送 | |
| 527 | - if (fir != item[j].distr_type && !e.data.checkAllToggle && item[j].distr_type != 0) { | |
| 528 | - text_arr += item[j].goods_name + " "; | |
| 529 | - break; | |
| 698 | + if(dda && dda.length>0){ | |
| 699 | + for (var i = 0; i < dda.length; i++) { | |
| 700 | + var item = dda[i].goods; | |
| 701 | + if (!e.data.checkAllToggle) { | |
| 702 | + var txt = "requestData[" + i + "].selected"; | |
| 703 | + e.setData({ | |
| 704 | + [txt]: 0, | |
| 705 | + }); | |
| 706 | + } | |
| 707 | + var fir = 0; | |
| 708 | + for (var j = 0; j < item.length; j++) { | |
| 709 | + if(item[j].is_gift) continue; | |
| 710 | + if (fir == 0) { | |
| 711 | + fir = item[j].distr_type; | |
| 712 | + } else { | |
| 713 | + //如果同一门店有不同门店的商品,不能同一配送 | |
| 714 | + if (fir != item[j].distr_type && !e.data.checkAllToggle && item[j].distr_type != 0) { | |
| 715 | + text_arr += item[j].goods_name + " "; | |
| 716 | + break; | |
| 717 | + } | |
| 718 | + } | |
| 719 | + var txt = "requestData[" + i + "].goods[" + j + "].selected" | |
| 720 | + e.setData({ | |
| 721 | + [txt]: !e.data.checkAllToggle, | |
| 722 | + }) | |
| 723 | + if (!e.data.checkAllToggle) { | |
| 724 | + tfeel += item[j].goods_num * item[j].goods_price; | |
| 725 | + t_num += item[j].goods_num; | |
| 530 | 726 | } |
| 531 | 727 | } |
| 532 | - var txt = "requestData[" + i + "].goods[" + j + "].selected" | |
| 728 | + } | |
| 729 | + | |
| 730 | + if (text_arr != "") { | |
| 731 | + wx.showModal({ | |
| 732 | + title: '提示', | |
| 733 | + content: text_arr + '不能与门店中其他商品一起结算,配送方式不一致' | |
| 734 | + }); | |
| 735 | + return false; | |
| 736 | + } else { | |
| 533 | 737 | e.setData({ |
| 534 | - [txt]: !e.data.checkAllToggle, | |
| 535 | - }) | |
| 536 | - if (!e.data.checkAllToggle) { | |
| 537 | - tfeel += item[j].goods_num * item[j].goods_price; | |
| 538 | - t_num += item[j].goods_num; | |
| 738 | + checkAllToggle: !e.data.checkAllToggle, | |
| 739 | + total_fee: tfeel.toFixed(2), | |
| 740 | + total_num: t_num, | |
| 741 | + }); | |
| 742 | + | |
| 743 | + for(var i in e.data.requestData){ | |
| 744 | + e.check_prom_activity(i) | |
| 539 | 745 | } |
| 540 | 746 | } |
| 541 | 747 | } |
| 542 | 748 | |
| 543 | - if (text_arr != "") { | |
| 544 | - wx.showModal({ | |
| 545 | - title: '提示', | |
| 546 | - content: text_arr + '不能与门店中其他商品一起结算,配送方式不一致' | |
| 547 | - }); | |
| 548 | - return false; | |
| 549 | - } else { | |
| 749 | + if(sdda && sdda.length>0){ | |
| 750 | + for (var i = 0; i < sdda.length; i++) { | |
| 751 | + var item = sdda[i].goods; | |
| 752 | + if (!e.data.checkAllToggle) { | |
| 753 | + var txt = "service_data[" + i + "].selected"; | |
| 754 | + e.setData({ | |
| 755 | + [txt]: 0, | |
| 756 | + }); | |
| 757 | + } | |
| 758 | + var fir = 0; | |
| 759 | + for (var j = 0; j < item.length; j++) { | |
| 760 | + var txt = "service_data[" + i + "].goods[" + j + "].selected" | |
| 761 | + e.setData({ | |
| 762 | + [txt]: !e.data.checkAllToggle, | |
| 763 | + }) | |
| 764 | + if (!e.data.checkAllToggle) { | |
| 765 | + tfeel += item[j].goods_num * item[j].money; | |
| 766 | + t_num += item[j].goods_num; | |
| 767 | + } | |
| 768 | + } | |
| 769 | + } | |
| 550 | 770 | e.setData({ |
| 551 | 771 | checkAllToggle: !e.data.checkAllToggle, |
| 552 | 772 | total_fee: tfeel.toFixed(2), |
| 553 | 773 | total_num: t_num, |
| 554 | 774 | }); |
| 555 | - | |
| 556 | - for(var i in e.data.requestData){ | |
| 557 | - e.check_prom_activity(i) | |
| 558 | - } | |
| 559 | - | |
| 560 | 775 | } |
| 561 | - }, | |
| 562 | 776 | |
| 777 | + }, | |
| 563 | 778 | //------门店全选按钮,要判断是否门店的匹配方式一致--------- |
| 564 | 779 | check_th_all_item:async function(ele) { |
| 565 | 780 | var e = this, |
| ... | ... | @@ -567,10 +782,32 @@ Page({ |
| 567 | 782 | item = this.data.requestData[pitems].goods, |
| 568 | 783 | sele = this.data.requestData[pitems].selected; |
| 569 | 784 | this.data.btn_click=1; |
| 785 | + var garr=e.data.service_data; | |
| 570 | 786 | |
| 571 | 787 | var isok = 1, |
| 572 | 788 | fir = 0, |
| 573 | 789 | iarr = item; |
| 790 | + | |
| 791 | + if(!sele){ | |
| 792 | + var check_is_service_selected=0; | |
| 793 | + for (var ii in garr){ | |
| 794 | + for (var ij in garr[ii].goods){ | |
| 795 | + if( garr[ii].goods[ij].selected){ | |
| 796 | + check_is_service_selected=1; | |
| 797 | + break; | |
| 798 | + } | |
| 799 | + } | |
| 800 | + } | |
| 801 | + | |
| 802 | + if(check_is_service_selected){ | |
| 803 | + wx.showModal({ | |
| 804 | + title: '提示', | |
| 805 | + content: '服务卡项目不能和商品一起选择' | |
| 806 | + }); | |
| 807 | + return false; | |
| 808 | + } | |
| 809 | + } | |
| 810 | + | |
| 574 | 811 | if (!sele && item.length > 0) { |
| 575 | 812 | for (var i = 0; i < iarr.length; i++) { |
| 576 | 813 | if(iarr[i].is_gift==1) continue; |
| ... | ... | @@ -612,7 +849,6 @@ Page({ |
| 612 | 849 | } |
| 613 | 850 | this.doCheckAll(); |
| 614 | 851 | }, |
| 615 | - | |
| 616 | 852 | //---------------单选,也要判断门店的配送方式是否一致-------------- |
| 617 | 853 | check_th_item: async function(t) { |
| 618 | 854 | var e = this, |
| ... | ... | @@ -622,13 +858,32 @@ Page({ |
| 622 | 858 | var isok = 1,fir = 0; |
| 623 | 859 | var iarr = e.data.requestData[pitems].goods; |
| 624 | 860 | this.data.btn_click=1; |
| 625 | - | |
| 861 | + var garr= e.data.service_data; | |
| 862 | + | |
| 863 | + if (!a.selected) { | |
| 864 | + var check_is_service_selected = 0; | |
| 865 | + for (var ii in garr) { | |
| 866 | + for (var ij in garr[ii].goods) { | |
| 867 | + if (garr[ii].goods[ij].selected) { | |
| 868 | + check_is_service_selected = 1; | |
| 869 | + break; | |
| 870 | + } | |
| 871 | + } | |
| 872 | + } | |
| 873 | + if (check_is_service_selected) { | |
| 874 | + wx.showModal({ | |
| 875 | + title: '提示', | |
| 876 | + content: '服务卡项目不能和商品一起选择' | |
| 877 | + }); | |
| 878 | + return false; | |
| 879 | + } | |
| 880 | + } | |
| 626 | 881 | |
| 627 | 882 | //当数量大于1,且是选择的时候 |
| 628 | 883 | if (iarr.length > 1 && !a.selected) { |
| 884 | + | |
| 629 | 885 | for (var i = 0; i < iarr.length; i++) { |
| 630 | 886 | if(iarr[i].is_gift==1) continue; |
| 631 | - | |
| 632 | 887 | //---当不是本身选择项目---- |
| 633 | 888 | var sel = iarr[i].selected; |
| 634 | 889 | if (iarr[i].distr_type != 0 && (sel || iarr[i].id == a.id)) { |
| ... | ... | @@ -662,10 +917,93 @@ Page({ |
| 662 | 917 | if(i!=pitems) await e.check_prom_activity(i); |
| 663 | 918 | } |
| 664 | 919 | } |
| 665 | - | |
| 666 | 920 | this.doCheckAll(); |
| 667 | 921 | } |
| 668 | 922 | }, |
| 923 | + | |
| 924 | + //------门店全选按钮,要判断是否门店的匹配方式一致--------- | |
| 925 | + check_th_all_item_ser:async function(ele) { | |
| 926 | + var e = this, | |
| 927 | + pitems = ele.currentTarget.dataset.pitems, | |
| 928 | + item = this.data.service_data[pitems].goods, | |
| 929 | + sele = this.data.service_data[pitems].selected; | |
| 930 | + this.data.btn_click=1; | |
| 931 | + var garr= e.data.requestData; | |
| 932 | + | |
| 933 | + var isok = 1, | |
| 934 | + fir = 0, | |
| 935 | + iarr = item; | |
| 936 | + | |
| 937 | + if(!sele){ | |
| 938 | + var check_is_goods_selected=0; | |
| 939 | + for (var ii in garr){ | |
| 940 | + for (var ij in garr[ii].goods){ | |
| 941 | + if( garr[ii].goods[ij].selected){ | |
| 942 | + check_is_goods_selected=1; | |
| 943 | + break; | |
| 944 | + } | |
| 945 | + } | |
| 946 | + } | |
| 947 | + if(check_is_goods_selected){ | |
| 948 | + wx.showModal({ | |
| 949 | + title: '提示', | |
| 950 | + content: '服务卡项目不能和商品一起选择' | |
| 951 | + }); | |
| 952 | + return false; | |
| 953 | + } | |
| 954 | + } | |
| 955 | + | |
| 956 | + for (var i = 0; i < item.length; i++) { | |
| 957 | + var txt = "service_data[" + pitems + "].goods[" + i + "].selected"; | |
| 958 | + e.setData({ | |
| 959 | + [txt]: Number(!sele), | |
| 960 | + }); | |
| 961 | + } | |
| 962 | + var txt = "service_data[" + pitems + "].selected"; | |
| 963 | + e.setData({ | |
| 964 | + [txt]: Number(!sele), | |
| 965 | + }); | |
| 966 | + this.doCheckAll(); | |
| 967 | + }, | |
| 968 | + //---------------单选,也要判断门店的配送方式是否一致-------------- | |
| 969 | + check_th_item_ser: async function(t) { | |
| 970 | + var e = this, | |
| 971 | + item = t.currentTarget.dataset.item, | |
| 972 | + pitems = t.currentTarget.dataset.pitems; | |
| 973 | + a = this.data.service_data[pitems].goods[item]; | |
| 974 | + var isok = 1,fir = 0; | |
| 975 | + var iarr = e.data.service_data[pitems].goods; | |
| 976 | + this.data.btn_click=1; | |
| 977 | + | |
| 978 | + var garr= e.data.requestData; | |
| 979 | + | |
| 980 | + if(!a.selected){ | |
| 981 | + var check_is_goods_selected=0; | |
| 982 | + for (var ii in garr){ | |
| 983 | + for (var ij in garr[ii].goods){ | |
| 984 | + if( garr[ii].goods[ij].selected){ | |
| 985 | + check_is_goods_selected=1; | |
| 986 | + break; | |
| 987 | + } | |
| 988 | + } | |
| 989 | + } | |
| 990 | + | |
| 991 | + if(check_is_goods_selected){ | |
| 992 | + wx.showModal({ | |
| 993 | + title: '提示', | |
| 994 | + content: '服务卡项目不能和商品一起选择' | |
| 995 | + }); | |
| 996 | + return false; | |
| 997 | + } | |
| 998 | + } | |
| 999 | + | |
| 1000 | + var txt = "service_data[" + pitems + "].goods[" + item + "].selected"; | |
| 1001 | + e.setData({ | |
| 1002 | + [txt]: Number(!a.selected), | |
| 1003 | + }); | |
| 1004 | + this.doCheckAll(); | |
| 1005 | + }, | |
| 1006 | + | |
| 669 | 1007 | //----------检查是否全选--------- |
| 670 | 1008 | doCheckAll: function() { |
| 671 | 1009 | var th = this, |
| ... | ... | @@ -673,49 +1011,80 @@ Page({ |
| 673 | 1011 | t_num = 0, |
| 674 | 1012 | ischeck = 1, |
| 675 | 1013 | car = this.data.requestData, |
| 1014 | + car2 = this.data.service_data, | |
| 676 | 1015 | all_num = 0; |
| 677 | 1016 | |
| 678 | - for (var a = 0; a < car.length; a++) { | |
| 679 | - var c_item=car[a]; | |
| 680 | - var item = car[a].goods, | |
| 681 | - is_s_sele = 1; | |
| 682 | - var offline_price=0; | |
| 683 | - var offline_num=0; | |
| 684 | - for (var c = 0; c < item.length; c++) { | |
| 685 | - if(item[c].is_gift) continue; | |
| 686 | - all_num += item[c].goods_num; | |
| 687 | - if (item[c].selected == 0) { | |
| 688 | - ischeck = 0; | |
| 689 | - is_s_sele = 0; | |
| 690 | - } else { | |
| 691 | - tfeel += item[c].goods_num * item[c].goods_price; | |
| 692 | - t_num += item[c].goods_num; | |
| 1017 | + //-- 购物车 -- | |
| 1018 | + if(car && car.length>0){ | |
| 1019 | + for (var a = 0; a < car.length; a++) { | |
| 1020 | + var c_item=car[a]; | |
| 1021 | + var item = car[a].goods, | |
| 1022 | + is_s_sele = 1; | |
| 1023 | + var offline_price=0; | |
| 1024 | + var offline_num=0; | |
| 1025 | + for (var c = 0; c < item.length; c++) { | |
| 1026 | + if(item[c].is_gift) continue; | |
| 1027 | + all_num += item[c].goods_num; | |
| 1028 | + if (item[c].selected == 0) { | |
| 1029 | + ischeck = 0; | |
| 1030 | + is_s_sele = 0; | |
| 1031 | + } else { | |
| 1032 | + tfeel += item[c].goods_num * item[c].goods_price; | |
| 1033 | + t_num += item[c].goods_num; | |
| 1034 | + } | |
| 1035 | + | |
| 1036 | + //-- 如果这个商品是线下取价的时候 -- | |
| 1037 | + if(item[c].is_offline){ | |
| 1038 | + offline_price+= (item[c].goods_price-item[c].offline_price)*item[c].goods_num; | |
| 1039 | + offline_num+=item[c].goods_num; | |
| 1040 | + } | |
| 1041 | + | |
| 693 | 1042 | } |
| 694 | 1043 | |
| 695 | - //-- 如果这个商品是线下取价的时候 -- | |
| 696 | - if(item[c].is_offline){ | |
| 697 | - offline_price+= (item[c].goods_price-item[c].offline_price)*item[c].goods_num; | |
| 698 | - offline_num+=item[c].goods_num; | |
| 1044 | + var txt = "requestData[" + a + "].selected"; | |
| 1045 | + th.setData({ | |
| 1046 | + [txt]: Number(is_s_sele) | |
| 1047 | + }); | |
| 1048 | + | |
| 1049 | + //当有线下取价的时候 | |
| 1050 | + if(offline_price){ | |
| 1051 | + var txt1= "requestData[" + a + "].offline_price"; | |
| 1052 | + var txt2= "requestData[" + a + "].offline_num"; | |
| 1053 | + th.setData({ | |
| 1054 | + [txt1]: offline_price.toFixed(2), | |
| 1055 | + [txt2]: offline_num, | |
| 1056 | + }); | |
| 699 | 1057 | } |
| 700 | 1058 | |
| 701 | 1059 | } |
| 1060 | + } | |
| 702 | 1061 | |
| 703 | - var txt = "requestData[" + a + "].selected"; | |
| 704 | - th.setData({ | |
| 705 | - [txt]: Number(is_s_sele) | |
| 706 | - }); | |
| 1062 | + //-- 服务卡 -- | |
| 1063 | + if(car2 && car2.length>0){ | |
| 1064 | + for (var a = 0; a < car2.length; a++) { | |
| 1065 | + var c_item=car2[a]; | |
| 1066 | + var item = car2[a].goods, is_s_sele = 1; | |
| 1067 | + | |
| 1068 | + for (var c = 0; c < item.length; c++) { | |
| 1069 | + if(item[c].is_gift) continue; | |
| 1070 | + all_num += item[c].goods_num; | |
| 1071 | + if (item[c].selected == 0) { | |
| 1072 | + ischeck = 0; | |
| 1073 | + is_s_sele = 0; | |
| 1074 | + } else { | |
| 1075 | + tfeel += item[c].goods_num * item[c].money; | |
| 1076 | + t_num += item[c].goods_num; | |
| 1077 | + } | |
| 1078 | + | |
| 1079 | + } | |
| 707 | 1080 | |
| 708 | - //当有线下取价的时候 | |
| 709 | - if(offline_price){ | |
| 710 | - var txt1= "requestData[" + a + "].offline_price"; | |
| 711 | - var txt2= "requestData[" + a + "].offline_num"; | |
| 1081 | + var txt = "service_data[" + a + "].selected"; | |
| 712 | 1082 | th.setData({ |
| 713 | - [txt1]: offline_price.toFixed(2), | |
| 714 | - [txt2]: offline_num, | |
| 1083 | + [txt]: Number(is_s_sele) | |
| 715 | 1084 | }); |
| 716 | 1085 | } |
| 717 | - | |
| 718 | 1086 | } |
| 1087 | + | |
| 719 | 1088 | this.setData({ |
| 720 | 1089 | checkAllToggle: ischeck, |
| 721 | 1090 | total_fee: tfeel.toFixed(2), |
| ... | ... | @@ -904,6 +1273,20 @@ Page({ |
| 904 | 1273 | }); |
| 905 | 1274 | }, |
| 906 | 1275 | |
| 1276 | + //----------------------更新购物数量,加减,调用接口--------------------- | |
| 1277 | + postCardList_ser: function(t, item, pitem) { | |
| 1278 | + var e = this,th=e; | |
| 1279 | + var user_id = getApp().globalData.user_id; | |
| 1280 | + var txt = "service_data[" + pitem + "].goods[" + item + "].goods_num"; | |
| 1281 | + e.setData({ | |
| 1282 | + [txt]: t.goods_num | |
| 1283 | + }); | |
| 1284 | + e.doCheckAll(); | |
| 1285 | + e.update_cart_ser(t, pitem, item); | |
| 1286 | + }, | |
| 1287 | + | |
| 1288 | + | |
| 1289 | + | |
| 907 | 1290 | //---检验线下库存的数量--- |
| 908 | 1291 | async check_down_line(t, pitem, item,erpwareid){ |
| 909 | 1292 | var ob={},th=this; |
| ... | ... | @@ -993,6 +1376,25 @@ Page({ |
| 993 | 1376 | }); |
| 994 | 1377 | }, |
| 995 | 1378 | |
| 1379 | + //--更新购物车--- | |
| 1380 | + update_cart_ser: function(t, pitem, item) { | |
| 1381 | + var e = this; | |
| 1382 | + getApp().request.put("/api/weshop/cartService/update", { | |
| 1383 | + data: t, | |
| 1384 | + success:async function(ee) { | |
| 1385 | + var txt = "service_data[" + pitem + "].goods[" + item + "].goods_num"; | |
| 1386 | + e.setData({ | |
| 1387 | + [txt]: t.goods_num, | |
| 1388 | + }); | |
| 1389 | + e.doCheckAll(); | |
| 1390 | + getApp().requestCardNum(e); | |
| 1391 | + } | |
| 1392 | + }); | |
| 1393 | + }, | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 996 | 1398 | //-------下拉刷新--------- |
| 997 | 1399 | onPullDownRefresh: function(t) { |
| 998 | 1400 | this.getCardList(); |
| ... | ... | @@ -1008,259 +1410,293 @@ Page({ |
| 1008 | 1410 | }) |
| 1009 | 1411 | } |
| 1010 | 1412 | |
| 1011 | - var glist = ""; //用逗号隔开的 | |
| 1012 | - var map = new Map(); //使用map值键进行运算 | |
| 1013 | - var map_limit = new Map(); //使用map值键进行存储限购 | |
| 1014 | - var g_arr = new Array(); //已选的商品列表 | |
| 1015 | - var user_id = getApp().globalData.user_id; | |
| 1016 | - var th = this; | |
| 1017 | - //用于判断是不是积分购的普通购买 | |
| 1018 | - var normal_arr={}; | |
| 1019 | - var ab = 0; //选中 | |
| 1020 | - wx.showLoading(); | |
| 1021 | - for (var i = 0; i < this.data.requestData.length; i++) { | |
| 1022 | - var i_arr = this.data.requestData[i].goods; | |
| 1023 | - for (var j = 0; j < i_arr.length; j++) { | |
| 1024 | - if (i_arr[j].selected && i_arr[j].is_gift!=1) { | |
| 1025 | - | |
| 1026 | - if(i_arr[j].is_pd_normal) { | |
| 1027 | - normal_arr[i_arr[j].goods_id]=1; | |
| 1028 | - } | |
| 1029 | - //map 的key是不会重复,会覆盖,, | |
| 1030 | - var ie = { | |
| 1031 | - goods_id: i_arr[j].goods_id, | |
| 1032 | - id: i_arr[j].id, | |
| 1033 | - goods_price: i_arr[j].goods_price, | |
| 1034 | - }; | |
| 1035 | - //判断是不是线下取价 | |
| 1036 | - if(i_arr[j].is_offline){ | |
| 1037 | - ie.is_offline=i_arr[j].is_offline; | |
| 1038 | - ie.offline_price=i_arr[j].offline_price; | |
| 1039 | - ie.pricing_type=i_arr[j].pricing_type; | |
| 1040 | - } | |
| 1041 | - g_arr.push(ie); | |
| 1042 | - | |
| 1043 | - if (map.has(i_arr[j].goods_id + "")) { | |
| 1044 | - var num11 = map.get(i_arr[j].goods_id + ""); | |
| 1045 | - var num22 = parseInt(i_arr[j].goods_num) + parseInt(num11); | |
| 1046 | - map.set(i_arr[j].goods_id + "", num22); | |
| 1047 | - } else { | |
| 1048 | - map.set(i_arr[j].goods_id + "", i_arr[j].goods_num); | |
| 1413 | + var garr=this.data.requestData; | |
| 1414 | + var check_is_goods_selected=0; | |
| 1415 | + if(garr) { | |
| 1416 | + for (var ii in garr) { | |
| 1417 | + for (var ij in garr[ii].goods) { | |
| 1418 | + if (garr[ii].goods[ij].selected) { | |
| 1419 | + check_is_goods_selected = 1; | |
| 1420 | + break; | |
| 1049 | 1421 | } |
| 1050 | - glist += i_arr[j].goods_id + ","; | |
| 1051 | - ab = 1; | |
| 1052 | - //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存--- | |
| 1053 | - if((i_arr[j].prom_type==0 || i_arr[j].prom_type==3 || i_arr[j].prom_type==5) && th.data.sales_rules==2 && i_arr[j].is_gift!=1){ | |
| 1054 | - //--获取商品的线下商品ID-- | |
| 1055 | - var gd=null; | |
| 1056 | - await getApp().request.promiseGet("/api/weshop/goods/get/" + oo.stoid + "/" + i_arr[j].goods_id,{}).then(res=>{ | |
| 1057 | - if(res.data.code==0) gd=res.data.data; | |
| 1058 | - }) | |
| 1059 | - //--判断商品是线下库存-- | |
| 1060 | - var ob={} | |
| 1061 | - await th.check_down_line_next(i_arr[j],i,j,gd.erpwareid,function(rs){ | |
| 1062 | - ob=rs; | |
| 1063 | - }); | |
| 1064 | - if(ob.code==-1){ | |
| 1065 | - t.my_warnning(gd.goods_name+"门店库存不足", 0, th); | |
| 1066 | - wx.hideLoading(); | |
| 1067 | - return false; | |
| 1422 | + } | |
| 1423 | + } | |
| 1424 | + } | |
| 1425 | + //-- 如果是商品的结算 -- | |
| 1426 | + if(check_is_goods_selected) { | |
| 1427 | + var glist = ""; //用逗号隔开的 | |
| 1428 | + var map = new Map(); //使用map值键进行运算 | |
| 1429 | + var map_limit = new Map(); //使用map值键进行存储限购 | |
| 1430 | + var g_arr = new Array(); //已选的商品列表 | |
| 1431 | + var user_id = getApp().globalData.user_id; | |
| 1432 | + var th = this; | |
| 1433 | + //用于判断是不是积分购的普通购买 | |
| 1434 | + var normal_arr = {}; | |
| 1435 | + var ab = 0; //选中 | |
| 1436 | + wx.showLoading(); | |
| 1437 | + for (var i = 0; i < this.data.requestData.length; i++) { | |
| 1438 | + var i_arr = this.data.requestData[i].goods; | |
| 1439 | + for (var j = 0; j < i_arr.length; j++) { | |
| 1440 | + if (i_arr[j].selected && i_arr[j].is_gift != 1) { | |
| 1441 | + | |
| 1442 | + if (i_arr[j].is_pd_normal) { | |
| 1443 | + normal_arr[i_arr[j].goods_id] = 1; | |
| 1068 | 1444 | } |
| 1069 | - | |
| 1070 | - var is_ok=1; | |
| 1071 | - //如果是优惠活动话,要看活动有没有过期 | |
| 1072 | - if(i_arr[j].prom_type==3){ | |
| 1073 | - //判断有没有活动 | |
| 1074 | - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+i_arr[j].goods_id+"/1", {}).then(res => { | |
| 1075 | - if(res.data.code==0){ | |
| 1076 | - if(!res.data.data.promGoodsLists){ | |
| 1077 | - t.my_warnning(i_arr[j].goods_name+"优惠活动已经过期", 0, th); | |
| 1078 | - wx.hideLoading(); | |
| 1079 | - is_ok=0; | |
| 1080 | - } | |
| 1081 | - } | |
| 1082 | - }) | |
| 1445 | + //map 的key是不会重复,会覆盖,, | |
| 1446 | + var ie = { | |
| 1447 | + goods_id: i_arr[j].goods_id, | |
| 1448 | + id: i_arr[j].id, | |
| 1449 | + goods_price: i_arr[j].goods_price, | |
| 1450 | + }; | |
| 1451 | + //判断是不是线下取价 | |
| 1452 | + if (i_arr[j].is_offline) { | |
| 1453 | + ie.is_offline = i_arr[j].is_offline; | |
| 1454 | + ie.offline_price = i_arr[j].offline_price; | |
| 1455 | + ie.pricing_type = i_arr[j].pricing_type; | |
| 1083 | 1456 | } |
| 1084 | - if(!is_ok){return false;} | |
| 1085 | - } | |
| 1457 | + g_arr.push(ie); | |
| 1458 | + | |
| 1459 | + if (map.has(i_arr[j].goods_id + "")) { | |
| 1460 | + var num11 = map.get(i_arr[j].goods_id + ""); | |
| 1461 | + var num22 = parseInt(i_arr[j].goods_num) + parseInt(num11); | |
| 1462 | + map.set(i_arr[j].goods_id + "", num22); | |
| 1463 | + } else { | |
| 1464 | + map.set(i_arr[j].goods_id + "", i_arr[j].goods_num); | |
| 1465 | + } | |
| 1466 | + glist += i_arr[j].goods_id + ","; | |
| 1467 | + ab = 1; | |
| 1468 | + //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存--- | |
| 1469 | + if ((i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3 || i_arr[j].prom_type == 5) && th.data.sales_rules == 2 && i_arr[j].is_gift != 1) { | |
| 1470 | + //--获取商品的线下商品ID-- | |
| 1471 | + var gd = null; | |
| 1472 | + await getApp().request.promiseGet("/api/weshop/goods/get/" + oo.stoid + "/" + i_arr[j].goods_id, {}).then(res => { | |
| 1473 | + if (res.data.code == 0) gd = res.data.data; | |
| 1474 | + }) | |
| 1475 | + //--判断商品是线下库存-- | |
| 1476 | + var ob = {} | |
| 1477 | + await th.check_down_line_next(i_arr[j], i, j, gd.erpwareid, function (rs) { | |
| 1478 | + ob = rs; | |
| 1479 | + }); | |
| 1480 | + if (ob.code == -1) { | |
| 1481 | + t.my_warnning(gd.goods_name + "门店库存不足", 0, th); | |
| 1482 | + wx.hideLoading(); | |
| 1483 | + return false; | |
| 1484 | + } | |
| 1086 | 1485 | |
| 1087 | - } else { | |
| 1088 | - if(i_arr[j].is_gift==1) continue; | |
| 1089 | - rq.put("/api/weshop/cart/update", { | |
| 1090 | - data: { | |
| 1091 | - id: i_arr[j].id, | |
| 1092 | - selected: 0, | |
| 1093 | - store_id: oo.stoid | |
| 1094 | - }, | |
| 1095 | - success: function(ee) { | |
| 1096 | - console.log(ee); | |
| 1486 | + var is_ok = 1; | |
| 1487 | + //如果是优惠活动话,要看活动有没有过期 | |
| 1488 | + if (i_arr[j].prom_type == 3) { | |
| 1489 | + //判断有没有活动 | |
| 1490 | + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + i_arr[j].goods_id + "/1", {}).then(res => { | |
| 1491 | + if (res.data.code == 0) { | |
| 1492 | + if (!res.data.data.promGoodsLists) { | |
| 1493 | + t.my_warnning(i_arr[j].goods_name + "优惠活动已经过期", 0, th); | |
| 1494 | + wx.hideLoading(); | |
| 1495 | + is_ok = 0; | |
| 1496 | + } | |
| 1497 | + } | |
| 1498 | + }) | |
| 1499 | + } | |
| 1500 | + if (!is_ok) { | |
| 1501 | + return false; | |
| 1502 | + } | |
| 1097 | 1503 | } |
| 1098 | - }); | |
| 1099 | - } | |
| 1100 | - } | |
| 1101 | - } | |
| 1102 | - if (ab == 0) { | |
| 1103 | - t.my_warnning("未选择商品", 0, th); | |
| 1104 | - wx.hideLoading(); | |
| 1105 | - return false; | |
| 1106 | - } | |
| 1107 | 1504 | |
| 1108 | - glist = glist.substring(0, glist.length - 1); | |
| 1109 | - //--取一下商品的限购 以及活动的限购,redis数量-- | |
| 1110 | - rq.get("/api/weshop/goods/getGoodsListNum", { | |
| 1111 | - data: { | |
| 1112 | - goodsidlist: glist, | |
| 1113 | - store_id: oo.stoid | |
| 1114 | - }, | |
| 1115 | - async success(ee) { | |
| 1116 | - console.log(ee); | |
| 1117 | - if (ee.data.code == 0) { | |
| 1118 | - var ddata = ee.data.data, | |
| 1119 | - isok = 1, | |
| 1120 | - gname = "", | |
| 1121 | - err = ""; | |
| 1122 | - //--组装-- | |
| 1123 | - for (var ij = 0; ij < ddata.length; ij++) { | |
| 1124 | - var val = ddata[ij]; | |
| 1125 | - var obj = map_limit.get(val.goods_id + ""); | |
| 1126 | - if (obj) continue; | |
| 1127 | - | |
| 1128 | - var promgoodsbuynum = 0; | |
| 1129 | - var goodsbuynum = 0; | |
| 1130 | - //--要获得商品,该用户买了多少件,同步应用-- | |
| 1131 | - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { | |
| 1505 | + } else { | |
| 1506 | + if (i_arr[j].is_gift == 1) continue; | |
| 1507 | + rq.put("/api/weshop/cart/update", { | |
| 1132 | 1508 | data: { |
| 1133 | - store_id: oo.stoid, | |
| 1134 | - user_id: user_id, | |
| 1135 | - goods_id: val.goods_id, | |
| 1136 | - prom_type: val.prom_type, | |
| 1137 | - prom_id: val.prom_id | |
| 1509 | + id: i_arr[j].id, | |
| 1510 | + selected: 0, | |
| 1511 | + store_id: oo.stoid | |
| 1138 | 1512 | }, |
| 1139 | - }).then(res => { | |
| 1140 | - var buy_num_data = res.data.data; | |
| 1141 | - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum; | |
| 1142 | - goodsbuynum = buy_num_data.goodsbuynum; | |
| 1143 | - }) | |
| 1144 | - var ie= { | |
| 1145 | - promgoodsbuynum: promgoodsbuynum, | |
| 1146 | - goodsbuynum: goodsbuynum | |
| 1147 | - }; | |
| 1148 | - map_limit.set(val.goods_id + "", ie); | |
| 1513 | + success: function (ee) { | |
| 1514 | + console.log(ee); | |
| 1515 | + } | |
| 1516 | + }); | |
| 1149 | 1517 | } |
| 1518 | + } | |
| 1519 | + } | |
| 1520 | + if (ab == 0) { | |
| 1521 | + t.my_warnning("未选择商品", 0, th); | |
| 1522 | + wx.hideLoading(); | |
| 1523 | + return false; | |
| 1524 | + } | |
| 1150 | 1525 | |
| 1151 | - try { | |
| 1152 | - for(var ind in ddata) { | |
| 1153 | - var val=ddata[ind]; | |
| 1154 | - var num = map.get(val.goods_id + ""); | |
| 1155 | - if (num <= 0) { | |
| 1156 | - isok = 0; | |
| 1157 | - gname = val.goods_name; | |
| 1158 | - throw "购买数量不能为0"; | |
| 1159 | - return false; | |
| 1160 | - } | |
| 1526 | + glist = glist.substring(0, glist.length - 1); | |
| 1527 | + //--取一下商品的限购 以及活动的限购,redis数量-- | |
| 1528 | + rq.get("/api/weshop/goods/getGoodsListNum", { | |
| 1529 | + data: { | |
| 1530 | + goodsidlist: glist, | |
| 1531 | + store_id: oo.stoid | |
| 1532 | + }, | |
| 1533 | + async success(ee) { | |
| 1534 | + console.log(ee); | |
| 1535 | + if (ee.data.code == 0) { | |
| 1536 | + var ddata = ee.data.data, | |
| 1537 | + isok = 1, | |
| 1538 | + gname = "", | |
| 1539 | + err = ""; | |
| 1540 | + //--组装-- | |
| 1541 | + for (var ij = 0; ij < ddata.length; ij++) { | |
| 1542 | + var val = ddata[ij]; | |
| 1543 | + var obj = map_limit.get(val.goods_id + ""); | |
| 1544 | + if (obj) continue; | |
| 1545 | + | |
| 1546 | + var promgoodsbuynum = 0; | |
| 1547 | + var goodsbuynum = 0; | |
| 1548 | + //--要获得商品,该用户买了多少件,同步应用-- | |
| 1549 | + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { | |
| 1550 | + data: { | |
| 1551 | + store_id: oo.stoid, | |
| 1552 | + user_id: user_id, | |
| 1553 | + goods_id: val.goods_id, | |
| 1554 | + prom_type: val.prom_type, | |
| 1555 | + prom_id: val.prom_id | |
| 1556 | + }, | |
| 1557 | + }).then(res => { | |
| 1558 | + var buy_num_data = res.data.data; | |
| 1559 | + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum; | |
| 1560 | + goodsbuynum = buy_num_data.goodsbuynum; | |
| 1561 | + }) | |
| 1562 | + var ie = { | |
| 1563 | + promgoodsbuynum: promgoodsbuynum, | |
| 1564 | + goodsbuynum: goodsbuynum | |
| 1565 | + }; | |
| 1566 | + map_limit.set(val.goods_id + "", ie); | |
| 1567 | + } | |
| 1161 | 1568 | |
| 1162 | - if(val.prom_type==1 || val.prom_type==6){ | |
| 1163 | - if (num > val.store_count) { | |
| 1569 | + try { | |
| 1570 | + for (var ind in ddata) { | |
| 1571 | + var val = ddata[ind]; | |
| 1572 | + var num = map.get(val.goods_id + ""); | |
| 1573 | + if (num <= 0) { | |
| 1164 | 1574 | isok = 0; |
| 1165 | 1575 | gname = val.goods_name; |
| 1166 | - throw "超出库存"; | |
| 1576 | + throw "购买数量不能为0"; | |
| 1167 | 1577 | return false; |
| 1168 | 1578 | } |
| 1169 | - } | |
| 1170 | 1579 | |
| 1171 | - if(th.data.sales_rules!=2){ | |
| 1172 | - if (num > val.store_count) { | |
| 1580 | + if (val.prom_type == 1 || val.prom_type == 6) { | |
| 1581 | + if (num > val.store_count) { | |
| 1582 | + isok = 0; | |
| 1583 | + gname = val.goods_name; | |
| 1584 | + throw "超出库存"; | |
| 1585 | + return false; | |
| 1586 | + } | |
| 1587 | + } | |
| 1588 | + | |
| 1589 | + if (th.data.sales_rules != 2) { | |
| 1590 | + if (num > val.store_count) { | |
| 1591 | + isok = 0; | |
| 1592 | + gname = val.goods_name; | |
| 1593 | + throw "超出库存"; | |
| 1594 | + return false; | |
| 1595 | + } | |
| 1596 | + } | |
| 1597 | + | |
| 1598 | + if (num > val.redisnum && val.redisnum && !normal_arr[val.goods_id]) { | |
| 1173 | 1599 | isok = 0; |
| 1174 | 1600 | gname = val.goods_name; |
| 1175 | - throw "超出库存"; | |
| 1601 | + throw "超出活动库存"; | |
| 1602 | + return false; | |
| 1603 | + } | |
| 1604 | + if (num > val.goods_num - val.buy_num && val.goods_num && !normal_arr[val.goods_id]) { | |
| 1605 | + isok = 0; | |
| 1606 | + gname = val.goods_name; | |
| 1607 | + throw "超出活动库存"; | |
| 1176 | 1608 | return false; |
| 1177 | 1609 | } |
| 1178 | - } | |
| 1179 | - | |
| 1180 | - if (num > val.redisnum && val.redisnum && !normal_arr[val.goods_id]) { | |
| 1181 | - isok = 0; | |
| 1182 | - gname = val.goods_name; | |
| 1183 | - throw "超出活动库存"; | |
| 1184 | - return false; | |
| 1185 | - } | |
| 1186 | - if (num > val.goods_num - val.buy_num && val.goods_num && !normal_arr[val.goods_id]) { | |
| 1187 | - isok = 0; | |
| 1188 | - gname = val.goods_name; | |
| 1189 | - throw "超出活动库存"; | |
| 1190 | - return false; | |
| 1191 | - } | |
| 1192 | - | |
| 1193 | - var buyed = map_limit.get(val.goods_id + ""); | |
| 1194 | - if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) { | |
| 1195 | - isok = 0; | |
| 1196 | - gname = val.goods_name; | |
| 1197 | - throw "超出商品限购"; | |
| 1198 | - return false; | |
| 1199 | - } | |
| 1200 | - | |
| 1201 | - if (num + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0 && !normal_arr[val.goods_id]) { | |
| 1202 | - isok = 0; | |
| 1203 | - gname = val.goods_name; | |
| 1204 | - throw "超出活动限购"; | |
| 1205 | - return false; | |
| 1206 | - } | |
| 1207 | 1610 | |
| 1611 | + var buyed = map_limit.get(val.goods_id + ""); | |
| 1612 | + if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) { | |
| 1613 | + isok = 0; | |
| 1614 | + gname = val.goods_name; | |
| 1615 | + throw "超出商品限购"; | |
| 1616 | + return false; | |
| 1617 | + } | |
| 1208 | 1618 | |
| 1209 | - var card_field=th.data.card_field; | |
| 1210 | - for (var i = 0; i < g_arr.length; i++) { | |
| 1211 | - if (g_arr[i].goods_id == val.goods_id) { | |
| 1619 | + if (num + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0 && !normal_arr[val.goods_id]) { | |
| 1620 | + isok = 0; | |
| 1621 | + gname = val.goods_name; | |
| 1622 | + throw "超出活动限购"; | |
| 1623 | + return false; | |
| 1624 | + } | |
| 1212 | 1625 | |
| 1213 | - //如果会员是等级会员,商品有等级价,且不是活动商品 | |
| 1214 | - if(card_field && val[card_field]>0 && (val.prom_type==0 || val.prom_type==3 || val.prom_type==4 || val.prom_type==5 || normal_arr[val.goods_id]) ){ | |
| 1215 | - if (g_arr[i].goods_price != val[card_field]){ | |
| 1216 | - isok = 0; | |
| 1217 | - gname = val.goods_name; | |
| 1218 | - throw "商品价格已经变化"; | |
| 1219 | - } | |
| 1220 | - }else{ | |
| 1221 | - if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price) { | |
| 1222 | - isok = 0; | |
| 1223 | - gname = val.goods_name; | |
| 1224 | - throw "商品价格已经变化"; | |
| 1626 | + var card_field = th.data.card_field; | |
| 1627 | + for (var i = 0; i < g_arr.length; i++) { | |
| 1628 | + if (g_arr[i].goods_id == val.goods_id) { | |
| 1629 | + | |
| 1630 | + //如果会员是等级会员,商品有等级价,且不是活动商品 | |
| 1631 | + if (card_field && val[card_field] > 0 && (val.prom_type == 0 || val.prom_type == 3 || val.prom_type == 4 || val.prom_type == 5 || normal_arr[val.goods_id])) { | |
| 1632 | + if (g_arr[i].goods_price != val[card_field]) { | |
| 1633 | + isok = 0; | |
| 1634 | + gname = val.goods_name; | |
| 1635 | + throw "商品价格已经变化"; | |
| 1636 | + } | |
| 1637 | + } else { | |
| 1638 | + if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price) { | |
| 1639 | + isok = 0; | |
| 1640 | + gname = val.goods_name; | |
| 1641 | + throw "商品价格已经变化"; | |
| 1642 | + } | |
| 1225 | 1643 | } |
| 1226 | - } | |
| 1227 | 1644 | |
| 1228 | - //-- 数据的更新 -- | |
| 1229 | - var data={ | |
| 1230 | - id: g_arr[i].id, | |
| 1231 | - selected: 1, | |
| 1232 | - store_id: oo.stoid | |
| 1233 | - }; | |
| 1234 | - //-- 如果有线下取价的时候 -- | |
| 1235 | - if(g_arr[i].is_offline){ | |
| 1236 | - data.pricing_type=g_arr[i].pricing_type; | |
| 1237 | - data.offline_price=g_arr[i].offline_price; | |
| 1238 | - } | |
| 1239 | - rq.put("/api/weshop/cart/update", { | |
| 1240 | - data: data, | |
| 1241 | - success: function(ee) { | |
| 1242 | - console.log(ee); | |
| 1645 | + //-- 数据的更新 -- | |
| 1646 | + var data = { | |
| 1647 | + id: g_arr[i].id, | |
| 1648 | + selected: 1, | |
| 1649 | + store_id: oo.stoid | |
| 1650 | + }; | |
| 1651 | + //-- 如果有线下取价的时候 -- | |
| 1652 | + if (g_arr[i].is_offline) { | |
| 1653 | + data.pricing_type = g_arr[i].pricing_type; | |
| 1654 | + data.offline_price = g_arr[i].offline_price; | |
| 1243 | 1655 | } |
| 1244 | - }); | |
| 1656 | + rq.put("/api/weshop/cart/update", { | |
| 1657 | + data: data, | |
| 1658 | + success: function (ee) { | |
| 1659 | + console.log(ee); | |
| 1660 | + } | |
| 1661 | + }); | |
| 1662 | + } | |
| 1245 | 1663 | } |
| 1246 | - } | |
| 1247 | 1664 | |
| 1665 | + } | |
| 1666 | + } catch (e) { | |
| 1667 | + err = e; | |
| 1668 | + } | |
| 1669 | + if (isok == 0) { | |
| 1670 | + t.confirmBox(gname + ":" + err); | |
| 1671 | + wx.hideLoading(); | |
| 1672 | + return false; | |
| 1248 | 1673 | } |
| 1249 | - } catch (e) { | |
| 1250 | - err = e; | |
| 1251 | - } | |
| 1252 | - if (isok == 0) { | |
| 1253 | - t.confirmBox(gname + ":" + err); | |
| 1254 | 1674 | wx.hideLoading(); |
| 1255 | - return false; | |
| 1675 | + wx.navigateTo({ | |
| 1676 | + url: "/pages/cart/cart2/cart2" | |
| 1677 | + }); | |
| 1678 | + } | |
| 1679 | + } | |
| 1680 | + }); | |
| 1681 | + }else{ | |
| 1682 | + //-- 开始服务卡的购物车购买 -- | |
| 1683 | + for (var i = 0; i < this.data.service_data.length; i++) { | |
| 1684 | + var i_arr = this.data.service_data[i].goods; | |
| 1685 | + for (var j = 0; j < i_arr.length; j++) { | |
| 1686 | + if (i_arr[j].selected) { | |
| 1687 | + await rq.promisePut("/api/weshop/cartService/update", { | |
| 1688 | + data: { | |
| 1689 | + id: i_arr[j].id, | |
| 1690 | + selected: 1, | |
| 1691 | + store_id: oo.stoid | |
| 1692 | + } | |
| 1693 | + }); | |
| 1256 | 1694 | } |
| 1257 | - wx.hideLoading(); | |
| 1258 | - wx.navigateTo({ | |
| 1259 | - url: "/pages/cart/cart2/cart2" | |
| 1260 | - }); | |
| 1261 | 1695 | } |
| 1262 | 1696 | } |
| 1263 | - }); | |
| 1697 | + wx.hideLoading(); | |
| 1698 | + getApp().goto("/packageA/pages/cart2_ser/cart2_ser?is_cart=1"); | |
| 1699 | + } | |
| 1264 | 1700 | }, |
| 1265 | 1701 | |
| 1266 | 1702 | //结算到最后一个商品 |
| ... | ... | @@ -1302,11 +1738,12 @@ Page({ |
| 1302 | 1738 | |
| 1303 | 1739 | //--多个删除购物车商品--- |
| 1304 | 1740 | check_del: function() { |
| 1305 | - var glist = ""; //用逗号隔开的 | |
| 1741 | + var glist = "",slist=''; //用逗号隔开的 | |
| 1306 | 1742 | var user_id = getApp().globalData.user_id; |
| 1307 | 1743 | var th = this; |
| 1308 | 1744 | |
| 1309 | 1745 | var ab = 0; //选中 |
| 1746 | + var abc=0; // | |
| 1310 | 1747 | for (var i = 0; i < this.data.requestData.length; i++) { |
| 1311 | 1748 | var i_arr = this.data.requestData[i].goods; |
| 1312 | 1749 | for (var j = 0; j < i_arr.length; j++) { |
| ... | ... | @@ -1317,18 +1754,42 @@ Page({ |
| 1317 | 1754 | } |
| 1318 | 1755 | } |
| 1319 | 1756 | |
| 1320 | - if (ab == 0) { | |
| 1321 | - t.my_warnning("未选择商品", 0, th); | |
| 1757 | + for (var ii = 0; ii < this.data.service_data.length; ii++) { | |
| 1758 | + var i_arr = this.data.service_data[ii].goods; | |
| 1759 | + for (var jj = 0; jj < i_arr.length; jj++) { | |
| 1760 | + if (i_arr[jj].selected) { | |
| 1761 | + slist += i_arr[jj].id + ","; | |
| 1762 | + abc = 1; | |
| 1763 | + } | |
| 1764 | + } | |
| 1765 | + } | |
| 1766 | + | |
| 1767 | + if (ab == 0 && abc==0) { | |
| 1768 | + t.my_warnning("未选择商品或者服务卡", 0, th); | |
| 1322 | 1769 | return false; |
| 1323 | 1770 | } |
| 1324 | - glist = glist.substring(0, glist.length - 1); | |
| 1325 | - //要删除购物车中的商品 | |
| 1326 | - var url = '/api/weshop/cart/delIds/' + oo.stoid + '/' + user_id + "/" + glist; | |
| 1327 | - getApp().request.delete(url, { | |
| 1328 | - success: function(t) { | |
| 1329 | - th.getCardList(); | |
| 1330 | - } | |
| 1331 | - }); | |
| 1771 | + | |
| 1772 | + if(ab){ | |
| 1773 | + glist = glist.substring(0, glist.length - 1); | |
| 1774 | + //要删除购物车中的商品 | |
| 1775 | + var url = '/api/weshop/cart/delIds/' + oo.stoid + '/' + user_id + "/" + glist; | |
| 1776 | + getApp().request.delete(url, { | |
| 1777 | + success: function(t) { | |
| 1778 | + th.getCardList(); | |
| 1779 | + } | |
| 1780 | + }); | |
| 1781 | + } | |
| 1782 | + if(abc){ | |
| 1783 | + slist = slist.substring(0, slist.length - 1); | |
| 1784 | + //要删除购物车中的商品 | |
| 1785 | + var url = '/api/weshop/cartService/delIds/' + oo.stoid + '/' + user_id + "/" + slist; | |
| 1786 | + getApp().request.delete(url, { | |
| 1787 | + success: function(t) { | |
| 1788 | + th.getCardList(); | |
| 1789 | + } | |
| 1790 | + }); | |
| 1791 | + } | |
| 1792 | + | |
| 1332 | 1793 | }, |
| 1333 | 1794 | //跳到首页 |
| 1334 | 1795 | goto: function(e) { | ... | ... |
pages/cart/cart/cart.wxml
| ... | ... | @@ -13,19 +13,22 @@ |
| 13 | 13 | |
| 14 | 14 | |
| 15 | 15 | |
| 16 | -<view class="container" wx:if="{{requestData.length>0}}"> | |
| 16 | +<view class="container" wx:if="{{(requestData && requestData.length>0) || (service_data && service_data.length>0) }}"> | |
| 17 | 17 | <!-- 购物车商品框架 --> |
| 18 | 18 | <view class="login-in"> |
| 19 | 19 | <!-- 编辑 --> |
| 20 | 20 | <view class="padding flex-vertical-between fs30 Storenum store"> |
| 21 | 21 | <view class="flex"> |
| 22 | - <view>商品数量:</view> | |
| 22 | + <view>总数量:</view> | |
| 23 | 23 | <view class="goods_num">{{all_num}}</view> |
| 24 | 24 | </view> |
| 25 | 25 | <view wx:if="{{is_edit==0}}" bindtap="edit_cart" data-type="1">编辑</view> |
| 26 | 26 | <view wx:else bindtap="edit_cart" data-type="0">完成</view> |
| 27 | 27 | </view> |
| 28 | - <block wx:for="{{requestData}}" wx:key="{{index}}" wx:for-index="pidx"> | |
| 28 | + | |
| 29 | + <!-- 商品的列表 --> | |
| 30 | + <block wx:if="{{requestData && requestData.length>0}}"> | |
| 31 | + <block wx:for="{{requestData}}" wx:key="{{index}}" wx:for-index="pidx"> | |
| 29 | 32 | <!-- 门店底下的商品 --> |
| 30 | 33 | <view class="store"> |
| 31 | 34 | <view class="shmd_m"> |
| ... | ... | @@ -123,8 +126,73 @@ |
| 123 | 126 | <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28"> |
| 124 | 127 | 当前<text class="red_c">{{item.offline_num}}</text>件商品,可使用<text class="red_c">{{item.offline_price}}</text>元店铺优惠 |
| 125 | 128 | </view> |
| 126 | - | |
| 129 | + </block> | |
| 127 | 130 | </block> |
| 131 | + | |
| 132 | + <!-- 服务卡项的列表 --> | |
| 133 | + <block wx:if="{{service_data && service_data.length>0}}"> | |
| 134 | + <block wx:for="{{service_data}}" wx:key="{{index}}" wx:for-index="pidx"> | |
| 135 | + <!-- 门店以及门店底下的服务卡 --> | |
| 136 | + <view class="store"> | |
| 137 | + <view class="shmd_m"> | |
| 138 | + | |
| 139 | + <icon wx:if="{{checkAllToggle||item.selected}}" class="order-raido flex-center" bindtap="check_th_all_item_ser" data-pitems="{{pidx}}" | |
| 140 | + color="red" size="20" type="success"></icon> | |
| 141 | + <view wx:else class="icon_no_sele2" bindtap="check_th_all_item_ser" data-pitems="{{pidx}}"></view> | |
| 142 | + | |
| 143 | + <view class="flex-center"> | |
| 144 | + <image src="{{iurl}}miniapp/images/stores/store.png"></image> | |
| 145 | + <view class="shmd fs30">{{item.pname}}</view> | |
| 146 | + </view> | |
| 147 | + | |
| 148 | + </view> | |
| 149 | + <view class="order-item" data-item="{{idx}}" wx:for="{{item.goods}}" wx:for-item="items" wx:for-index="idx" wx:key="{{index}}"> | |
| 150 | + <block> | |
| 151 | + <view bindtap="check_th_item_ser" class="order-raido flex-vertical " data-check="{{items.selected}}" data-item="{{idx}}" data-pitems="{{pidx}}"> | |
| 152 | + <!--<radio color="red" checked="{{checkAllToggle||items.selected}}"></radio>--> | |
| 153 | + <icon wx:if="{{checkAllToggle||items.selected}}" color="red" size="20" type="success"></icon> | |
| 154 | + <text wx:else class="icon_no_sele"></text> | |
| 155 | + </view> | |
| 156 | + </block> | |
| 157 | + | |
| 158 | + | |
| 159 | + <navigator class="goods-img rel" url="/packageA/pages/goodsInfo/goodsInfo?goods_id={{items.service_id}}"> | |
| 160 | + <image class="wh100" src="{{items.img_url}}" binderror="bind_bnerr2" data-errorimg="service_data[{{pidx}}].goods[{{idx}}].img_url" data-url="{{items.img_url}}"></image> | |
| 161 | + | |
| 162 | + </navigator> | |
| 163 | + <view class="goods-cont"> | |
| 164 | + <view class="goods-name"> | |
| 165 | + <navigator class="ellipsis-2 fs30" url="/packageA/pages/goodsInfo/goodsInfo?goods_id={{items.service_id}}">{{items.service_name}}</navigator> | |
| 166 | + <block wx:if="{{items.is_gift}}"> | |
| 167 | + <view>{{items.goods_num}}件</view> | |
| 168 | + </block> | |
| 169 | + </view> | |
| 170 | + | |
| 171 | + <block wx:if="{{!items.is_gift}}"> | |
| 172 | + <view class="flex alend jc_sb"> | |
| 173 | + <view class="goods-price co-red baseline ellipsis-1"> | |
| 174 | + <view class="fs20">¥</view> | |
| 175 | + <view class="fs28">{{items.money}}</view> | |
| 176 | + </view> | |
| 177 | + <view class="count"> | |
| 178 | + <view bindtap="subNum_ser" class="sub fs28" data-pitems="{{pidx}}" data-item="{{idx}}">一</view> | |
| 179 | + <input class="goodadd" bindblur="valueToNum_ser" data-pitems="{{pidx}}" data-item="{{idx}}" | |
| 180 | + bindinput="refresh_input" | |
| 181 | + type="number" value="{{items.goods_num}}"></input> | |
| 182 | + <view class="add" bindtap="addNum_ser" data-pitems="{{pidx}}" data-item="{{idx}}">+</view> | |
| 183 | + </view> | |
| 184 | + </view> | |
| 185 | + </block> | |
| 186 | + | |
| 187 | + </view> | |
| 188 | + </view> | |
| 189 | + </view> | |
| 190 | + | |
| 191 | + | |
| 192 | + </block> | |
| 193 | + </block> | |
| 194 | + | |
| 195 | + | |
| 128 | 196 | </view> |
| 129 | 197 | <view class="pay-for flex-vertical-between"> |
| 130 | 198 | <view class="allradio flex-vertical-between"> |
| ... | ... | @@ -156,7 +224,7 @@ |
| 156 | 224 | </view> |
| 157 | 225 | |
| 158 | 226 | <!-- 购物车为空 --> |
| 159 | -<view class="empty_order" wx:if="{{(!requestData|| requestData.length==0) && is_load}}"> | |
| 227 | +<view class="empty_order" wx:if="{{(!requestData|| requestData.length==0) && (!service_data|| service_data.length==0) && is_load}}"> | |
| 160 | 228 | <view class="flex-level"> |
| 161 | 229 | <image src="{{iurl}}miniapp/images/stores/nocart.png"></image> |
| 162 | 230 | </view> |
| ... | ... | @@ -169,7 +237,7 @@ |
| 169 | 237 | </view> |
| 170 | 238 | |
| 171 | 239 | <!-- 好物推荐 --> |
| 172 | -<view class="title" style="margin-top: 60rpx; margin-bottom:{{isTabBar == true ? '50px' : '0'}}" wx:if="{{(!requestData|| requestData.length==0) && is_load}}"> | |
| 240 | +<view class="title" style="margin-top: 60rpx; margin-bottom:{{isTabBar == true ? '50px' : '0'}}" wx:if="{{(!requestData|| requestData.length==0) && (!service_data|| service_data.length==0) && is_load}}"> | |
| 173 | 241 | <!-- 标题 --> |
| 174 | 242 | <view> |
| 175 | 243 | <!-- 中文名标题 --> | ... | ... |
pages/cart/cart/cart.wxss
pages/goods/goodsInfo/goodsInfo.js
| ... | ... | @@ -63,7 +63,7 @@ Page({ |
| 63 | 63 | name: "详情", |
| 64 | 64 | id: 1 |
| 65 | 65 | }, { |
| 66 | - name: "评论", | |
| 66 | + name: "评价", | |
| 67 | 67 | id: 2 |
| 68 | 68 | }], |
| 69 | 69 | activeCategoryId2: 0, |
| ... | ... | @@ -1439,6 +1439,7 @@ Page({ |
| 1439 | 1439 | } |
| 1440 | 1440 | } |
| 1441 | 1441 | }); |
| 1442 | + | |
| 1442 | 1443 | } |
| 1443 | 1444 | //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d); |
| 1444 | 1445 | else { |
| ... | ... | @@ -1719,18 +1720,62 @@ Page({ |
| 1719 | 1720 | } |
| 1720 | 1721 | |
| 1721 | 1722 | var ind = t.currentTarget.dataset.ind; |
| 1722 | - this.setData({ | |
| 1723 | - openSpecModal: !0, | |
| 1724 | - openSpecModal_ind: ind, | |
| 1725 | - }); | |
| 1726 | - | |
| 1727 | - var is_open=th.data.config | |
| 1728 | - | |
| 1729 | - | |
| 1730 | - this.get_off_price(); | |
| 1731 | 1723 | |
| 1724 | + //回调。判断是不是优惠促销 | |
| 1725 | + th.check_is_prom_goods(function (){ | |
| 1726 | + th.setData({ | |
| 1727 | + openSpecModal: !0, | |
| 1728 | + openSpecModal_ind: ind, | |
| 1729 | + }); | |
| 1730 | + //var is_open=th.data.config | |
| 1731 | + th.get_off_price(); | |
| 1732 | + }) | |
| 1732 | 1733 | }, |
| 1733 | 1734 | |
| 1735 | + //判断是不是优惠促销 | |
| 1736 | + check_is_prom_goods:function(callback){ | |
| 1737 | + var th=this; | |
| 1738 | + var usr=getApp().globalData.userInfo; | |
| 1739 | + if(this.data.sele_g.prom_type!=0 && this.data.sele_g.prom_type!=3){ | |
| 1740 | + callback(); | |
| 1741 | + }else{ | |
| 1742 | + //-- 判断有没有优惠活动 -- | |
| 1743 | + getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+th.data.sele_g.goods_id+"/0", {}).then(res => { | |
| 1744 | + if(res.data.code==0){ | |
| 1745 | + var r_data=res.data.data; | |
| 1746 | + th.data.prom_goods=r_data.promGoodsLists; | |
| 1747 | + if(!th.data.prom_goods){ | |
| 1748 | + callback(); | |
| 1749 | + return false; | |
| 1750 | + } | |
| 1751 | + ///api/weshop/order/getWPayOrder?store_id=1&user_id=5682366&prom_id=1&goods_id=1 | |
| 1752 | + getApp().promiseGet("/api/weshop/order/getWPayOrder",{ | |
| 1753 | + data:{store_id:os.stoid,user_id:usr.user_id,goods_id:th.data.sele_g.goods_id,prom_id:th.data.prom_goods[0].prom_id} | |
| 1754 | + }).then(res=>{ | |
| 1755 | + if(res.data.code==0){ | |
| 1756 | + wx.showToast({ | |
| 1757 | + title: "您还有该商品订单未支付", | |
| 1758 | + icon: 'none', | |
| 1759 | + duration: 2000 | |
| 1760 | + }) | |
| 1761 | + setTimeout(function (){ | |
| 1762 | + getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,) | |
| 1763 | + },1000) | |
| 1764 | + } | |
| 1765 | + //未找到相关记录 | |
| 1766 | + else{ | |
| 1767 | + callback(); | |
| 1768 | + } | |
| 1769 | + }) | |
| 1770 | + } | |
| 1771 | + | |
| 1772 | + }) | |
| 1773 | + | |
| 1774 | + } | |
| 1775 | + }, | |
| 1776 | + | |
| 1777 | + | |
| 1778 | + | |
| 1734 | 1779 | //----获取线下价格------- |
| 1735 | 1780 | get_off_price(){ |
| 1736 | 1781 | var th=this; |
| ... | ... | @@ -3038,7 +3083,8 @@ Page({ |
| 3038 | 3083 | pageSize: 3, |
| 3039 | 3084 | page: 1, |
| 3040 | 3085 | state: 2, |
| 3041 | - team_id: prom_id | |
| 3086 | + team_id: prom_id, | |
| 3087 | + ordernum:1 | |
| 3042 | 3088 | } |
| 3043 | 3089 | }).then(res => { |
| 3044 | 3090 | teamgroup = res.data.data.pageData; |
| ... | ... | @@ -4916,13 +4962,16 @@ Page({ |
| 4916 | 4962 | var arr = [1219, 2089, 3031]; |
| 4917 | 4963 | var new_arr = new Array(); |
| 4918 | 4964 | var card_name_map=new Map(); |
| 4919 | - for (var i = 0; i < plusCard.length; i++) { | |
| 4920 | - if((user.card_field==null || user.card_field=="") && plusCard[i].IsStopBuy==true) continue; | |
| 4965 | + | |
| 4966 | + var list=[]; | |
| 4967 | + for (var i = 0; i < plusCard.length; i++) { | |
| 4968 | + if((!user || user.card_field==null || user.card_field=="") && plusCard[i].IsStopBuy==true) continue; | |
| 4921 | 4969 | var name="card"+plusCard[i].CorrPrice.toLowerCase(); |
| 4922 | 4970 | card_name_map.set(name,plusCard[i].CardName); |
| 4971 | + list.push(plusCard[i]); | |
| 4923 | 4972 | } |
| 4924 | - | |
| 4925 | - var ob={"card_list":plusCard,"name_map":card_name_map}; | |
| 4973 | + | |
| 4974 | + var ob={"card_list":list,"name_map":card_name_map}; | |
| 4926 | 4975 | func(ob); |
| 4927 | 4976 | }) |
| 4928 | 4977 | }, | ... | ... |
pages/goods/goodsInfo/goodsInfo.wxml
| ... | ... | @@ -298,7 +298,7 @@ |
| 298 | 298 | |
| 299 | 299 | <!-- 不是秒杀 --> |
| 300 | 300 | <!-- 等级卡的价格,不是等级卡会员,且商品又有设置等级级价,商家后台有开通升级卡同能 --> |
| 301 | - <view class="flex ai_and" wx:if="{{!card_field && g_filters.is_has_rank(rank_switch,data) && prom_type!=1 }}"> | |
| 301 | + <view class="flex ai_and" wx:if="{{!card_field && g_filters.is_has_rank(rank_switch,data) && prom_type!=1 && card_list && card_list.length>0}}"> | |
| 302 | 302 | |
| 303 | 303 | <view class="flex ai-center grade-card-frame card-frame" > |
| 304 | 304 | <image class="img" src="{{iurl}}/miniapp/images/userinfo/userinfo/privilege_t.png"></image> |
| ... | ... | @@ -315,7 +315,7 @@ |
| 315 | 315 | <block wx:if="{{g_filters.is_has_rank(rank_switch,data)}}"> |
| 316 | 316 | |
| 317 | 317 | <!-- 不是秒杀,且会员不是等级会员 --> |
| 318 | - <view wx:if="{{!card_field && prom_type!=1 }}"> | |
| 318 | + <view wx:if="{{!card_field && prom_type!=1 && card_list && card_list.length>0}}"> | |
| 319 | 319 | <view class="beauty-makeup-frame flex ai-center"> |
| 320 | 320 | <view class="left flex ai-center"> |
| 321 | 321 | <view class="flex ai-center grade-card-frame card-frame advert-card"> | ... | ... |
pages/index/index/index.js
| ... | ... | @@ -90,7 +90,13 @@ Page({ |
| 90 | 90 | var th = this; |
| 91 | 91 | var first_leader=tt.first_leader; |
| 92 | 92 | if(!first_leader && tt.scene){ |
| 93 | - first_leader= decodeURIComponent(tt.scene); | |
| 93 | + var first_leader_str= decodeURIComponent(tt.scene); | |
| 94 | + var f_arr=first_leader_str.split("_"); | |
| 95 | + first_leader=f_arr[0] && parseFloat(f_arr[0])>0?f_arr[0]:null; | |
| 96 | + //注册门店 | |
| 97 | + if(f_arr[1] && parseFloat(f_arr[1])>0){ | |
| 98 | + getApp().globalData.store_number=f_arr[1]; | |
| 99 | + } | |
| 94 | 100 | } |
| 95 | 101 | |
| 96 | 102 | getApp().getConfig(function(e){ |
| ... | ... | @@ -107,8 +113,7 @@ Page({ |
| 107 | 113 | }); |
| 108 | 114 | |
| 109 | 115 | |
| 110 | - var th = this; | |
| 111 | - | |
| 116 | + var th = this; | |
| 112 | 117 | getApp().getConfig2(function(config2){ |
| 113 | 118 | if(config2 && config2.is_overdue==1){ |
| 114 | 119 | getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=5",{}).then(res=>{ | ... | ... |
pages/team/team_more/team_more.js
| ... | ... | @@ -62,7 +62,7 @@ Page({ |
| 62 | 62 | //获取活动从表信息team_id |
| 63 | 63 | await getApp().request.promiseGet("/api/weshop/teamgroup/page", { |
| 64 | 64 | data: { store_id: os.stoid, pageSize:6,page:ee.data.currentPage, |
| 65 | - state: 2, team_id: team_id } | |
| 65 | + state: 2, team_id: team_id,ordernum:1 } | |
| 66 | 66 | }).then(res => { |
| 67 | 67 | teamgroup = res.data.data.pageData; |
| 68 | 68 | console.log(teamgroup); | ... | ... |
pages/togoin/togoin.js
| ... | ... | @@ -172,6 +172,11 @@ Page({ |
| 172 | 172 | dd.guide_id=getApp().globalData.guide_id; |
| 173 | 173 | } |
| 174 | 174 | |
| 175 | + //门店的扫描识别码 | |
| 176 | + if(getApp().globalData.store_number){ | |
| 177 | + dd.SunCode=encodeURIComponent(getApp().globalData.store_number.trim()); | |
| 178 | + } | |
| 179 | + | |
| 175 | 180 | console.log("-----会员注册的信息-------"); |
| 176 | 181 | console.log(dd); |
| 177 | 182 | app.request.get("/api/weshop/users/thirdLogin", { | ... | ... |
pages/user/index/index.js
| ... | ... | @@ -95,6 +95,15 @@ Page({ |
| 95 | 95 | * 生命周期函数--监听页面显示 |
| 96 | 96 | */ |
| 97 | 97 | onShow: function() { |
| 98 | + var th=this; | |
| 99 | + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + os.stoid, {}).then(res => { | |
| 100 | + if(res.data.code==0){ | |
| 101 | + var plusCard = res.data.data; | |
| 102 | + for (var i = 0; i < plusCard.length; i++) { | |
| 103 | + if(!plusCard[i].IsStopBuy) { th.setData({show_buy_plus:1}); break; } | |
| 104 | + } | |
| 105 | + } | |
| 106 | + }) | |
| 98 | 107 | |
| 99 | 108 | if (typeof this.getTabBar === 'function' && this.getTabBar()) { |
| 100 | 109 | var index=getApp().getPageIndex(this); | ... | ... |
pages/user/index/index.wxml
| ... | ... | @@ -66,7 +66,7 @@ |
| 66 | 66 | </image> |
| 67 | 67 | |
| 68 | 68 | </view> |
| 69 | - <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==2}}"> | |
| 69 | + <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==2 && show_buy_plus}}"> | |
| 70 | 70 | <view class="xc-add-member flex-center-around "> |
| 71 | 71 | <view class="flex jc-center ai-center"> |
| 72 | 72 | <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image> |
| ... | ... | @@ -78,7 +78,7 @@ |
| 78 | 78 | </view> |
| 79 | 79 | </view> |
| 80 | 80 | |
| 81 | - <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==3}}"> | |
| 81 | + <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==3 && show_buy_plus}}"> | |
| 82 | 82 | <view class="xc-add-member flex-center-around "> |
| 83 | 83 | <view class="flex jc-center ai-center"> |
| 84 | 84 | <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image> | ... | ... |
pages/user/my_service/appment_main.js
| ... | ... | @@ -560,6 +560,9 @@ Page({ |
| 560 | 560 | th.data.is_get_local_ok = 1; |
| 561 | 561 | } |
| 562 | 562 | }) |
| 563 | + //获取上一次的预约 | |
| 564 | + this.get_fir_service(); | |
| 565 | + | |
| 563 | 566 | }, |
| 564 | 567 | //查询剩下可预约人数 |
| 565 | 568 | query_more: function() { |
| ... | ... | @@ -633,5 +636,98 @@ Page({ |
| 633 | 636 | var th = this; |
| 634 | 637 | var nav_b = th.selectComponent("#nav_b"); //组件的id |
| 635 | 638 | nav_b.close_box(); |
| 639 | + }, | |
| 640 | + | |
| 641 | + //判断分享的导购是不是有门店,是不是该门店下又该会员 | |
| 642 | + check_firleader(data){ | |
| 643 | + var th=this; | |
| 644 | + var itemId = this.data.itemId; //服务id | |
| 645 | + var url = "/api/weshop/marketing/reservation/storage/pagenew"; | |
| 646 | + var key_word = data.store_name; | |
| 647 | + key_word = key_word.replace(/\s+/g, ""); | |
| 648 | + var usr=getApp().globalData.userInfo; | |
| 649 | + getApp().request.promiseGet(url, { | |
| 650 | + data: { | |
| 651 | + userId: usr.user_id, | |
| 652 | + storeId: os.stoid, | |
| 653 | + serviceId: itemId, | |
| 654 | + page: 1, | |
| 655 | + pageSize: 1000, | |
| 656 | + keyWord: key_word | |
| 657 | + } | |
| 658 | + }).then(res => { | |
| 659 | + //-- 如果是门店的话 -- | |
| 660 | + if (res.data.code == 0 && res.data.data && res.data.data.pageData) { | |
| 661 | + var store_data=null; | |
| 662 | + for(var i in res.data.data.pageData){ | |
| 663 | + var it=res.data.data.pageData[i]; | |
| 664 | + if(it.Id==data.StorageId){ | |
| 665 | + store_data={ | |
| 666 | + store_name: data.store_name, | |
| 667 | + storageId: data.StorageId, | |
| 668 | + }; | |
| 669 | + break; | |
| 670 | + } | |
| 671 | + } | |
| 672 | + if(!store_data) return false; | |
| 673 | + th.setData(store_data) | |
| 674 | + | |
| 675 | + }else{ | |
| 676 | + return false; | |
| 677 | + } | |
| 678 | + | |
| 679 | + //导购接口地址 | |
| 680 | + var url = "/api/weshop/marketing/reservation/staff/pagenew"; | |
| 681 | + return getApp().request.promiseGet(url, { | |
| 682 | + isShowLoading:1, | |
| 683 | + data: { | |
| 684 | + storeId: os.stoid, | |
| 685 | + userId: usr.user_id, | |
| 686 | + serviceId: itemId, | |
| 687 | + storageId: data.StorageId | |
| 688 | + } | |
| 689 | + }) | |
| 690 | + }).then(res=>{ | |
| 691 | + if (res && res.data && res.data.code == 0) { | |
| 692 | + var beautician_list=res.data.data; | |
| 693 | + for(var i in beautician_list){ | |
| 694 | + var item=beautician_list[i]; | |
| 695 | + if(item.staffid==data.beauticianID){ | |
| 696 | + th.setData({ | |
| 697 | + beautician_name:data.beautician_name, | |
| 698 | + beauticianID:data.beauticianID, | |
| 699 | + }) | |
| 700 | + break; | |
| 701 | + } | |
| 702 | + } | |
| 703 | + | |
| 704 | + } | |
| 705 | + }) | |
| 706 | + }, | |
| 707 | + | |
| 708 | + //获取上一次预约的信息 | |
| 709 | + get_fir_service:function (){ | |
| 710 | + var th=this; | |
| 711 | + var usr=getApp().globalData.userInfo; | |
| 712 | + if(!usr) return false; | |
| 713 | + | |
| 714 | + getApp().promiseGet("/api/weshop/marketing/reservation/reservation/page",{ | |
| 715 | + data:{storeId:os.stoid,userId:usr.user_id,projectId:th.data.project_id} | |
| 716 | + }).then(res=>{ | |
| 717 | + if(res.data.code==0 && res.data.data && res.data.data.pageData ){ | |
| 718 | + var ppdata= res.data.data.pageData[0]; | |
| 719 | + var data={ | |
| 720 | + store_name:ppdata.StorageName, | |
| 721 | + beautician_name:ppdata.BeauticianName, | |
| 722 | + beauticianID:ppdata.BeauticianID, | |
| 723 | + StorageId:ppdata.StorageID, | |
| 724 | + } | |
| 725 | + //检查门店和导购能不能默认使用 | |
| 726 | + th.check_firleader(data); | |
| 727 | + }; | |
| 728 | + }) | |
| 636 | 729 | } |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 637 | 733 | }) |
| 638 | 734 | \ No newline at end of file | ... | ... |
pages/user/plus/plus.js
| ... | ... | @@ -178,41 +178,50 @@ Page({ |
| 178 | 178 | new_arr.push(item); |
| 179 | 179 | |
| 180 | 180 | } |
| 181 | - //根據距離遠近排序,越近在前面,升序 | |
| 182 | - new_arr.sort(function (a, b) { | |
| 183 | - if (a.fee < b.fee) { | |
| 184 | - return -1; | |
| 185 | - } else if (a.fee == b.fee) { | |
| 186 | - return 0; | |
| 187 | - } else { | |
| 188 | - return 1; | |
| 189 | - } | |
| 190 | - }); | |
| 191 | 181 | |
| 192 | - //里面和外面要显示统一 | |
| 193 | - switch (new_arr.length) { | |
| 194 | - case 1:arr=[3031]; break; | |
| 195 | - case 2: arr = [2089, 3031]; break; | |
| 196 | - case 3: arr = [1219, 2089, 3031];break; | |
| 197 | - } | |
| 182 | + //看是不是还有卡项是可以购买的 | |
| 183 | + if(new_arr && new_arr.length>0){ | |
| 184 | + //根據距離遠近排序,越近在前面,升序 | |
| 185 | + new_arr.sort(function (a, b) { | |
| 186 | + if (a.fee < b.fee) { | |
| 187 | + return -1; | |
| 188 | + } else if (a.fee == b.fee) { | |
| 189 | + return 0; | |
| 190 | + } else { | |
| 191 | + return 1; | |
| 192 | + } | |
| 193 | + }); | |
| 198 | 194 | |
| 199 | - //---给数组添加立省多少钱--- | |
| 200 | - for (i = 0; i < plusCard.length; i++) { | |
| 201 | - //判断是否停用 | |
| 202 | - | |
| 203 | - for (var j = 0; j < new_arr.length; j++) { | |
| 204 | - if (i == new_arr[j].index) { | |
| 205 | - plusCard[i].free = arr[j]; | |
| 206 | - break; | |
| 207 | - } | |
| 208 | - | |
| 195 | + //里面和外面要显示统一 | |
| 196 | + switch (new_arr.length) { | |
| 197 | + case 1:arr=[3031]; break; | |
| 198 | + case 2: arr = [2089, 3031]; break; | |
| 199 | + case 3: arr = [1219, 2089, 3031];break; | |
| 200 | + } | |
| 209 | 201 | |
| 202 | + //---给数组添加立省多少钱--- | |
| 203 | + for (i = 0; i < plusCard.length; i++) { | |
| 204 | + //判断是否停用 | |
| 205 | + for (var j = 0; j < new_arr.length; j++) { | |
| 206 | + if (i == new_arr[j].index) { | |
| 207 | + plusCard[i].free = arr[j]; | |
| 208 | + break; | |
| 209 | + } | |
| 210 | + } | |
| 210 | 211 | } |
| 211 | - } | |
| 212 | - th.setData({ | |
| 213 | - is_plusCard: plusCard, is_show: 1 | |
| 214 | - }) | |
| 212 | + th.setData({ | |
| 213 | + is_plusCard: plusCard, is_show: 1 | |
| 214 | + }) | |
| 215 | + | |
| 216 | + }else{ | |
| 217 | + th.setData({is_show: 1}); | |
| 218 | + wx.showToast({ | |
| 219 | + title: "暂无可购买的等级卡项", | |
| 220 | + icon: 'none', | |
| 221 | + duration: 4000 | |
| 222 | + }) | |
| 215 | 223 | |
| 224 | + } | |
| 216 | 225 | setTimeout(function(){ |
| 217 | 226 | var goods_list = th.selectComponent("#goods_list"); //组件的id |
| 218 | 227 | goods_list.init(); | ... | ... |
pages/user/plus/plus.wxml
| ... | ... | @@ -6,44 +6,44 @@ |
| 6 | 6 | </view> |
| 7 | 7 | <view class="plus"> |
| 8 | 8 | <!-- 开通会员模块 --> |
| 9 | - <view class="Opening_plus"> | |
| 10 | - <view class="Opening_bk"> | |
| 11 | - <image src="{{url}}/miniapp/images/plus/card_bk.png"></image> | |
| 12 | - </view> | |
| 13 | - <view class="swiper"> | |
| 14 | - <!-- 未开通会员swiper-item --> | |
| 15 | - <swiper current="{{currentId}}" current-item-id="{{currentId}}" next-margin="60rpx" previous-margin="60rpx" bindchange="swiperChange"> | |
| 16 | - <swiper-item class="flex" item-id="{{index}}" data-item-id="{{index}}" wx:for="{{is_plusCard}}"> | |
| 17 | - | |
| 18 | - <view wx:if="{{item.IsStopBuy!=true}}" class="Membership {{currentId==index?'enlarge':''}}" style=" background-image: url({{item.CardImg}});color:{{item.CardColor}}"> | |
| 19 | - <view class="flex-space-between Membership_go"> | |
| 20 | - <view> | |
| 21 | - <view class="fs36">{{item.CardName}}</view> | |
| 22 | - <view class="fs24 Membership_remarks">开通会员卡仅{{item.CardFee}}元</view> | |
| 23 | - </view> | |
| 24 | - <view class="Opening fs28 xc-black" data-ind="{{index}}" style="background:{{item.CardColor}}" bindtap="Opening">立即购买 | |
| 25 | - </view> | |
| 26 | 9 | |
| 27 | - </view> | |
| 10 | + <block wx:if="{{is_plusCard}}"> | |
| 11 | + <view class="Opening_plus"> | |
| 12 | + <view class="Opening_bk"> | |
| 13 | + <image src="{{url}}/miniapp/images/plus/card_bk.png"></image> | |
| 14 | + </view> | |
| 15 | + <view class="swiper"> | |
| 16 | + <!-- 未开通会员swiper-item --> | |
| 17 | + <swiper current="{{currentId}}" current-item-id="{{currentId}}" next-margin="60rpx" previous-margin="60rpx" bindchange="swiperChange"> | |
| 18 | + <swiper-item class="flex" item-id="{{index}}" data-item-id="{{index}}" wx:for="{{is_plusCard}}"> | |
| 19 | + | |
| 20 | + <view wx:if="{{item.IsStopBuy!=true}}" class="Membership {{currentId==index?'enlarge':''}}" style=" background-image: url({{item.CardImg}});color:{{item.CardColor}}"> | |
| 21 | + <view class="flex-space-between Membership_go"> | |
| 22 | + <view> | |
| 23 | + <view class="fs36">{{item.CardName}}</view> | |
| 24 | + <view class="fs24 Membership_remarks">开通会员卡仅{{item.CardFee}}元</view> | |
| 25 | + </view> | |
| 26 | + <view class="Opening fs28 xc-black" data-ind="{{index}}" style="background:{{item.CardColor}}" bindtap="Opening">立即购买 | |
| 27 | + </view> | |
| 28 | 28 | |
| 29 | - <view class="flex-vertical-between consumption" style="height: 40rpx;line-height:40rpx "> | |
| 29 | + </view> | |
| 30 | + | |
| 31 | + <view class="flex-vertical-between consumption" style="height: 40rpx;line-height:40rpx "> | |
| 30 | 32 | |
| 31 | - <view class="flex-vertical fs24" style="overflow:hidden"> | |
| 33 | + <view class="flex-vertical fs24" style="overflow:hidden"> | |
| 32 | 34 | |
| 33 | - <view class="Member"style="background-image:url('{{url}}/miniapp/images/plus/privilege_o.png');filter: drop-shadow( 40rpx 0rpx 0rpx {{item.CardColor}});"></view> | |
| 34 | - <view style="margin-left:5rpx;white-space: nowrap;">按去年用户消费计算,开卡后一年预计省¥{{item.free}}元 | |
| 35 | + <view class="Member"style="background-image:url('{{url}}/miniapp/images/plus/privilege_o.png');filter: drop-shadow( 40rpx 0rpx 0rpx {{item.CardColor}});"></view> | |
| 36 | + <view style="margin-left:5rpx;white-space: nowrap;">按去年用户消费计算,开卡后一年预计省¥{{item.free}}元 | |
| 37 | + </view> | |
| 35 | 38 | </view> |
| 36 | 39 | </view> |
| 37 | 40 | </view> |
| 38 | - </view> | |
| 39 | 41 | |
| 40 | - | |
| 41 | - </swiper-item> | |
| 42 | - </swiper> | |
| 42 | + </swiper-item> | |
| 43 | + </swiper> | |
| 44 | + </view> | |
| 43 | 45 | </view> |
| 44 | - | |
| 45 | - | |
| 46 | - </view> | |
| 46 | + </block> | |
| 47 | 47 | |
| 48 | 48 | <!-- 会员礼遇 --> |
| 49 | 49 | <view class="Courtesy"> | ... | ... |