Commit d89736172ccc29b7af4f22be495b8d3206474f0c
1 parent
6d3288d9
1、 OA单
2. 5点优化 3. 服务卡项加入购物车购买流程
Showing
18 changed files
with
1488 additions
and
459 deletions
app.json
@@ -137,7 +137,8 @@ | @@ -137,7 +137,8 @@ | ||
137 | "pages/my_service/tment_order_list", | 137 | "pages/my_service/tment_order_list", |
138 | "pages/my_service/beauty_deta", | 138 | "pages/my_service/beauty_deta", |
139 | "pages/profile/profile", | 139 | "pages/profile/profile", |
140 | - "pages/parseHtml/parseHtml" | 140 | + "pages/parseHtml/parseHtml", |
141 | + "pages/cart2_ser/cart2_ser" | ||
141 | 142 | ||
142 | ] | 143 | ] |
143 | 144 |
packageA/pages/cart2_ser/cart2_ser.js
@@ -38,8 +38,8 @@ Page({ | @@ -38,8 +38,8 @@ Page({ | ||
38 | bn_pickname: "", //选择的门店名称 | 38 | bn_pickname: "", //选择的门店名称 |
39 | 39 | ||
40 | /*------------------------*/ | 40 | /*------------------------*/ |
41 | - //判断页面是返回回来的还是 首次进入的 | ||
42 | yuer:0, | 41 | yuer:0, |
42 | + is_cart:0, //是不是购物车进来的购买 | ||
43 | }, | 43 | }, |
44 | onLoad: function(t) { | 44 | onLoad: function(t) { |
45 | wx.setNavigationBarTitle({ | 45 | wx.setNavigationBarTitle({ |
@@ -48,7 +48,11 @@ Page({ | @@ -48,7 +48,11 @@ Page({ | ||
48 | 48 | ||
49 | var appD=getApp().globalData.service_now; | 49 | var appD=getApp().globalData.service_now; |
50 | this.data.postdata=appD; | 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 | var th=this; | 56 | var th=this; |
53 | 57 | ||
54 | getApp().promiseGet("/api/wx/weappSendlist/page", { | 58 | getApp().promiseGet("/api/wx/weappSendlist/page", { |
@@ -71,7 +75,6 @@ Page({ | @@ -71,7 +75,6 @@ Page({ | ||
71 | to.auth.get_u(func); | 75 | to.auth.get_u(func); |
72 | }, | 76 | }, |
73 | 77 | ||
74 | - | ||
75 | //----------------展示页面,是再获取用户信息之后-------------- | 78 | //----------------展示页面,是再获取用户信息之后-------------- |
76 | show_page:function(){ | 79 | show_page:function(){ |
77 | var th=this; | 80 | var th=this; |
@@ -84,7 +87,15 @@ Page({ | @@ -84,7 +87,15 @@ Page({ | ||
84 | getApp().globalData.userInfo = e.data.data; | 87 | getApp().globalData.userInfo = e.data.data; |
85 | th.setData({userinfo:e.data.data}); | 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 | getApp().request.get("/api/weshop/withdrawals/summoney", { | 101 | getApp().request.get("/api/weshop/withdrawals/summoney", { |
@@ -101,6 +112,75 @@ Page({ | @@ -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 | get_buy_goods: function (){ | 185 | get_buy_goods: function (){ |
106 | var th=this,a=getApp().request; | 186 | var th=this,a=getApp().request; |
@@ -147,7 +227,117 @@ Page({ | @@ -147,7 +227,117 @@ Page({ | ||
147 | invoiceToggle: !this.data.invoiceToggle | 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 | calculatePrice2: function () { | 343 | calculatePrice2: function () { |
@@ -186,38 +376,73 @@ Page({ | @@ -186,38 +376,73 @@ Page({ | ||
186 | if(this.data.is_summit_ing==1) return false; //--提交中退出-- | 376 | if(this.data.is_summit_ing==1) return false; //--提交中退出-- |
187 | this.data.is_summit_ing=1; | 377 | this.data.is_summit_ing=1; |
188 | var th=this,pdata=new Array(); | 378 | var th=this,pdata=new Array(); |
189 | - var ff=true; | 379 | + |
190 | var item={ | 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 | pdata=item; | 445 | pdata=item; |
220 | - | ||
221 | var str = JSON.stringify(pdata); | 446 | var str = JSON.stringify(pdata); |
222 | console.log("支付数据"); | 447 | console.log("支付数据"); |
223 | console.log(str); | 448 | console.log(str); |
@@ -236,7 +461,13 @@ Page({ | @@ -236,7 +461,13 @@ Page({ | ||
236 | if (res.statusCode == 200) { | 461 | if (res.statusCode == 200) { |
237 | var data=res.data; | 462 | var data=res.data; |
238 | if(data.code==0){ | 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 | var order_amount = pdata.account; | 471 | var order_amount = pdata.account; |
241 | //要进行判断,如果是用微信支付,就要跳转到支付界面 | 472 | //要进行判断,如果是用微信支付,就要跳转到支付界面 |
242 | if (order_amount > 0) { | 473 | if (order_amount > 0) { |
packageA/pages/cart2_ser/cart2_ser.wxml
1 | <wxs module="filters" src="../../../utils/filter.wxs"></wxs> | 1 | <wxs module="filters" src="../../../utils/filter.wxs"></wxs> |
2 | <form bindsubmit="submitForm"> | 2 | <form bindsubmit="submitForm"> |
3 | <view class="container"> | 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 | <view class="use-item bfff bdr_t-14 mgt20"> | 34 | <view class="use-item bfff bdr_t-14 mgt20"> |
8 | <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'> </image> <view>{{bn_pickname}}</view></view> | 35 | <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'> </image> <view>{{bn_pickname}}</view></view> |
9 | <view class="order-detail"> | 36 | <view class="order-detail"> |
@@ -24,14 +51,12 @@ | @@ -24,14 +51,12 @@ | ||
24 | </view> | 51 | </view> |
25 | </navigator> | 52 | </navigator> |
26 | </view> | 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 | <view class="information bdr14"> | 61 | <view class="information bdr14"> |
37 | <view class="item"> | 62 | <view class="item"> |
packageA/pages/goodsInfo/goodsInfo.js
@@ -400,8 +400,9 @@ Page({ | @@ -400,8 +400,9 @@ Page({ | ||
400 | 'data.goods_id': t.data.data.id, | 400 | 'data.goods_id': t.data.data.id, |
401 | 'data.id': t.data.data.id, | 401 | 'data.id': t.data.data.id, |
402 | 'data.sales_sum': t.data.data.sales_sum, | 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,9 +523,77 @@ Page({ | ||
522 | newd['pick_name'] = th.data.sto_sele_name; | 523 | newd['pick_name'] = th.data.sto_sele_name; |
523 | newd['guide_id'] = getApp().globalData.guide_id; | 524 | newd['guide_id'] = getApp().globalData.guide_id; |
524 | newd['guide_type']=0; | 525 | newd['guide_type']=0; |
525 | - | ||
526 | th.buyNow(newd); | 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,8 +160,8 @@ | ||
160 | </view> | 160 | </view> |
161 | 161 | ||
162 | <block> | 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 | </block> | 165 | </block> |
166 | 166 | ||
167 | </view> | 167 | </view> |
pages/cart/cart/cart.js
@@ -29,6 +29,8 @@ Page({ | @@ -29,6 +29,8 @@ Page({ | ||
29 | card_field:"", | 29 | card_field:"", |
30 | bconf:null, | 30 | bconf:null, |
31 | btn_click:1, | 31 | btn_click:1, |
32 | + | ||
33 | + service_data:null, | ||
32 | }, | 34 | }, |
33 | onLoad: function() { | 35 | onLoad: function() { |
34 | var a = this,ee=a; | 36 | var a = this,ee=a; |
@@ -124,10 +126,7 @@ Page({ | @@ -124,10 +126,7 @@ Page({ | ||
124 | } | 126 | } |
125 | }) | 127 | }) |
126 | 128 | ||
127 | - | ||
128 | - | ||
129 | - | ||
130 | - | 129 | + |
131 | }, | 130 | }, |
132 | 131 | ||
133 | onHide(){ | 132 | onHide(){ |
@@ -147,9 +146,11 @@ Page({ | @@ -147,9 +146,11 @@ Page({ | ||
147 | allsto: e | 146 | allsto: e |
148 | }); | 147 | }); |
149 | th.get_cart(); | 148 | th.get_cart(); |
149 | + th.get_ser_cart(); | ||
150 | }) | 150 | }) |
151 | } else { | 151 | } else { |
152 | th.get_cart(); | 152 | th.get_cart(); |
153 | + th.get_ser_cart(); | ||
153 | } | 154 | } |
154 | 155 | ||
155 | //要获取会员是不是等级会员 | 156 | //要获取会员是不是等级会员 |
@@ -172,10 +173,18 @@ Page({ | @@ -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 | get_cart: function() { | 188 | get_cart: function() { |
180 | var th = this; | 189 | var th = this; |
181 | var rd = Math.random().toString(36).substr(2, 15); | 190 | var rd = Math.random().toString(36).substr(2, 15); |
@@ -328,13 +337,7 @@ Page({ | @@ -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 | if(th.data.is_open_offline && th.data.is_open_offline>0){ | 342 | if(th.data.is_open_offline && th.data.is_open_offline>0){ |
340 | //-- 此时要实时更新线下取价价格 -- | 343 | //-- 此时要实时更新线下取价价格 -- |
@@ -357,6 +360,106 @@ Page({ | @@ -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 | async set_offline(list){ | 464 | async set_offline(list){ |
362 | var th=this; | 465 | var th=this; |
@@ -444,7 +547,6 @@ Page({ | @@ -444,7 +547,6 @@ Page({ | ||
444 | }; | 547 | }; |
445 | th.postCardList(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | 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,7 +566,6 @@ Page({ | ||
464 | goods_id: a.goods_id, | 566 | goods_id: a.goods_id, |
465 | store_id: oo.stoid | 567 | store_id: oo.stoid |
466 | }; | 568 | }; |
467 | - isShowLoading: 0; | ||
468 | this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | 569 | this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); |
469 | } else { | 570 | } else { |
470 | wx.showModal({ | 571 | wx.showModal({ |
@@ -500,66 +601,180 @@ Page({ | @@ -500,66 +601,180 @@ Page({ | ||
500 | this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); | 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 | checkAll: function() { | 679 | checkAll: function() { |
505 | var e = this, | 680 | var e = this, |
506 | dda = e.data.requestData, | 681 | dda = e.data.requestData, |
682 | + sdda = e.data.service_data, | ||
507 | tfeel = 0, | 683 | tfeel = 0, |
508 | t_num = 0, | 684 | t_num = 0, |
509 | text_arr = ""; | 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 | this.data.btn_click=1; | 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 | e.setData({ | 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 | e.setData({ | 770 | e.setData({ |
551 | checkAllToggle: !e.data.checkAllToggle, | 771 | checkAllToggle: !e.data.checkAllToggle, |
552 | total_fee: tfeel.toFixed(2), | 772 | total_fee: tfeel.toFixed(2), |
553 | total_num: t_num, | 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 | check_th_all_item:async function(ele) { | 779 | check_th_all_item:async function(ele) { |
565 | var e = this, | 780 | var e = this, |
@@ -567,10 +782,32 @@ Page({ | @@ -567,10 +782,32 @@ Page({ | ||
567 | item = this.data.requestData[pitems].goods, | 782 | item = this.data.requestData[pitems].goods, |
568 | sele = this.data.requestData[pitems].selected; | 783 | sele = this.data.requestData[pitems].selected; |
569 | this.data.btn_click=1; | 784 | this.data.btn_click=1; |
785 | + var garr=e.data.service_data; | ||
570 | 786 | ||
571 | var isok = 1, | 787 | var isok = 1, |
572 | fir = 0, | 788 | fir = 0, |
573 | iarr = item; | 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 | if (!sele && item.length > 0) { | 811 | if (!sele && item.length > 0) { |
575 | for (var i = 0; i < iarr.length; i++) { | 812 | for (var i = 0; i < iarr.length; i++) { |
576 | if(iarr[i].is_gift==1) continue; | 813 | if(iarr[i].is_gift==1) continue; |
@@ -612,7 +849,6 @@ Page({ | @@ -612,7 +849,6 @@ Page({ | ||
612 | } | 849 | } |
613 | this.doCheckAll(); | 850 | this.doCheckAll(); |
614 | }, | 851 | }, |
615 | - | ||
616 | //---------------单选,也要判断门店的配送方式是否一致-------------- | 852 | //---------------单选,也要判断门店的配送方式是否一致-------------- |
617 | check_th_item: async function(t) { | 853 | check_th_item: async function(t) { |
618 | var e = this, | 854 | var e = this, |
@@ -622,13 +858,32 @@ Page({ | @@ -622,13 +858,32 @@ Page({ | ||
622 | var isok = 1,fir = 0; | 858 | var isok = 1,fir = 0; |
623 | var iarr = e.data.requestData[pitems].goods; | 859 | var iarr = e.data.requestData[pitems].goods; |
624 | this.data.btn_click=1; | 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 | //当数量大于1,且是选择的时候 | 882 | //当数量大于1,且是选择的时候 |
628 | if (iarr.length > 1 && !a.selected) { | 883 | if (iarr.length > 1 && !a.selected) { |
884 | + | ||
629 | for (var i = 0; i < iarr.length; i++) { | 885 | for (var i = 0; i < iarr.length; i++) { |
630 | if(iarr[i].is_gift==1) continue; | 886 | if(iarr[i].is_gift==1) continue; |
631 | - | ||
632 | //---当不是本身选择项目---- | 887 | //---当不是本身选择项目---- |
633 | var sel = iarr[i].selected; | 888 | var sel = iarr[i].selected; |
634 | if (iarr[i].distr_type != 0 && (sel || iarr[i].id == a.id)) { | 889 | if (iarr[i].distr_type != 0 && (sel || iarr[i].id == a.id)) { |
@@ -662,10 +917,93 @@ Page({ | @@ -662,10 +917,93 @@ Page({ | ||
662 | if(i!=pitems) await e.check_prom_activity(i); | 917 | if(i!=pitems) await e.check_prom_activity(i); |
663 | } | 918 | } |
664 | } | 919 | } |
665 | - | ||
666 | this.doCheckAll(); | 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 | doCheckAll: function() { | 1008 | doCheckAll: function() { |
671 | var th = this, | 1009 | var th = this, |
@@ -673,49 +1011,80 @@ Page({ | @@ -673,49 +1011,80 @@ Page({ | ||
673 | t_num = 0, | 1011 | t_num = 0, |
674 | ischeck = 1, | 1012 | ischeck = 1, |
675 | car = this.data.requestData, | 1013 | car = this.data.requestData, |
1014 | + car2 = this.data.service_data, | ||
676 | all_num = 0; | 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 | th.setData({ | 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 | this.setData({ | 1088 | this.setData({ |
720 | checkAllToggle: ischeck, | 1089 | checkAllToggle: ischeck, |
721 | total_fee: tfeel.toFixed(2), | 1090 | total_fee: tfeel.toFixed(2), |
@@ -904,6 +1273,20 @@ Page({ | @@ -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 | async check_down_line(t, pitem, item,erpwareid){ | 1291 | async check_down_line(t, pitem, item,erpwareid){ |
909 | var ob={},th=this; | 1292 | var ob={},th=this; |
@@ -993,6 +1376,25 @@ Page({ | @@ -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 | onPullDownRefresh: function(t) { | 1399 | onPullDownRefresh: function(t) { |
998 | this.getCardList(); | 1400 | this.getCardList(); |
@@ -1008,259 +1410,293 @@ Page({ | @@ -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 | data: { | 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 | isok = 0; | 1574 | isok = 0; |
1165 | gname = val.goods_name; | 1575 | gname = val.goods_name; |
1166 | - throw "超出库存"; | 1576 | + throw "购买数量不能为0"; |
1167 | return false; | 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 | isok = 0; | 1599 | isok = 0; |
1174 | gname = val.goods_name; | 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 | return false; | 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 | wx.hideLoading(); | 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,11 +1738,12 @@ Page({ | ||
1302 | 1738 | ||
1303 | //--多个删除购物车商品--- | 1739 | //--多个删除购物车商品--- |
1304 | check_del: function() { | 1740 | check_del: function() { |
1305 | - var glist = ""; //用逗号隔开的 | 1741 | + var glist = "",slist=''; //用逗号隔开的 |
1306 | var user_id = getApp().globalData.user_id; | 1742 | var user_id = getApp().globalData.user_id; |
1307 | var th = this; | 1743 | var th = this; |
1308 | 1744 | ||
1309 | var ab = 0; //选中 | 1745 | var ab = 0; //选中 |
1746 | + var abc=0; // | ||
1310 | for (var i = 0; i < this.data.requestData.length; i++) { | 1747 | for (var i = 0; i < this.data.requestData.length; i++) { |
1311 | var i_arr = this.data.requestData[i].goods; | 1748 | var i_arr = this.data.requestData[i].goods; |
1312 | for (var j = 0; j < i_arr.length; j++) { | 1749 | for (var j = 0; j < i_arr.length; j++) { |
@@ -1317,18 +1754,42 @@ Page({ | @@ -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 | return false; | 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 | goto: function(e) { | 1795 | goto: function(e) { |
pages/cart/cart/cart.wxml
@@ -13,19 +13,22 @@ | @@ -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 | <view class="login-in"> | 18 | <view class="login-in"> |
19 | <!-- 编辑 --> | 19 | <!-- 编辑 --> |
20 | <view class="padding flex-vertical-between fs30 Storenum store"> | 20 | <view class="padding flex-vertical-between fs30 Storenum store"> |
21 | <view class="flex"> | 21 | <view class="flex"> |
22 | - <view>商品数量:</view> | 22 | + <view>总数量:</view> |
23 | <view class="goods_num">{{all_num}}</view> | 23 | <view class="goods_num">{{all_num}}</view> |
24 | </view> | 24 | </view> |
25 | <view wx:if="{{is_edit==0}}" bindtap="edit_cart" data-type="1">编辑</view> | 25 | <view wx:if="{{is_edit==0}}" bindtap="edit_cart" data-type="1">编辑</view> |
26 | <view wx:else bindtap="edit_cart" data-type="0">完成</view> | 26 | <view wx:else bindtap="edit_cart" data-type="0">完成</view> |
27 | </view> | 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 | <view class="store"> | 33 | <view class="store"> |
31 | <view class="shmd_m"> | 34 | <view class="shmd_m"> |
@@ -123,8 +126,73 @@ | @@ -123,8 +126,73 @@ | ||
123 | <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28"> | 126 | <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28"> |
124 | 当前<text class="red_c">{{item.offline_num}}</text>件商品,可使用<text class="red_c">{{item.offline_price}}</text>元店铺优惠 | 127 | 当前<text class="red_c">{{item.offline_num}}</text>件商品,可使用<text class="red_c">{{item.offline_price}}</text>元店铺优惠 |
125 | </view> | 128 | </view> |
126 | - | 129 | + </block> |
127 | </block> | 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 | </view> | 196 | </view> |
129 | <view class="pay-for flex-vertical-between"> | 197 | <view class="pay-for flex-vertical-between"> |
130 | <view class="allradio flex-vertical-between"> | 198 | <view class="allradio flex-vertical-between"> |
@@ -156,7 +224,7 @@ | @@ -156,7 +224,7 @@ | ||
156 | </view> | 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 | <view class="flex-level"> | 228 | <view class="flex-level"> |
161 | <image src="{{iurl}}miniapp/images/stores/nocart.png"></image> | 229 | <image src="{{iurl}}miniapp/images/stores/nocart.png"></image> |
162 | </view> | 230 | </view> |
@@ -169,7 +237,7 @@ | @@ -169,7 +237,7 @@ | ||
169 | </view> | 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 | <view> | 242 | <view> |
175 | <!-- 中文名标题 --> | 243 | <!-- 中文名标题 --> |
pages/cart/cart/cart.wxss
@@ -352,3 +352,4 @@ page { | @@ -352,3 +352,4 @@ page { | ||
352 | } | 352 | } |
353 | .quan_color{ background-color: #ff5306; height: 40rpx;color: #fff; padding: 0 10rpx; border-radius: 10rpx; margin-left: 10rpx} | 353 | .quan_color{ background-color: #ff5306; height: 40rpx;color: #fff; padding: 0 10rpx; border-radius: 10rpx; margin-left: 10rpx} |
354 | .red_c{color:#ff5306} | 354 | .red_c{color:#ff5306} |
355 | +.title_show{ margin: 10rpx 0 10px 0;padding: 0 20rpx} |
pages/goods/goodsInfo/goodsInfo.js
@@ -63,7 +63,7 @@ Page({ | @@ -63,7 +63,7 @@ Page({ | ||
63 | name: "详情", | 63 | name: "详情", |
64 | id: 1 | 64 | id: 1 |
65 | }, { | 65 | }, { |
66 | - name: "评论", | 66 | + name: "评价", |
67 | id: 2 | 67 | id: 2 |
68 | }], | 68 | }], |
69 | activeCategoryId2: 0, | 69 | activeCategoryId2: 0, |
@@ -1439,6 +1439,7 @@ Page({ | @@ -1439,6 +1439,7 @@ Page({ | ||
1439 | } | 1439 | } |
1440 | } | 1440 | } |
1441 | }); | 1441 | }); |
1442 | + | ||
1442 | } | 1443 | } |
1443 | //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d); | 1444 | //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d); |
1444 | else { | 1445 | else { |
@@ -1719,18 +1720,62 @@ Page({ | @@ -1719,18 +1720,62 @@ Page({ | ||
1719 | } | 1720 | } |
1720 | 1721 | ||
1721 | var ind = t.currentTarget.dataset.ind; | 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 | get_off_price(){ | 1780 | get_off_price(){ |
1736 | var th=this; | 1781 | var th=this; |
@@ -3038,7 +3083,8 @@ Page({ | @@ -3038,7 +3083,8 @@ Page({ | ||
3038 | pageSize: 3, | 3083 | pageSize: 3, |
3039 | page: 1, | 3084 | page: 1, |
3040 | state: 2, | 3085 | state: 2, |
3041 | - team_id: prom_id | 3086 | + team_id: prom_id, |
3087 | + ordernum:1 | ||
3042 | } | 3088 | } |
3043 | }).then(res => { | 3089 | }).then(res => { |
3044 | teamgroup = res.data.data.pageData; | 3090 | teamgroup = res.data.data.pageData; |
@@ -4916,13 +4962,16 @@ Page({ | @@ -4916,13 +4962,16 @@ Page({ | ||
4916 | var arr = [1219, 2089, 3031]; | 4962 | var arr = [1219, 2089, 3031]; |
4917 | var new_arr = new Array(); | 4963 | var new_arr = new Array(); |
4918 | var card_name_map=new Map(); | 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 | var name="card"+plusCard[i].CorrPrice.toLowerCase(); | 4969 | var name="card"+plusCard[i].CorrPrice.toLowerCase(); |
4922 | card_name_map.set(name,plusCard[i].CardName); | 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 | func(ob); | 4975 | func(ob); |
4927 | }) | 4976 | }) |
4928 | }, | 4977 | }, |
pages/goods/goodsInfo/goodsInfo.wxml
@@ -298,7 +298,7 @@ | @@ -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 | <view class="flex ai-center grade-card-frame card-frame" > | 303 | <view class="flex ai-center grade-card-frame card-frame" > |
304 | <image class="img" src="{{iurl}}/miniapp/images/userinfo/userinfo/privilege_t.png"></image> | 304 | <image class="img" src="{{iurl}}/miniapp/images/userinfo/userinfo/privilege_t.png"></image> |
@@ -315,7 +315,7 @@ | @@ -315,7 +315,7 @@ | ||
315 | <block wx:if="{{g_filters.is_has_rank(rank_switch,data)}}"> | 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 | <view class="beauty-makeup-frame flex ai-center"> | 319 | <view class="beauty-makeup-frame flex ai-center"> |
320 | <view class="left flex ai-center"> | 320 | <view class="left flex ai-center"> |
321 | <view class="flex ai-center grade-card-frame card-frame advert-card"> | 321 | <view class="flex ai-center grade-card-frame card-frame advert-card"> |
pages/index/index/index.js
@@ -90,7 +90,13 @@ Page({ | @@ -90,7 +90,13 @@ Page({ | ||
90 | var th = this; | 90 | var th = this; |
91 | var first_leader=tt.first_leader; | 91 | var first_leader=tt.first_leader; |
92 | if(!first_leader && tt.scene){ | 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 | getApp().getConfig(function(e){ | 102 | getApp().getConfig(function(e){ |
@@ -107,8 +113,7 @@ Page({ | @@ -107,8 +113,7 @@ Page({ | ||
107 | }); | 113 | }); |
108 | 114 | ||
109 | 115 | ||
110 | - var th = this; | ||
111 | - | 116 | + var th = this; |
112 | getApp().getConfig2(function(config2){ | 117 | getApp().getConfig2(function(config2){ |
113 | if(config2 && config2.is_overdue==1){ | 118 | if(config2 && config2.is_overdue==1){ |
114 | getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=5",{}).then(res=>{ | 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,7 +62,7 @@ Page({ | ||
62 | //获取活动从表信息team_id | 62 | //获取活动从表信息team_id |
63 | await getApp().request.promiseGet("/api/weshop/teamgroup/page", { | 63 | await getApp().request.promiseGet("/api/weshop/teamgroup/page", { |
64 | data: { store_id: os.stoid, pageSize:6,page:ee.data.currentPage, | 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 | }).then(res => { | 66 | }).then(res => { |
67 | teamgroup = res.data.data.pageData; | 67 | teamgroup = res.data.data.pageData; |
68 | console.log(teamgroup); | 68 | console.log(teamgroup); |
pages/togoin/togoin.js
@@ -172,6 +172,11 @@ Page({ | @@ -172,6 +172,11 @@ Page({ | ||
172 | dd.guide_id=getApp().globalData.guide_id; | 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 | console.log("-----会员注册的信息-------"); | 180 | console.log("-----会员注册的信息-------"); |
176 | console.log(dd); | 181 | console.log(dd); |
177 | app.request.get("/api/weshop/users/thirdLogin", { | 182 | app.request.get("/api/weshop/users/thirdLogin", { |
pages/user/index/index.js
@@ -95,6 +95,15 @@ Page({ | @@ -95,6 +95,15 @@ Page({ | ||
95 | * 生命周期函数--监听页面显示 | 95 | * 生命周期函数--监听页面显示 |
96 | */ | 96 | */ |
97 | onShow: function() { | 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 | if (typeof this.getTabBar === 'function' && this.getTabBar()) { | 108 | if (typeof this.getTabBar === 'function' && this.getTabBar()) { |
100 | var index=getApp().getPageIndex(this); | 109 | var index=getApp().getPageIndex(this); |
pages/user/index/index.wxml
@@ -66,7 +66,7 @@ | @@ -66,7 +66,7 @@ | ||
66 | </image> | 66 | </image> |
67 | 67 | ||
68 | </view> | 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 | <view class="xc-add-member flex-center-around "> | 70 | <view class="xc-add-member flex-center-around "> |
71 | <view class="flex jc-center ai-center"> | 71 | <view class="flex jc-center ai-center"> |
72 | <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image> | 72 | <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image> |
@@ -78,7 +78,7 @@ | @@ -78,7 +78,7 @@ | ||
78 | </view> | 78 | </view> |
79 | </view> | 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 | <view class="xc-add-member flex-center-around "> | 82 | <view class="xc-add-member flex-center-around "> |
83 | <view class="flex jc-center ai-center"> | 83 | <view class="flex jc-center ai-center"> |
84 | <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image> | 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,6 +560,9 @@ Page({ | ||
560 | th.data.is_get_local_ok = 1; | 560 | th.data.is_get_local_ok = 1; |
561 | } | 561 | } |
562 | }) | 562 | }) |
563 | + //获取上一次的预约 | ||
564 | + this.get_fir_service(); | ||
565 | + | ||
563 | }, | 566 | }, |
564 | //查询剩下可预约人数 | 567 | //查询剩下可预约人数 |
565 | query_more: function() { | 568 | query_more: function() { |
@@ -633,5 +636,98 @@ Page({ | @@ -633,5 +636,98 @@ Page({ | ||
633 | var th = this; | 636 | var th = this; |
634 | var nav_b = th.selectComponent("#nav_b"); //组件的id | 637 | var nav_b = th.selectComponent("#nav_b"); //组件的id |
635 | nav_b.close_box(); | 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 | \ No newline at end of file | 734 | \ No newline at end of file |
pages/user/plus/plus.js
@@ -178,41 +178,50 @@ Page({ | @@ -178,41 +178,50 @@ Page({ | ||
178 | new_arr.push(item); | 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 | setTimeout(function(){ | 225 | setTimeout(function(){ |
217 | var goods_list = th.selectComponent("#goods_list"); //组件的id | 226 | var goods_list = th.selectComponent("#goods_list"); //组件的id |
218 | goods_list.init(); | 227 | goods_list.init(); |
pages/user/plus/plus.wxml
@@ -6,44 +6,44 @@ | @@ -6,44 +6,44 @@ | ||
6 | </view> | 6 | </view> |
7 | <view class="plus"> | 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 | </view> | 38 | </view> |
36 | </view> | 39 | </view> |
37 | </view> | 40 | </view> |
38 | - </view> | ||
39 | 41 | ||
40 | - | ||
41 | - </swiper-item> | ||
42 | - </swiper> | 42 | + </swiper-item> |
43 | + </swiper> | ||
44 | + </view> | ||
43 | </view> | 45 | </view> |
44 | - | ||
45 | - | ||
46 | - </view> | 46 | + </block> |
47 | 47 | ||
48 | <!-- 会员礼遇 --> | 48 | <!-- 会员礼遇 --> |
49 | <view class="Courtesy"> | 49 | <view class="Courtesy"> |