Commit bcc735c24aa84ef4b0b4b6411773839f9c787745
1 parent
34e11ce8
OA单预存款使用
Showing
6 changed files
with
430 additions
and
41 deletions
packageE/pages/cart/cart2/cart2.js
1 | var t = getApp(), app = t, a = t.request, e = require("../../../../utils/common.js"), | 1 | var t = getApp(), app = t, a = t.request, e = require("../../../../utils/common.js"), |
2 | - s = require("../../../../utils/util.js"), ut = s, o = require("../../../../utils/md5.js"), to = getApp(); | 2 | + s = require("../../../../utils/util.js"), rq = require("../../../../utils/request.js"), ut = s, o = require("../../../../utils/md5.js"), to = getApp(); |
3 | var oo = t.globalData.setting, os = oo; | 3 | var oo = t.globalData.setting, os = oo; |
4 | var regeneratorRuntime = require('../../../../utils/runtime.js'); | 4 | var regeneratorRuntime = require('../../../../utils/runtime.js'); |
5 | var util_pay = require("../../../../utils/pay.js"); | 5 | var util_pay = require("../../../../utils/pay.js"); |
@@ -138,7 +138,7 @@ Page({ | @@ -138,7 +138,7 @@ Page({ | ||
138 | bn_use_commission: 0, //是不是使用佣金 | 138 | bn_use_commission: 0, //是不是使用佣金 |
139 | cart_use_commission: 0, | 139 | cart_use_commission: 0, |
140 | cart_commission: 0, | 140 | cart_commission: 0, |
141 | - | 141 | + udata:null,//用户预存值,数据 |
142 | //订单所有搭配购的 | 142 | //订单所有搭配购的 |
143 | all_collocation_list: [], | 143 | all_collocation_list: [], |
144 | appoint_pick_keyid:'' | 144 | appoint_pick_keyid:'' |
@@ -313,9 +313,146 @@ Page({ | @@ -313,9 +313,146 @@ Page({ | ||
313 | //值在这里换 | 313 | //值在这里换 |
314 | getApp().globalData.plus_buy_back = 0; | 314 | getApp().globalData.plus_buy_back = 0; |
315 | }, | 315 | }, |
316 | + //获取预存款余额 | ||
317 | + async getAdvancesum(){ | ||
318 | + /*-----获取线下会员的预存款和优惠券的数量-----*/ | ||
319 | + let url= "/api/weshop/users/getinfo/" + os.stoid + "/" + getApp().globalData.userInfo.user_id | ||
320 | + await getApp().request.promiseGet(url, { | ||
321 | + data: { | ||
322 | + isShowLoading: 0, | ||
323 | + }, | ||
324 | + }).then(su => { | ||
325 | + if (su.data.code == 0 && su.data.data) { | ||
326 | + var data = su.data.data; | ||
327 | + if (!data) data = {}; | ||
328 | + data.cashcount = parseInt(data.cashcount); | ||
329 | + this.setData({ | ||
330 | + udata: data, | ||
331 | + }); | ||
332 | + } | ||
333 | + }) | ||
316 | 334 | ||
335 | + }, | ||
336 | + //购物车预存开启关闭 | ||
337 | + prestore(e){ | ||
338 | + let ind=e.currentTarget.dataset.ind; | ||
339 | + let item = e.currentTarget.dataset.item | ||
340 | + let txt = 'cartlist[' + ind + '].yck_off'; | ||
341 | + let txt1 = 'old_cartlist[' + ind + '].yck_off'; | ||
342 | + if(item.yck_off==2){ | ||
343 | + this.setData({ [txt]: 1,[txt1]:1}) | ||
344 | + }else if(item.yck_off==1){ | ||
345 | + this.setData({ [txt]: 2,[txt1]:2}) | ||
346 | + } | ||
347 | + this.calculatePrice()//计算金额 | ||
348 | + }, | ||
349 | + //直接购买预存开启关闭 | ||
350 | + prestore2(){ | ||
351 | + let txt = 'bn_goods.yck_off'; | ||
352 | + if(this.data.bn_goods.yck_off==2){ | ||
353 | + this.setData({ [txt]: 1}) | ||
354 | + }else if(this.data.bn_goods.yck_off==1){ | ||
355 | + this.setData({ [txt]: 2}) | ||
356 | + } | ||
357 | + this.calculatePrice2()//计算金额 | ||
358 | + }, | ||
359 | + //计算商品预存款前置方法------------------------------------ | ||
360 | + async beforAdvancesum(cartList){ | ||
361 | + // let cartList= this.data.cartlist | ||
362 | + // let cartList= arr | ||
363 | + // let length = cartList.length | ||
364 | + wx.showLoading({ | ||
365 | + title: '加载中', | ||
366 | + mask:true | ||
367 | + }) | ||
368 | + // for (let i = 0; i < length; i++) { | ||
369 | + let item = cartList; | ||
370 | + let goods = item.goods | ||
371 | + let keyid=item.sto.keyid | ||
372 | + let listform = [] | ||
373 | + goods.map(ite=>{ | ||
374 | + let obj={ | ||
375 | + wareno: ite.goods_sn, | ||
376 | + price: ite.goods_price, | ||
377 | + qty: ite.goods_num | ||
378 | + } | ||
379 | + listform.push(obj) | ||
380 | + }) | ||
381 | + let arr = await this.getGoodsAdvancesum(keyid,listform,cartList) | ||
382 | + // } | ||
383 | + return arr | ||
384 | + // wx.hideLoading() | ||
385 | + }, | ||
386 | + //计算商品预存款请求方法------------------------------------ | ||
387 | + async getGoodsAdvancesum(storageid,listform,cartList){ | ||
388 | + let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`,{ | ||
389 | + data:{ | ||
390 | + accdb:getApp().globalData.config.erpid, | ||
391 | + ApiName:'api.pos.shop.advancesum.seek', | ||
392 | + usercode: "admin", | ||
393 | + vipid: this.data.userinfo.erpvipid, | ||
394 | + oddsum: "0", | ||
395 | + advancesum: cartList.order_amount, | ||
396 | + storageid: storageid, | ||
397 | + listform | ||
398 | + }, | ||
399 | + is_json:1 | ||
400 | + }) | ||
401 | + console.log('计算商品的预存款'); | ||
402 | + console.log(res); | ||
403 | + let yck=0 | ||
404 | + let yckid="" | ||
405 | + let yckIdArr=[] | ||
406 | + let pre_json=null | ||
407 | + if (res.data.code==0 && res.data.data && res.data.data.length>0) { | ||
408 | + let resData=res.data.data | ||
409 | + resData.map(ite=>{ | ||
410 | + yck+=ite.advancesum | ||
411 | + yckIdArr.push(ite.advanceitemid) | ||
412 | + }) | ||
413 | + pre_json=resData | ||
414 | + } | ||
415 | + yckid=yckIdArr.join() | ||
416 | + let obj={} | ||
417 | + if(yck*1>0){ | ||
418 | + obj.yck_off=1 | ||
419 | + }else{ | ||
420 | + obj.yck_off=0 | ||
421 | + } | ||
422 | + obj.yck=yck | ||
423 | + obj.yckid=yckid | ||
424 | + obj.pre_json=pre_json | ||
425 | + return obj | ||
426 | + }, | ||
317 | 427 | ||
318 | - | 428 | + //支付成功后预存处理请求 |
429 | + async setAdvancesum(item,number){ | ||
430 | + let pre_json = item.pre_json ? JSON.parse(item.pre_json) : [] | ||
431 | + if(!pre_json.length){return} | ||
432 | + let listform=[] | ||
433 | + pre_json.map(ite=>{ | ||
434 | + let ob={ | ||
435 | + advanceitemid: ite.advanceitemid, | ||
436 | + insum: "", | ||
437 | + outsum: ite.advancesum, | ||
438 | + remark: "" | ||
439 | + } | ||
440 | + listform.push(ob) | ||
441 | + }) | ||
442 | + let obj={ | ||
443 | + accdb:getApp().globalData.config.erpid, | ||
444 | + ApiName:'api.pos.shop.vipinfolist.save', | ||
445 | + vipid: this.data.userinfo.erpvipid, | ||
446 | + storageid: item.keyid, | ||
447 | + operator: "admin", | ||
448 | + number, | ||
449 | + listform, | ||
450 | + } | ||
451 | + let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`,{ | ||
452 | + data:obj, | ||
453 | + is_json:1 | ||
454 | + }) | ||
455 | + }, | ||
319 | 456 | ||
320 | //-------------------获取物流--------------- | 457 | //-------------------获取物流--------------- |
321 | get_wuliu(func) { | 458 | get_wuliu(func) { |
@@ -371,9 +508,10 @@ Page({ | @@ -371,9 +508,10 @@ Page({ | ||
371 | }, | 508 | }, |
372 | 509 | ||
373 | //----------------展示页面,是再获取用户信息之后-------------- | 510 | //----------------展示页面,是再获取用户信息之后-------------- |
374 | - show_page: function () { | 511 | + async show_page() { |
375 | var th = this, ta = this.data.param; | 512 | var th = this, ta = this.data.param; |
376 | - | 513 | + //获取用户预存款 |
514 | + await th.getAdvancesum() | ||
377 | //会员的信息,要获取最新 | 515 | //会员的信息,要获取最新 |
378 | var user = getApp().globalData.userInfo; | 516 | var user = getApp().globalData.userInfo; |
379 | getApp().request.get("/api/weshop/users/get/" + oo.stoid + "/" + user.user_id, { | 517 | getApp().request.get("/api/weshop/users/get/" + oo.stoid + "/" + user.user_id, { |
@@ -962,6 +1100,8 @@ Page({ | @@ -962,6 +1100,8 @@ Page({ | ||
962 | } | 1100 | } |
963 | } | 1101 | } |
964 | 1102 | ||
1103 | + | ||
1104 | + | ||
965 | //深拷贝 | 1105 | //深拷贝 |
966 | th.data.old_cartlist = JSON.parse(JSON.stringify(arr)); | 1106 | th.data.old_cartlist = JSON.parse(JSON.stringify(arr)); |
967 | th.setData({ | 1107 | th.setData({ |
@@ -979,10 +1119,7 @@ Page({ | @@ -979,10 +1119,7 @@ Page({ | ||
979 | } | 1119 | } |
980 | th.calculatePrice(); | 1120 | th.calculatePrice(); |
981 | th.get_cart_quan(); | 1121 | th.get_cart_quan(); |
982 | - }) | ||
983 | - | ||
984 | - }, 500) | ||
985 | - | 1122 | + })}, 500) |
986 | } | 1123 | } |
987 | }); | 1124 | }); |
988 | }, | 1125 | }, |
@@ -1755,6 +1892,9 @@ Page({ | @@ -1755,6 +1892,9 @@ Page({ | ||
1755 | var all_zh_cutprice = 0; //所有的组合优惠减 | 1892 | var all_zh_cutprice = 0; //所有的组合优惠减 |
1756 | var all_ladder_cutprice = 0; //所有的阶梯促销优惠减 | 1893 | var all_ladder_cutprice = 0; //所有的阶梯促销优惠减 |
1757 | var all_order_prom = 0; //所有的订单优惠 | 1894 | var all_order_prom = 0; //所有的订单优惠 |
1895 | + var all_prestore=0; //所有预存优化金额 | ||
1896 | + var all_pre_json=[]; //所有预存优化json | ||
1897 | + var all_yck_arr=[]; //所有预存真实抵扣数组 | ||
1758 | 1898 | ||
1759 | var umoney = th.data.userinfo.user_money - th.data.txmon - (th.data.userinfo.frozen_money ? th.data.userinfo.frozen_money : 0); | 1899 | var umoney = th.data.userinfo.user_money - th.data.txmon - (th.data.userinfo.frozen_money ? th.data.userinfo.frozen_money : 0); |
1760 | var out_of_weight = 0; //超出多少重量 | 1900 | var out_of_weight = 0; //超出多少重量 |
@@ -1780,6 +1920,7 @@ Page({ | @@ -1780,6 +1920,7 @@ Page({ | ||
1780 | await th.get_cart_quan(c_arr); | 1920 | await th.get_cart_quan(c_arr); |
1781 | 1921 | ||
1782 | 1922 | ||
1923 | + | ||
1783 | //-- 经纬度不循环调用接口 -- | 1924 | //-- 经纬度不循环调用接口 -- |
1784 | var lon = 0; var lat = 0; | 1925 | var lon = 0; var lat = 0; |
1785 | //---循环购物车--- | 1926 | //---循环购物车--- |
@@ -2240,8 +2381,69 @@ Page({ | @@ -2240,8 +2381,69 @@ Page({ | ||
2240 | }) | 2381 | }) |
2241 | if (!is_next) return false | 2382 | if (!is_next) return false |
2242 | } | 2383 | } |
2384 | + | ||
2385 | + //预存金额使用参与计算 | ||
2386 | + if(th.data.udata && th.data.udata.Balance>0 && cart_item.order_amount*1>0){ | ||
2387 | + let cart_yc = await th.beforAdvancesum(cart_item) | ||
2388 | + if(!cart_item.yck_off){ | ||
2389 | + cart_item.yck_off=cart_yc.yck_off | ||
2390 | + } | ||
2391 | + cart_item.yck=cart_yc.yck | ||
2392 | + cart_item.yckid=cart_yc.yckid | ||
2393 | + cart_item.pre_json=cart_yc.pre_json | ||
2394 | + let yct1 = 'cartlist[' + i + '].yck_off'; | ||
2395 | + let yct11 = 'old_cartlist[' + i + '].yck_off'; | ||
2396 | + let yct2 = 'cartlist[' + i + '].yck'; | ||
2397 | + let yct22 = 'old_cartlist[' + i + '].yck'; | ||
2398 | + let yct3 = 'cartlist[' + i + '].yckid'; | ||
2399 | + let yct33 = 'old_cartlist[' + i + '].yckid'; | ||
2400 | + let yct4 = 'cartlist[' + i + '].pre_json'; | ||
2401 | + let yct44 = 'old_cartlist[' + i + '].pre_json'; | ||
2402 | + th.setData({ | ||
2403 | + [yct1]:cart_item.yck_off, | ||
2404 | + [yct11]:cart_item.yck_off, | ||
2405 | + [yct2]:cart_item.yck, | ||
2406 | + [yct22]:cart_item.yck, | ||
2407 | + [yct3]:cart_item.yckid, | ||
2408 | + [yct33]:cart_item.yckid, | ||
2409 | + [yct4]:cart_item.pre_json, | ||
2410 | + [yct44]:cart_item.pre_json, | ||
2411 | + }) | ||
2243 | 2412 | ||
2244 | - | 2413 | + if(cart_item.yck_off && cart_item.yck_off==2 ){ |
2414 | + let order_amount = (cart_item.order_amount - cart_item.yck).toFixed(2); | ||
2415 | + let yck=0 | ||
2416 | + if(order_amount*1>0){ | ||
2417 | + cart_item.order_amount = order_amount; | ||
2418 | + all_prestore+=parseFloat(cart_item.yck); | ||
2419 | + yck=parseFloat(cart_item.yck) | ||
2420 | + }else{ | ||
2421 | + all_prestore+=cart_item.order_amount*1 | ||
2422 | + yck=parseFloat(cart_item.order_amount) | ||
2423 | + cart_item.order_amount=0 | ||
2424 | + } | ||
2425 | + all_yck_arr.push(yck) //真实预存款抵扣金额 | ||
2426 | + all_pre_json.push(cart_item.pre_json) | ||
2427 | + all_prestore = parseFloat(all_prestore); //真实预存款抵扣金额总和 | ||
2428 | + } | ||
2429 | + }else{ | ||
2430 | + let yct1 = 'cartlist[' + i + '].yck_off'; | ||
2431 | + let yct11 = 'old_cartlist[' + i + '].yck_off'; | ||
2432 | + let yct2 = 'cartlist[' + i + '].yck'; | ||
2433 | + let yct22 = 'old_cartlist[' + i + '].yck'; | ||
2434 | + let yct3 = 'cartlist[' + i + '].yckid'; | ||
2435 | + let yct33 = 'old_cartlist[' + i + '].yckid'; | ||
2436 | + let yct4 = 'cartlist[' + i + '].pre_json'; | ||
2437 | + let yct44 = 'old_cartlist[' + i + '].pre_json'; | ||
2438 | + th.setData({ | ||
2439 | + [yct2]:0, | ||
2440 | + [yct22]:0, | ||
2441 | + [yct3]:'', | ||
2442 | + [yct33]:'', | ||
2443 | + [yct4]:'', | ||
2444 | + [yct44]:'', | ||
2445 | + }) | ||
2446 | + } | ||
2245 | 2447 | ||
2246 | 2448 | ||
2247 | 2449 | ||
@@ -2322,6 +2524,7 @@ Page({ | @@ -2322,6 +2524,7 @@ Page({ | ||
2322 | all_order_prom += parseFloat(cart_item.order_prom_amount); | 2524 | all_order_prom += parseFloat(cart_item.order_prom_amount); |
2323 | } | 2525 | } |
2324 | 2526 | ||
2527 | + all_prestore = parseFloat(all_prestore).toFixed(2); | ||
2325 | all_shipping_m = parseFloat(all_shipping_m).toFixed(2); | 2528 | all_shipping_m = parseFloat(all_shipping_m).toFixed(2); |
2326 | all_total_m = parseFloat(all_total_m).toFixed(2); | 2529 | all_total_m = parseFloat(all_total_m).toFixed(2); |
2327 | all_order_m = parseFloat(all_order_m).toFixed(2); | 2530 | all_order_m = parseFloat(all_order_m).toFixed(2); |
@@ -2344,12 +2547,18 @@ Page({ | @@ -2344,12 +2547,18 @@ Page({ | ||
2344 | var atxt7 = "formData.order_prom_amount"; | 2547 | var atxt7 = "formData.order_prom_amount"; |
2345 | var atxt8 = "formData.zh_cut_price"; | 2548 | var atxt8 = "formData.zh_cut_price"; |
2346 | var atxt9 = "formData.ladder_cut_price"; | 2549 | var atxt9 = "formData.ladder_cut_price"; |
2550 | + var atxt10 = "formData.prestore"; //预存金额 | ||
2551 | + var atxt11 = "formData.pre_json"; //预存json | ||
2552 | + var atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表 | ||
2347 | 2553 | ||
2348 | th.setData({ | 2554 | th.setData({ |
2349 | [atxt]: all_total_m, [atxt1]: all_order_m, | 2555 | [atxt]: all_total_m, [atxt1]: all_order_m, |
2350 | [atxt2]: all_price, [atxt3]: all_user_m, [atxt4]: all_shipping_m, | 2556 | [atxt2]: all_price, [atxt3]: all_user_m, [atxt4]: all_shipping_m, |
2351 | [atxt5]: all_coupon_price_m, [atxt6]: all_cutprice, | 2557 | [atxt5]: all_coupon_price_m, [atxt6]: all_cutprice, |
2352 | - [atxt7]: all_order_prom, show_submit: 1, [atxt8]: all_zh_cutprice, [atxt9]: all_ladder_cutprice, submit: 0 | 2558 | + [atxt7]: all_order_prom, show_submit: 1, [atxt8]: all_zh_cutprice, [atxt9]: all_ladder_cutprice, submit: 0, |
2559 | + [atxt10]:all_prestore, | ||
2560 | + [atxt11]:all_pre_json, | ||
2561 | + [atxt12]:all_yck_arr, | ||
2353 | }) | 2562 | }) |
2354 | th.data.order_prom_list_cart = c_arr; | 2563 | th.data.order_prom_list_cart = c_arr; |
2355 | th.set_can_num(); | 2564 | th.set_can_num(); |
@@ -2410,7 +2619,7 @@ Page({ | @@ -2410,7 +2619,7 @@ Page({ | ||
2410 | var allpice = good.shop_price * good.buynum; | 2619 | var allpice = good.shop_price * good.buynum; |
2411 | var cut_price = 0; | 2620 | var cut_price = 0; |
2412 | var allpice1 = allpice; | 2621 | var allpice1 = allpice; |
2413 | - | 2622 | + |
2414 | 2623 | ||
2415 | if (good.prom_type == 3 && good.prom_price !== null) { | 2624 | if (good.prom_type == 3 && good.prom_price !== null) { |
2416 | cut_price = allpice - good.prom_price; | 2625 | cut_price = allpice - good.prom_price; |
@@ -2676,6 +2885,107 @@ Page({ | @@ -2676,6 +2885,107 @@ Page({ | ||
2676 | if (th.data.bn_goods.whsle_id > 0) { | 2885 | if (th.data.bn_goods.whsle_id > 0) { |
2677 | o_condition = 0; | 2886 | o_condition = 0; |
2678 | } | 2887 | } |
2888 | + | ||
2889 | + | ||
2890 | + //预存金额使用参与计算 | ||
2891 | + if(th.data.udata && th.data.udata.Balance>0 && order_m*1>0){ | ||
2892 | + if(!th.data.bn_goods.keyid){ | ||
2893 | + //获取门店信息 | ||
2894 | + await getApp().request.promiseGet("/api/weshop/pickup/list", { data: { | ||
2895 | + store_id: os.stoid, | ||
2896 | + ids: th.data.bn_pick | ||
2897 | + } }).then(res => { | ||
2898 | + if (ut.ajax_ok(res)) { | ||
2899 | + console.log(res); | ||
2900 | + if(res.data.code==0){ | ||
2901 | + let resData = res.data.data.pageData | ||
2902 | + if(resData && resData[0]){ | ||
2903 | + let keyid= resData[0].keyid | ||
2904 | + let txt='bn_goods.keyid' | ||
2905 | + th.setData({ | ||
2906 | + [txt]:keyid | ||
2907 | + }) | ||
2908 | + } | ||
2909 | + } | ||
2910 | + } | ||
2911 | + }) | ||
2912 | + } | ||
2913 | + if(th.data.bn_goods.keyid){ | ||
2914 | + let cart_yc = await th.beforAdvancesum({ | ||
2915 | + order_amount:order_m, | ||
2916 | + goods:[{ | ||
2917 | + goods_sn:th.data.bn_goods.goods_sn, | ||
2918 | + goods_price:th.data.bn_goods.goods_price, | ||
2919 | + goods_num:th.data.bn_goods.goods_num, | ||
2920 | + }], | ||
2921 | + sto:{ | ||
2922 | + keyid:th.data.bn_goods.keyid | ||
2923 | + } | ||
2924 | + }) | ||
2925 | + | ||
2926 | + if(!good.yck_off){ | ||
2927 | + good.yck_off=cart_yc.yck_off | ||
2928 | + } | ||
2929 | + good.yck=cart_yc.yck | ||
2930 | + good.yckid=cart_yc.yckid | ||
2931 | + good.pre_json=cart_yc.pre_json | ||
2932 | + let yct1 = 'bn_goods.yck_off'; | ||
2933 | + let yct2 = 'bn_goods.yck'; | ||
2934 | + let yct3 = 'bn_goods.yckid'; | ||
2935 | + let yct4 = 'bn_goods.pre_json'; | ||
2936 | + th.setData({ | ||
2937 | + [yct1]:good.yck_off, | ||
2938 | + [yct2]:good.yck, | ||
2939 | + [yct3]:good.yckid, | ||
2940 | + [yct4]:good.pre_json, | ||
2941 | + }) | ||
2942 | + | ||
2943 | + if(good.yck_off && good.yck_off==2 ){ | ||
2944 | + let order_amount = (order_m - good.yck).toFixed(2); | ||
2945 | + let yck=0 | ||
2946 | + if(order_amount*1>0){ | ||
2947 | + order_m = order_amount; | ||
2948 | + // all_prestore+=parseFloat(good.yck); | ||
2949 | + yck=parseFloat(good.yck) | ||
2950 | + }else{ | ||
2951 | + // all_prestore+=order_m*1 | ||
2952 | + yck=parseFloat(order_m) | ||
2953 | + order_m=0 | ||
2954 | + } | ||
2955 | + let atxt10 = "formData.prestore"; //预存金额 | ||
2956 | + let atxt11 = "formData.pre_json"; //预存json | ||
2957 | + let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表 | ||
2958 | + th.setData({ | ||
2959 | + [atxt10]:yck, | ||
2960 | + [atxt11]:[good.pre_json], | ||
2961 | + [atxt12]:[yck], | ||
2962 | + }) | ||
2963 | + // formData.prestore | ||
2964 | + // all_yck_arr.push(yck) //真实预存款抵扣金额 | ||
2965 | + // all_pre_json.push(good.pre_json) | ||
2966 | + // all_prestore = parseFloat(all_prestore); //真实预存款抵扣金额总和 | ||
2967 | + } | ||
2968 | + } | ||
2969 | + }else{ | ||
2970 | + let yct1 = 'bn_goods.yck_off'; | ||
2971 | + let yct2 = 'bn_goods.yck'; | ||
2972 | + let yct3 = 'bn_goods.yckid'; | ||
2973 | + let yct4 = 'bn_goods.pre_json'; | ||
2974 | + let atxt10 = "formData.prestore"; //预存金额 | ||
2975 | + let atxt11 = "formData.pre_json"; //预存json | ||
2976 | + let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表 | ||
2977 | + th.setData({ | ||
2978 | + [yct2]:0, | ||
2979 | + [yct3]:'', | ||
2980 | + [yct4]:'', | ||
2981 | + [atxt10]:0, | ||
2982 | + [atxt11]:'', | ||
2983 | + [atxt12]:[], | ||
2984 | + }) | ||
2985 | + } | ||
2986 | + | ||
2987 | + | ||
2988 | + | ||
2679 | if (o_condition > 0) { | 2989 | if (o_condition > 0) { |
2680 | th.check_is_order_prom(o_condition, async function () { | 2990 | th.check_is_order_prom(o_condition, async function () { |
2681 | var order_prom_amount = 0; | 2991 | var order_prom_amount = 0; |
@@ -2914,6 +3224,7 @@ Page({ | @@ -2914,6 +3224,7 @@ Page({ | ||
2914 | } | 3224 | } |
2915 | 3225 | ||
2916 | 3226 | ||
3227 | + | ||
2917 | total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price); | 3228 | total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price); |
2918 | order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price); | 3229 | order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price); |
2919 | var atxt = "formData.total_amount"; | 3230 | var atxt = "formData.total_amount"; |
@@ -3073,16 +3384,17 @@ Page({ | @@ -3073,16 +3384,17 @@ Page({ | ||
3073 | let strarr=[] | 3384 | let strarr=[] |
3074 | let cbarr=[] | 3385 | let cbarr=[] |
3075 | let cbarr_id=[] | 3386 | let cbarr_id=[] |
3076 | - | ||
3077 | - for (let index = 0,length=cartlist.length; index < length; index++) { | ||
3078 | - let item=cartlist[index].goods | ||
3079 | - for (let i = 0,leng=item.length; i < leng; i++) { | ||
3080 | - if (item[i].prom_type==7) { | ||
3081 | - strarr.push(item[i]) | ||
3082 | - } | ||
3083 | - if (item[i].prom_type !=7 && item[i].goods_prom_type==7) { | ||
3084 | - allarr.push(item[i]) | ||
3085 | - } | 3387 | + if(cartlist && cartlist.length>0){ |
3388 | + for (let index = 0,length=cartlist.length; index < length; index++) { | ||
3389 | + let item=cartlist[index].goods | ||
3390 | + for (let i = 0,leng=item.length; i < leng; i++) { | ||
3391 | + if (item[i].prom_type==7) { | ||
3392 | + strarr.push(item[i]) | ||
3393 | + } | ||
3394 | + if (item[i].prom_type !=7 && item[i].goods_prom_type==7) { | ||
3395 | + allarr.push(item[i]) | ||
3396 | + } | ||
3397 | + } | ||
3086 | } | 3398 | } |
3087 | } | 3399 | } |
3088 | if(strarr.length>0){ | 3400 | if(strarr.length>0){ |
@@ -3103,7 +3415,6 @@ Page({ | @@ -3103,7 +3415,6 @@ Page({ | ||
3103 | cbarr_id.push(strarr[j].id) | 3415 | cbarr_id.push(strarr[j].id) |
3104 | } | 3416 | } |
3105 | } | 3417 | } |
3106 | - | ||
3107 | if(cbarr.length>0){ | 3418 | if(cbarr.length>0){ |
3108 | let str = cbarr.join() | 3419 | let str = cbarr.join() |
3109 | wx.showModal({ | 3420 | wx.showModal({ |
@@ -3462,6 +3773,7 @@ Page({ | @@ -3462,6 +3773,7 @@ Page({ | ||
3462 | for (var i = 0; i < order_prom_list_cart.length; i++) { | 3773 | for (var i = 0; i < order_prom_list_cart.length; i++) { |
3463 | var t_item = order_prom_list_cart[i]; | 3774 | var t_item = order_prom_list_cart[i]; |
3464 | var item = { | 3775 | var item = { |
3776 | + "keyid":t_item.sto ? t_item.sto.keyid : '', | ||
3465 | 'user_id': to.globalData.user_id, | 3777 | 'user_id': to.globalData.user_id, |
3466 | 'consignee': addr == null ? th.data.userinfo.mobile : addr.consignee, | 3778 | 'consignee': addr == null ? th.data.userinfo.mobile : addr.consignee, |
3467 | 'province': addr == null ? 0 : addr.province, | 3779 | 'province': addr == null ? 0 : addr.province, |
@@ -3808,8 +4120,27 @@ Page({ | @@ -3808,8 +4120,27 @@ Page({ | ||
3808 | } | 4120 | } |
3809 | 4121 | ||
3810 | if (pdata.length == 0) return; | 4122 | if (pdata.length == 0) return; |
4123 | + //如果有使用预存,要处理 | ||
4124 | + if (th.data.formData && th.data.formData.prestore*1 > 0) { | ||
4125 | + let formData = th.data.formData | ||
4126 | + let pre_json = formData.pre_json | ||
4127 | + let all_yck_arr=formData.all_yck_arr | ||
4128 | + pdata.map((item,i)=>{ | ||
4129 | + item.pre_cut=all_yck_arr[i] ? all_yck_arr[i] : 0 | ||
4130 | + item.pre_preferential=0 | ||
4131 | + item.pre_json=pre_json[i] ? JSON.stringify(pre_json[i]) : '' | ||
4132 | + }) | ||
4133 | + } | ||
4134 | + | ||
4135 | + | ||
4136 | + if(!pdata.keyid && th.data.bn_goods){ | ||
4137 | + pdata.map(ite=>{ | ||
4138 | + ite.keyid=th.data.bn_goods.keyid | ||
4139 | + }) | ||
4140 | + // pdata.keyid = th.data.bn_goods.keyid | ||
4141 | + } | ||
3811 | var str = JSON.stringify(pdata); | 4142 | var str = JSON.stringify(pdata); |
3812 | - | 4143 | + |
3813 | wx.showLoading({ title: "加载中" }); | 4144 | wx.showLoading({ title: "加载中" }); |
3814 | th.setData({ submit: 1, }) | 4145 | th.setData({ submit: 1, }) |
3815 | wx.request({ | 4146 | wx.request({ |
@@ -3821,6 +4152,7 @@ Page({ | @@ -3821,6 +4152,7 @@ Page({ | ||
3821 | },// 设置请求的 header | 4152 | },// 设置请求的 header |
3822 | success: function (res) { | 4153 | success: function (res) { |
3823 | wx.hideLoading(); | 4154 | wx.hideLoading(); |
4155 | + | ||
3824 | if (res.statusCode == 200) { | 4156 | if (res.statusCode == 200) { |
3825 | var data = res.data; | 4157 | var data = res.data; |
3826 | if (data.code == 0) { | 4158 | if (data.code == 0) { |
@@ -3838,18 +4170,32 @@ Page({ | @@ -3838,18 +4170,32 @@ Page({ | ||
3838 | pdata.forEach(function (em, ind) { | 4170 | pdata.forEach(function (em, ind) { |
3839 | order_amount += parseFloat(em.order_amount); | 4171 | order_amount += parseFloat(em.order_amount); |
3840 | }) | 4172 | }) |
4173 | + | ||
3841 | //要进行判断,如果是用微信支付,就要跳转到支付界面 | 4174 | //要进行判断,如果是用微信支付,就要跳转到支付界面 |
3842 | if (order_amount > 0) { | 4175 | if (order_amount > 0) { |
3843 | th.setData({ isclose: 0 }); | 4176 | th.setData({ isclose: 0 }); |
3844 | //void e.jumpToCart4({ | 4177 | //void e.jumpToCart4({ |
3845 | // order_sn: data.data, | 4178 | // order_sn: data.data, |
3846 | //}, 1); | 4179 | //}, 1); |
3847 | - util_pay.pay(data.data, function () { | 4180 | + |
4181 | + util_pay.pay(data.data, async function () { | ||
3848 | //app.my_warnning("支付成功",1,th); | 4182 | //app.my_warnning("支付成功",1,th); |
3849 | //setTimeout(function () { | 4183 | //setTimeout(function () { |
3850 | - wx.redirectTo({ | ||
3851 | - url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data | ||
3852 | - }) | 4184 | + if (th.data.formData && th.data.formData.prestore*1 > 0) { //有使用预存的处理 |
4185 | + let length=pdata.length | ||
4186 | + wx.showLoading({ title: "加载中",mask:true }); | ||
4187 | + for (let yi = 0; yi < length; yi++) { | ||
4188 | + await th.setAdvancesum(pdata[yi],data.data) | ||
4189 | + } | ||
4190 | + wx.hideLoading() | ||
4191 | + wx.redirectTo({ | ||
4192 | + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data | ||
4193 | + }) | ||
4194 | + }else{ | ||
4195 | + wx.redirectTo({ | ||
4196 | + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data | ||
4197 | + }) | ||
4198 | + } | ||
3853 | //},1000) | 4199 | //},1000) |
3854 | 4200 | ||
3855 | }, function () { | 4201 | }, function () { |
@@ -3876,15 +4222,29 @@ Page({ | @@ -3876,15 +4222,29 @@ Page({ | ||
3876 | }; | 4222 | }; |
3877 | a.post("/api/weshop/order/pay/createOrder", { | 4223 | a.post("/api/weshop/order/pay/createOrder", { |
3878 | data: dd, | 4224 | data: dd, |
3879 | - success: function (t) { | ||
3880 | - //console.log(t); | 4225 | + success: async function (t) { |
4226 | + console.log(t); | ||
3881 | if (t.data.code == 0) { | 4227 | if (t.data.code == 0) { |
3882 | //app.my_warnning("支付成功",1,th); | 4228 | //app.my_warnning("支付成功",1,th); |
3883 | //setTimeout(function () { | 4229 | //setTimeout(function () { |
3884 | - th.setData({ isclose: 0 }); | ||
3885 | - wx.redirectTo({ | ||
3886 | - url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data, | ||
3887 | - }) | 4230 | + if (th.data.formData && th.data.formData.prestore*1 > 0) { //有使用预存的处理 |
4231 | + let length=pdata.length | ||
4232 | + wx.showLoading({ title: "加载中",mask:true }); | ||
4233 | + for (let yi = 0; yi < length; yi++) { | ||
4234 | + await th.setAdvancesum(pdata[yi],data.data) | ||
4235 | + } | ||
4236 | + wx.hideLoading() | ||
4237 | + th.setData({ isclose: 0 }); | ||
4238 | + wx.redirectTo({ | ||
4239 | + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data, | ||
4240 | + }) | ||
4241 | + }else{ | ||
4242 | + th.setData({ isclose: 0 }); | ||
4243 | + wx.redirectTo({ | ||
4244 | + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data, | ||
4245 | + }) | ||
4246 | + } | ||
4247 | + | ||
3888 | //}, 1000) | 4248 | //}, 1000) |
3889 | } | 4249 | } |
3890 | }, | 4250 | }, |
@@ -4698,7 +5058,7 @@ Page({ | @@ -4698,7 +5058,7 @@ Page({ | ||
4698 | if (!arr) arr = []; | 5058 | if (!arr) arr = []; |
4699 | //如果系统有限制使用优惠券 | 5059 | //如果系统有限制使用优惠券 |
4700 | if (th.data.is_close_quan) return false; | 5060 | if (th.data.is_close_quan) return false; |
4701 | - | 5061 | + |
4702 | //------------开始计算使用优惠券相关------------ | 5062 | //------------开始计算使用优惠券相关------------ |
4703 | for (var ind in arr) { | 5063 | for (var ind in arr) { |
4704 | var ep = arr[ind]; | 5064 | var ep = arr[ind]; |
@@ -4846,7 +5206,7 @@ Page({ | @@ -4846,7 +5206,7 @@ Page({ | ||
4846 | }) | 5206 | }) |
4847 | } | 5207 | } |
4848 | } | 5208 | } |
4849 | - | 5209 | + |
4850 | //如果是搭配购的立即购买的时候 | 5210 | //如果是搭配购的立即购买的时候 |
4851 | if (th.data.is_b_now) { | 5211 | if (th.data.is_b_now) { |
4852 | if (arr && arr.length > 0) { | 5212 | if (arr && arr.length > 0) { |
packageE/pages/cart/cart2/cart2.wxml
@@ -251,7 +251,16 @@ | @@ -251,7 +251,16 @@ | ||
251 | </view> | 251 | </view> |
252 | </view> | 252 | </view> |
253 | 253 | ||
254 | - | 254 | + <!-- 预存款 --> |
255 | + <view class="set-mes" wx:if="{{item.yck_off}}" data-ind="{{pidx}}" data-item="{{item}}" catchtap="prestore"> | ||
256 | + <view class="use-item" style="justify-content: space-between;"> | ||
257 | + <view> | ||
258 | + <icon color="{{item.yck_off==2 ? 'red' : '#808080'}}" size="16" type="success"></icon> | ||
259 | + <view class="yu_er">使用预存</view> | ||
260 | + </view> | ||
261 | + <view wx:if="{{item.yck_off==2}}">¥{{filters.toFix(item.yck,2)}}</view> | ||
262 | + </view> | ||
263 | + </view> | ||
255 | 264 | ||
256 | <!-- 留言 --> | 265 | <!-- 留言 --> |
257 | <view class="coupon-mes flex-vertical"> | 266 | <view class="coupon-mes flex-vertical"> |
@@ -516,6 +525,7 @@ | @@ -516,6 +525,7 @@ | ||
516 | </view> | 525 | </view> |
517 | </view> | 526 | </view> |
518 | 527 | ||
528 | + | ||
519 | <!-----使用余额------> | 529 | <!-----使用余额------> |
520 | <view class="set-mes bdr_t-14" wx:if="{{yuer>0}}"> | 530 | <view class="set-mes bdr_t-14" wx:if="{{yuer>0}}"> |
521 | <view class="use-item" bindtap='set_bn_useyuer'> | 531 | <view class="use-item" bindtap='set_bn_useyuer'> |
@@ -523,7 +533,16 @@ | @@ -523,7 +533,16 @@ | ||
523 | <view class="yu_er">使用余额 :¥{{yuer}} </view> | 533 | <view class="yu_er">使用余额 :¥{{yuer}} </view> |
524 | </view> | 534 | </view> |
525 | </view> | 535 | </view> |
526 | - | 536 | + <!-- 预存款 --> |
537 | + <view class="set-mes" catchtap="prestore2" wx:if="{{bn_goods.yck_off}}"> | ||
538 | + <view class="use-item" style="justify-content: space-between;"> | ||
539 | + <view> | ||
540 | + <icon color="{{bn_goods.yck_off==2 ? 'red' : '#808080'}}" size="16" type="success"></icon> | ||
541 | + <view class="yu_er">使用预存</view> | ||
542 | + </view> | ||
543 | + <view wx:if="{{bn_goods.yck_off==2 }}">¥{{filters.toFix(bn_goods.yck,2)}}</view> | ||
544 | + </view> | ||
545 | + </view> | ||
527 | </block> | 546 | </block> |
528 | 547 | ||
529 | <view class="information bdr14"> | 548 | <view class="information bdr14"> |
@@ -560,6 +579,11 @@ | @@ -560,6 +579,11 @@ | ||
560 | <view>订单优惠</view> | 579 | <view>订单优惠</view> |
561 | <view class="co-red">- ¥ {{filters.toFix(formData.order_prom_amount,2)}}元</view> | 580 | <view class="co-red">- ¥ {{filters.toFix(formData.order_prom_amount,2)}}元</view> |
562 | </view> | 581 | </view> |
582 | + <!-- 使用预存优惠金额 --> | ||
583 | + <view class="item" wx:if="{{formData.prestore>0}}"> | ||
584 | + <view>使用预存</view> | ||
585 | + <view class="co-red">- ¥ {{filters.toFix(formData.prestore,2)}}元</view> | ||
586 | + </view> | ||
563 | <view class="item" wx:if="{{formData.user_money>0}}"> | 587 | <view class="item" wx:if="{{formData.user_money>0}}"> |
564 | <view>使用余额</view> | 588 | <view>使用余额</view> |
565 | <view class="co-red">- ¥ {{formData.user_money}}元</view> | 589 | <view class="co-red">- ¥ {{formData.user_money}}元</view> |
pages/user/order_detail/order_detail.js
@@ -127,6 +127,7 @@ Page({ | @@ -127,6 +127,7 @@ Page({ | ||
127 | }).then(res=>{ | 127 | }).then(res=>{ |
128 | if(res.data.code == 0 && res.data.data){ | 128 | if(res.data.code == 0 && res.data.data){ |
129 | r.use_commission=res.data.data.use_commission; | 129 | r.use_commission=res.data.data.use_commission; |
130 | + r.pre_cut=res.data.data.pre_cut; //预存款 | ||
130 | } | 131 | } |
131 | }) | 132 | }) |
132 | 133 |
pages/user/order_detail/order_detail.wxml
@@ -36,7 +36,7 @@ | @@ -36,7 +36,7 @@ | ||
36 | <view class="goods-num">×{{item.goods_num}}</view> | 36 | <view class="goods-num">×{{item.goods_num}}</view> |
37 | 37 | ||
38 | <!-- 不是整单退的时候 --> | 38 | <!-- 不是整单退的时候 --> |
39 | - <block wx:if="{{order.is_all_return!=1 && order.discount<=0 && order.coupon_price<=0 && order.order_prom_amount<=0 && order.discount_amount<=0 && item.prom_type!=5 && !order.is_prom && item.is_whsle_goods!=1}}"> | 39 | + <block wx:if="{{!order.pre_cut && order.is_all_return!=1 && order.discount<=0 && order.coupon_price<=0 && order.order_prom_amount<=0 && order.discount_amount<=0 && item.prom_type!=5 && !order.is_prom && item.is_whsle_goods!=1}}"> |
40 | <view bindtap="checkReturnGoodsStatus" class="goods-num" data-oid="{{item.order_id}}" | 40 | <view bindtap="checkReturnGoodsStatus" class="goods-num" data-oid="{{item.order_id}}" |
41 | data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==1 && !order.is_bedistri}}">申请退款</view> | 41 | data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==1 && !order.is_bedistri}}">申请退款</view> |
42 | <view bindtap="gotoreturn" class="return-btn" data-oid="{{item.order_id}}" | 42 | <view bindtap="gotoreturn" class="return-btn" data-oid="{{item.order_id}}" |
@@ -116,7 +116,10 @@ | @@ -116,7 +116,10 @@ | ||
116 | <view>优惠券</view> | 116 | <view>优惠券</view> |
117 | <view> ¥ {{order.coupon_price}}元</view> | 117 | <view> ¥ {{order.coupon_price}}元</view> |
118 | </view> | 118 | </view> |
119 | - | 119 | + <view class="item pnew" wx:if="{{order.pre_cut>0}}"> |
120 | + <view>使用预存</view> | ||
121 | + <view> ¥ {{order.pre_cut}}元</view> | ||
122 | + </view> | ||
120 | <view class="item pnew" wx:if="{{order.integral>0}}"> | 123 | <view class="item pnew" wx:if="{{order.integral>0}}"> |
121 | <view>积分</view> | 124 | <view>积分</view> |
122 | <view>{{order.integral}}积分</view> | 125 | <view>{{order.integral}}积分</view> |
pages/user/order_list/order_list.js
@@ -351,6 +351,7 @@ Page({ | @@ -351,6 +351,7 @@ Page({ | ||
351 | }).then(res => { | 351 | }).then(res => { |
352 | if (res.data.code == 0 && res.data.data) { | 352 | if (res.data.code == 0 && res.data.data) { |
353 | data[ind].use_commission = res.data.data.use_commission; | 353 | data[ind].use_commission = res.data.data.use_commission; |
354 | + data[ind].pre_cut = res.data.data.pre_cut; //是否使用预存,如果是使用预存不能单品退,只能整单退 | ||
354 | } | 355 | } |
355 | }) | 356 | }) |
356 | 357 |
pages/user/order_list/order_list.wxml
@@ -162,7 +162,7 @@ | @@ -162,7 +162,7 @@ | ||
162 | </view> | 162 | </view> |
163 | <view class="flex-level-right fs26 refund"> | 163 | <view class="flex-level-right fs26 refund"> |
164 | <!-- 不是整单退的时候 --> | 164 | <!-- 不是整单退的时候 --> |
165 | - <block wx:if="{{item.is_all_return!=1 && item.discount<=0 && item.coupon_price<=0 && item.order_prom_amount<=0 && item.discount_amount<=0 && goods.prom_type!=5 && !item.is_prom && goods.is_whsle_goods!=1}}"> | 165 | + <block wx:if="{{!item.pre_cut && item.is_all_return!=1 && item.discount<=0 && item.coupon_price<=0 && item.order_prom_amount<=0 && item.discount_amount<=0 && goods.prom_type!=5 && !item.is_prom && goods.is_whsle_goods!=1}}"> |
166 | <view catchtap="checkReturnGoodsStatus" class="return-btn" data-oid="{{goods.order_id}}" data-recid="{{goods.goods_id}}" wx:if="{{goods.return_btn==1 && !item.is_bedistri }}">申请退款</view> | 166 | <view catchtap="checkReturnGoodsStatus" class="return-btn" data-oid="{{goods.order_id}}" data-recid="{{goods.goods_id}}" wx:if="{{goods.return_btn==1 && !item.is_bedistri }}">申请退款</view> |
167 | <view catchtap="gotoreturn" class="return-btn" data-oid="{{goods.order_id}}" data-recid="{{goods.goods_id}}" wx:if="{{goods.return_btn==2}}">退款中</view> | 167 | <view catchtap="gotoreturn" class="return-btn" data-oid="{{goods.order_id}}" data-recid="{{goods.goods_id}}" wx:if="{{goods.return_btn==2}}">退款中</view> |
168 | <view catchtap="checkReturnGoodsStatus" class="return-btn" data-oid="{{goods.order_id}}" data-recid="{{goods.goods_id}}" wx:if="{{goods.return_btn==3}}">重新退款</view> | 168 | <view catchtap="checkReturnGoodsStatus" class="return-btn" data-oid="{{goods.order_id}}" data-recid="{{goods.goods_id}}" wx:if="{{goods.return_btn==3}}">重新退款</view> |