Commit 6581429b7e74def0a7f97be406949995aaf0aa42

Authored by WXD-SEASON\season
2 parents 04fc0d64 86f4074e

解决冲突

Showing 46 changed files with 7340 additions and 5747 deletions
... ... @@ -1353,6 +1353,42 @@ App({
1353 1353 })
1354 1354 },
1355 1355  
  1356 + //--- 统一跳转到物流的优化 ---
  1357 + async check_go_fw(goods_id,func){
  1358 +
  1359 + var user_id=this.globalData.user_id?this.globalData.user_id:0;
  1360 + var flag=null;
  1361 + //判断拼团的---会员身份--
  1362 + await this.promiseGet("/api/weshop/teamlist/pageteam/2", {
  1363 + data: {
  1364 + store_id: os.stoid,
  1365 + is_end: 0,
  1366 + is_show: 1,
  1367 + user_id: user_id,
  1368 + pageSize: 1000,
  1369 + goods_id:goods_id
  1370 + }
  1371 + }).then(res => {
  1372 + let pd_list = res.data.data.pageData;
  1373 + if (res.data.code == 0 && pd_list.length > 0) {
  1374 + flag = pd_list.find(pd => {
  1375 + return pd.goods_type==1;
  1376 + })
  1377 + }
  1378 + })
  1379 +
  1380 + var url= "/packageA/pages/goodsInfo/goodsInfo?goods_id="+goods_id;
  1381 + if(flag){
  1382 + url='/packageA/pages/serviceCard_pd/goodsInfo/goodsInfo?goods_id='+goods_id+'&prom_type=6&prom_id='+flag.id;
  1383 + }
  1384 + if(func){
  1385 + func(flag,url)
  1386 + }else{
  1387 + this.goto(url);
  1388 + }
  1389 +
  1390 +
  1391 + },
1356 1392 //-- 如果是新会员没有地址的时候,自提的时候可以不用管 --
1357 1393 is_no_addr(th,exp_type){
1358 1394 exp_type=parseInt(exp_type+'');
... ... @@ -1362,7 +1398,7 @@ App({
1362 1398 }
1363 1399 return false;
1364 1400 },
1365   - //---- 判断是不是虚拟商品狗阿米 -----
  1401 + //---- 判断是不是虚拟商品 -----
1366 1402 is_virtual(gd){
1367 1403 if(gd.is_virtual==2) return true;
1368 1404 return false;
... ... @@ -1413,7 +1449,10 @@ App({
1413 1449 })
1414 1450 }
1415 1451 return cx_arr;
1416   - }
  1452 + },
  1453 +
  1454 +
1417 1455  
  1456 + });
1418 1457  
1419   -});
  1458 +
... ...
app.json
... ... @@ -116,10 +116,12 @@
116 116 "pages/cart2_ser/cart2_ser",
117 117 "pages/libao_payment/payment",
118 118 "pages/details_serviceCard/details_serviceCard",
119   - "pages/serviceCard_pd/goodsInfo/goodsInfo",
120   - "pages/serviceCard_pd/team_show/team_show",
121   - "pages/serviceCard_pd/cart/cart",
122   - "pages/serviceCard_pd/team_success/team_success"
  119 + "pages/serviceCard_pd/goodsInfo/goodsInfo",
  120 + "pages/serviceCard_pd/team_show/team_show",
  121 + "pages/serviceCard_pd/cart/cart",
  122 + "pages/serviceCard_pd/team_success/team_success",
  123 + "pages/serviceCard_pd/cart_wk/cart_wk",
  124 + "pages/serviceCard_pd/team_more/team_more"
123 125 ]
124 126 },
125 127 {
... ...
app.wxss
... ... @@ -1211,7 +1211,7 @@ background: #ffe3e2;
1211 1211 .no_line_x{
1212 1212 text-decoration: none !important;
1213 1213 font-size: 24rpx !important;
1214   - color: #acaaaa !important;
  1214 + /*color: #acaaaa !important;*/
1215 1215 }
1216 1216 .no_line_c{
1217 1217 text-decoration: none !important;
... ...
components/diy_pingd_buy/diy_pingd_buy.js
... ... @@ -49,12 +49,15 @@ Component({
49 49 clearInterval(this.data.timer);
50 50 }
51 51 },
52   -
53   -
  52 +
54 53 ready: function() {
55 54 console.log("ready");
56 55 var g_id = this.data.object.data;
  56 + var data_type = this.data.object.data_type;
57 57 console.log(g_id);
  58 + if(data_type!=2){
  59 + g_id=null;
  60 + }
58 61 this.init(g_id);
59 62 },
60 63 detached() {
... ... @@ -219,7 +222,7 @@ Component({
219 222 bind_bnerr3: function (e) {
220 223 var _errImg = e.target.dataset.errorimg;
221 224 var _Img = e.target.dataset.img;
222   - if (_Img != undefined) {
  225 + if (_errImg != undefined) {
223 226 var _errObj = {};
224 227 _errObj[_errImg] = "/public/images/default_goods_image_240.gif";
225 228 this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
... ...
packageA/pages/cart2_ser/cart2_ser.js
... ... @@ -510,6 +510,9 @@ Page({
510 510 'pickup_id': gg.pick_id,
511 511 'pickup_keyid': list[i].keyid,
512 512 };
  513 + if(gg.is_pd_normal){
  514 + goods.is_pd_normal=1;
  515 + }
513 516 }
514 517  
515 518 if(getApp().globalData.skinface_id){
... ... @@ -562,6 +565,11 @@ Page({
562 565 goods.skinface_id=getApp().globalData.skinface_id;
563 566 }
564 567  
  568 + if(this.data.postdata && this.data.postdata.is_pd_normal==1){
  569 + goods.is_pd_normal=1;
  570 + }
  571 +
  572 +
565 573 //--导购分享过来的id--
566 574 if (gg.guide_id) {
567 575 goods.guide_id = gg.guide_id;
... ...
packageA/pages/details_serviceCard/details_serviceCard.js
... ... @@ -4,6 +4,7 @@ const app = getApp();
4 4 const os = app.globalData.setting;
5 5 let self = null;
6 6 var util = require('../../../utils/util.js');
  7 +const ut = require("../../../utils/util.js");
7 8  
8 9 Page({
9 10  
... ... @@ -70,8 +71,13 @@ Page({
70 71 }).then(res => {
71 72 if (res.data.code == 0) {
72 73 // console.log('请求成功', res);
  74 + var dd=res.data.data.pageData[0];
  75 + dd.prom_type=dd.list[0].prom_type;
  76 + dd.pt_status=dd.list[0].pt_status;
  77 + dd.pt_tail_money=dd.list[0].pt_tail_money;
  78 +
73 79 this.setData({
74   - details: res.data.data.pageData[0],
  80 + details: dd,
75 81 });
76 82 } else {
77 83 throw (res);
... ... @@ -306,6 +312,9 @@ Page({
306 312 var card_id = details.list[i].card_id;
307 313 var prom_type = details.list[i].prom_type > 0 ? details.list[i].prom_type : 0;
308 314 var is_pd_normal = details.list[i].is_pd_normal;
  315 + if(is_pd_normal){
  316 + newd['is_pd_normal'] = 1;
  317 + }
309 318 // 库存
310 319 var redisNums = 0;
311 320 // 限购数
... ... @@ -356,6 +365,12 @@ Page({
356 365  
357 366 }
358 367  
  368 + if(prom_type==6){
  369 + wx.showModal({
  370 + title: details.list[i].service_name +"拼团商品不加入购物车\n"
  371 + });
  372 + return false;
  373 + }
359 374  
360 375 //----先看会员在购物车中是否加入了该商品-----
361 376 app.request.get("/api/weshop/cartService/page", {
... ... @@ -499,7 +514,7 @@ Page({
499 514  
500 515  
501 516 // 立即支付
502   - pay() {
  517 + async pay() {
503 518  
504 519 if(this.data.is_summit_ing) return false;
505 520 this.data.is_summit_ing=1;
... ... @@ -508,54 +523,211 @@ Page({
508 523 let order_sn = this.data.details.order_sn;
509 524 let order_id = this.data.details.order_id;
510 525 let store_id = app.globalData.setting.stoid;
511   - t_pay.set_pay_url("/api/weshop/order/pay/createRechargeOrder");
512   - t_pay.pay({
513   - parentSn: order_sn,
514   - store_id: store_id
515   - }, function () {
516   - app.showWarning('支付成功');
517   - setTimeout(function() {
518   - wx.reLaunch({
519   - url: "/pages/payment/pay_success/pay_success?card=1&order_id=" + order_id,
520   - })
521   - }, 1000)
522   -
523   - }, function (e) {
524   - th.data.is_summit_ing=0;
525   - wx.showToast({
526   - title: e,
527   - icon: 'none',
528   - duration: 2000
529   - });
530   - })
531   - // app.request.post('/api/weshop/order/pay/createRechargeOrder', {
532   - // data: {
533   - // parentSn: order_sn,
534   - // store_id: store_id,
535   - // },
536   - //
537   - // success: function(res) {
538   - // var n = res.data.data;
539   - // self.weixinPay(n, function() {
540   - // app.showWarning('支付成功');
541   - // // setTimeout(function() {
542   - // // wx.reLaunch({
543   - // // url: "/pages/payment/pay_success/pay_success?card=1&order_id=" + order_id,
544   - // // })
545   - // // }, 1000)
546   - // }, function() {
547   - // app.showWarning('支付失败');
548   - // // setTimeout(function() {
549   - // // wx.reLaunch({
550   - // // url: '/packageA/pages/cardList/cardList',
551   - // // })
552   - // // }, 1000)
553   - // });
554   - // }
555   - // })
556   - },
  526 + let user_id = os.user_id;
  527 +
  528 + let flag = true;
  529 + // 如果是普通购买或单独购买,不用判断
  530 + // 如果是秒杀购买:1、判断活动是否变化;2、是否超出限购
  531 + let list = this.data.details.list;
  532 + var pt_act=null; //-- 拼团活动的优化 --
  533 +
  534 + //秒杀活动和拼团活动要重新计算一下
  535 + for (const it of list) {
  536 + if (it.prom_type == 1) {
  537 + let act_details = null;
  538 + let redis_num = 0;
  539 + let promcardbuynum = 0;
  540 + let qty = it.qty;
  541 +
  542 +
  543 + await getApp().request.promiseGet('/api/ms/flash_sale/getNew/' + store_id + '/' + user_id + '/' + it.prom_id, {}).then(res => {
  544 + console.log('11111111====>>>');
  545 + if (res.data.code == 0) {
  546 + console.log('当前的秒杀活动信息:', res.data.data);
  547 + act_details = res.data.data;
  548 + if (act_details.is_end == 1) {
  549 + wx.showModal({
  550 + title: '提示',
  551 + content: '活动已结束,无法支付,请取消订单!',
  552 + showCancel: false,
  553 + });
  554 + flag = false;
  555 + return false;
  556 + };
  557 + if (act_details.id != it.prom_id) {
  558 + wx.showModal({
  559 + title: '提示',
  560 + content: '活动发生了变化,无法支付,请取消订单,重新购买!',
  561 + showCancel: false,
  562 + });
  563 + flag = false;
  564 + return false;
  565 + };
  566 +
  567 +
  568 + var t_now = ut.gettimestamp();
  569 + if (act_details.is_end == 0 && act_details.start_time < t_now && act_details.end_time > t_now) {
  570 + wx.showModal({
  571 + title: '提示',
  572 + content: '活动发生了变化,无法支付,请取消订单,重新购买!',
  573 + showCancel: false,
  574 + });
  575 + flag = false;
  576 + return false;
  577 + }
  578 +
  579 + };
  580 + });
  581 +
  582 + if(act_details.buy_limit>0 && flag){
  583 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
  584 + data: {
  585 + store_id: store_id,
  586 + user_id: user_id,
  587 + card_id: it.card_id,
  588 + prom_type: it.prom_type,
  589 + prom_id: it.prom_id,
  590 + ispay:1
  591 + }
  592 + }).then(res => {
  593 +
  594 + if (res.data.code == 0) {
  595 + promcardbuynum = res.data.data.promcardbuynum;
  596 + let canBuyNum = act_details.buy_limit - promcardbuynum; // 自己还可购买的数量c
  597 +
  598 + if (canBuyNum < qty) {
  599 + wx.showModal({
  600 + title: '提示',
  601 + content: '您已超出活动限购数量,无法支付,请取消订单!',
  602 + showCancel: false,
  603 + });
  604 + flag = false;
  605 + }
  606 + }
  607 + })
  608 + }
  609 +
  610 + };
557 611  
  612 + if (it.prom_type == 6) {
  613 + let act_details = null;
  614 + let redis_num = 0;
  615 + let promcardbuynum = 0;
  616 + let qty = it.qty;
558 617  
  618 + await getApp().request.promiseGet("/api/weshop/teamlist/get/" + store_id + "/" + it.prom_id, {}).then(res => {
  619 +
  620 + if (res.data.code == 0) {
  621 +
  622 + act_details = res.data.data;
  623 +
  624 + if (act_details.is_end == 1) {
  625 + wx.showModal({
  626 + title: '提示',
  627 + content: '活动已结束,无法支付,请取消订单!',
  628 + showCancel: false,
  629 + });
  630 + flag = false;
  631 + return false;
  632 + }
  633 +
  634 + if (act_details.id != it.prom_id) {
  635 + wx.showModal({
  636 + title: '提示',
  637 + content: '活动发生了变化,无法支付,请取消订单,重新购买!',
  638 + showCancel: false,
  639 + });
  640 + flag = false;
  641 + return false;
  642 + }
  643 +
  644 + var t_now = ut.gettimestamp();
  645 + if (act_details.is_end == 1 || act_details.start_time > t_now || act_details.end_time < t_now) {
  646 + wx.showModal({
  647 + title: '提示',
  648 + content: '活动发生了变化,无法支付,请取消订单,重新购买!',
  649 + showCancel: false,
  650 + });
  651 + flag = false;
  652 + return false;
  653 + }
  654 +
  655 + };
  656 + });
  657 +
  658 + if(act_details.buy_limit>0){
  659 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
  660 + data: {
  661 + store_id: store_id,
  662 + user_id: user_id,
  663 + card_id: it.card_id,
  664 + prom_type: it.prom_type,
  665 + prom_id: it.prom_id,
  666 + ispay:1
  667 + }
  668 + }).then(res => {
  669 + if (res.data.code == 0) {
  670 + console.log('已经购买的数量:', res.data.data);
  671 + promcardbuynum = res.data.data.promcardbuynum;
  672 + }
  673 + })
  674 + let limited = act_details.buy_limit; // 限购数量a
  675 + let canBuyNum = limited - promcardbuynum; // 自己还可购买的数量c
  676 +
  677 + if (canBuyNum < qty ) {
  678 + wx.showModal({
  679 + title: '提示',
  680 + content: '您已超出活动限购数量,无法支付,请取消订单!',
  681 + showCancel: false,
  682 + });
  683 + flag = false;
  684 + }
  685 + }
  686 + pt_act=act_details;
  687 + }
  688 + }
  689 +
  690 + if (flag) {
  691 + t_pay.set_pay_url("/api/weshop/order/pay/createRechargeOrder");
  692 + t_pay.pay({
  693 + parentSn: order_sn,
  694 + store_id: store_id
  695 + }, function () {
  696 + app.showWarning('支付成功');
  697 +
  698 + if(pt_act.kttype==1){
  699 + //--如果商家团的时候---
  700 + getApp().request.promisePost("/api/weshop/order/pay/vipAutoTuan", {
  701 + data: {orderSn:order_sn,storeId:os.stoid }
  702 + })
  703 + }
  704 +
  705 + setTimeout(function () {
  706 + wx.reLaunch({
  707 + url: "/pages/payment/pay_success/pay_success?card=1&order_id=" + order_id,
  708 + })
  709 + }, 1000)
  710 +
  711 + }, function (e) {
  712 + th.data.is_summit_ing = 0;
  713 + wx.showToast({
  714 + title: e,
  715 + icon: 'none',
  716 + duration: 2000
  717 + });
  718 + })
  719 + }else{
  720 + this.data.is_summit_ing=0;
  721 + }
  722 +
  723 + },
  724 +
  725 + //-- 支付尾款 --
  726 + pay2(){
  727 + var url="/packageA/pages/serviceCard_pd/cart_wk/cart_wk?order_id="+this.data.details.order_id;
  728 + getApp().goto(url);
  729 + },
  730 +
559 731 //------调起支付框--------
560 732 weixinPay: function(n, success, fail) {
561 733 if (!n) return false;
... ...
packageA/pages/details_serviceCard/details_serviceCard.wxml
... ... @@ -8,8 +8,17 @@
8 8 <view class="ellipsis-1 pdr40 fs30"><text class="iconfont icon-shop c-red pdr10"></text>{{item.pickup_name}}</view>
9 9 <!-- 订单状态 -->
10 10 <block>
11   - <text class="c-red shrink0 fs26" wx:if="{{details.order_status == 0}}">待支付</text>
12   - <text class="c-red shrink0 fs26" wx:if="{{details.order_status == 1}}">待评价</text>
  11 + <text class="c-red shrink0 fs26" wx:if="{{details.order_status<2 && details.pay_status==0 }}">
  12 + <block wx:if="{{details.prom_type==6}}">
  13 + <block wx:if="{{details.pt_status==0}}" >未支付</block>
  14 + <block wx:if="{{details.pt_status==1}}" >组团中</block>
  15 + <block wx:if="{{details.pt_status==2 && details.pt_tail_money>0}}">待支付尾款</block>
  16 + </block>
  17 + <block wx:else>
  18 + 待支付
  19 + </block>
  20 + </text>
  21 + <text class="c-red shrink0 fs26" wx:if="{{details.order_status == 1 && details.pay_status==1}}">待评价</text>
13 22 <text class="c-red shrink0 fs26" wx:if="{{details.order_status == 2}}">已评价</text>
14 23 <text class="c-red shrink0 fs26" wx:if="{{details.order_status == 3}}">已取消</text>
15 24 <text class="c-red shrink0 fs26" wx:if="{{details.order_status == 5}}">已作废</text>
... ... @@ -39,7 +48,9 @@
39 48  
40 49  
41 50 <!-- 统计栏 -->
42   - <view class="t-r bdt pdv20">共{{filter.count(details.list)}}件商品,合计:<text class="rmb c-red bold fs30">{{details.account}}</text></view>
  51 + <view class="t-r bdt pdv20">
  52 + 共{{filter.count(details.list)}}件商品,合计:<text class="rmb c-red bold fs30">{{filter.toFix(details.account+details.pt_tail_money,2) }}</text>
  53 + </view>
43 54 </view>
44 55  
45 56  
... ... @@ -68,14 +79,24 @@
68 79 </view>
69 80  
70 81 <!-- 底部按钮栏 -->
71   - <view class="btn-bar t-r bg-white pd20">
  82 + <view class="btn-bar t-r bg-white pd20" hidden="{{details.pt_status == 1 && details.order_status<2 }}">
72 83 <!-- 待支付 -->
73   - <block wx:if="{{details.order_status == 0}}">
  84 + <block wx:if="{{details.pay_status == 0 && details.order_status<2 && details.prom_type!=6 }}">
  85 + <text class="btn btn-border" bindtap="cancle">取消订单</text>
  86 + <text class="btn bg-red white mgl20" bindtap="pay">立即支付</text>
  87 + </block>
  88 +
  89 + <block wx:if="{{details.pt_status == 0 && details.order_status<2 && details.prom_type==6 }}">
74 90 <text class="btn btn-border" bindtap="cancle">取消订单</text>
75 91 <text class="btn bg-red white mgl20" bindtap="pay">立即支付</text>
76 92 </block>
  93 +
  94 + <block wx:if="{{details.pt_status == 2 && details.order_status<2 && details.prom_type==6 && details.pt_tail_money>0 }}">
  95 + <text class="btn bg-red white mgl20" bindtap="pay2">支付尾款</text>
  96 + </block>
  97 +
77 98 <!-- 已支付/未评价 -->
78   - <block wx:if="{{details.order_status == 1}}">
  99 + <block wx:if="{{details.order_status == 1 && details.pay_status == 1 }}">
79 100 <text class="btn bg-orange white" bindtap="buy2">再来一单</text>
80 101 <text class="btn bg-red white mgl20" bindtap="access">立即评价</text>
81 102 </block>
... ...
packageA/pages/goodsInfo/filter.wxs
... ... @@ -8,7 +8,19 @@ function format_tt(ts) {
8 8 var fm=(d.getMonth()+1)+"月"+ d.getDate()+"日";
9 9 return fm;
10 10 }
  11 +
  12 +//拿来判断是不是在指定门店内
  13 +function is_no_dis(text,val){
  14 + if(text==undefined) return false;
  15 + if(text=='') return false;
  16 + if(!text) return false;
  17 +
  18 + if(text.indexOf(val)==-1) return true;
  19 + return false;
  20 +}
  21 +
11 22 module.exports = {
12 23 is_has: is_has,
13   - format_tt:format_tt
  24 + format_tt:format_tt,
  25 + is_no_dis:is_no_dis
14 26 }
... ...
packageA/pages/goodsInfo/goodsInfo.js
... ... @@ -218,17 +218,13 @@ Page({
218 218 },
219 219  
220 220 //------初始化加载----------
221   - onLoad: function(t) {
  221 + onLoad:function(t) {
  222 + self = this;
222 223  
  224 + this.setData({
  225 + options: t,
  226 + });
223 227  
224   - console.log("11111111");
225   -
226   - self = this;
227   -
228   - this.setData({
229   - options: t,
230   - });
231   -
232 228 var ee = this,
233 229 that = ee,
234 230 th = ee,
... ... @@ -251,11 +247,11 @@ Page({
251 247 if(gid_str.length>1){
252 248 first_leader=gid_str[1];
253 249 }
254   - //-- 如果有room_id的获取 --
255   - if(gid_str.length>2 && gid_str[2]) {
256   - room_id=gid_str[2];
257   - room_user_share=1;
258   - };
  250 + //-- 如果有room_id的获取 --
  251 + if(gid_str.length>2 && gid_str[2]) {
  252 + room_id=gid_str[2];
  253 + room_user_share=1;
  254 + };
259 255 };
260 256  
261 257 ee.setData({ gid: gid});
... ... @@ -328,43 +324,10 @@ Page({
328 324  
329 325 //------几人评价-------
330 326 //n.init(th, "", "comments");
331   -
332   - th.requestCardNum(), wx.pageScrollTo && th.setData({
  327 + wx.pageScrollTo && th.setData({
333 328 supportPageScroll: !0
334 329 });
335 330  
336   - //计算等级价相关
337   - // var swithc_list = e.switch_list;
338   - // var sw_arr = JSON.parse(swithc_list);
339   - // //---如果后台又开等级卡的开关---
340   - // if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {
341   - // th.setData({ rank_switch: true });
342   - // //---回调卡的列表---
343   - // th.getPlusCardType(function (ob) {
344   - // th.setData({ card_list: ob.card_list });
345   - // var ti = setInterval(function () {
346   - // var user = getApp().globalData.userInfo;
347   - // if (!user) return false;
348   - // clearInterval(ti);
349   - // if (user.card_field && user['card_expiredate']) {
350   - // var str = user['card_expiredate'].replace(/-/g, '/');
351   - // var end = new Date(str);
352   - // end = Date.parse(end) / 1000;
353   - // var now = ut.gettimestamp();
354   - // //--- 判断是等级会员,且在有效期范围内 ---
355   - // if (user.card_field && now < end) {
356   - // var card_name = ob.name_map.get(user.card_field);
357   - // //if(card_name.length>6) card_name=card_name.substring(0,6);
358   -
359   - // var is_near_date = 0;
360   - // if (end - now < 60 * 60 * 30 * 24) is_near_date = 1; //如果小于30天
361   - // th.setData({ card_field: user.card_field, card_name: card_name, card_list: ob.card_list, is_near_date: is_near_date });
362   - // }
363   - // }
364   - // }, 500)
365   - // })
366   - // }
367   -
368 331 }, 1);
369 332  
370 333 //获取用户设备信息,屏幕宽度
... ... @@ -508,7 +471,11 @@ Page({
508 471 });
509 472 };
510 473  
511   - };
  474 + }else{
  475 + this.setData({
  476 + actList: res.data.data,
  477 + });
  478 + }
512 479 });
513 480 };
514 481 // <---- 秒杀
... ... @@ -580,7 +547,6 @@ Page({
580 547 }
581 548 };
582 549  
583   - this.getTaohe();
584 550  
585 551 // if (th.data.is_closecoupon != 1 && (!th.data.fir_quan || th.data.fir_quan.length<=0)) {
586 552 // //----获取详情页的券的数量----
... ... @@ -640,199 +606,213 @@ Page({
640 606 // gid 在onload阶段已经保存在this.data中
641 607 onShow: function() {
642 608  
643   - getApp().check_can_share();
  609 + getApp().check_can_share();
644 610  
645 611 var that=this;var th=this;
646 612 var ee = this,gid = this.data.gid, i = getApp().request;
647   - this.data.is_timer = 1;
648 613  
649   - //获取用户的默认门店
650   - th.check_guide(()=>{
651   - getApp().get_user_store(function(e) {
652   - console.log('get_user_store');
653   - console.log("999999999");
  614 + //判断是不是要跳转到拼团服务卡
  615 + getApp().check_go_fw(gid,function (act,url){
654 616  
  617 + if(act){
  618 + wx.redirectTo({
  619 + url:url
  620 + })
  621 + return false;
  622 + }
655 623  
656   - if(!e) {
657   - th.data.fir_def_store={}; //赋值空对象
658   - return false;
659   - }
  624 + th.data.is_timer = 1;
  625 + //获取用户的默认门店
  626 + th.check_guide(()=>{
  627 + getApp().get_user_store(function(e) {
  628 + console.log('get_user_store');
  629 + console.log("999999999");
660 630  
661   - console.log("000000");
662 631  
663   - if(getApp().globalData.is_dj_pk) th.setData({has_def:1})
  632 + if(!e) {
  633 + th.data.fir_def_store={}; //赋值空对象
  634 + return false;
  635 + }
664 636  
665   - var ee=JSON.parse(JSON.stringify(e));
  637 + console.log("000000");
666 638  
  639 + if(getApp().globalData.is_dj_pk) th.setData({has_def:1})
667 640  
668   - console.log(e);
  641 + var ee=JSON.parse(JSON.stringify(e));
669 642  
670   - //--定时器推迟一下--
671   - setTimeout(function () {
672   - if(!th.data.data){
673   - return false;
674   - }
675   - var ser_card=th.data.data;
676   - //--如果默认门店不在等级卡的默认们店以内
677   - if(ser_card.storageId!=null && ser_card.storageId!="" && ser_card.storageId.indexOf(ee.keyid)==-1){
678   - ee.is_no_dis=1;
679   - }
680 643  
681   - var appd=getApp().globalData;
682   - var w_time = setInterval(function() {
683   - if (that.data.is_get_local_ok == 0) return false;
684   - clearInterval(w_time);
685   - var distance = null;
686   - var e=JSON.parse(JSON.stringify(ee));
687   -
688   - //如果有开启近距离的话,同时距离优不一样了
689   - if (that.data.lat != null) {
690   - //如果经纬度有变化的话
691   - if(e && appd.lat==that.data.lat && appd.lon==that.data.lon && e.distance>0 ){
692   - that.data.fir_def_store=e;
693   - that.setData({
694   - def_pick_store: e,
695   - sto_sele_name: e.pickup_name,
696   - sto_sele_id: e.pickup_id,
697   - sto_sele_distr: e.distr_type,
698   - sto_sele_keyid:e.keyid,
699   - })
700   - }else{
701   - //要用接口是获取距离,js的计算不准
702   - getApp().request.promiseGet("/api/weshop/pickup/list",{
703   - data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon, is_pos: 1},
704   - }).then(res=>{
705   - if(ut.ajax_ok(res)){
706   - e=res.data.data.pageData[0];
707   - if (e){
708   - e.is_no_dis=ee.is_no_dis;
709   - appd.pk_store=e;
710   - that.data.fir_def_store=e;
711   -
712   - console.log('get_user_store--2');
713   - console.log(e);
714   -
715   - that.setData({
716   - def_pick_store: e,
717   - sto_sele_name: e.pickup_name,
718   - sto_sele_id: e.pickup_id,
719   - sto_sele_distr: e.distr_type,
720   - sto_sele_keyid:e.keyid,
721   - })
722   - }
723   -
724   - }
725   - })
726   - }
727   -
728   - //e.distance = distance;
729   - appd.lat=that.data.lat;
730   - appd.lon=that.data.lon;
731   -
732   - } else {
733   - if (e) {
734   -
735   -
736   - console.log('get_user_store3---');
737   - console.log(e);
738   -
739   - e.distance = null;
740   - that.data.fir_def_store=e;
741   - that.setData({
742   - def_pick_store: e,
743   - sto_sele_name: e.pickup_name,
744   - sto_sele_id: e.pickup_id,
745   - sto_sele_distr: e.distr_type,
746   - sto_sele_keyid:e.keyid,
747   - })
748   - }
749   - }
750   - }, 500)
751   - },1500)
  644 + console.log(e);
752 645  
753   - });
754   - })
  646 + //--定时器推迟一下--
  647 + setTimeout(function () {
  648 + if(!th.data.data){
  649 + return false;
  650 + }
  651 + var ser_card=th.data.data;
  652 + //--如果默认门店不在等级卡的默认们店以内
  653 + if(ser_card.storageId!=null && ser_card.storageId!="" && ser_card.storageId.indexOf(ee.keyid)==-1){
  654 + ee.is_no_dis=1;
  655 + }
  656 +
  657 + var appd=getApp().globalData;
  658 + var w_time = setInterval(function() {
  659 + if (that.data.is_get_local_ok == 0) return false;
  660 + clearInterval(w_time);
  661 + var distance = null;
  662 + var e=JSON.parse(JSON.stringify(ee));
  663 +
  664 + //如果有开启近距离的话,同时距离优不一样了
  665 + if (that.data.lat != null) {
  666 + //如果经纬度有变化的话
  667 + if(e && appd.lat==that.data.lat && appd.lon==that.data.lon && e.distance>0 ){
  668 + that.data.fir_def_store=e;
  669 + that.setData({
  670 + def_pick_store: e,
  671 + sto_sele_name: e.pickup_name,
  672 + sto_sele_id: e.pickup_id,
  673 + sto_sele_distr: e.distr_type,
  674 + sto_sele_keyid:e.keyid,
  675 + })
  676 + }else{
  677 + //要用接口是获取距离,js的计算不准
  678 + getApp().request.promiseGet("/api/weshop/pickup/list",{
  679 + data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon, is_pos: 1},
  680 + }).then(res=>{
  681 + if(ut.ajax_ok(res)){
  682 + e=res.data.data.pageData[0];
  683 + if (e){
  684 + e.is_no_dis=ee.is_no_dis;
  685 + appd.pk_store=e;
  686 + that.data.fir_def_store=e;
  687 +
  688 + console.log('get_user_store--2');
  689 + console.log(e);
  690 +
  691 + that.setData({
  692 + def_pick_store: e,
  693 + sto_sele_name: e.pickup_name,
  694 + sto_sele_id: e.pickup_id,
  695 + sto_sele_distr: e.distr_type,
  696 + sto_sele_keyid:e.keyid,
  697 + })
  698 + }
  699 +
  700 + }
  701 + })
  702 + }
  703 +
  704 + //e.distance = distance;
  705 + appd.lat=that.data.lat;
  706 + appd.lon=that.data.lon;
  707 +
  708 + } else {
  709 + if (e) {
  710 +
  711 +
  712 + console.log('get_user_store3---');
  713 + console.log(e);
  714 +
  715 + e.distance = null;
  716 + that.data.fir_def_store=e;
  717 + that.setData({
  718 + def_pick_store: e,
  719 + sto_sele_name: e.pickup_name,
  720 + sto_sele_id: e.pickup_id,
  721 + sto_sele_distr: e.distr_type,
  722 + sto_sele_keyid:e.keyid,
  723 + })
  724 + }
  725 + }
  726 + }, 500)
  727 + },1500)
  728 +
  729 + });
  730 + })
  731 +
  732 + th.wait_for_store_config();
  733 +
  734 + i.get("/api/weshop/serviceCard/get/" + o.stoid + "/" + ee.data.gid, {
  735 + failRollback: !0,
  736 + success: function(t) {
  737 + if (t.data.code == 0) {
  738 + // console.log('GET pic and video');
  739 + if(t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_url) {
  740 + that.setData({
  741 + mapurl: t.data.data.listServiceVideos[0].video_url,
  742 + });
  743 + };
  744 + if(t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_img) {
  745 + that.setData({
  746 + mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
  747 + });
  748 + };
  749 + if(t.data.data.listServiceImages) {
  750 + that.setData({
  751 + gallery: t.data.data.listServiceImages,
  752 + });
  753 + };
  754 + if(t.data.data.listServiceItem) {
  755 + that.setData({
  756 + listServiceItem: t.data.data.listServiceItem,
  757 + });
  758 + };
  759 + that.setData({
  760 + 'data.goods_name': t.data.data.serviceName,
  761 + 'data.shop_price': t.data.data.money,
  762 + 'data.show_price': t.data.data.show_price,
  763 + 'data.validDays': t.data.data.validDays,
  764 + 'data.serviceContent': t.data.data.serviceContent,
  765 + 'data.image_url': t.data.data.imgUrl,
  766 + 'data.goods_id': t.data.data.id,
  767 + 'data.id': t.data.data.id,
  768 + 'data.sales_sum': t.data.data.sales_sum,
  769 + 'data.storageId':t.data.data.storageId,
  770 + 'data.service_sn':t.data.data.serviceSn,
  771 + 'data.listServiceVideos': t.data.data.listServiceVideos,
  772 + // gallery: t.data.data.listServiceImages,
  773 + // mapurl: t.data.data.listServiceVideos[0].video_url,
  774 + // mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
  775 + //listServiceItem: t.data.data.listServiceItem,
  776 + 'isshow':1
  777 +
  778 + });
  779 +
  780 + that.getTaohe();
  781 +
  782 + // console.log('0xxxxx999999', t.data.data);
  783 + //-----商品详情---
  784 + if(!t.data.data.serviceContent) t.data.data.serviceContent=" ";
  785 + a.wxParse("content", "html", ut.format_content(t.data.data.serviceContent), ee, 6);
  786 + e.wxParseAddFullImageUrl(ee, "content");
  787 +
  788 + //获取重表
  789 + getApp().promiseGet("/api/weshop/serviceItem/list",{
  790 + data:{store_id:o.stoid,service_id:t.data.data.id}
  791 + }).then(res=>{
  792 + if(res.data.code==0){
  793 + var list=res.data.data;
  794 + that.setData({service_list:list})
  795 + }
  796 + })
  797 +
  798 + } else {
  799 + wx.showModal({
  800 + title: t.data.msg,
  801 + showCancel: !1,
  802 + complete: function() {
  803 + wx.navigateBack();
  804 + }
  805 + });
  806 + };
  807 + }
  808 + });
  809 +
  810 + th.data.enterAddressPage && (this.data.enterAddressPage = !1);
  811 + th.get_sto();
  812 + })
755 813  
756   - this.wait_for_store_config();
757 814  
758   - i.get("/api/weshop/serviceCard/get/" + o.stoid + "/" + ee.data.gid, {
759   - failRollback: !0,
760   - success: function(t) {
761   - if (t.data.code == 0) {
762   - // console.log('GET pic and video');
763   - if(t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_url) {
764   - that.setData({
765   - mapurl: t.data.data.listServiceVideos[0].video_url,
766   - });
767   - };
768   - if(t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_img) {
769   - that.setData({
770   - mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
771   - });
772   - };
773   - if(t.data.data.listServiceImages) {
774   - that.setData({
775   - gallery: t.data.data.listServiceImages,
776   - });
777   - };
778   - if(t.data.data.listServiceItem) {
779   - that.setData({
780   - listServiceItem: t.data.data.listServiceItem,
781   - });
782   - };
783   - that.setData({
784   - 'data.goods_name': t.data.data.serviceName,
785   - 'data.shop_price': t.data.data.money,
786   - 'data.show_price': t.data.data.show_price,
787   - 'data.validDays': t.data.data.validDays,
788   - 'data.serviceContent': t.data.data.serviceContent,
789   - 'data.image_url': t.data.data.imgUrl,
790   - 'data.goods_id': t.data.data.id,
791   - 'data.id': t.data.data.id,
792   - 'data.sales_sum': t.data.data.sales_sum,
793   - 'data.storageId':t.data.data.storageId,
794   - 'data.service_sn':t.data.data.serviceSn,
795   - 'data.listServiceVideos': t.data.data.listServiceVideos,
796   - // gallery: t.data.data.listServiceImages,
797   - // mapurl: t.data.data.listServiceVideos[0].video_url,
798   - // mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
799   - //listServiceItem: t.data.data.listServiceItem,
800   - });
801   -
802   - // console.log('0xxxxx999999', t.data.data);
803   - //-----商品详情---
804   - if(!t.data.data.serviceContent) t.data.data.serviceContent=" ";
805   - a.wxParse("content", "html", ut.format_content(t.data.data.serviceContent), ee, 6);
806   - e.wxParseAddFullImageUrl(ee, "content");
807   -
808   - //获取重表
809   - getApp().promiseGet("/api/weshop/serviceItem/list",{
810   - data:{store_id:o.stoid,service_id:t.data.data.id}
811   - }).then(res=>{
812   - if(res.data.code==0){
813   - var list=res.data.data;
814   - that.setData({service_list:list})
815   - }
816   - })
817   -
818   -
819 815  
820   - } else {
821   - wx.showModal({
822   - title: t.data.msg,
823   - showCancel: !1,
824   - complete: function() {
825   - wx.navigateBack();
826   - }
827   - });
828   - };
829   - }
830   - });
831   -
832   -
833   -
834   - this.data.enterAddressPage && (this.data.enterAddressPage = !1);
835   - this.get_sto();
836 816  
837 817  
838 818  
... ... @@ -1701,7 +1681,7 @@ Page({
1701 1681 }
1702 1682 e.his_cate_num=his_cate_num;
1703 1683  
1704   - //--普通门店排版--
  1684 + //--普通门店排版,服务卡项有指定门店才能使用,所以要筛选一下--
1705 1685 setTimeout(function(){
1706 1686 var sto_list=th.data.data.storageId;
1707 1687 if(sto_list){
... ... @@ -2008,7 +1988,7 @@ Page({
2008 1988 });
2009 1989 //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
2010 1990 if (!th.data.def_pick_store) {
2011   - th.setData({def_pick_store:e.data.data.pageData[0]})
  1991 + th.setData({def_pick_store:e.data.data.pageData[0]})
2012 1992 }
2013 1993  
2014 1994 }
... ...
packageA/pages/goodsInfo/goodsInfo.wxml
... ... @@ -4,7 +4,7 @@
4 4 <wxs module="tool" src="filter.wxs"></wxs>
5 5  
6 6 <!-- 商品内容区域,普通商品,秒杀,拼团 -->
7   -<block>
  7 +<block wx:if="{{isshow}}">
8 8 <view class="container">
9 9 <view class="type-navbar">
10 10 <view class="type-box" wx:for="{{categories}}" wx:key="categories">
... ... @@ -830,7 +830,12 @@
830 830 <view class="address-frame xc-ash">
831 831 <view class="flex-vertical-between butttem5">
832 832 <view class="flex xc-ash">
833   - <view class="fs30 xc-black3 address_name">{{item.pickup_name}}</view>
  833 + <view class="fs30 xc-black3 address_name">{{item.pickup_name}}
  834 + <block wx:if="{{tool.is_no_dis(sele_g.storageId,item.keyid)}}">
  835 + <text class="no_store">(配送不匹配)</text>
  836 + </block>
  837 +
  838 + </view>
834 839 </view>
835 840 <view>
836 841 <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">
... ... @@ -856,7 +861,11 @@
856 861 <view class="address-frame xc-ash">
857 862 <view class="flex-vertical-between ">
858 863 <view class="flex xc-ash">
859   - <view class="fs30 xc-black3 address_name">{{item.pickup_name}}</view>
  864 + <view class="fs30 xc-black3 address_name">{{item.pickup_name}}
  865 + <block wx:if="{{tool.is_no_dis(sele_g.storageId,item.keyid)}}">
  866 + <text class="no_store">(配送不匹配)</text>
  867 + </block>
  868 + </view>
860 869 </view>
861 870 <view>
862 871 <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">距离:{{item.distance>1000?filters.toFix(item.distance/1000,2)+"km":filters.toFix(item.distance,0)+"m"}}
... ... @@ -884,7 +893,11 @@
884 893 <view class="address-frame xc-ash">
885 894 <view class="flex-vertical-between ">
886 895 <view class="flex xc-ash">
887   - <view class="fs28 xc-black3 address_name">{{item.pickup_name}}</view>
  896 + <view class="fs28 xc-black3 address_name">{{item.pickup_name}}
  897 + <block wx:if="{{tool.is_no_dis(sele_g.storageId,item.keyid)}}">
  898 + <text class="no_store">(配送不匹配)</text>
  899 + </block>
  900 + </view>
888 901 </view>
889 902 <view>
890 903 <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">
... ...
packageA/pages/serviceCard_pd/cart/cart.js
... ... @@ -3,6 +3,7 @@ var t = getApp(), app = t, a = t.request, e = require(&quot;../../../../utils/common.
3 3 var oo = t.globalData.setting, os = oo;
4 4 var regeneratorRuntime = require('../../../../utils/runtime.js');
5 5 var util_pay = require("../../../../utils/pay.js");
  6 +var t_pay = require("../../../../utils/pay2.js");
6 7  
7 8 Page({
8 9 data: {
... ... @@ -62,35 +63,16 @@ Page({
62 63 rank_switch: 0, //是不是开同等级卡
63 64 show_card: null, //显示的等级卡
64 65 card_name: '', //显示的卡的名称
65   - card_cut_price: null,//减价多少钱
66   - bconfig: null,
67   - showFold:true,
68   - },
69   -
70   -
71   -
72   - onReady() {
73   -
74   - setTimeout(() => {
75   - wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => {
76   - if (res.length != 0) {
77   - this.setData({
78   - showFold: res[0].height < res[1].height,
79   - });
80   - };
81 66  
82   - }).exec();
83   - }, 1000);
  67 + card_cut_price: null,//减价多少钱
84 68  
85   - },
86   -
87   - clickCollapse() {
88   - this.setData({
89   - flag: !this.data.flag,
90   - })
  69 + //dis_config:null, //因为拼团有佣金抵扣
  70 + //bn_use_commission: 0, //是不是使用佣金
91 71 },
92 72 onLoad: function (t) {
93 73 console.log("onLoad_pt_cart");
  74 +
  75 +
94 76 var th = this; this.setData({ is_b_now: t.is_bnow == undefined ? 0 : t.is_bnow, });
95 77 var appD = getApp().get_b_now();
96 78 getApp().getConfig2(function (e) {
... ... @@ -110,6 +92,8 @@ Page({
110 92 th.data.param = t;
111 93 //先获取物流,再获取用户信息,再展示页面
112 94 //th.get_wuliu(th.get_info(th.show_page));
  95 + //getApp().is_distribut(this);
  96 +
113 97 },
114 98 onUnload: function () { this.setData({ isclose: 1 }) },
115 99  
... ... @@ -214,6 +198,28 @@ Page({
214 198 if (pt_data.kttype == 3) {
215 199 t.data.data.shop_price = tt.data.data.yf_price; //用定金来购买
216 200 }
  201 +
  202 + //-- 计算获得佣金的金额 --
  203 + if (getApp().globalData.userInfo.is_distribut
  204 + && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
  205 + var fir_num = 0;
  206 + var sec_num = 0;
  207 + var thi_num = 0;
  208 + if (th.data.dis_config.pattern == 1) {
  209 + fir_num = (teamlist.fir_rate || 0) * order_goods.goods_num;
  210 + sec_num = (teamlist.sec_rate || 0) * order_goods.goods_num;
  211 + thi_num = (teamlist.thi_rate || 0) * order_goods.goods_num;
  212 + } else {
  213 + fir_num = parseFloat((teamlist.commission || 0) * order_goods.goods_num * (th.data.dis_config.firstRate || 0) / 100).toFixed(2);
  214 + sec_num = parseFloat((teamlist.commission || 0) * order_goods.goods_num * (th.data.dis_config.secondRate || 0) / 100).toFixed(2);
  215 + thi_num = parseFloat((teamlist.commission || 0) * order_goods.goods_num * (th.data.dis_config.thirdRate || 0) / 100).toFixed(2);
  216 + }
  217 + var c_num = getApp().get_commission(fir_num, sec_num, thi_num, th);
  218 + goods.use_commission = parseFloat(c_num.toFixed(2));
  219 +
  220 + }
  221 +
  222 +
217 223 }
218 224 } else {
219 225 t.data.data.prom_id = 0;
... ... @@ -238,6 +244,12 @@ Page({
238 244  
239 245 //----------子页返回父页触发----------
240 246 onShow: function () {
  247 +
  248 + s.fy_back('',0);
  249 +
  250 + t_pay.set_fir();
  251 + util_pay.set_fir();
  252 +
241 253 var th = this;
242 254 if (th.data.isclose == 0) {
243 255 wx.navigateTo({
... ... @@ -400,39 +412,42 @@ Page({
400 412 //要进行判断,如果是用微信支付,就要跳转到支付界面
401 413 if (order_amount > 0) {
402 414 th.setData({ isclose: 0 });
403   - getApp().request.post("/api/weshop/order/pay/createRechargeOrder", {
404   - data: {
405   - parentSn: data.data.order_sn,
406   - store_id: oo.stoid
407   - },
408   - success: function(su) {
409   -
410   - var n = su.data.data;
411   - let order_id = data.data.order_id;
412   - th.weixinPay(n,
413   - function() {
414   - // getApp().showWarning("购买成功");
415   - wx.showToast({
416   - title: '购买成功',
417   - icon: 'success',
418   - duration: 2000
419   - });
420   - setTimeout(function() {
421   - wx.redirectTo({
422   - url: "/packageA/pages/serviceCard_pd/team_success/team_success?order_sn=" + data.data.order_sn
423   - });
424   - }, 1000)
425   - },
426   - function() {
427   - getApp().showWarning("支付失败");
428   - setTimeout(function() {
429   - wx.reLaunch({
430   - url: "/pages/user/order_list/order_list?index=2&tabindex=1",
431   - })
432   - }, 1000)
433   - })
434   - }
  415 +
  416 + t_pay.set_pay_url("/api/weshop/order/pay/createRechargeOrder");
  417 + t_pay.pay({
  418 + parentSn: data.data.order_sn,
  419 + store_id: oo.stoid
  420 + }, function () {
  421 + wx.showToast({
  422 + title: '购买成功',
  423 + icon: 'success',
  424 + duration: 2000
  425 + });
  426 + setTimeout(function() {
  427 + wx.redirectTo({
  428 + url: "/packageA/pages/serviceCard_pd/team_success/team_success?ordersn=" + data.data.order_sn
  429 + });
  430 + }, 1000)
  431 +
  432 + }, function (e) {
  433 + wx.showToast({
  434 + title: e,
  435 + icon: 'none',
  436 + duration: 2000
  437 + });
  438 +
  439 + //-- 支付失败,要返回 --
  440 + setTimeout(function () {
  441 + var cps = getCurrentPages();
  442 + if (cps.length > 1) {
  443 + wx.navigateBack({ delta: 1 })
  444 + } else {
  445 + getApp().goto("/pages/index/index/index");
  446 + }
  447 + }, 1000)
  448 +
435 449 })
  450 +
436 451 }
437 452 } else {
438 453 th.data.is_summit_ing = 0; //是否提交中
... ...
packageA/pages/serviceCard_pd/cart/cart.wxml
1 1 <wxs module="filters" src="../../../../utils/filter.wxs"></wxs>
2 2 <form bindsubmit="submitForm">
3 3 <view class="container">
4   -
5   - <view class="tab-container" wx:if="{{kt_type!=3 || is_normal==1}}">
6   - <view class="tab-wrapper">
7   - <view hidden="{{bn_t_exp_t==2}}" bindtap='setexptype' data-t='1' class="tab {{bn_exp_type == 1? 'active':''}}"
8   - data-txt='cartlist[0].exp_type' data-wl_txt='cartlist[0].wind' data-index="{{index}}" >门店自提</view>
9   -
10   - <view hidden="{{bn_t_exp_t==1}}" bindtap='setexptype' data-t='0' class="tab {{bn_exp_type== 0 ? 'active':''}}"
11   - data-txt='cartlist[0].exp_type' data-wl_txt='cartlist[0].wind' data-index="{{index}}" >快递邮寄</view>
12   -
13   - </view>
14   - </view>
15   -
16   -
17   - <!--要进行判断地址是否显示---->
18   - <view bindtap="enterAddressPage" class="user-mes mgt20" hidden='{{bn_exp_type==1 || kt_type==3}}'>
19   - <!---默认地址显示------>
20   - <block wx:if="{{user_addr!=null}}">
21   - <view class="user-contact">收货人:{{user_addr.consignee}}{{'  '}}{{user_addr.mobile}}</view>
22   - <view class="location">
23   - <view class="address">{{user_addr.more_address}}{{' '}}{{user_addr.address}}</view>
24   - <view class="pos-icon">
25   - <image class="wh100 bdr14" src="{{imgUrl}}/miniapp/images/goodscategory/new_position.png"></image>
26   - </view>
27   - </view>
28   - <view class="update-logistics">
29   - <image class="arrow-rigth" src="{{imgUrl}}/miniapp/images/icon-arrowdown.png"></image>
30   - </view>
31   - </block>
32   - <!---先增地址------>
33   - <block wx:else>
34   - <view class="add_new">
35   - <image class="addr_jia" src="{{imgUrl}}/miniapp/images/jia.png"></image>添加地址
36   - </view>
37   - </block>
38   - <!-- <view class="border-img"><image class="wh100 bdr14" src="{{imgUrl}}/miniapp/images/tt.png"></image></view> -->
39   - </view>
40   -
41 4  
42 5 <!------立即购买-------->
43 6 <block>
44   - <!-- <view class="xc-border main-top"></view> -->
45 7 <view class="use-item bfff bdr_t-14 mgt20">
46 8 <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'> </image> <view>{{bn_pickname}}</view></view>
47 9 <view class="order-detail">
48   - <view class="goods-img">
  10 + <view class="goods-img" bindtap="go_to" data-url="/packageA/pages/serviceCard_pd/goodsInfo/goodsInfo?goods_id={{items.service_id}}&prom_type=6&prom_id={{bn_goods.prom_id}}">
49 11 <image class="wh100 bdr14" src="{{bn_goods.original_img}}"
50 12 binderror='cart_set_err' data-err="bn_goods.original_img"></image>
51 13 </view>
52   - <navigator class="order-cont" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{bn_goods.goods_id}}">
53   - <view class="goods-name ellipsis-2">{{bn_goods.goods_name}}</view>
54   - <!-- 商品属性 -->
55   - <view class="flex-vertical fs28 color-gray n_guige">
56   - <view class="goods-color"><text>{{filters.show_gui_ge(bn_goods.goods_spec,bn_goods.goods_color)}}</text>
57   - </view></view>
58   -
  14 + <navigator class="order-cont" url="/packageA/pages/serviceCard_pd/goodsInfo/goodsInfo?goods_id={{items.service_id}}&prom_type=6&prom_id={{bn_goods.prom_id}}">
  15 + <view class="goods-name ellipsis-2">{{bn_goods.service_name}}</view>
59 16 <!-----商品名称规格------>
60   - <view class="order-num flex-space-between">
61   - <view class="co-red">¥<text class="fs36">{{filters.toFix(bn_goods.shop_price,2)}}</text></view>
62   - <view class="goods-num">x{{bn_goods.buynum}}</view>
63   - </view>
  17 + <view class="order-num flex-space-between">
  18 + <view class="co-red">¥<text class="fs36">{{filters.toFix(bn_goods.shop_price,2)}}</text></view>
  19 + <view class="goods-num">x{{bn_goods.buynum}}</view>
  20 + </view>
64 21 </navigator>
65   - <!-- <view class="order-num">
66   - <view class="co-red">¥{{bn_goods.shop_price}}</view>
67   - <view class="goods-num">x{{bn_goods.buynum}}</view>
68   - </view> -->
69   - </view>
70   -
71   - <!-- 如果是等级卡的商品,会员没有注册,要提醒注册 -->
72   - <view class="plus_buy fs28" wx:if="{{card_cut_price>0}}">
73   - <view class="flex">
74   - <view class="card_bg ellipsis-1" style="margin-right: 10rpx;">
75   - <image src="{{imgUrl}}/miniapp/images/plus/dj_icon.png"></ image>
76   - <text class="card_name">{{show_card.CardName}}</text>
77   - </view>
78   - <view>立减 <text style="color:#f23030;">{{filters.toFix(card_cut_price,2) }}</text> 元</view>
79   - </view>
80   - <view>
81   - <text style="color: #999;margin-left: 4rpx;">vip超级会员仅需{{show_card.CardFee}}元</text>
82   - </view>
83   - <!-- 三角形 -->
84   - <view class="car_tri_up"></view>
85   - <!-- 立即开通跳转 -->
86   - <view bindtap="buycard" class="card_op">立即开通</view>
87   - </view>
88   -
89   -
90   - <view class="set-mes bdr_b-14">
91   - <view wx:if="{{order.store_prom}}"><icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}}
92   - </view>
93   -
94   - <!--阶梯团是不显示的-->
95   - <block wx:if="{{bn_exp_type==0 && !is_default_logistics}}">
96   - <view class="use-item flex-space-between" wx:if="{{kt_type!=3 || is_normal==1}}">
97   - <view>选择物流</view>
98   - <view class="flex-vertical" bindtap="show_wu_arr" data-txt='index' style="margin-right: 8rpx;">
99   - <view class="logistics-name">{{wu_arr[index].name}}</view><view class="xc-right"></view>
100   - </view>
101   - </view>
102   - </block>
103   -
104   - <!--阶梯团是不显示的
105   - <block wx:if="{{kt_type!=3 || is_normal==1 }}">
106   - <view class="use-item" hidden='{{bn_exp_type==1}}'>
107   - <view>使用物流:</view>
108   - <picker bindchange="bindPickerChange" value="{{index}}" range="{{wu_arr}}" range-key="name">
109   - <view >{{wu_arr[index].name}}</view>
110   - </picker>
111   - </view>
112   - </block>-->
113 22  
114 23 </view>
115 24 <!-- 保障服务 -->
... ... @@ -129,18 +38,17 @@
129 38 <view class="leave-word">
130 39 <input placeholder-class="fs28" placeholder='给商家留言,最多100字'bindinput="keyUpChangeNum" disabled="{{disabled}}" class="word-box" maxlength="100" name="user_note"></input>
131 40  
  41 +
  42 +
  43 + <view class="set-mes bdr_b-14">
  44 + <view wx:if="{{order.store_prom}}">
  45 + <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}}
132 46 </view>
133 47 </view>
  48 +
134 49 </block>
135 50  
136 51 <view class="information bdr14">
137   - <!-----使用余额------>
138   - <view class="set-mes" wx:if="{{userinfo.user_money>0 && yuer>0}}">
139   - <view class="use-item" bindtap='set_bn_useyuer' style="padding-left:0;padding-right:0;">
140   - <icon color="{{bn_use_money?'red':'gray'}}" size="16" type="success"></icon>
141   - <view class="yu_er">使用余额 :¥{{yuer}} </view>
142   - </view>
143   - </view>
144 52 <view class="item" wx:if="{{kt_type<3 || is_normal==1}}">
145 53 <view>商品金额</view>
146 54 <view class="co-red">¥ {{formData.all_price}}元</view>
... ... @@ -151,70 +59,15 @@
151 59 <view class="co-red">¥ {{formData.all_price}}元</view>
152 60 </view>
153 61  
154   - <view class="item" wx:if="{{formData.shipping_price>0}}">
155   - <view>配送费用</view>
156   - <view class="co-red">¥ {{formData.shipping_price}}元</view>
157   - </view>
158   - <view class="item" wx:if="{{formData.user_money>0}}">
159   - <view>使用余额</view>
160   - <view class="co-red">- ¥ {{formData.user_money}}元</view>
161   - </view>
162   -
163 62 </view>
164 63 </view>
165 64  
166 65 <view class="btn-wrap">
167 66 <view class="pay-amount">
168 67 <view class="payable">应付金额:<text class="co-red">¥{{formData.order_amount}}</text></view>
169   - <!-- <view class="co-red big"></view> -->
170 68 </view>
171 69 <button class="tips-btn" formType="submit" id="submitOrder">提交订单</button>
172 70 </view>
173 71 </form>
174 72  
175   -<!----弹起选择物流名的列表---->
176   -<view wx:if='{{open_express==1}}' >
177   - <view class="cover-layer flex-center " bindtap='close_express'>
178   - </view>
179   -
180   - <view class="cx-popup radius {{open_express==1?'up' : 'down'}}" >
181   - <view class="tops flex">
182   - <view class="top-content fs32">
183   - <view>
184   - 选择物流名字
185   - </view>
186   - </view>
187   - <view class="close-frame" bindtap='close_express' >
188   - <view class="xc-close-express">×</view>
189   - </view>
190   - </view>
191   - <view class="express_list">
192   - <view wx:for="{{wu_arr}}" wx:for-item="express_list" wx:for-index="idx">
193   - <view class="express_list_frame" bindtap="click_express_name"
194   - data-shippingcode="{{express_list.shipping_code}}"
195   - data-name="{{express_list.name}}" data-idxe="{{idx}}">
196   -
197   - <block wx:if="{{is_express==idx}}">
198   - <view class="circle white xc-hook fs20 red-b"><text>Γ</text></view>
199   - </block>
200   - <block wx:else>
201   - <view class="circle xc-hooks"></view>
202   - </block>
203   - <view class="fs30">{{express_list.name}}</view>
204   -
205   - </view>
206   - </view>
207   - </view>
208   - <view class="flex click-buttem" >
209   - <view class="xc-determine flex-center" bindtap="determine_expres">
210   - <view class="flex-vertical t-c">确定</view>
211   - </view>
212   - <view class="xc-confirms flex-center" bindtap="select_default_logistics">
213   - <view class="flex-vertical t-c">设为默认</view>
214   - </view>
215   - </view>
216   -
217   - </view >
218   -</view>
219   -
220 73 <warn id="warn"></warn>
... ...
packageA/pages/serviceCard_pd/cart_wk/cart_wk.js 0 → 100644
  1 +// pages/cart/cart_wk/cart_wk.js
  2 +var t = getApp(),
  3 + oo = t.globalData.setting,
  4 + os=oo;
  5 +var ut=require("../../../../utils/util.js");
  6 +var util_pay=require("../../../../utils/pay.js");
  7 +var regeneratorRuntime = require('../../../../utils/runtime.js');
  8 +
  9 +Page({
  10 + /**
  11 + * 页面的初始数据
  12 + */
  13 + data: {
  14 + imgUrl: t.globalData.setting.imghost,
  15 + order_id: 0, //订单ID
  16 + order: null, //订单所有字段
  17 + user_addr: null, //会员地址
  18 + pickup: null, //门店
  19 + goods: null, //商品
  20 + /*------------------------*/
  21 + userinfo: null, //获取会员
  22 + /*----------物流选择--------*/
  23 + wu_arr: null,
  24 + index: 0,
  25 + is_express: 0,
  26 + //申请提现的金额
  27 + txmon: 0,
  28 + yuer: 0,
  29 + //判断页面是返回回来的还是 首次进入的
  30 + isclose: 1,
  31 +
  32 + //配送方式 0=用户自选 1=自提 2=物流
  33 + distr_type: 0,
  34 + //实际配送方式 0物流 1自提
  35 + exp_type: 1,
  36 + //------物流费用------
  37 + exp_price: 0,
  38 + enterAddressPage: 0, //进入地址页面
  39 + is_no_by: {},
  40 + allpice: 0,
  41 + show_pay_type: 0,
  42 +
  43 + teamgroup: null,
  44 + submit:1, //默认按钮是灰色
  45 + show_submit:0, //不线上
  46 +
  47 + dis_config: null,
  48 + bn_use_commission: 0, //是不是使用佣金
  49 +
  50 + bn_is_order_yh:1, //是不是订单优惠
  51 + bn_is_post_temp:1, //是不是进行计算包邮模板
  52 +
  53 + paying:0, //支付中
  54 + same_ok:1 //同城配送的控制
  55 +
  56 + },
  57 +
  58 + /**
  59 + * 生命周期函数--监听页面加载
  60 + */
  61 + onLoad: function (options) {
  62 +
  63 + //清空is_pick_up
  64 + getApp().request.put("/api/weshop/useraddress/updatePickUp", {
  65 + data: { user_id: getApp().globalData.user_id, is_pickup: 0 },
  66 + success: function (s) {
  67 + }
  68 + });
  69 +
  70 + var th = this;
  71 + this.data.order_id = options.order_id;
  72 + //--初始化--
  73 + getApp().getConfig2(function (e) {
  74 + var json_d = JSON.parse(e.switch_list);
  75 +
  76 + //测试强行写死,后面一定要删除
  77 + //json_d.pickupway=2;
  78 +
  79 +
  80 + th.data.json_d = json_d;
  81 + var is_default_logistics = json_d.is_default_logistics;
  82 + var is_same_city = json_d.is_same_city;
  83 + th.setData({ is_default_logistics: is_default_logistics,is_same_city:is_same_city });
  84 +
  85 + th.get_wuliu(th.get_info(th.show_page));
  86 + }, 1)
  87 +
  88 + //判断是不是佣金抵扣
  89 + getApp().is_distribut(this);
  90 +
  91 + },
  92 + /**
  93 + * 生命周期函数--监听页面显示
  94 + */
  95 + onShow: function () {
  96 +
  97 + ut.fy_back('',0);
  98 + this.data.paying=0;
  99 + util_pay.set_fir();
  100 + getApp().check_can_share();
  101 + var th = this;
  102 + if (th.data.isclose == 0) {
  103 + wx.navigateTo({
  104 + url: "/pages/index/index/index"
  105 + })
  106 + }
  107 + th.getuser_addr(function (addr) {
  108 + if (addr == null || addr == undefined || addr.length == 0) {
  109 + th.setData({ user_addr: null, enterAddressPage: 1,same_ok:1 });
  110 + } else {
  111 + th.setData({
  112 + user_addr: addr, enterAddressPage: 0,same_ok:1
  113 + });
  114 + }
  115 + })
  116 +
  117 + //--更新默认地址--,看一下是不是跳到地址页面
  118 + // if (!getApp().globalData.is_cart_old) {
  119 + // this.update_code();
  120 + // } else {
  121 + // getApp().globalData.is_cart_old = 0;
  122 + // }
  123 +
  124 + },
  125 + /**
  126 + * 用户点击右上角分享
  127 + */
  128 + onShareAppMessage: function () { getApp().globalData.no_clear=1 },
  129 + //---------------获取物流---------------
  130 + get_wuliu(func) {
  131 + var th = this,
  132 + to = getApp();
  133 + to.getwuliu(function (e) {
  134 + //如果第一个不是开启默认,说明要让用户自己选
  135 + if (!e[0].is_default) {
  136 + th.setData({ is_default_logistics: 0 });
  137 + }
  138 +
  139 + th.setData({ wu_arr: e })
  140 + typeof func == "function" && func();
  141 + })
  142 + },
  143 + //------获取会员信息-----先获取用户信息,在进行下一步---
  144 + get_info: function (func) {
  145 + var user_id = t.globalData.user_id,
  146 + to = getApp();
  147 + to.auth.get_u(func);
  148 + },
  149 +
  150 + //------获取会员收货地址-----
  151 + getuser_addr: function (func) {
  152 + var to = getApp(),
  153 + a = to.request;
  154 +
  155 + a.get("/api/weshop/useraddress/page", {
  156 + data: {
  157 + user_id: to.globalData.user_id,
  158 + store_id: oo.stoid,
  159 + pageSize: 600
  160 + },
  161 + success: function (su) {
  162 + var user_addr = su.data.data.pageData;
  163 + var item = null;
  164 + var def_item = null;
  165 + for (var i = 0; i < user_addr.length; i++) {
  166 + if (user_addr[i]['is_default'] == 1) { def_item = user_addr[i]; }
  167 + if (user_addr[i]['is_pickup'] == 1) { item = user_addr[i]; }
  168 + }
  169 +
  170 + if (item == null) item = def_item;
  171 + if (item == null) item = user_addr[0];
  172 + if (item == undefined) item = null;
  173 + func(item);
  174 + }
  175 + });
  176 +
  177 + },
  178 +
  179 + //----------------展示页面,是再获取用户信息之后--------------
  180 + show_page: function () {
  181 + var th = this,
  182 + to = getApp();
  183 + th.setData({
  184 + userinfo: to.globalData.userInfo,
  185 + });
  186 + //选获取地址
  187 + th.getuser_addr(function (addr) {
  188 +
  189 + if (addr == null || addr == undefined || addr.length == 0) {
  190 + th.setData({
  191 + enterAddressPage: 1,
  192 + });
  193 +
  194 + } else {
  195 + th.setData({
  196 + user_addr: addr, enterAddressPage: 0,
  197 + });
  198 + }
  199 + //获取立即购买的商品信息
  200 + th.get_buy_goods(th.data.order_id);
  201 + });
  202 + //获取提现金额
  203 + getApp().request.get("/api/weshop/withdrawals/summoney", {
  204 + data: {
  205 + user_id: to.globalData.user_id,
  206 + store_id: oo.stoid,
  207 + status: 0
  208 + },
  209 + success: function (su) {
  210 + console.log("withdrawals");
  211 + if (su.data.code == 0) {
  212 + var yuer = parseFloat(th.data.userinfo.user_money -
  213 + th.data.userinfo.frozen_money - su.data.data.summoney).toFixed(2);
  214 + th.setData({
  215 + txmon: su.data.data.summoney,
  216 + yuer: yuer
  217 + });
  218 + }
  219 + }
  220 + });
  221 + },
  222 +
  223 + //-----获取商品------
  224 + async get_buy_goods(ord) {
  225 + var order = null,
  226 + order_goods = null,
  227 + goods = null,
  228 + pickup = null,
  229 + distr_type = 0,
  230 + exp_type = 0,
  231 + teamgroup = null,
  232 + teamlist=null,
  233 + th = this;
  234 +
  235 + //---获取订单---
  236 + await getApp().request.promiseGet("/api/weshop/recharge/list", {
  237 + data:{store_id:oo.stoid,order_id: ord }
  238 + }).then(res => {
  239 + if(res.data.code==0 && res.data.data.length){
  240 + order = res.data.data[0];
  241 + }else{
  242 + wx.showToast({
  243 + title: "订单未找到",
  244 + icon: 'none',
  245 + duration: 2000
  246 + })
  247 + }
  248 + });
  249 +
  250 + if(!order) return false;
  251 +
  252 + //---获取订单从表---
  253 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
  254 + data: {
  255 + store_id: oo.stoid,
  256 + order_id: ord
  257 + }
  258 + }).then(res => {
  259 + if(ut.ajax_ok(res)){
  260 + order_goods = res.data.data.pageData[0];
  261 + }
  262 + });
  263 +
  264 + order.pt_listno=order_goods.pt_listno;
  265 + order.pt_status=order_goods.pt_status;
  266 + order.pt_prom_id=order_goods.prom_id;
  267 + order.pt_tail_money=order_goods.pt_tail_money;
  268 + order.tail_pay_type=order_goods.tail_pay_type;
  269 + order.pickup_id=order_goods.pickup_id;
  270 + order.order_amount=order.account;
  271 + order_goods.goods_num=order_goods.qty;
  272 +
  273 + //---获取商品---
  274 + await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + oo.stoid + "/" + order_goods.card_id, {}).then(res => {
  275 + goods = res.data.data;
  276 + order.show_img = oo.imghost + goods.img_url;
  277 + });
  278 + //---获取门店---
  279 + await getApp().request.promiseGet("/api/weshop/pickup/get/" + oo.stoid + "/" + order.pickup_id, {}).then(res => {
  280 + pickup = res.data.data;
  281 + });
  282 +
  283 + //---获取尾款价格---
  284 + await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
  285 + data: { store_id: oo.stoid, team_id: order.pt_prom_id, listno: order.pt_listno }
  286 + }).then(res => {
  287 + teamgroup = res.data.data.pageData[0];
  288 + });
  289 +
  290 + await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + order.pt_prom_id, {
  291 + data: { }
  292 + }).then(res => {
  293 + if(res.data.code==0) teamlist=res.data.data;
  294 + });
  295 +
  296 +
  297 + var act_set=null;
  298 + var url = '/api/weshop/activitylist/getActInfo1/'+os.stoid+'/6/'+order.pt_prom_id;
  299 + await getApp().promiseGet(url, {}).then(res => {
  300 + if(res.data.code==0){
  301 + act_set=res.data.data;
  302 + }
  303 + })
  304 +
  305 +
  306 + // if(act_set.is_order_yh){
  307 + // th.data.bn_is_order_yh=1;
  308 + // }else{
  309 + // th.data.bn_is_order_yh=0;
  310 + // }
  311 + th.data.bn_is_order_yh=0;
  312 + th.data.bn_is_post_temp=0;
  313 +
  314 + // if(act_set.is_post_temp){
  315 + // th.data.bn_is_post_temp=1;
  316 + // }else{
  317 + // th.data.bn_is_post_temp=0;
  318 + // }
  319 +
  320 +
  321 + var jsarr = JSON.parse(teamgroup.jt_json);
  322 + var count = teamgroup.jt_ct_num;
  323 + if(teamgroup.is_xuni_ct) count=teamlist.ct_num;
  324 +
  325 + //要计算尾款的价钱
  326 + var price = 0;
  327 + jsarr.forEach(function (value, index) {
  328 + if (count >= value['rynum']) price = value['price'];
  329 + })
  330 + var tail_money = (price * order_goods.goods_num - order['order_amount']).toFixed(2);
  331 +
  332 + tail_money = parseFloat(tail_money);
  333 + order.tail_money = tail_money;
  334 +
  335 + if (!goods) return false;
  336 +
  337 + if(goods.is_minishop==1 && getApp().is_sp_hao()){
  338 +
  339 + if(goods.distr_type==1 || pickup.distr_type==1) {
  340 + wx.showToast({
  341 + title: "视频号仅支持物流",
  342 + icon: 'none',
  343 + duration: 2000
  344 + })
  345 +
  346 + setTimeout(function(){
  347 + wx.navigateBack({delta: 1})
  348 + },1000)
  349 +
  350 + return false
  351 + }
  352 +
  353 + goods.distr_type=2;
  354 + th.setData({show_same_city:0})
  355 +
  356 + }
  357 +
  358 + //--判断物流--
  359 + if (goods.distr_type)
  360 + distr_type = goods.distr_type;
  361 + else
  362 + distr_type = pickup.distr_type;
  363 +
  364 +
  365 + //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 --
  366 + if(goods.is_same_city && th.data.is_same_city && goods.whsle_id<=0){
  367 + await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+order.pickup_id, {}).then(res=>{
  368 + if(res.data.code==0){
  369 + var pk=res.data.data;
  370 + if(pk && pk.is_same_city){
  371 + th.setData({show_same_city:1})
  372 + }
  373 + }
  374 + })
  375 + }
  376 +
  377 + exp_type = 1;
  378 + order.order_goods = order_goods;
  379 +
  380 + //-- 计算获得佣金的金额 --
  381 + if (getApp().globalData.userInfo.is_distribut
  382 + && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
  383 + var fir_num = 0;
  384 + var sec_num = 0;
  385 + var thi_num = 0;
  386 + if (th.data.dis_config.pattern == 1) {
  387 + fir_num = (teamlist.fir_rate || 0) * order_goods.goods_num;
  388 + sec_num = (teamlist.sec_rate || 0) * order_goods.goods_num;
  389 + thi_num = (teamlist.thi_rate || 0) * order_goods.goods_num;
  390 + } else {
  391 + fir_num = parseFloat((teamlist.commission || 0) * order_goods.goods_num * (th.data.dis_config.firstRate || 0) / 100).toFixed(2);
  392 + sec_num = parseFloat((teamlist.commission || 0) * order_goods.goods_num * (th.data.dis_config.secondRate || 0) / 100).toFixed(2);
  393 + thi_num = parseFloat((teamlist.commission || 0) * order_goods.goods_num * (th.data.dis_config.thirdRate || 0) / 100).toFixed(2);
  394 + }
  395 + var c_num = getApp().get_commission(fir_num, sec_num, thi_num, th);
  396 + goods.use_commission = parseFloat(c_num.toFixed(2));
  397 +
  398 + }
  399 +
  400 + this.setData({
  401 + order: order,
  402 + distr_type: distr_type,
  403 + pickup: pickup,
  404 + exp_type: exp_type,
  405 + goods: goods,
  406 + teamgroup: teamgroup,
  407 + teamlist: teamlist,
  408 + });
  409 +
  410 + //--计算价格--
  411 + th.calculatePrice2();
  412 + },
  413 +
  414 +
  415 + calculatePrice2: async function () {
  416 + wx.showLoading();
  417 + var th = this;
  418 + th.setData({submit: 1})
  419 +
  420 + var allpice = th.data.order.order_amount + th.data.order.user_money + th.data.order.tail_money;
  421 + var o_condition = allpice;
  422 + var ord_prom=null;
  423 + var order_prom_amount=0;
  424 +
  425 + if (th.data.bn_is_order_yh) {
  426 + await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
  427 + data: {store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id}
  428 + }).then(res => {
  429 + if (res.data.code == 0) {
  430 + ord_prom = res.data.data;
  431 + }
  432 + })
  433 + }
  434 +
  435 + th.data.ord_prom=ord_prom;
  436 +
  437 + //--计算物流--
  438 + if (th.data.exp_type == 0) {
  439 + th.calculate_wuliu();
  440 + return false;
  441 + }else if(th.data.exp_type == 2){
  442 + th.calculate_same_city();
  443 + return false;
  444 + } else {
  445 +
  446 + var order_prom_id=0;
  447 + if (ord_prom) {
  448 + order_prom_id = ord_prom['id'];
  449 + switch (ord_prom['type']) {
  450 + case 0:
  451 + allpice = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折
  452 + order_prom_amount = (o_condition - order_m).toFixed(2);
  453 + break;
  454 + case 1:
  455 + //-- 如果有优惠促销倍减的时候 --
  456 + var bs = 1;
  457 + if (ord_prom.is_bz) {
  458 + bs = Math.floor(o_condition / ord_prom.money);
  459 + }
  460 + allpice = o_condition - bs * ord_prom['expression'];//满额优惠金额
  461 + order_prom_amount = ord_prom['expression'];
  462 + break;
  463 + }
  464 + }
  465 +
  466 +
  467 + //--订单优惠的显示--
  468 + var order_prom_txt1 = "formData.order_prom_id";
  469 + var order_prom_txt2 = "formData.order_prom_amount";
  470 + if (order_prom_id > 0) {
  471 + th.setData({[order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount})
  472 + } else {
  473 + th.setData({[order_prom_txt1]: 0, [order_prom_txt2]: 0})
  474 + }
  475 +
  476 + if (th.data.bn_use_commission) {
  477 + allpice -= th.data.goods.use_commission;
  478 + }
  479 +
  480 +
  481 + allpice = allpice.toFixed(2);
  482 +
  483 + th.setData({exp_price: 0, allpice: allpice, submit: 0, show_submit: 1})
  484 + wx.hideLoading();
  485 + }
  486 + },
  487 +
  488 + //--图片失败,默认图片--
  489 + bind_bnerr: function (e) {
  490 + var _errImg = e.target.dataset.errorimg;
  491 + var _errObj = {};
  492 + _errObj[_errImg] = this.data.imgUrl + "/miniapp/images/del/logo.jpg";
  493 + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
  494 + },
  495 +
  496 + //-------------------获取物流---------------
  497 + get_wuliu(func) {
  498 + var th = this, to = getApp();
  499 + to.getwuliu(function (e) {
  500 + th.setData({
  501 + wu_arr: e
  502 + })
  503 + typeof func == "function" && func();
  504 + })
  505 + },
  506 +
  507 + //--------点击选择----------
  508 + set_wuliu: function (e) {
  509 + var type = e.currentTarget.dataset.type, th = this;
  510 + this.setData({
  511 + exp_type: type,same_ok:1
  512 + });
  513 + //--计算物流的值--
  514 + if (type == 0) {
  515 + th.calculate_wuliu();
  516 + } else if(type==1){
  517 + var allpice = parseFloat(th.data.order.order_amount)
  518 + + parseFloat(th.data.order.user_money)
  519 + + parseFloat(th.data.order.tail_money);
  520 + allpice = allpice.toFixed(2);
  521 + this.setData({
  522 + allpice: allpice, exp_price: 0,show_submit:1,submit:0
  523 + });
  524 + }else{
  525 + th.calculate_same_city();
  526 + }
  527 + },
  528 +
  529 + //关闭支付
  530 + close_show_pay: function () {
  531 + this.setData({ show_pay_type: 0 });
  532 + },
  533 +
  534 + //--弹起支付框--
  535 + to_pay() {
  536 + //如果有再计算价格的过程中,不能提交订单
  537 + if(this.data.submit){ return false}
  538 + if(!this.data.same_ok){ return false}
  539 + this.set_pay_type(1);
  540 + },
  541 +
  542 + //选择支付方式,服务卡项固定微信支付
  543 + set_pay_type: function (e) {
  544 + if(this.data.paying) return false;
  545 + this.data.paying=1;
  546 + this.to_pay_type(0);
  547 + },
  548 +
  549 + //--立即支付--
  550 + to_pay_type: function (ind) {
  551 + var th = this;
  552 +
  553 +
  554 + th.data.exp_type=parseInt(th.data.exp_type+'');
  555 + //---支付参数--
  556 + var dd = {
  557 + order_sn: th.data.order.order_sn,
  558 + order_id: th.data.order.order_id,
  559 + store_id: oo.stoid,
  560 + exp_type: th.data.exp_type,
  561 + user_id: t.globalData.user_id,
  562 + listno: th.data.order.pt_listno,
  563 + prom_id: th.data.order.pt_prom_id,
  564 + tail_pay_type: ind,//0微信支付 1余额支付
  565 + };
  566 +
  567 + if(getApp().globalData.scene){
  568 + dd.scene=getApp().globalData.scene;
  569 + }
  570 +
  571 + if(th.data.bn_use_commission){
  572 + dd.use_commission=th.data.goods.use_commission;
  573 + }
  574 +
  575 + if(th.data.bn_use_commission){
  576 + dd.use_commission=th.data.goods.use_commission;
  577 + }
  578 +
  579 + //--判断有没有优惠活动--
  580 + if (th.data.formData.order_prom_amount > 0) {
  581 + var order_prom_list = {};
  582 + order_prom_list.order_prom_id = th.data.formData.order_prom_id;
  583 + order_prom_list.order_prom_amount = th.data.formData.order_prom_amount;
  584 + dd.order_prom_list = order_prom_list;
  585 + }
  586 +
  587 + var arr = [];
  588 + arr.push(dd);
  589 + console.log(JSON.stringify(arr));
  590 +
  591 + wx.request({
  592 + url: oo.url + '/api/weshop/order/pay/payTuanWkCard',
  593 + data: JSON.stringify(arr),
  594 + method: 'POST',
  595 + header: {
  596 + 'content-type': 'application/json'
  597 + },// 设置请求的 header
  598 + success: function (t) {
  599 +
  600 + //---用微信支付---
  601 + if (dd.tail_pay_type == 0) {
  602 +
  603 + if (t.data.code != 0) {
  604 + getApp().my_warnning(t.data.msg, 1, th);
  605 + th.data.paying=0;
  606 + return false;
  607 + }
  608 +
  609 + util_pay.pay_data(t,function (){
  610 + var allmoney = th.data.allpice;
  611 + th.jumpPaymentPage(th.data.order.order_id, allmoney);
  612 + },function (){
  613 + th.data.paying=0;
  614 + //getApp().my_warnning("支付失败", 0, th);
  615 + })
  616 +
  617 + } else {
  618 + if (t.data.code == 0) {
  619 + //---用余额支付---
  620 + // getApp().my_warnning("支付成功", 1, th);
  621 + wx.showToast({
  622 + title: '支付成功',
  623 + icon: 'success',
  624 + duration: 2000
  625 + });
  626 + setTimeout(function () {
  627 + th.setData({ isclose: 0 });
  628 + th.data.paying=0;
  629 + wx.redirectTo({
  630 + url: "/pages/user/order_list/order_list?index=1"
  631 + })
  632 + }, 1000)
  633 + } else {
  634 +
  635 + th.data.paying=0;
  636 + getApp().my_warnning(t.data.msg, 1, th);
  637 + }
  638 + }
  639 + }
  640 + });
  641 + },
  642 +
  643 + //检查区域是不是包邮
  644 + check_area: function (arr) {
  645 + var user_addr = this.data.user_addr;
  646 + if (!user_addr) return 0;
  647 + for (var i in arr) {
  648 + var item = arr[i];
  649 + if (user_addr.twon == item || user_addr.district == item
  650 + || user_addr.city == item || user_addr.province == item) {
  651 + return 0;
  652 + }
  653 + }
  654 + return 1;
  655 + },
  656 +
  657 + //检查立即购买的商品是不是不包邮
  658 + check_good: function (arr, goods_id) {
  659 + if (!goods_id) goods_id = this.data.goods.goods_id;
  660 + for (var i in arr) {
  661 + var item = arr[i];
  662 + if (goods_id == item) return 0;
  663 + }
  664 + return 1;
  665 + },
  666 + check_by_area: function (region_list) {
  667 + var arr = region_list.split(",");
  668 + var check = this.check_area(arr);
  669 + return !check;
  670 + },
  671 + check_by_goods: function (goods_list, goods_id) {
  672 + var arr = goods_list.split(",");
  673 + var check = this.check_good(arr, goods_id);
  674 + return !check;
  675 + },
  676 +
  677 + //------------循环获取config-----------
  678 + get_wuliu_config: function (region_id, code, rs) {
  679 + var item = null, rslist = rs.pageData;
  680 + for (var i = 0; i < rslist.length; i++) {
  681 + if (rslist[i].code == code && rslist[i].region_id == region_id) { item = rslist[i]; }
  682 + }
  683 + return item;
  684 + },
  685 + //-------循环获取config,code default-------
  686 + get_wuliu_default: function (code, rs) {
  687 + var item = null, rslist = rs.pageData;
  688 + for (var i = 0; i < rslist.length; i++) {
  689 + if (rslist[i].shipping_code == code && rslist[i].is_default == 1) { item = rslist[i]; }
  690 + }
  691 + return item;
  692 + },
  693 +
  694 +
  695 + //------支付成功页面--------
  696 + jumpPaymentPage: function (order_id, order_amount) {
  697 + wx.setStorageSync("order:order_list:update", !0), wx.redirectTo({
  698 + url: "/pages/payment/pay_success/pay_success?order_id=" + order_id + "&type=1&card=1",
  699 + });
  700 + },
  701 +
  702 + //------调起支付框--------
  703 + weixinPay: function (n, success, fail) {
  704 + if (!n) return false;
  705 + var th = this;
  706 +
  707 + getApp().globalData.no_clear=1;
  708 +
  709 + wx.requestPayment({
  710 + timeStamp: String(n.timeStamp),
  711 + nonceStr: n.nonceStr,
  712 + package: n.packageValue,
  713 + signType: n.signType,
  714 + paySign: n.paySign,
  715 + success: function (n) {
  716 + // console.log(n), getApp().showSuccess("支付成功!");
  717 + wx.showToast({
  718 + title: '支付成功',
  719 + icon: 'success',
  720 + duration: 2000
  721 + });
  722 + "function" == typeof success && success();
  723 + },
  724 + fail: function (n) {
  725 + console.log(n), "requestPayment:fail" == n.errMsg ? getApp().my_warnning("支付失败", 0, th) : "requestPayment:fail cancel" == n.errMsg ? getApp().my_warnning("您已取消支付", 0, th) : getApp().my_warnning("支付失败:" + n.errMsg.substr("requestPayment:fail ".length), 0, th),
  726 + "function" == typeof fail && fail();
  727 + }
  728 + });
  729 + },
  730 +
  731 +
  732 + //使用
  733 + set_bn_commission:function(){
  734 + var th = this;
  735 + th.setData({bn_use_commission: !th.data.bn_use_commission});
  736 + th.calculatePrice2();
  737 + }
  738 +
  739 +})
0 740 \ No newline at end of file
... ...
packageA/pages/serviceCard_pd/cart_wk/cart_wk.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "支付尾款",
  3 + "usingComponents": {
  4 + "warn": "/components/long_warn/long_warn"
  5 + }
  6 +}
0 7 \ No newline at end of file
... ...
packageA/pages/serviceCard_pd/cart_wk/cart_wk.wxml 0 → 100644
  1 +<wxs module="filters" src="../../../../utils/filter.wxs"></wxs>
  2 +
  3 +<!--头部门店显示-->
  4 +<view class='top bdr_t-14 flex'>
  5 + <image class="t_img" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'></image>
  6 + <view class='t_wz'>{{pickup.pickup_name}}</view>
  7 +</view>
  8 +
  9 +<!--商品图片显示-->
  10 +<view class='center'>
  11 + <view class='cen_img'>
  12 + <image src="{{order.show_img}}" binderror="bind_bnerr" data-errorimg="order.show_img"></image>
  13 + </view>
  14 +
  15 + <view class="details-container">
  16 + <view class='cen_name ellipsis-3'>{{order.order_goods.service_name}}</view>
  17 + <view class="flex jc_sb">
  18 + <view class='cen_jg'>¥{{order.order_goods.price}}</view>
  19 + <view class='cen_sl'>x{{order.order_goods.qty}}</view>
  20 + </view>
  21 + </view>
  22 +
  23 +</view>
  24 +
  25 +<view class="use-item bdr_b-14 jc_sb" wx:if='{{exp_type==0 && !is_default_logistics}}'>
  26 + <view>选择物流:</view>
  27 + <view class="flex-vertical" bindtap="show_wu_arr" data-txt='index' style="margin-right: 8rpx;">
  28 + <view class="logistics-name">{{wu_arr[index].name}}</view><view class="xc-right"></view>
  29 + </view>
  30 +</view>
  31 +
  32 +<!--成团人数-->
  33 +<view class='chentuan bdr14'>
  34 + <view class='ct_one jc_sb'>
  35 + <view class='ct_one_left'>成团人数</view>
  36 + <view class='ct_one_right'>
  37 + <text wx:if="{{teamgroup.is_xuni_ct}}" class='redwz'>{{teamgroup.jt_ct_num}}</text>
  38 + <text wx:else class='redwz'>{{teamgroup.jt_ct_num}}</text>
  39 + 人
  40 + </view>
  41 + </view>
  42 + <view class='ct_one jc_sb'>
  43 + <view class='ct_one_left'>成团金额</view>
  44 + <view class='ct_one_right'><text class='redwz'>¥{{filters.toFix(order.account+order.tail_money,2)}}</text></view>
  45 + </view>
  46 +
  47 + <view class='ct_one jc_sb'>
  48 + <view class='ct_one_left'>支付定金</view>
  49 + <view class='ct_one_right'><text class='redwz'>¥{{filters.toFix(order.account,2)}}</text>
  50 + </view>
  51 + </view>
  52 +</view>
  53 +
  54 +<!--尾款-->
  55 +<view class='chentuan bdr14'>
  56 + <view class='ct_one jc_sb'>
  57 + <view class='ct_one_left'>尾款金额</view>
  58 + <view class='ct_one_right'>
  59 + <text class='redwz'>¥{{order.tail_money}}</text>
  60 + </view>
  61 + </view>
  62 + <view class='ct_one jc_sb' wx:if="{{exp_price>0}}">
  63 + <view class='ct_one_left'>配送费用</view>
  64 + <view class='ct_one_right'>
  65 + <text class='redwz'>¥{{exp_price}}</text>
  66 + </view>
  67 + </view>
  68 + <!-- 订单优惠优惠金额 -->
  69 + <view class="ct_one jc_sb" wx:if="{{formData.order_prom_amount>0}}">
  70 + <view>订单优惠</view>
  71 + <view class="co-red">- ¥ {{filters.toFix(formData.order_prom_amount, 2)}}</view>
  72 + </view>
  73 +</view>
  74 +
  75 +
  76 +<!-----使用佣金抵扣,只有佣金小于尾款金额的时候------>
  77 +<view class="set-mes mgt20" wx:if="{{goods.use_commission>0 && can_commission && goods.use_commission<order.tail_money+exp_price}}">
  78 + <view class="use-item" bindtap='set_bn_commission'>
  79 + <icon color="{{bn_use_commission?'red':'gray'}}" size="16" type="success"></icon>
  80 + <view class="yu_er">使用佣金 :¥{{goods.use_commission}} </view>
  81 + </view>
  82 +</view>
  83 +
  84 +<view style="height:100rpx"></view>
  85 +
  86 +
  87 +<!--支付-->
  88 +<view class='zf shadow'>
  89 + <!-- <view class='zf_left'>
  90 + <text class='zf_left_wz'>支付合计:</text>
  91 + <text class='zf_left_red'>¥{{filters.toFix(order.tail_money+exp_price,2)}}</text>
  92 + </view> -->
  93 + <view class='zf_left'>支付合计:<text class='zf_left_red'>¥{{filters.toFix(order.tail_money+exp_price-(bn_use_commission?goods.use_commission:0)-formData.order_prom_amount ,2)}}</text></view>
  94 + <view class="zf_btn {{(submit || !same_ok)?'gray':''}}" bindtap="to_pay">支付尾款</view>
  95 +</view>
  96 +
  97 +
  98 +<!--支付的方式选择,0微信支付 1余额支付-->
  99 +<block wx:if="{{show_pay_type}}">
  100 + <view class="cover-layer" bindtap="close_show_pay"></view>
  101 + <view class="pay_type_view">
  102 + <view class="title">请选择支付方式</view>
  103 + <view class="anniu_view">
  104 + <view bindtap="set_pay_type" data-type="0" >微信支付</view>
  105 + <view bindtap="set_pay_type" data-type="1" >余额支付</view>
  106 + </view>
  107 + </view>
  108 +</block>
  109 +
  110 +<warn id="warn"></warn>
  111 +
  112 +<!----弹起选择物流名的列表---->
  113 +<view wx:if='{{open_express==1}}' >
  114 + <view class="cover-layer flex-center " bindtap='close_express'>
  115 + </view>
  116 +
  117 + <view class="cx-popup radius {{open_express==1?'up' : 'down'}}" >
  118 + <view class="tops flex">
  119 + <view class="top-content fs32">
  120 + <view>
  121 + 选择物流名字
  122 + </view>
  123 + </view>
  124 + <view class="close-frame" bindtap='close_express' >
  125 + <view class="xc-close-express">×</view>
  126 + </view>
  127 + </view>
  128 + <view class="express_list">
  129 + <view wx:for="{{wu_arr}}" wx:for-item="express_list" wx:for-index="idx">
  130 + <view class="express_list_frame" bindtap="click_express_name"
  131 + data-shippingcode="{{express_list.shipping_code}}"
  132 + data-name="{{express_list.name}}" data-idxe="{{idx}}">
  133 +
  134 + <block wx:if="{{is_express==idx}}">
  135 + <view class="circle white xc-hook fs20 red-b"><text>Γ</text></view>
  136 + </block>
  137 + <block wx:else>
  138 + <view class="circle xc-hooks"></view>
  139 + </block>
  140 + <view class="fs30">{{express_list.name}}</view>
  141 +
  142 + </view>
  143 + </view>
  144 + </view>
  145 + <view class="flex click-buttem" >
  146 + <view class="xc-determine flex-center" bindtap="determine_expres">
  147 + <view class="flex-vertical t-c">确定</view>
  148 + </view>
  149 + <view class="xc-confirms flex-center" bindtap="select_default_logistics">
  150 + <view class="flex-vertical t-c">设为默认</view>
  151 + </view>
  152 + </view>
  153 +
  154 + </view >
  155 +</view>
  156 +<view style="height: 50rpx"></view>
  157 +
... ...
packageA/pages/serviceCard_pd/cart_wk/cart_wk.wxss 0 → 100644
  1 +page{ color: #333;}
  2 +.bdr_t-14 {
  3 + border-top-left-radius: 14rpx;
  4 + border-top-right-radius: 14rpx;
  5 +}
  6 +.bdr_b-14 {
  7 + border-bottom-left-radius: 14rpx;
  8 + border-bottom-right-radius: 14rpx;
  9 +}
  10 +.bdr14 {
  11 + border-radius: 14rpx;
  12 +}
  13 +.mgt20 {
  14 + margin-top: 20rpx;
  15 +}
  16 +.shadow {
  17 + box-shadow: 0 4rpx 12px #e7e9eb;
  18 +}
  19 +.shadow-1 {
  20 + box-shadow: 16rpx 0px 12px #e7e9eb;
  21 +}
  22 +
  23 +page {
  24 + background-color: #F0F0F0;
  25 + padding: 0 22rpx;
  26 + box-sizing: border-box;
  27 +}
  28 +
  29 +.user-mes {
  30 + position: relative;
  31 + background-color: #fff;
  32 + font-size: 32rpx;
  33 + color: #444;
  34 + /* margin-top: 28rpx; */
  35 + border-radius: 14rpx;
  36 +}
  37 +.user-contact {
  38 + padding: 24rpx 26rpx;
  39 + font-weight: 600;
  40 +}
  41 +
  42 +.location {
  43 + position: relative;
  44 + padding: 0 70rpx 24rpx;
  45 +}
  46 +
  47 +.pos-icon {
  48 + position: absolute;
  49 + left: 28rpx;
  50 + top: 6rpx;
  51 + width: 30rpx;
  52 + height: 36rpx;
  53 +}
  54 +
  55 +.border-img {
  56 + width: 100%;
  57 + height: 16rpx;
  58 +}
  59 +
  60 +.update-logistics {
  61 + position: absolute;
  62 + right: 0;
  63 + top: 0;
  64 + width: 80rpx;
  65 + height: 100%;
  66 + display: flex;
  67 + align-items: center;
  68 + justify-content: center;
  69 +}
  70 +
  71 +.arrow-rigth {
  72 + width: 32rpx;
  73 + height: 32rpx;
  74 +}
  75 +
  76 +.order-meg {
  77 + margin-bottom: 20rpx;
  78 + font-size: 28rpx;
  79 +
  80 +}
  81 +
  82 +.order-detail {
  83 + padding: 30rpx 0;
  84 + border-bottom: 1px solid #ddd;
  85 + color: #777;
  86 + min-height: 100rpx;
  87 + background-color: #fff;
  88 +
  89 +}
  90 +
  91 +.top {
  92 + background-color: white;
  93 + height: 40px;
  94 + display: flex;
  95 + padding: 0 26rpx;
  96 + /* border-bottom: 2rpx solid rgb(238, 238, 238); */
  97 + margin-top: 20rpx;
  98 + align-items: center;
  99 +}
  100 +
  101 +.t_img {
  102 + display: block;
  103 + width: 50rpx;
  104 + height: 50rpx;
  105 + margin-left:-6rpx;
  106 +}
  107 +
  108 +.t_wz {
  109 + font-size: 30rpx;
  110 + /* font-weight: bold; */
  111 + color: rgb(0, 0, 0);
  112 + line-height: 65rpx;
  113 + /* margin-left: 18rpx; */
  114 +}
  115 +
  116 +.center {
  117 + box-sizing: border-box;
  118 + background-color: white;
  119 + width: 100%;
  120 + min-height: 80rpx;
  121 + display: flex;
  122 + padding: 24rpx 26rpx;
  123 + border-bottom: 2rpx solid #eee;
  124 +}
  125 +
  126 +.center .cen_img {
  127 + width: 200rpx;
  128 + height: 200rpx;
  129 + border-radius: 14rpx;
  130 + overflow: hidden;
  131 + flex-shrink: 0;
  132 +}
  133 +
  134 +.center .cen_img image {
  135 + display: block;
  136 + width: 100%;
  137 + height: 100%;
  138 +}
  139 +
  140 +.details-container {
  141 + display: flex;
  142 + padding-left:20rpx;
  143 + flex:1;
  144 + flex-direction: column;
  145 + justify-content: space-between;
  146 +}
  147 +
  148 +.center .cen_name {
  149 + height: 120rpx;
  150 + font-size: 30rpx;
  151 +}
  152 +
  153 +.center .cen_jg {
  154 + color: #c4182e;
  155 + font-size: 32rpx;
  156 + width: 200rpx;
  157 + height: 40rpx;
  158 +}
  159 +
  160 +.center .cen_jg .cen_sl {
  161 + color: black;
  162 + font-size: 26rpx;
  163 + width: 200rpx;
  164 + height: 38rpx;
  165 +}
  166 +
  167 +.quhou {
  168 + box-sizing: border-box;
  169 + background-color: white;
  170 + border-bottom: 2rpx solid #eee;
  171 + font-size: 28rpx;
  172 + height: 92rpx;
  173 + display: flex;
  174 + align-items: center;
  175 + padding: 0 26rpx;
  176 +}
  177 +
  178 +.quhou .qu_fs {
  179 + font-size: 30rpx;
  180 + display: flex;
  181 + height: 60rpx;
  182 + /* margin-left: 25rpx; */
  183 + line-height: 62rpx;
  184 + margin-right: 20rpx;
  185 +}
  186 +
  187 +.quhou .qu_fs image {
  188 + width: 34rpx;
  189 + height: 34rpx;
  190 + margin-right: 18rpx;
  191 + vertical-align: center;
  192 + position: relative;
  193 + top:14rpx
  194 +}
  195 +
  196 +.quhou .qu_fs .qu_wz {}
  197 +
  198 +.chentuan {
  199 + box-sizing: border-box;
  200 + width: 100%;
  201 + min-height: 90rpx;
  202 + background-color: white;
  203 + padding: 20rpx 26rpx;
  204 + margin-top: 20rpx;
  205 + font-size: 28rpx;
  206 +}
  207 +
  208 +.chentuan .ct_one {
  209 + /* height: 40rpx; */
  210 + /* margin-bottom: 10rpx; */
  211 + display: flex;
  212 + line-height: 60rpx;
  213 + font-size: 30rpx;
  214 + /* width: 708rpx; */
  215 +}
  216 +
  217 +.chentuan .ct_one .ct_one_left {
  218 + /* margin-left: 10rpx; */
  219 +}
  220 +
  221 +.chentuan .ct_one .ct_one_right {
  222 + text-align: right;
  223 + width: 200rpx;
  224 +}
  225 +
  226 +.redwz {
  227 + color: #c4182e;
  228 +}
  229 +
  230 +.zf {
  231 + /* background-color: white;
  232 + width: 100%;
  233 + min-height: 80rpx;
  234 + line-height: 80rpx;
  235 + font-size: 30rpx;
  236 + position: fixed;
  237 + bottom: 0;
  238 + text-align: right; */
  239 +
  240 + height: 94rpx;
  241 + box-sizing: border-box;
  242 + display: flex;
  243 + justify-content: space-between;
  244 + background-color: white;
  245 + align-items: center;
  246 + position: fixed;
  247 + bottom: 0;
  248 + left: 0;
  249 + width: 100%;
  250 + padding: 0 30rpx;
  251 +}
  252 +
  253 +.zf view{
  254 + display: inline-block;
  255 +}
  256 +
  257 +.zf .zf_left {
  258 + text-align: right;
  259 + margin-right: 20rpx;
  260 +}
  261 +
  262 +.zf_btn {
  263 + /* color: white;
  264 + background-color: #c4182e;
  265 + font-size: 28rpx;
  266 + width: 170rpx;
  267 + text-align: center;
  268 + line-height: 80rpx; */
  269 + /* float: right;
  270 + width: 200rpx;
  271 + height: 100rpx;
  272 + line-height: 100rpx;
  273 + text-align: center;
  274 + font-size: 30rpx;
  275 + color: #fff;
  276 + background-color: #f23030; */
  277 + color: white;
  278 + background-color: #FE4445;
  279 + height: 72rpx;
  280 + line-height: 72rpx;
  281 + padding: 0 42rpx;
  282 + border-radius: 36rpx;
  283 + margin-left: 0;
  284 + margin-right: 0;
  285 +}
  286 +
  287 +.zf .zf_left .zf_left_red {
  288 + color: #c4182e;
  289 +}
  290 +
  291 +.zf_btn.gray{
  292 + background-color:darkgrey;
  293 +}
  294 +
  295 + /*----------nyf新增,地址---------*/
  296 +.add_new{
  297 + box-sizing: border-box;
  298 + height: 92rpx;
  299 + padding: 0 26rpx;
  300 + display: flex;
  301 + align-items: center;
  302 + /* line-height: 60rpx; */
  303 +}
  304 +.addr_jia{
  305 + width: 45rpx;
  306 + height: 45rpx;
  307 + border: 1rpx solid #ddd;
  308 + margin-right: 15rpx;
  309 + /* margin-left: 20rpx; */
  310 + vertical-align: middle;
  311 +}
  312 +.yu_er{margin-left: 15rpx;} .wuliu{margin-left: 20rpx;}
  313 +
  314 +
  315 +.use-item{
  316 + display: flex;
  317 + align-items: center;
  318 + height: 92rpx;
  319 + /* border-bottom: 1px solid #ddd; */
  320 + font-size: 30rpx;
  321 + padding:0 26rpx;
  322 + background: #fff;
  323 +}
  324 +.use-item>view{
  325 + display: flex;margin-right: 20rpx;
  326 +}
  327 +.use-item.bfff{ background-color: #fff;}
  328 +.use-item .dp{width: 56rpx; height: 56rpx;}
  329 +
  330 +.pay_type_view{width: 500rpx;height: 220rpx; position: fixed; background: #fff;z-index: 12;
  331 + left: 50%; margin-left: -250rpx; top: 50%; margin-top: -110rpx; text-align: center; border-radius: 12rpx;}
  332 + .pay_type_view .title{ height:100rpx; line-height: 100rpx; border-bottom: 1rpx solid #ededed;}
  333 +.anniu_view{display: flex;height: 120rpx; line-height: 120rpx;}
  334 +.anniu_view>view{width: 50%; border-right:1rpx solid #ededed;}
  335 +
  336 +
  337 +.tab-container {
  338 + font-size: 28rpx;
  339 + margin-top: 20rpx;
  340 + display: flex;
  341 +}
  342 +
  343 +.tab-wrapper {
  344 + background-color: #ccc;
  345 + display: flex;
  346 + border-radius: 40rpx;
  347 + overflow: hidden;
  348 +}
  349 +
  350 +.tab {
  351 + padding: 20rpx 30rpx;
  352 +
  353 +}
  354 +
  355 +
  356 +.tab.active {
  357 + background-color: white;
  358 + border-radius: 40rpx;
  359 +}
  360 +
  361 +.xc-right{
  362 + width:20rpx;
  363 + height:20rpx;
  364 + border-top:2rpx solid #666;
  365 + border-right:2rpx solid #666;
  366 + transform:rotate(45deg);
  367 + display:inline-block;
  368 +}
  369 +
  370 +
  371 +/* 自定义弹出窗口 */
  372 +.cx-popup{
  373 + width:100%;
  374 + height:880rpx;
  375 + background: #fff;
  376 + z-index: 35;
  377 + border-top-left-radius: 20rpx;
  378 + border-top-right-radius: 20rpx;
  379 + position:fixed;
  380 + bottom:0;
  381 + left: 0;
  382 + /* padding-bottom: 25rpx; */
  383 +}
  384 +
  385 +.cx-popup .top{
  386 + width:95%;
  387 + height:100rpx;
  388 + border-bottom:3rpx solid #ddd;
  389 + margin: auto;
  390 + margin-top: 30rpx;
  391 +
  392 +}
  393 +.xc-top-content{
  394 + width: 93%;
  395 + height:85rpx;
  396 + padding-top: 30rpx;
  397 + font-size: 34rpx;
  398 + font-weight: 600;
  399 +
  400 +}
  401 +
  402 +.xc-close{
  403 + width: 37rpx;
  404 +height: 37rpx;
  405 +border-radius: 50%;
  406 +border: 3rpx solid #333;
  407 +text-align: center;
  408 +line-height: 34rpx;
  409 +font-size: 29rpx;
  410 +color: #333;
  411 +
  412 +}
  413 +
  414 +.xc-confirm {
  415 + width: 50%;
  416 + border-radius: 50rpx;
  417 + height: 80rpx;
  418 + margin:0 auto;
  419 + background:#d60021;
  420 + color:#fff;
  421 + font-size:28rpx;
  422 + margin-top: 28rpx;
  423 +}
  424 +
  425 +.up{ animation: up .7s; }
  426 +.down{ animation: down 1s; }
  427 +@keyframes up { 0% { transform: translateY(550rpx); } 100% { transform: translateY(0); } }
  428 +@keyframes down { 0% { transform: translateY(0); } 100% { transform: translateY(550rpx); } }
  429 +
  430 +
  431 +.xc-close-express{
  432 + width: 40rpx;
  433 +height: 40rpx;
  434 +border-radius: 50%;
  435 +border: 3rpx solid #333;
  436 +text-align: center;
  437 +font-size:32rpx;
  438 +line-height: 38rpx;
  439 +color: #333;
  440 +margin-top: 5rpx;
  441 +}
  442 +.cx-popup .tops{
  443 + width: 100%;
  444 +height: 145rpx;
  445 +border-bottom: 3rpx solid #eee;
  446 +
  447 +}
  448 +.top-content {
  449 + width: 82%;
  450 +padding-top: 33px;
  451 +height: 100%;
  452 +padding-left: 40rpx;
  453 +}
  454 +.close-frame{
  455 + margin-top: 30rpx;
  456 +
  457 +}
  458 +
  459 +.xc-hook {
  460 +width: 33rpx;
  461 +height: 33rpx;
  462 +transform: rotate(-135deg);
  463 +line-height: 35rpx;
  464 +text-align: center;
  465 +margin-right: 20rpx
  466 +
  467 +
  468 +}
  469 +.xc-hooks {
  470 +width: 30rpx;
  471 +height: 30rpx;
  472 +border: 1rpx solid #999;
  473 +margin-right: 20rpx;
  474 +}
  475 +.express_list_frame{
  476 + display: flex;
  477 +height: 80rpx;
  478 +align-items: center;
  479 +padding-left: 40rpx;
  480 +border-bottom: 1rpx solid #eee;
  481 +
  482 +}
  483 +.express_list{
  484 + width: 100%;
  485 + height: 65%;
  486 + overflow-y: auto;
  487 + margin-bottom: 40rpx;
  488 +
  489 +}
  490 +.xc-confirms {
  491 + box-sizing: border-box;
  492 + width: 40%;
  493 + border-radius: 50rpx;
  494 + height: 80rpx;
  495 + margin:0 auto;
  496 + font-size:28rpx;
  497 + background: #fff;
  498 + color: #333;
  499 + border: 2rpx solid #333;
  500 +}
  501 +
  502 +.determine-frame{
  503 + width: 100%;
  504 + height: 130rpx;
  505 +
  506 +}
  507 +.xc-determine{
  508 + height: 80rpx;
  509 + width: 40%;
  510 + border-radius: 50rpx;
  511 +background: #d60021;
  512 +color: #fff;
  513 +font-size: 28rpx;
  514 +margin: 0 auto;
  515 +
  516 +}
  517 +
... ...
packageA/pages/serviceCard_pd/goodsInfo/buy_pt.wxml
... ... @@ -5,18 +5,13 @@
5 5  
6 6 <!-- 商品名称 -->
7 7 <view class="spec-goods">
8   - <image class="wh100 spec-img xc-distance-bottom" bindtap="previewImage" src="{{data.original_img}}" binderror="pop_err_img" data-errorimg="data.original_img"></image>
  8 + <image class="wh100 spec-img" src="{{iurl}}{{data.image_url?data.image_url:'miniapp/images/default_g_img.gif'}}"
  9 + binderror="pop_err_img" data-errorimg="data.image_url" />
9 10 <view class="spec-goods-info">
10   - <view class="spec-goods-name ellipsis-1">{{sele_g.goods_name}}</view>
11   - <view class="flex ai_end xc-val-money {{sele_g[card_field]}}" >
  11 + <view class="spec-goods-name ellipsis-1">{{sele_g.serviceName}}</view>
  12 + <view class="flex ai_end xc-val-money" >
12 13 <view class="spec-goods-price" wx:if="{{is_normal==1}}" >
13   - <!-- 如果是等级会员,且有等级价 -->
14   - <block wx:if="{{card_field && sele_g[card_field]>0}}">
15   - ¥ {{sele_g[card_field]}}
16   - </block>
17   - <block wx:else>
18   - ¥ {{sele_g.shop_price}}
19   - </block>
  14 + ¥ {{sele_g.money}}
20 15 </view>
21 16 <view class="spec-goods-price" wx:else>¥ {{prom_price}}</view>
22 17 </view>
... ... @@ -24,11 +19,7 @@
24 19 <block wx:if="{{is_normal==1}}">
25 20 <view class="flex">
26 21 <view class="spec-goods-stock">已售:{{sele_g.sales_sum}}</view>
27   - <block wx:if="{{sales_rules==2}}">
28   - <view class="spec-goods-stock" wx:if="{{def_pick_store && def_pick_store.CanOutQty}}">可售:{{def_pick_store.CanOutQty}}</view>
29   - <view class="spec-goods-stock" wx:else>可售:0</view>
30   - </block>
31   - <block wx:else><view class="spec-goods-stock">可售:{{sele_g.store_count}}</view></block>
  22 + <block><view class="spec-goods-stock">可售:{{sele_g.store_count}}</view></block>
32 23 </view>
33 24 </block>
34 25 <block wx:if="{{is_normal==0}}">
... ... @@ -47,10 +38,9 @@
47 38 <view style="margin-top: 20rpx">
48 39 <view class="flex-space-between address ai_end xc-width ">
49 40  
50   - <view class="flex ai_end" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
51   - <text class="fs30 xc-black3 shop_name">{{def_pick_store.pickup_name}}</text>
52   -
53   -
  41 + <view class="flex" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
  42 + <text class="fs30 xc-black3 shop_name {{def_pick_store.distance!=null?'max':''}} ">{{def_pick_store.pickup_name}}</text>
  43 +
54 44 <view class="distance fs24 xc-ash"wx:if="{{def_pick_store.distance!=null}}">
55 45 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
56 46  
... ... @@ -63,11 +53,11 @@
63 53 <view class="fs28 xc-ash-9f">选择门店</view>
64 54 </view>
65 55  
66   - <view class="red-co fs28" bindtap="choice_store" >更多门店<text class="right-arrow"></text></view>
  56 + <view hidden="{{has_def && sys_switch.is_pricing_open_store}}" class="red-co fs28" bindtap="choice_store" >更多门店<text class="right-arrow"></text></view>
67 57 </view>
68 58 <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view>
69 59 <view class="no_store" wx:elif="{{is_normal && def_pick_store && def_pick_store.CanOutQty<=0}}">(库存不足)</view>
70   - <view class="fs24 xc-ash-9f xc-distance-top "wx:if="{{def_pick_store && def_pick_store.pickup_name}}">地址:{{def_pick_store.fulladdress}}</view>
  60 + <view class="fs24 xc-ash-9f xc-distance-top" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">地址:{{def_pick_store.fulladdress}}</view>
71 61 </view>
72 62 <!----商品的属性项目---->
73 63 <view>
... ...
packageA/pages/serviceCard_pd/goodsInfo/filter.wxs
... ... @@ -20,8 +20,19 @@ function act_type(ty){
20 20 }
21 21 }
22 22  
  23 +//拿来判断是不是在指定门店内
  24 +function is_no_dis(text,val){
  25 + if(text==undefined) return false;
  26 + if(text=='') return false;
  27 + if(!text) return false;
  28 +
  29 + if(text.indexOf(val)==-1) return true;
  30 + return false;
  31 +}
  32 +
23 33 module.exports = {
24 34 is_has: is_has,
25 35 format_tt:format_tt,
26   - act_type:act_type
  36 + act_type:act_type,
  37 + is_no_dis:is_no_dis
27 38 }
... ...
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.js
Changes suppressed. Click to show
... ... @@ -3,4270 +3,3350 @@ var ut = require(&quot;../../../../utils/util.js&quot;),
3 3 e = require("../../../../utils/common.js"),
4 4 oo = getApp().globalData,
5 5 os = oo.setting;
  6 +var s=getApp();
6 7 //评价加载更多
7   -var more = function(e) {
8   - return e && e.__esModule ? e : {
9   - default: e
10   - };
  8 +var more = function (e) {
  9 + return e && e.__esModule ? e : {
  10 + default: e
  11 + };
11 12 }(require("../../../../utils/LoadMore.js")),
12 13 n = new more.default();
13 14 var regeneratorRuntime = require('../../../../utils/runtime.js');
14 15  
15 16 Page({
16   - data: {
17   - start_stop: 2, //秒杀开始 结束 的控制(1正在进行,2即将开始)
18   - color_type: 0, //线条控制
19   - color_type_one: 0,
20   - color_type_two: 1,
21   - gid: "",
22   - stoid: os.stoid,
23   - url: os.url,
24   - resourceUrl: os.h5_url, //公众号那边的图片文件域名
25   - iurl: os.imghost,
26   -
27   - data: null,
28   - content: "", //商品详情
29   -
30   - gallery: null, //图片滚动
31   - is_collect: 0,
32   - collect_id: 0,
33   - cartGoodsNum: 0,
34   - specSelect: 0,
35   - optionItemId: 0,
36   - goodsInputNum: 1,
37   - openSpecModal: !1,
38   -
39   - activeCategoryId: 0,
40   - supportPageScroll: !1,
41   - address: {
42   - address: "",
43   - district: 0,
44   - },
45   - shipping: "",
46   - shippingCost: 0,
47   - enterAddressPage: !1,
48   - categories: [{
49   - name: "卡项",
50   - id: 0
51   - }, {
52   - name: "详情",
53   - id: 1
54   - },{
55   - name: "评价",
56   - id: 2
57   - }],
58   - activeCategoryId2: 0,
59   - categories2: [{
60   - name: "商品详情",
61   - id: 0
62   - }, {
63   - name: "规格参数",
64   - id: 1
65   - }],
66   - activeCategoryId3: 1, // 点击评价-全部、有图、好评、中评时对应的id
67   - categories3: [{
68   - name: "全部",
69   - id: 1,
70   - num: 0
71   - },
72   - {
73   - name: "有图",
74   - id: 5,
75   - num: 0
76   - },
77   -
78   - {
79   - name: "好评",
80   - id: 2,
81   - num: 0
82   - }, {
83   - name: "中评",
84   - id: 3,
85   - num: 0
86   - }, {
87   - name: "差评",
88   - id: 4,
89   - num: 0
90   - },
91   - ],
92   -
93   - select: {
94   - price: 0,
95   - stock: 0,
96   - specName: "",
97   - activity: null
  17 + data: {
  18 + start_stop: 2, //秒杀开始 结束 的控制(1正在进行,2即将开始)
  19 + color_type: 0, //线条控制
  20 + color_type_one: 0,
  21 + color_type_two: 1,
  22 + gid: "",
  23 + stoid: os.stoid,
  24 + url: os.url,
  25 + resourceUrl: os.h5_url, //公众号那边的图片文件域名
  26 + iurl: os.imghost,
  27 +
  28 + data: null,
  29 + content: "", //商品详情
  30 +
  31 + gallery: null, //图片滚动
  32 + is_collect: 0,
  33 + collect_id: 0,
  34 + cartGoodsNum: 0,
  35 + specSelect: 0,
  36 + optionItemId: 0,
  37 + goodsInputNum: 1,
  38 + openSpecModal: !1,
  39 +
  40 + activeCategoryId: 0,
  41 + supportPageScroll: !1,
  42 + address: {
  43 + address: "",
  44 + district: 0,
  45 + },
  46 + shipping: "",
  47 + shippingCost: 0,
  48 + enterAddressPage: !1,
  49 + categories: [{
  50 + name: "卡项",
  51 + id: 0
  52 + }, {
  53 + name: "详情",
  54 + id: 1
  55 + }, {
  56 + name: "评价",
  57 + id: 2
  58 + }],
  59 + activeCategoryId2: 0,
  60 + categories2: [{
  61 + name: "商品详情",
  62 + id: 0
  63 + }, {
  64 + name: "规格参数",
  65 + id: 1
  66 + }],
  67 + activeCategoryId3: 1, // 点击评价-全部、有图、好评、中评时对应的id
  68 + categories3: [{
  69 + name: "全部",
  70 + id: 1,
  71 + num: 0
  72 + },
  73 + {
  74 + name: "有图",
  75 + id: 5,
  76 + num: 0
  77 + },
  78 +
  79 + {
  80 + name: "好评",
  81 + id: 2,
  82 + num: 0
  83 + }, {
  84 + name: "中评",
  85 + id: 3,
  86 + num: 0
  87 + }, {
  88 + name: "差评",
  89 + id: 4,
  90 + num: 0
  91 + },
  92 + ],
  93 +
  94 + select: {
  95 + price: 0,
  96 + stock: 0,
  97 + specName: "",
  98 + activity: null
  99 + },
  100 +
  101 +
  102 + //门店相关
  103 + ismend: 0,
  104 + is_sec_mend: 0,
  105 + sto_sele_name: "", //选中的门店名称
  106 + sto_sele_id: "", //选中的门店id
  107 + sto_sele_keyid: '', //选中的门店线下
  108 + sto_sele_distr: "", //选择的门店的配送方式
  109 + is_show_sto_cat: 1, //是否显示门店分类
  110 + only_pk: null,
  111 + all_sto: null,
  112 + sec_sto: null, //选择了的门店分类
  113 + pickpu_list: null, //读出的所有门店list
  114 + def_pickpu_list: null, //一开始5个门店list
  115 + sec_pick_index: 0, //第二级门店选择ID
  116 + fir_pick_index: 0, //第一级门店选择ID
  117 + all_pick_list: null,//所有的门店先记录起来
  118 +
  119 + //联系电话
  120 + mobile: '',
  121 + //商品的活动类型 0普通 1秒杀 2团购 3优惠 4 积分购 6拼单
  122 + timer: [],
  123 + //商品的购买次数
  124 + prom_buy_num: -1,
  125 + g_buy_num: null,
  126 +
  127 + //会员自己的购买的拼单商品的情况
  128 + //购买的订单
  129 + buy_order: null,
  130 + //1加入购物车 2立即购买
  131 + openSpecModal_ind: 0,
  132 +
  133 + //---计时器开关----
  134 + is_timer: 1,
  135 + isshow: 0,
  136 + bconfig: null, //基础配置
  137 +
  138 + //会员分享的头像
  139 + share_head: "",
  140 + share_goods_img: "",
  141 +
  142 + //----------视频图片data参数---------
  143 + current: 0, //图片计数
  144 + swiperCurrent: 0, //轮播的下标
  145 + hiddenn: 0, //控制轮播计数显示
  146 +
  147 + currentTab: 0, // 选择器控制参数
  148 + mapurl: "",
  149 + mapurl_f_img: "",
  150 + videopicture: 0, //视频图片的控制
  151 +
  152 + video: 0, //视频图片切换器
  153 + index: 0,
  154 + noon: 0, //开始视频的隐藏
  155 +
  156 + screenWidth: 0,
  157 + canvasHidden: 1,
  158 +
  159 + //--推荐--
  160 + store_config: null,
  161 + is_show_pl: 0, //是否品类
  162 + is_show_pp: 0, //是否品牌
  163 + is_show_gb: 0, //是否国别
  164 + is_closecoupon: 0,
  165 + select_store: 0, //选择更多
  166 + index: 1,
  167 + more_store: 0, //选择门店
  168 + sort_store: 0, //门店分类
  169 + choice_sort_store: 0, //选择分类门店
  170 + new_user: 0, //新用户
  171 +
  172 + def_pick_store: null, // 默认的门店
  173 + fir_def_store: null, //客户默认的门店的
  174 + lat: null, //维度
  175 + lon: null, //经度
  176 +
  177 + is_get_local_ok: 0, //获取坐标是否完成
  178 + region_name: "门店分类", //区域的名字
  179 + is_gps: 1,
  180 + open_ind_store: 0, //哪里打开的门店列表的控制属性
  181 + default_store: {}, //创建添加默认门店地址的对象
  182 +
  183 + comments_no_more: 0,
  184 +
  185 + is_collect_load: 0, //是不是处理
  186 + wait_for_user_store: null,
  187 + poster: null, //自定义海报
  188 + share_b_img: '', //自定义分享的背景
  189 + showPoster: false,
  190 + hui_condition: null,
  191 + sto_sele_name_1: '',//分享的门店名称
  192 +
  193 + //-- 活动的情况 --
  194 + prom_st: null,
  195 + prom_r_null: 0,
  196 + hiddenCS: true, //控制客服操作菜单显示和控制
  197 + user_order_pt_state: 0,
  198 +
  199 + is_retail_price: 0,
98 200 },
99 201  
100   -
101   - //门店相关
102   - ismend: 0,
103   - is_sec_mend: 0,
104   - sto_sele_name: "", //选中的门店名称
105   - sto_sele_id: "", //选中的门店id
106   - sto_sele_keyid:'', //选中的门店线下
107   - sto_sele_distr: "", //选择的门店的配送方式
108   - is_show_sto_cat: 1, //是否显示门店分类
109   - only_pk: null,
110   - all_sto: null,
111   - sec_sto: null, //选择了的门店分类
112   - pickpu_list: null, //读出的所有门店list
113   - def_pickpu_list: null, //一开始5个门店list
114   - sec_pick_index: 0, //第二级门店选择ID
115   - fir_pick_index: 0, //第一级门店选择ID
116   - all_pick_list:null,//所有的门店先记录起来
117   -
118   - //联系电话
119   - mobile: '',
120   - //商品的活动类型 0普通 1秒杀 2团购 3优惠 4 积分购 6拼单
121   - timer: [],
122   - //商品的购买次数
123   - prom_buy_num: -1,
124   - g_buy_num: null,
125   -
126   - //会员自己的购买的拼单商品的情况
127   - //购买的订单
128   - buy_order: null,
129   - //1加入购物车 2立即购买
130   - openSpecModal_ind: 0,
131   -
132   - //---计时器开关----
133   - is_timer: 1,
134   - isshow: 0,
135   - bconfig: null, //基础配置
136   -
137   - //会员分享的头像
138   - share_head: "",
139   - share_goods_img: "",
140   -
141   - //----------视频图片data参数---------
142   - current: 0, //图片计数
143   - swiperCurrent: 0, //轮播的下标
144   - hiddenn: 0, //控制轮播计数显示
145   -
146   - currentTab: 0, // 选择器控制参数
147   - mapurl: "",
148   - mapurl_f_img: "",
149   - videopicture: 0, //视频图片的控制
150   -
151   - video: 0, //视频图片切换器
152   - index: 0,
153   - noon: 0, //开始视频的隐藏
154   -
155   - screenWidth: 0,
156   - canvasHidden: 1,
157   -
158   - //--推荐--
159   - store_config: null,
160   - is_show_pl: 0, //是否品类
161   - is_show_pp: 0, //是否品牌
162   - is_show_gb: 0, //是否国别
163   - is_closecoupon: 0,
164   -
165   -
166   - select_store: 0, //选择更多
167   - index: 1,
168   - more_store: 0, //选择门店
169   - sort_store: 0, //门店分类
170   - choice_sort_store: 0, //选择分类门店
171   - new_user: 0, //新用户
172   -
173   - def_pick_store: null, // 默认的门店
174   - fir_def_store:null, //客户默认的门店的
175   - lat: null, //维度
176   - lon: null, //经度
177   -
178   - is_get_local_ok: 0, //获取坐标是否完成
179   - region_name: "门店分类", //区域的名字
180   - is_gps: 1,
181   - open_ind_store: 0, //哪里打开的门店列表的控制属性
182   - default_store: {}, //创建添加默认门店地址的对象
183   -
184   - comments_no_more:0,
185   -
186   - is_collect_load:0, //是不是处理
187   - is_newsales_rules:0, //是否开启最新的门店规则,此时会新读门店,当点击选择门店时会触发读取线下库存
188   - sales_rules:1, //默认是线上销售
189   -
190   - wait_for_user_store:null,
191   - poster:null, //自定义海报
192   - share_b_img:'', //自定义分享的背景
193   - showPoster: false,
194   - hui_condition:null,
195   - sto_sele_name_1:'',//分享的门店名称
196   -
197   - // 秒杀
198   - prom_st: null,
199   - prom_r_null: 0,
200   - hiddenCS: true, //控制客服操作菜单显示和控制
201   - openSpecModal_flash_normal: 0,
202   - },
203   -
204   - //------初始化加载----------
205   - onLoad: function(t) {
206   - self = this;
207   - this.setData({ options: t,});
208   -
209   - var ee = this,
210   - that = ee,
211   - th = ee,
212   - gid = t.goods_id,
213   - first_leader=t.first_leader;
214   -
215   -
216   - //-- 自定义海报 --
217   - // getApp().request.promiseGet("/api/weshop/goods/poster/page", {
218   - // data:{store_id:os.stoid, type:1, is_use:1}
219   - // }).then(res=>{
220   - // if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0]){
221   - // var poster_data=res.data.data.pageData[0];
222   - // var json_str=poster_data.jsonStr;
223   - // if(json_str){
224   - // var json_data=JSON.parse(json_str);
225   - // if(json_data.bg_img){
226   - // //-- 把图片那到本地 --
227   - // wx.getImageInfo({
228   - // src:json_data.bg_img,
229   - // success: function(res) {
230   - // var path= res.path;
231   - // th.setData({share_b_img:path})
232   - // },
233   - // fail: function(res) {}
234   - // });
235   - // }
236   - // th.setData({poster:json_data})
237   - // }
238   - // }
239   - // })
240   -
241   -
242   - //---获取手机地址坐标--
243   - //--如果tg_id是空的话,分享回来--
244   - if (gid == undefined || gid == null || gid == "") {
245   - var gid_str = decodeURIComponent(t.scene);
246   - gid_str=gid_str.split("_");
247   - gid=gid_str[0];
248   - if(gid_str.length>1){
249   - first_leader=gid_str[1];
250   - }
251   - //-- 如果有room_id的获取 --
252   - if(gid_str.length>2 && gid_str[2]) {
253   - room_id=gid_str[2];
254   - room_user_share=1;
255   - };
256   - };
257   -
258   - ee.setData({ gid: gid});
259   -
260   - if(first_leader) {
261   - getApp().globalData.first_leader=first_leader;
262   - //调用接口判断是不是会员
263   - getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+os.stoid+"/"+first_leader,{}).then(res=>{
264   - if(res.data.code==0) {
265   - getApp().globalData.guide_id=res.data.data.id;
266   - }
267   - })
268   - }
269   -
270   - var c_guide_id=t.c_guide_id;
271   - if(c_guide_id){
272   - th.data.c_guide_id=c_guide_id;
273   - }
274   -
275   - getApp().getConfig(function(e) {
276   - ee.setData({sto_sele_name_1:e.store_name})
277   - })
278   -
279   - //----获取系统参数-----
280   - getApp().getConfig2(function (e) {
281   - ee.setData({
282   - bconfig: e,
283   - sales_rules: e.sales_rules,
284   - });
285   -
286   - if (e.categoryset.indexOf("," + 1 + ",") != -1) {
287   - ee.setData({
288   - is_show_pl: 1
289   - });
290   - }
291   - if (e.categoryset.indexOf("," + 3 + ",") != -1) {
292   - ee.setData({
293   - is_show_pp: 1
294   - });
295   - }
296   - if (e.categoryset.indexOf("," + 2 + ",") != -1) {
297   - ee.setData({
298   - is_show_gb: 1
299   - });
300   - }
301   -
302   - var json_d = JSON.parse(e.switch_list);
303   - ee.setData({
304   - store_config: e,
305   - sys_switch: json_d,
306   - is_closecoupon: json_d.is_closecoupon,
307   - is_newsales_rules: json_d.is_newsales_rules
308   - });
309   - ee.init(gid);
310   -
311   - //------几人评价-------
312   - //n.init(th, "", "comments");
313   -
314   - th.requestCardNum(), wx.pageScrollTo && th.setData({
315   - supportPageScroll: !0
316   - });
317   -
318   -
319   - }, 1);
320   -
321   - //获取用户设备信息,屏幕宽度
322   - wx.getSystemInfo({
323   - success: res => {
324   - that.setData({
325   - screenWidth: res.screenWidth
  202 + //------初始化加载----------
  203 + onLoad: function (t) {
  204 + self = this;
  205 + this.setData({options: t,});
  206 +
  207 + var ee = this, that = ee, th = ee,
  208 + gid = t.goods_id,
  209 + first_leader = t.first_leader;
  210 +
  211 + //-- 自定义海报 --
  212 + getApp().request.promiseGet("/api/weshop/goods/poster/page", {
  213 + data:{store_id:os.stoid, type:1, is_use:1}
  214 + }).then(res=>{
  215 + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0]){
  216 + var poster_data=res.data.data.pageData[0];
  217 + var json_str=poster_data.jsonStr;
  218 + if(json_str){
  219 + var json_data=JSON.parse(json_str);
  220 + if(json_data.bg_img){
  221 + //-- 把图片那到本地 --
  222 + wx.getImageInfo({
  223 + src:json_data.bg_img,
  224 + success: function(res) {
  225 + var path= res.path;
  226 + th.setData({share_b_img:path})
  227 + },
  228 + fail: function(res) {}
  229 + });
  230 + }
  231 + th.setData({poster:json_data})
  232 + }
  233 + }
326 234 })
327   - }
328   - });
329   -
330   - //获取用户的默认门店
331   - getApp().get_user_store(function(e) {
332   - if(!e) {
333   - th.data.fir_def_store={}; //赋值空对象
334   - return false;
335   - }
336   - var ee=JSON.parse(JSON.stringify(e));
337   - //--定时器推迟一下--
338   - setTimeout(function () {
339   - if(!th.data.data) return false;
340   - var ser_card=th.data.data;
341   - //--如果默认门店不在等级卡的默认们店以内
342   - if(ser_card.storageId!=null && ser_card.storageId!="" && ser_card.storageId.indexOf(ee.keyid)==-1){
343   - ee.is_no_dis=1;
  235 +
  236 + var room_id=0;
  237 + var room_user_share=0;
  238 +
  239 + //---获取手机地址坐标--
  240 + //--如果tg_id是空的话,分享回来--
  241 + if (gid == undefined || gid == null || gid == "") {
  242 + var gid_str = decodeURIComponent(t.scene);
  243 + gid_str = gid_str.split("_");
  244 + gid = gid_str[0];
  245 + if (gid_str.length > 1) {
  246 + first_leader = gid_str[1];
  247 + }
  248 + //-- 如果有room_id的获取 --
  249 + if (gid_str.length > 2 && gid_str[2]) {
  250 + room_id = gid_str[2];
  251 + room_user_share = 1;
  252 + }
344 253 }
345 254  
346   - var appd=getApp().globalData;
347   - var w_time = setInterval(function() {
348   - if (that.data.is_get_local_ok == 0) return false;
349   - clearInterval(w_time);
350   - var distance = null;
351   - var e=JSON.parse(JSON.stringify(ee));
352   -
353   - //如果有开启近距离的话,同时距离优不一样了
354   - if (that.data.lat != null) {
355   - //如果经纬度有变化的话
356   - if(e && appd.lat==that.data.lat && appd.lon==that.data.lon && e.distance>0 ){
357   - that.data.fir_def_store=e;
358   - that.setData({
359   - def_pick_store: e,
360   - sto_sele_name: e.pickup_name,
361   - sto_sele_id: e.pickup_id,
362   - sto_sele_distr: e.distr_type,
363   - sto_sele_keyid:e.keyid,
364   - })
365   - }else{
366   - //要用接口是获取距离,js的计算不准
367   - getApp().request.promiseGet("/api/weshop/pickup/list",{
368   - data:{store_id:os.stoid,pickup_id:e.pickup_id,lat:th.data.lat,lon: th.data.lon, is_pos: 1},
369   - }).then(res=>{
370   - if(ut.ajax_ok(res)){
371   - e=res.data.data.pageData[0];
372   - if (e){
373   - e.is_no_dis=ee.is_no_dis;
374   - appd.pk_store=e;
375   - that.data.fir_def_store=e;
376   - that.setData({
377   - def_pick_store: e,
378   - sto_sele_name: e.pickup_name,
379   - sto_sele_id: e.pickup_id,
380   - sto_sele_distr: e.distr_type,
381   - sto_sele_keyid:e.keyid,
382   - })
383   - }
  255 + //-- 如果有房间号 --
  256 + if (room_id) {
  257 + getApp().globalData.room_id = room_id;
  258 + getApp().globalData.room_goods_id = gid;
  259 + //如果是会员分享过来的要记录
  260 + if (room_user_share)
  261 + getApp().globalData.room_user_share = room_user_share;
  262 + }
384 263  
  264 +
  265 +
  266 + ee.setData({gid: gid});
  267 +
  268 + if (first_leader) {
  269 + getApp().globalData.first_leader = first_leader;
  270 + //调用接口判断是不是会员
  271 + getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {
  272 + if (res.data.code == 0) {
  273 + getApp().globalData.guide_id = res.data.data.id;
  274 + getApp().globalData.guide_pick_id= res.data.data.pickup_id
385 275 }
386   - })
  276 + })
  277 + }
  278 +
  279 + var c_guide_id = t.c_guide_id;
  280 + if (c_guide_id) {
  281 + th.data.c_guide_id = c_guide_id;
  282 + }
  283 +
  284 + getApp().getConfig(function (e) {
  285 + ee.setData({sto_sele_name_1: e.store_name})
  286 + })
  287 +
  288 + //----获取系统参数-----
  289 + getApp().getConfig2(function (e) {
  290 + ee.setData({
  291 + bconfig: e,
  292 + sales_rules: e.sales_rules,
  293 + });
  294 +
  295 + if (e.categoryset.indexOf("," + 1 + ",") != -1) {
  296 + ee.setData({
  297 + is_show_pl: 1
  298 + });
  299 + }
  300 + if (e.categoryset.indexOf("," + 3 + ",") != -1) {
  301 + ee.setData({
  302 + is_show_pp: 1
  303 + });
  304 + }
  305 + if (e.categoryset.indexOf("," + 2 + ",") != -1) {
  306 + ee.setData({
  307 + is_show_gb: 1
  308 + });
  309 + }
  310 +
  311 + var json_d = JSON.parse(e.switch_list);
  312 + ee.setData({
  313 + store_config: e,
  314 + sys_switch: json_d,
  315 + is_closecoupon: json_d.is_closecoupon,
  316 + is_newsales_rules: json_d.is_newsales_rules,
  317 + is_retail_price: json_d.is_retail_price || 0,
  318 + });
  319 +
  320 + ee.init(gid);
  321 +
  322 + //------几人评价------
  323 + //n.init(th, "", "comments");
  324 + wx.pageScrollTo && th.setData({
  325 + supportPageScroll: !0
  326 + });
  327 +
  328 +
  329 + }, 1);
  330 +
  331 + //获取用户设备信息,屏幕宽度
  332 + wx.getSystemInfo({
  333 + success: res => {
  334 + that.setData({
  335 + screenWidth: res.screenWidth
  336 + })
387 337 }
  338 + });
388 339  
389   - //e.distance = distance;
390   - appd.lat=that.data.lat;
391   - appd.lon=that.data.lon;
392   -
393   - } else {
394   - if (e) {
395   - e.distance = null;
396   - that.data.fir_def_store=e;
397   - that.setData({
398   - def_pick_store: e,
399   - sto_sele_name: e.pickup_name,
400   - sto_sele_id: e.pickup_id,
401   - sto_sele_distr: e.distr_type,
402   - sto_sele_keyid:e.keyid,
403   - })
  340 + //获取用户的默认门店
  341 + getApp().get_user_store(function (e) {
  342 + if (!e) {
  343 + th.data.fir_def_store = {}; //赋值空对象
  344 + return false;
404 345 }
405   - }
406   - }, 500)
407   - },700)
408   -
409   - });
410   -
411   -
412   - },
413   -
414   -
415   - onReady() {
416   - // 用于控制保障服务折叠图标的显示
417   - setTimeout(() => {
418   - wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => {
419   -
420   - if(res.length != 0) {
421   - this.setData({
422   - showFold: res[0].height < res[1].height,
423   - });
424   - };
425   -
426   - }).exec();
427   - }, 1000);
428   -
429   - },
430   -
431   -
432   - //------------程序初始化入口-------------
433   - async init(gid) {
434   - var ee = this,
435   - th = ee,
436   - gallery = null,
437   - is_collect = 0,
438   - collect_id = 0,
439   - categories3 = ee.data.categories3,
440   - fir_com = null,
441   - fir_quan = null,
442   - mapurl = null,
443   - mapurl_f_img = null;
444   -
445   -
446   - //------图片滚动----------
447   - // await getApp().request.promiseGet("/api/weshop/goodsimages/page", {
448   - // data: {
449   - // store_id: os.stoid,
450   - // goods_id: gid,
451   - // },
452   - // }).then(res => {
453   -
454   - // var t = res;
455   - // var g = t.data.data.pageData;
456   - // if (g.length == 0) {
457   - // var ie = {
458   - // "image_url": o.imghost + "/public/images/default_goods_image_240.gif"
459   - // };
460   - // g.push(ie);
461   - // gallery = g;
462   - // return;
463   - // }
464   - // for (var i = 0; i < g.length; i++) {
465   - // if (g[i].image_url.indexOf(o.imghost) == -1)
466   - // g[i].image_url = o.imghost + g[i].image_url;
467   - // }
468   - // gallery = g;
469   - // })
470   -
471   -
472   - // ----> 秒杀
473   - let prom_type = this.data.options.prom_type;
474   -
475   - let goods_id = this.data.options.goods_id;
476   - if(!goods_id) goods_id = this.data.data.goods_id;
477   -
478   - if(prom_type) { // 进入商品详情页地址传参有带goods_id、prom_type、prom_id参数, 即从秒杀入口进入
479   - let prom_id = this.data.options.prom_id;
480   - // 检查活动是否开始
481   - this.check_prom(goods_id, prom_type, prom_id);
482   -
483   - } else { // 从非秒杀入口进入,地址不带prom_type、prom_id参数
484   - getApp().request.promiseGet('/api/weshop/activitylist/listGoodActInfo2', {
485   - data: {
486   - store_id: os.stoid,
487   - goods_id: goods_id,
488   - goods_type: 1,
489   - user_id: oo.user_id,
490   - }
491   - }).then(res => {
492   - if (res.data.code == 0) {
493   - let result = res.data.data;
494   - let resLength = result.length;
495   - if(resLength == 1) { // 如果数组长度为1,则直接显示当前活动
496   - let goods_id = this.data.options.goods_id;
497   - let prom_type = result[0].prom_type;
498   - let prom_id = result[0].act_id;
499   - this.setData({
500   - 'options.prom_type': prom_type,
501   - 'options.prom_id': prom_id,
502   - });
503   - // 检查活动是否开始
504   - this.check_prom(goods_id, prom_type, prom_id);
505   - } else if(resLength > 1) { //如果数组长度大于1,表示当前商品参加多个活动,以列表形式显示多活动
506   - this.setData({
507   - actList: res.data.data,
508   - });
509   - };
510   -
511   - };
512   - });
513   - };
514   - // <---- 秒杀
515   -
516   -
517   -
518   -
519   -
520   -
521   -
522   -
523   -
524   -
525   - //------是否收藏----------
526   - await getApp().request.promiseGet("/api/weshop/goodscollect/page", {
527   - data: {
528   - store_id: os.stoid,
529   - goods_id: gid,
530   - user_id: oo.user_id,
531   - }
532   - }).then(res => {
533   - var t = res;
534   - var data = t.data.data.pageData;
535   - if (data && data.length > 0) {
536   - //ee.setData({ is_collect: 1, collect_id: data[0].collect_id, });
537   - is_collect = 1;
538   - collect_id = data[0].collect_id;
539   - }
540   - })
541   -
542   - //------获取评价的统计数量----
543   - await getApp().request.promiseGet("/api/weshop/serviceComment/countlist/", {
544   - data: {
545   - store_id: os.stoid,
546   - service_id: gid
547   - },
548   - }).then(res => {
549   - console.log('get评价统计数量', res.data.data);
550   - var t = res;
551   - var g = t.data.data[0];
552   - if (g != null && g != undefined) {
553   - var allnum = g.c0 + g.c1 + g.c2 + g.c3 + g.c4 + g.c5;
554   - var num2 = g.c4 + g.c5;
555   - var num3 = g.c3;
556   - var num4 = g.c0 + g.c1 + g.c2;
557   -
558   - var dd = ee.data.categories3;
559   - dd[0].num = allnum;
560   - dd[1].num = g.cimg;
561   - dd[2].num = num2;
562   - dd[3].num = num3;
563   - dd[4].num = num4;
564   -
565   - categories3 = dd;
566   - }
567   - });
568   -
569   - //----获取详情页的评价----
570   - await getApp().request.promiseGet("/api/weshop/serviceComment/pageComment", {
571   - data: {
572   - store_id: os.stoid,
573   - service_id: gid,
574   - pageSize: 3,
575   - parent_id: 0,
576   - page: 1,
577   - is_show: 1,
578   - },
579   - }).then(res => {
580   - console.log('get详情页评价', res.data.data);
581   - fir_com = res.data.data.pageData;
582   - });
583   -
584   - if (fir_com) {
585   - for (var ind in fir_com) {
586   - if (fir_com[ind].head_pic == "") fir_com[ind].head_pic = ee.data.iurl + "/miniapp/images/hui_hear_pic.png";
587   - if (fir_com[ind].img) fir_com[ind].img = ut.unserialize(fir_com[ind].img);
588   - if (fir_com[ind].weapp_img) fir_com[ind].weapp_img = JSON.parse(fir_com[ind].weapp_img);
589   - }
590   - };
591   -
592   - this.getTaohe();
593   -
594   - //this.getHistoryBuy(); //获取历史购买
595   - ee.setData({
596   - is_collect: is_collect,
597   - collect_id: collect_id,
598   - categories3: categories3,
599   - fir_quan: fir_quan,
600   - fir_comments: fir_com,
601   - // cardComments: fir_com,
602   - });
603   -
604   - },
605   -
606   - //---展示---
607   - // gid 在onload阶段已经保存在this.data中
608   - onShow: function() {
609   -
610   - getApp().check_can_share();
611   - var that=this;
612   - var ee = this,gid = this.data.gid, i = getApp().request;
613   - this.data.is_timer = 1;
614   - this.wait_for_store_config();
615   -
616   -
617   -
618   -
619   - i.get("/api/weshop/serviceCard/get/" + os.stoid + "/" + ee.data.gid, {
620   - failRollback: !0,
621   - success: function(t) {
622   - if (t.data.code == 0) {
623   - // console.log('GET pic and video');
624   - if(t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_url) {
625   - that.setData({
626   - mapurl: t.data.data.listServiceVideos[0].video_url,
627   - });
628   - };
629   - if(t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_img) {
630   - that.setData({
631   - mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
632   - });
633   - };
634   - if(t.data.data.listServiceImages) {
635   - that.setData({
636   - gallery: t.data.data.listServiceImages,
637   - });
638   - };
639   - if(t.data.data.listServiceItem) {
640   - that.setData({
641   - listServiceItem: t.data.data.listServiceItem,
642   - });
643   - };
644   - that.setData({
645   - 'data.goods_name': t.data.data.serviceName,
646   - 'data.shop_price': t.data.data.money,
647   - 'data.show_price': t.data.data.show_price,
648   - 'data.validDays': t.data.data.validDays,
649   - 'data.serviceContent': t.data.data.serviceContent,
650   - 'data.image_url': t.data.data.imgUrl,
651   - 'data.goods_id': t.data.data.id,
652   - 'data.id': t.data.data.id,
653   - 'data.sales_sum': t.data.data.sales_sum,
654   - 'data.storageId':t.data.data.storageId,
655   - 'data.service_sn':t.data.data.serviceSn,
656   - 'data.listServiceVideos': t.data.data.listServiceVideos,
657   - // gallery: t.data.data.listServiceImages,
658   - // mapurl: t.data.data.listServiceVideos[0].video_url,
659   - // mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
660   - //listServiceItem: t.data.data.listServiceItem,
661   - });
662   -
663   - // console.log('0xxxxx999999', t.data.data);
664   - //-----商品详情---
665   - if(!t.data.data.serviceContent) t.data.data.serviceContent=" ";
666   - a.wxParse("content", "html", t.data.data.serviceContent, ee, 6);
667   - e.wxParseAddFullImageUrl(ee, "content");
668   -
669   - //获取重表
670   - getApp().promiseGet("/api/weshop/serviceItem/list",{
671   - data:{store_id:os.stoid,service_id:t.data.data.id}
672   - }).then(res=>{
673   - if(res.data.code==0){
674   - var list=res.data.data;
675   - that.setData({service_list:list})
676   - }
677   - })
678   -
679   -
680 346  
681   - } else {
682   - wx.showModal({
683   - title: t.data.msg,
684   - showCancel: !1,
685   - complete: function() {
686   - wx.navigateBack();
687   - }
688   - });
689   - };
690   - }
691   - });
692   -
693   -
694   -
695   - this.data.enterAddressPage && (this.data.enterAddressPage = !1);
696   - this.get_sto();
697   -
698   -
699   -
700   - },
701   -
702   - enterAddress: function() {
703   - this.data.enterAddressPage = !0, wx.navigateTo({
704   - url: "/pages/user/address_list/address_list?operate=selectAddress"
705   - });
706   - },
707   -
708   - onUnload: function() {
709   - for(var i = 1; i < 100; i++) {
710   - clearInterval(i);
711   - }
712   - },
713   -
714   - onHide: function() {
715   - this.data.is_timer = 0;
716   - for(var i = 1; i < 100; i++) {
717   - clearInterval(i);
718   - }
719   - },
720   - //----------三个选项按钮-----------
721   - tabClick: function(t) {
722   - var e = t.currentTarget.id;
723   - this.setData({
724   - activeCategoryId: e
725   - }), 1 == e ? this.tabGoodsContent() : 2 == e && this.tabComment();
726   - },
727   -
728   - // tabClick2: function(t) {
729   - // this.setData({
730   - // activeCategoryId2: t.currentTarget.id
731   - // });
732   - // },
733   -
734   - tabClick3: function(t) {
735   - var e = this;
736   - if (t.currentTarget.id != this.data.activeCategoryId3) {
737   - e.data.c_curr_p = 1;
738   - this.setData({
739   - activeCategoryId3: t.currentTarget.id,
740   - comments: null,comments_no_more:0,get_c:0,
741   - });
742   - this.requestComments_new();
743   - }
744   - },
745   -
746   - // doScrollTop: function() {
747   - // wx.pageScrollTo({
748   - // scrollTop: 0
749   - // });
750   - // },
751   -
752   - tabComment: function() {
753   - this.setData({
754   - activeCategoryId: 2,comments_no_more:0,get_c:0
755   - }), this.data.comments || this.requestComments_new();
756   - },
757   -
758   - //商品详情的时候调用
759   - tabGoodsContent: function() {
760   - var th = this,
761   - i = getApp().request;
762   - this.setData({
763   - activeCategoryId: 1
764   - });
765   - },
766   -
767   -
768   -
769   - //------------加入购物车--------------
770   - addCart: async function(t) {
771   - var th = this;
772   - var ind = t.currentTarget.dataset.openSpecModal_ind;
773   - var action= t.currentTarget.dataset.action;
774   - if(!ind) ind = t.currentTarget.dataset.openspecmodal_ind;
775   -
776   - th.setData({
777   - open_ind_store: ind
778   - });
779   -
780   - if(!th.data.sto_sele_name) {
781   - getApp().my_warnning('请选择门店', 1, th, 450);
782   - return false;
783   - };
784   -
785   - // 库存
786   - var redisNums = 0;
787   - // 限购数
788   - var limitNum = 0;
789   - // 已购买数量
790   - var boughtNum = 0;
791   -
792   - // 秒杀活动
793   - if(this.data.prom_type == 1) {
794   - // 如果是秒杀活动下的单独购买,is_normal为1
795   - if(this.data.openSpecModal_flash_normal) this.data.is_normal = 1;
796   -
797   - if(!this.data.is_normal) {// 秒杀购买
798   -
799   - // 获取redis当前可以购买的数量
800   - // 如果数量为0,设置和显示已抢光
801   - // 否则,进一步判断是否超出限购或超出库存
802   - await this.getactLen().then(async function(res) {
803   - redisNums = res;
804   - let curNum = th.data.goodsInputNum;
805   - // res: redis可购买数量
806   - console.log('当前可以购买的数量:', res);
807   - if(res <= 0) {
808   - // 可购买数量<=0, 设置和显示已抢光
809   - th.setData({
810   - prom_r_null: 1,
811   - });
812   - // wx.showModal({
813   - // title: '超出活动库存',
814   - // });
815   - getApp().my_warnning('超出活动库存', 0, self);
816   - return false;
817   - } else {
818   - // 可购买数量>0
819   - // 计算自己还可以购买的数量
820   - // 自己还可购买的数量c = 每人活动限购数量a - 自己已经购买的数量b
821   - // 如果限购数量a>redis可购买数量d,当增加数量t>d, 提示超出库存
822   - // 如果限购数量a<=redis可购买数量d, 当增加数量t>a,提示超出限购
823   - let actInfo = th.data.sele_g;
824   - await th.get_buy_num2().then(function (data) {
825   - let limited = actInfo.buy_limit; // 限购数量a
826   - let promcardbuynum = data.data.data.promcardbuynum;
827   - let buyedNum = promcardbuynum; // 自己已经购买的数量b
828   - let canBuyNum = limited - buyedNum; // 自己还可购买的数量c
829   - limitNum = limited;
830   - boughtNum = buyedNum;
831   -
832   - if(canBuyNum <= 0) {
833   - canBuyNum = 0;
834   - };
835   -
836   - if(canBuyNum > res) {
837   - if(curNum > res) { // t当前增减的数量
838   - // wx.showModal({
839   - // title: '超出活动库存',
840   - // });
841   - getApp().my_warnning('超出活动库存', 0, self);
842   - th.setData({
843   - goodsInputNum: res,
844   - });
845   - return false;
846   - };
847   - };
848   -
849   - if(canBuyNum <= res) {
850   - if(curNum > canBuyNum) {
851   - // wx.showModal({
852   - // title: '超出限购数量',
853   - // });
854   - getApp().my_warnning('超出限购数量', 0, self);
855   - th.setData({
856   - goodsInputNum: canBuyNum,
857   - });
858   - return false;
859   - };
860   - };
861   -
862   -
863   - });
864   -
865   -
866   -
867   - };
868   - });
869   -
870   - };
871   -
872   -
873   - };
874   -
875   -
876   -
877   - if(action=="buy"){
878   - //--------------此时操作的数据------------
879   - var newd = {
880   - id: th.data.data.id,
881   - goods_num: th.data.goodsInputNum,
882   - pick_id: th.data.sto_sele_id,
883   - keyid: th.data.sto_sele_keyid,
884   - };
885   - newd['pick_name'] = th.data.sto_sele_name;
886   - newd['guide_id'] = getApp().globalData.guide_id;
887   - newd['guide_type']=0;
888   -
889   - if(this.data.prom_type && this.data.prom_type == 1) {
890   - newd['prom_type'] = this.data.prom_type;
891   - newd['prom_id'] = this.data.prom_id;
892   - newd['prom_price'] = this.data.prom_price;
893   - };
894   -
895   - if(this.data.prom_type == 1 && this.data.openSpecModal_flash_normal) {
896   - newd['prom_type'] = 0;
897   - newd['prom_price'] = this.data.data.shop_price;
898   - };
899   -
900   - // console.log('newd++++++++', newd);
901   - th.buyNow(newd);
902   - } else {
903   -
904   - var newd = {
905   - service_id: th.data.data.id,
906   - service_sn:th.data.data.service_sn,
907   - service_name:th.data.data.goods_name,
908   - goods_num: th.data.goodsInputNum,
909   - pick_id: th.data.sto_sele_id,
910   - user_id:oo.user_id,
911   - store_id:os.stoid,
912   - money:th.data.data.shop_price,
913   - };
914   - if(getApp().globalData.guide_id) {
915   - newd['guide_id'] = getApp().globalData.guide_id;
916   - newd['guide_type']=0;
917   - };
918   - // 秒杀:单独购买的情况下,加入购物车显示的是零售价,否则显示秒杀活动价
919   - if(th.data.options.prom_type == 1) {
920   - newd['prom_type'] = th.data.options.prom_type;
921   - newd['prom_id'] = th.data.options.prom_id;
922   - if(th.data.openSpecModal_flash_normal) {
923   - newd['money'] = th.data.data.shop_price;
924   - newd['is_pd_normal'] = 1;
925   - } else {
926   - newd['money'] = th.data.prom_price;
927   - };
928   - };
929   -
930   -
931   - //----先看会员在购物车中是否加入了该商品-----
932   - getApp().request.get("/api/weshop/cartService/page", {
  347 + if(getApp().globalData.is_dj_pk) th.setData({has_def:1})
  348 + var ee = JSON.parse(JSON.stringify(e));
  349 + //--定时器推迟一下--
  350 + setTimeout(function () {
  351 + if (!th.data.data) return false;
  352 + var ser_card = th.data.data;
  353 + //--如果默认门店不在等级卡的默认们店以内
  354 + if (ser_card.storageId != null && ser_card.storageId != "" && ser_card.storageId.indexOf(ee.keyid) == -1) {
  355 + ee.is_no_dis = 1;
  356 + }
  357 +
  358 + var appd = getApp().globalData;
  359 + var w_time = setInterval(function () {
  360 + if (that.data.is_get_local_ok == 0) return false;
  361 + clearInterval(w_time);
  362 + var distance = null;
  363 + var e = JSON.parse(JSON.stringify(ee));
  364 +
  365 + //如果有开启近距离的话,同时距离优不一样了
  366 + if (that.data.lat != null) {
  367 + //如果经纬度有变化的话
  368 + if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) {
  369 + that.data.fir_def_store = e;
  370 + that.setData({
  371 + def_pick_store: e,
  372 + sto_sele_name: e.pickup_name,
  373 + sto_sele_id: e.pickup_id,
  374 + sto_sele_distr: e.distr_type,
  375 + sto_sele_keyid: e.keyid,
  376 + })
  377 + } else {
  378 + //要用接口是获取距离,js的计算不准
  379 + getApp().request.promiseGet("/api/weshop/pickup/list", {
  380 + data: {
  381 + store_id: os.stoid,
  382 + pickup_id: e.pickup_id,
  383 + lat: th.data.lat,
  384 + lon: th.data.lon,
  385 + is_pos: 1
  386 + },
  387 + }).then(res => {
  388 + if (ut.ajax_ok(res)) {
  389 + e = res.data.data.pageData[0];
  390 + if (e) {
  391 + e.is_no_dis = ee.is_no_dis;
  392 + appd.pk_store = e;
  393 + that.data.fir_def_store = e;
  394 + that.setData({
  395 + def_pick_store: e,
  396 + sto_sele_name: e.pickup_name,
  397 + sto_sele_id: e.pickup_id,
  398 + sto_sele_distr: e.distr_type,
  399 + sto_sele_keyid: e.keyid,
  400 + })
  401 + }
  402 +
  403 + }
  404 + })
  405 + }
  406 +
  407 + //e.distance = distance;
  408 + appd.lat = that.data.lat;
  409 + appd.lon = that.data.lon;
  410 +
  411 + } else {
  412 + if (e) {
  413 + e.distance = null;
  414 + that.data.fir_def_store = e;
  415 + that.setData({
  416 + def_pick_store: e,
  417 + sto_sele_name: e.pickup_name,
  418 + sto_sele_id: e.pickup_id,
  419 + sto_sele_distr: e.distr_type,
  420 + sto_sele_keyid: e.keyid,
  421 + })
  422 + }
  423 + }
  424 + }, 500)
  425 + }, 700)
  426 +
  427 + });
  428 +
  429 +
  430 + },
  431 +
  432 +
  433 + onReady() {
  434 + // 用于控制保障服务折叠图标的显示
  435 + setTimeout(() => {
  436 + wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => {
  437 +
  438 + if (res.length != 0) {
  439 + this.setData({
  440 + showFold: res[0].height < res[1].height,
  441 + });
  442 + }
  443 +
  444 + }).exec();
  445 + }, 1000);
  446 +
  447 + },
  448 +
  449 +
  450 + //------------程序初始化入口-------------
  451 + async init(gid) {
  452 + var ee = this,
  453 + th = ee,
  454 + gallery = null,
  455 + is_collect = 0,
  456 + collect_id = 0,
  457 + categories3 = ee.data.categories3,
  458 + fir_com = null,
  459 + fir_quan = null,
  460 + mapurl = null,
  461 + mapurl_f_img = null;
  462 +
  463 +
  464 +
  465 + let goods_id = this.data.options.goods_id;
  466 + if (!goods_id) goods_id = this.data.data.goods_id;
  467 +
  468 + //------是否收藏----------
  469 + await getApp().request.promiseGet("/api/weshop/goodscollect/page", {
933 470 data: {
934 471 store_id: os.stoid,
  472 + goods_id: gid,
935 473 user_id: oo.user_id,
936   - service_id: th.data.data.id,
  474 + }
  475 + }).then(res => {
  476 + var t = res;
  477 + var data = t.data.data.pageData;
  478 + if (data && data.length > 0) {
  479 + is_collect = 1;
  480 + collect_id = data[0].collect_id;
  481 + }
  482 + })
  483 +
  484 + //------获取评价的统计数量----
  485 + await getApp().request.promiseGet("/api/weshop/serviceComment/countlist/", {
  486 + data: {
  487 + store_id: os.stoid,
  488 + service_id: gid
937 489 },
938   - success: function(re) {
939   - //-------如果购物车中有相关的数据---------
940   - if (re.data.data.total > 0) {
941   - var item = null;
942   - // 多门店问题
943   - var cartGoodsNum = 0;
944   - const tmpObj = re.data.data.pageData;
945   - for (let i = 0; i < tmpObj.length; i++) {
946   - if (th.data.sto_sele_id != tmpObj[i].pick_id) {
947   - cartGoodsNum += parseInt(tmpObj[i].goods_num);
948   - } else {
949   - item = tmpObj[i];
950   - }
951   - }
952   - // 当前门店同类商品还没加入到购物车 但是有其他门店的同类商品
953   - if (th.data.prom_type == 1 && !th.data.is_normal && !item) {
954   -
955   - // 秒杀购物车购买 修正数量
956   - var snum = limitNum - boughtNum;
957   - if (snum <= 0) {
958   - // wx.showModal({
959   - // title: '超出限购数量',
960   - // });
961   - getApp().my_warnning('超出限购数量', 0, self);
962   - return false;
963   - }
964   -
965   - var cSnum = snum- cartGoodsNum <= 0 ? 0 : snum- cartGoodsNum;
966   - var cRedisNums = redisNums- cartGoodsNum <= 0 ? 0 : redisNums- cartGoodsNum;
967   -
968   - if (newd['goods_num'] >= redisNums){
969   - if (redisNums > snum) {
970   - newd['goods_num'] = cSnum;
971   - } else {
972   - newd['goods_num'] = cRedisNums;
973   - }
974   - } else {
975   - if (newd['goods_num'] > snum) newd['goods_num'] = cSnum;
976   - }
977   -
978   - if (newd['goods_num'] <= 0) {
979   - getApp().my_warnning('加入购物车成功', 1, th, 450);
980   - th.closeSpecModal();
981   - return false;
982   - }
983   - getApp().request.post("/api/weshop/cartService/save", {
984   - data: newd,
985   - success: function(t) {
986   - getApp().my_warnning('加入购物车成功', 1, th, 450);
987   - var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
988   - th.setData({
989   - cartGoodsNum: c_num
990   - });
991   - th.closeSpecModal();
992   - }
993   - });
994   - return false;
995   - }
996   -
997   - // 以下为当前门店同类商品已经加入到购物车
998   - var totalNum = th.data.goodsInputNum + item.goods_num;
999   -
1000   - // 秒杀购物车购买 修正数量
1001   - if (th.data.prom_type == 1 && !th.data.is_normal) {
1002   - var snum = limitNum - boughtNum;
1003   - if (snum <= 0) {
1004   - // wx.showModal({
1005   - // title: '超出限购数量',
1006   - // });
1007   - getApp().my_warnning('超出限购数量', 0, self);
1008   - return false;
1009   - }
1010   - if (totalNum >= redisNums){
1011   - if (redisNums > snum) {
1012   - totalNum = snum- cartGoodsNum;
1013   - } else {
1014   - totalNum = redisNums- cartGoodsNum;
1015   - }
1016   - } else {
1017   - if (totalNum > snum)
1018   - totalNum = snum- cartGoodsNum;
1019   - }
1020   - }
1021   -
1022   - var updata = {
1023   - id: item.id,
1024   - goods_num: totalNum,
1025   - money: th.data.data.shop_price,
1026   - store_id: os.stoid,
1027   - };
1028   -
1029   - // 秒杀:单独购买的情况下,加入购物车显示的是零售价,否则显示秒杀活动价
1030   - if(th.data.options.prom_type == 1) {
1031   - // updata['prom_type'] = th.data.options.prom_type;
1032   - // updata['prom_id'] = th.data.options.prom_id;
1033   - if(th.data.openSpecModal_flash_normal) {
1034   - updata['money'] = th.data.data.shop_price;
1035   - updata['is_pd_normal'] = 1;
1036   - } else {
1037   - updata['money'] = th.data.prom_price;
1038   - };
1039   - };
1040   -
1041   - if (getApp().globalData.guide_id) {
1042   - updata['guide_id'] = getApp().globalData.guide_id;
1043   - updata['guide_type'] = 1;
  490 + }).then(res => {
  491 + console.log('get评价统计数量', res.data.data);
  492 + var t = res;
  493 + var g = t.data.data[0];
  494 + if (g != null && g != undefined) {
  495 + var allnum = g.c0 + g.c1 + g.c2 + g.c3 + g.c4 + g.c5;
  496 + var num2 = g.c4 + g.c5;
  497 + var num3 = g.c3;
  498 + var num4 = g.c0 + g.c1 + g.c2;
  499 +
  500 + var dd = ee.data.categories3;
  501 + dd[0].num = allnum;
  502 + dd[1].num = g.cimg;
  503 + dd[2].num = num2;
  504 + dd[3].num = num3;
  505 + dd[4].num = num4;
  506 +
  507 + categories3 = dd;
  508 + }
  509 + });
  510 +
  511 + //----获取详情页的评价----
  512 + await getApp().request.promiseGet("/api/weshop/serviceComment/pageComment", {
  513 + data: {
  514 + store_id: os.stoid,
  515 + service_id: gid,
  516 + pageSize: 3,
  517 + parent_id: 0,
  518 + page: 1,
  519 + is_show: 1,
  520 + },
  521 + }).then(res => {
  522 + fir_com = res.data.data.pageData;
  523 + });
  524 +
  525 + if (fir_com) {
  526 + for (var ind in fir_com) {
  527 + if (fir_com[ind].head_pic == "") fir_com[ind].head_pic = ee.data.iurl + "/miniapp/images/hui_hear_pic.png";
  528 + if (fir_com[ind].img) fir_com[ind].img = ut.unserialize(fir_com[ind].img);
  529 + if (fir_com[ind].weapp_img) fir_com[ind].weapp_img = JSON.parse(fir_com[ind].weapp_img);
  530 + }
  531 + }
  532 +
  533 +
  534 + //this.getHistoryBuy(); //获取历史购买
  535 + ee.setData({
  536 + is_collect: is_collect,
  537 + collect_id: collect_id,
  538 + categories3: categories3,
  539 + fir_quan: fir_quan,
  540 + fir_comments: fir_com,
  541 + //cardComments: fir_com,
  542 + });
  543 +
  544 + },
  545 +
  546 + //---展示---
  547 + // gid 在onload阶段已经保存在this.data中
  548 + onShow: function () {
  549 +
  550 + getApp().check_can_share(this);
  551 + var that = this;
  552 + var ee = this, gid = this.data.gid, i = getApp().request;
  553 + this.data.is_timer = 1;
  554 + this.wait_for_store_config();
  555 +
  556 + i.get("/api/weshop/serviceCard/get/" + os.stoid + "/" + ee.data.gid, {
  557 + failRollback: !0,
  558 + success: function (t) {
  559 + if (t.data.code == 0) {
  560 + // console.log('GET pic and video');
  561 + if (t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_url) {
  562 + that.setData({
  563 + mapurl: t.data.data.listServiceVideos[0].video_url,
  564 + });
1044 565 }
1045   - getApp().request.put("/api/weshop/cartService/update", {
1046   - data: updata,
1047   - success: function(t) {
1048   - getApp().my_warnning('加入购物车成功', 1, th, 450);
1049   - var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
1050   - th.setData({
1051   - cartGoodsNum: c_num
1052   - });
1053   - th.closeSpecModal();
1054   - }
  566 +
  567 + if (t.data.data.listServiceVideos && t.data.data.listServiceVideos[0] && t.data.data.listServiceVideos[0].video_img) {
  568 + that.setData({
  569 + mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
  570 + });
  571 + }
  572 +
  573 + if (t.data.data.listServiceImages) {
  574 + that.setData({
  575 + gallery: t.data.data.listServiceImages,
  576 + });
  577 + }
  578 +
  579 + if (t.data.data.listServiceItem) {
  580 + that.setData({
  581 + listServiceItem: t.data.data.listServiceItem,
  582 + });
  583 + }
  584 +
  585 + that.setData({
  586 + 'sele_g':t.data.data,
  587 + 'data.goods_name': t.data.data.serviceName,
  588 + 'data.shop_price': t.data.data.money,
  589 + 'data.show_price': t.data.data.show_price,
  590 + 'data.validDays': t.data.data.validDays,
  591 + 'data.serviceContent': t.data.data.serviceContent,
  592 + 'data.image_url': t.data.data.imgUrl,
  593 + 'data.goods_id': t.data.data.id,
  594 + 'data.id': t.data.data.id,
  595 + 'data.sales_sum': t.data.data.sales_sum,
  596 + 'data.storageId': t.data.data.storageId,
  597 + 'data.service_sn': t.data.data.serviceSn,
  598 + 'data.listServiceVideos': t.data.data.listServiceVideos,
  599 + // gallery: t.data.data.listServiceImages,
  600 + // mapurl: t.data.data.listServiceVideos[0].video_url,
  601 + // mapurl_f_img: t.data.data.listServiceVideos[0].video_img,
  602 + //listServiceItem: t.data.data.listServiceItem,
1055 603 });
  604 +
  605 +
  606 + // ----> 秒杀
  607 + let prom_type = that.data.options.prom_type;
  608 +
  609 + if (prom_type) { // 进入商品详情页地址传参有带goods_id、prom_type、prom_id参数, 即从秒杀入口进入
  610 + let prom_id = that.data.options.prom_id;
  611 + // 检查活动是否开始
  612 + that.check_prom(t.data.data.id, prom_type, prom_id);
  613 + }
  614 +
  615 +
  616 + that.getTaohe();
  617 + //-----商品详情---
  618 + if (!t.data.data.serviceContent) t.data.data.serviceContent = " ";
  619 + a.wxParse("content", "html", ut.format_content(t.data.data.serviceContent), ee, 6);
  620 + e.wxParseAddFullImageUrl(ee, "content");
  621 +
  622 + //获取重表
  623 + getApp().promiseGet("/api/weshop/serviceItem/list", {
  624 + data: {store_id: os.stoid, service_id: t.data.data.id}
  625 + }).then(res => {
  626 + if (res.data.code == 0) {
  627 + var list = res.data.data;
  628 + that.setData({service_list: list})
  629 + }
  630 + })
  631 +
1056 632 } else {
1057   - getApp().request.post("/api/weshop/cartService/save", {
1058   - data: newd,
1059   - success: function(t) {
1060   - getApp().my_warnning('加入购物车成功', 1, th, 450);
1061   - var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
1062   - th.setData({
1063   - cartGoodsNum: c_num
1064   - });
1065   - th.closeSpecModal();
  633 + wx.showModal({
  634 + title: t.data.msg,
  635 + showCancel: !1,
  636 + complete: function () {
  637 + wx.navigateBack();
1066 638 }
1067 639 });
1068 640 }
  641 +
1069 642 }
1070 643 });
1071 644  
1072   - };
1073   -
1074   -
1075   -
1076   -
1077   -
1078   -
1079   -
1080   - },
1081   -
1082   - //----------立即购买-----------
1083   - buyNow: function(e) {
1084   - getApp().globalData.service_now=e;
1085   - wx.redirectTo({
1086   - url: "/packageA/pages/cart2_ser/cart2_ser",
1087   - });
1088   - },
1089   - //----------增加购买数量-----------
1090   - addCartNum: function(t) {
1091   - this.checkCartNum(this.data.goodsInputNum + 1);
1092   - },
1093   - //----------减少购买数量-----------
1094   - subCartNum: function(t) {
1095   - this.checkCartNum(this.data.goodsInputNum - 1);
1096   - },
1097   - //----------输入框输入购买数量-----------
1098   - inputCartNum: function(t) {
1099   - this.checkCartNum(Number(t.detail.value));
1100   - },
1101   -
1102   - //------检查数量是不是超出限购------
1103   - checkCartNum: async function(t) {
1104   - var th = this;
1105   -
1106   - if(!th.data.def_pick_store) {
1107   - wx.showModal({title: '请选择门店',});
1108   - return false;
1109   - };
1110   -
1111   - // 非秒杀活动
1112   - if(this.data.prom_type != 1) {
1113   - this.setData({
1114   - goodsInputNum: t,
1115   - });
1116   - };
1117   -
1118   - // 秒杀活动
1119   - if(this.data.prom_type == 1) {
1120   - // 如果是秒杀活动下的单独购买,is_normal为1
1121   - if(this.data.openSpecModal_flash_normal) this.data.is_normal = 1;
1122   -
1123   - if(this.data.is_normal) {// 单独购买
1124   - this.setData({
1125   - goodsInputNum: t,
1126   - });
1127   - } else {// 秒杀购买
1128   -
1129   - // 获取redis当前可以购买的数量
1130   - // 如果数量为0,设置和显示已抢光
1131   - // 否则,进一步判断是否超出限购或超出库存
1132   - await this.getactLen().then(async function(res) {
1133   - // res: redis可购买数量
1134   - // console.log('当前可以购买的数量:', res);
1135   - if(res <= 0) {
1136   - // 可购买数量<=0, 设置和显示已抢光
1137   - th.setData({
1138   - prom_r_null: 1,
1139   - });
1140   - } else {
1141   - // 可购买数量>0
1142   - // 计算自己还可以购买的数量
1143   - // 自己还可购买的数量c = 每人活动限购数量a - 自己已经购买的数量b
1144   - // 如果限购数量a>redis可购买数量d,当增加数量t>d, 提示超出库存
1145   - // 如果限购数量a<=redis可购买数量d, 当增加数量t>a,提示超出限购
1146   - let actInfo = th.data.sele_g;
1147   - await th.get_buy_num2().then(function (data) {
1148   - let limited = actInfo.buy_limit; // 限购数量a
1149   - let promcardbuynum = data.data.data.promcardbuynum;
1150   - let buyedNum = promcardbuynum; // 自己已经购买的数量b
1151   - let canBuyNum = limited - buyedNum; // 自己还可购买的数量c
1152   -
1153   - if(canBuyNum <= 0) {
1154   - canBuyNum = 0;
1155   - };
1156   -
1157   - if(limited > res) {
1158   - if(t > res) { // t当前增减的数量
1159   - // wx.showModal({
1160   - // title: '超出活动库存',
1161   - // });
1162   - getApp().my_warnning('超出活动库存', 0, self);
1163   - th.setData({
1164   - goodsInputNum: res,
1165   - });
1166   - return false;
1167   - };
1168   - };
1169   -
1170   - if(limited <= res) {
1171   - if(t>canBuyNum) {
1172   - // wx.showModal({
1173   - // title: '超出限购数量',
1174   - // });
1175   - getApp().my_warnning('超出限购数量', 0, self);
1176   - th.setData({
1177   - goodsInputNum: canBuyNum,
1178   - });
1179   - return false;
1180   - };
1181   - };
1182   -
1183   - th.setData({
1184   - goodsInputNum: t,
1185   - });
1186   - });
1187   - };
1188   - });
1189   -
1190   - }
1191   -
1192   -
1193   - };
1194   -
1195   - },
1196   -
1197   -
1198   - closeSpecModal: function() {
1199   - this.setData({
1200   - openSpecModal: !1,
1201   - openSpecModal_pt: !1,
1202   - openSpecModal_flash_normal: !1,
1203   - });
1204   - },
1205   -
1206   - openSpecModel: function(t) {
1207   - var th=this;
1208   - var open_store = t.currentTarget.dataset.ind;
1209   - this.setData({
1210   - store: 0,
1211   - choice_sort_store: 0,
1212   - sort_store: 0,
1213   - open_ind_store: open_store,
1214   - })
1215   - //--先判断会员状态--
1216   - var user_info = getApp().globalData.userInfo;
1217   - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
1218   - wx.navigateTo({
1219   - url: '/packageE/pages/togoin/togoin',
1220   - })
1221   - return false;
1222   - }
1223   -
1224   - var ind = t.currentTarget.dataset.ind;
1225   - this.setData({
1226   - openSpecModal: !0,
1227   - openSpecModal_ind: ind,
1228   - });
1229   -
1230   - },
1231   -
1232   - //---------点击收藏和不收藏------------
1233   - collectGoods: function() {
1234   - var t = this,i = getApp().request;
1235   - var user_id = s.globalData.user_id;
1236   - if (user_id == '') {
1237   - getApp().getUserFir(function() {});
1238   - getApp().showWarning("未登录");
1239   - return false;
1240   - } else {
1241   -
1242   - if(t.data.is_collect_load) return false;
1243   - t.data.is_collect_load=1;
1244   -
1245   - if (t.data.is_collect == 1) { //删除收藏
1246   - i.delete("/api/weshop/goodscollect/del/" + os.stoid + "/" + t.data.collect_id, {
1247   - success: function(e) {
1248   - t.data.is_collect_load=0;
1249   - if (e.data.code == 0) {
1250   - t.setData({
1251   - is_collect: 0,
1252   - collect_id: 0,
1253   - });
1254   - }
1255   - }
  645 + this.data.enterAddressPage && (this.data.enterAddressPage = !1);
  646 + this.get_sto();
  647 +
  648 + },
  649 +
  650 + enterAddress: function () {
  651 + this.data.enterAddressPage = !0, wx.navigateTo({
  652 + url: "/pages/user/address_list/address_list?operate=selectAddress"
1256 653 });
1257   - } else {
1258   - var timestamp = Date.parse(new Date());
1259   - timestamp = timestamp / 1000;
1260   - var d = {
1261   - goods_id: t.data.data.goods_id,
1262   - user_id: s.globalData.user_id,
1263   - store_id: os.stoid,
1264   - add_time: timestamp,
1265   - type: 1,
1266   - };
1267   - //加入收藏夹就是导购的ID
1268   - if(getApp().globalData.guide_id){
1269   - d.guide_id=getApp().globalData.guide_id;
1270   - d.guide_type=2;
  654 + },
  655 +
  656 + onUnload: function () {
  657 + for (var i = 1; i < 100; i++) {
  658 + clearInterval(i);
1271 659 }
  660 + },
1272 661  
1273   - i.post("/api/weshop/goodscollect/save", { //添加收藏
1274   - data: d,
1275   - success: function(e) {
1276   - t.data.is_collect_load=0;
1277   - if (e.data.code == 0) {
1278   - t.setData({
1279   - is_collect: 1,
1280   - collect_id: e.data.data.collect_id,
1281   - });
1282   - }
1283   - }
  662 + onHide: function () {
  663 + this.data.is_timer = 0;
  664 + for (var i = 1; i < 100; i++) {
  665 + clearInterval(i);
  666 + }
  667 + },
  668 + //----------三个选项按钮-----------
  669 + tabClick: function (t) {
  670 + var e = t.currentTarget.id;
  671 + this.setData({
  672 + activeCategoryId: e
  673 + }), 1 == e ? this.tabGoodsContent() : 2 == e && this.tabComment();
  674 + },
  675 +
  676 + // tabClick2: function(t) {
  677 + // this.setData({
  678 + // activeCategoryId2: t.currentTarget.id
  679 + // });
  680 + // },
  681 +
  682 + tabClick3: function (t) {
  683 + var e = this;
  684 + if (t.currentTarget.id != this.data.activeCategoryId3) {
  685 + e.data.c_curr_p = 1;
  686 + this.setData({
  687 + activeCategoryId3: t.currentTarget.id,
  688 + comments: null, comments_no_more: 0, get_c: 0,
  689 + });
  690 + this.requestComments_new();
  691 + }
  692 + },
  693 +
  694 + tabComment: function () {
  695 + this.setData({
  696 + activeCategoryId: 2, comments_no_more: 0, get_c: 0
  697 + }), this.data.comments || this.requestComments_new();
  698 + },
  699 +
  700 + //商品详情的时候调用
  701 + tabGoodsContent: function () {
  702 + this.setData({
  703 + activeCategoryId: 1
1284 704 });
1285   - }
1286   - }
1287   - },
1288   - //---------联系客服------------
1289   - contactService: function () {
1290   - this.getTel()
1291   - .then(() => {
1292   - if(self.data.store_tel) {
1293   - wx.showModal({
1294   - title: '联系客服',
1295   - content: '客服热线:' + self.data.store_tel,
1296   - confirmText: '拨打',
1297   - success(res) {
1298   - if(res.confirm) {
1299   - wx.makePhoneCall({
1300   - phoneNumber: self.data.store_tel,
1301   - })
1302   - };
1303   - },
1304   - });
1305   - };
1306   - });
1307   - },
1308   - // 获取客服电话
1309   - getTel() {
1310   - return new Promise((resolve, reject) => {
1311   - s.getConfig(function (t) {
1312   - if (t.store_tel == undefined) {
1313   - getApp().request.get("/api/weshop/store/get/" + os.stoid, {
1314   - isShowLoading: 1,
1315   - data: {},
1316   - success: function (rs) {
1317   - getApp().globalData.config = rs.data.data;
1318   - if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) {
1319   - getApp().my_warnning("商家未设置电话", 0, th);
1320   - return false;
1321   - }
1322   - self.setData({
1323   - store_tel: rs.data.data.store_tel,
1324   - });
1325   - // s.confirmBox("请联系客服:" + rs.data.data.store_tel);
1326   - }
1327   - })
1328   - } else {
1329   - self.setData({
1330   - store_tel: t.store_tel,
1331   - });
1332   - // s.confirmBox("请联系客服:" + t.store_tel);
1333   - };
1334   - resolve();
1335   - });
1336   - });
1337   - },
1338   - //-------获取购物车数量----------
1339   - requestCardNum: function() {
1340   - var t = this;
1341   - getApp().request.get("/api/weshop/cart/page", {
1342   - data: {
1343   - store_id: os.stoid,
1344   - user_id: getApp().globalData.user_id,
1345   - state:0,
1346   - is_gift:0
1347   - },
1348   - success: function(e) {
1349   - var num = 0;
1350   - for (var i = 0; i < e.data.data.pageData.length; i++) {
1351   - num += e.data.data.pageData[i].goods_num;
1352   - }
1353   - //-- 读取服务卡的数量 --
1354   - getApp().promiseGet("/api/weshop/cartService/page",{
1355   - data:{
1356   - store_id: os.stoid,
1357   - user_id: getApp().globalData.user_id,
1358   - }
1359   - }).then(res=>{
1360   - for (var i = 0; i < res.data.data.pageData.length; i++) {
1361   - num += res.data.data.pageData[i].goods_num;
1362   - }
1363   - t.setData({cartGoodsNum:num});
1364   - })
1365   -
1366   -
1367   - }
1368   - });
1369   - },
1370   -
1371   - //--点击分享事件---
1372   - onShareAppMessage: function(t) {
1373   -
1374   - var th = this;
1375   - var price = th.data.data.shop_price;
1376   - if (th.data.prom_act) {
1377   - price = th.data.prom_act.price;
1378   -
1379   - }
1380   - var title= th.data.data.goods_name;
1381   - var img=th.data.data.original_img;
1382   - if(th.data.prom_type==6){
1383   - title=th.data.prom_act.share_title;
1384   - img=th.data.iurl+th.data.prom_act.share_imgurl;
1385   - }
1386   -
1387   -
1388   -
1389   -
1390   - var url="/packageA/pages/goodsInfo/goodsInfo?goods_id=" + th.data.gid;
1391   - if(getApp().globalData.user_id) {
1392   - url+="&first_leader="+getApp().globalData.user_id;
1393   - }
1394   -
1395   - //-- 如果房间分享,且不是会员分享的 --
1396   - if(getApp().globalData.room_id &&
1397   - th.data.data.goods_id==getApp().globalData.room_goods_id &&
1398   - !getApp().globalData.room_user_share
1399   - ){
1400   - url+="&room_id="+getApp().globalData.room_id+"&room_user_share=1";
1401   - }
1402   -
1403   -
1404   - var ob={
1405   - title: price + "元 " +title,
1406   - path:url,
1407   - imageUrl: img,
1408   - };
1409   -
1410   - // 如果服务卡参加秒杀活动,且后台设置了分享标题和分享图片
1411   - if(th.data.prom_type == 1) {
1412   - if(th.data.sele_g && th.data.sele_g.share_title) {
1413   - title = th.data.sele_g.share_title;
1414   - ob.title = title;
1415   - };
1416   - if(th.data.sele_g && th.data.sele_g.share_imgurl) {
1417   - img = th.data.iurl + th.data.sele_g.share_imgurl;
1418   - ob.imageUrl = img;
1419   - };
1420   - };
1421   -
1422   - return ob;
1423   -
1424   - },
1425   -
1426   - //-----图片失败,默认图片-----
1427   - bind_bnerr: function(e) {
1428   - var _errImg = e.target.dataset.errorimg;
1429   - var _errObj = {};
1430   - _errObj[_errImg] = this.data.iurl + "/miniapp/images/default_g_img.gif";
1431   - this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
1432   - },
1433   -
1434   - //-----图片失败,默认图片-----
1435   - bind_bnerr2: function(e) {
1436   -
1437   - var _errImg = e.target.dataset.errorimg;
1438   - var _errObj = {};
1439   - _errObj[_errImg] = this.data.iurl + "/miniapp/images/hui_hear_pic.png"
1440   - this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
1441   - },
1442   -
1443   -
1444   - //---------拿出门店分类和门店------------
1445   - get_sto(e) {
1446   - var th = this,that=this;
1447   - var timer_get = setInterval(function() {
1448   - if (th.data.is_get_local_ok == 0) return false;
1449   - var i = getApp().request;
1450   - if (!th.data.data) return false;
1451   - var dd= {
1452   - store_id: os.stoid,
1453   - isstop: 0,
1454   - is_pos: 1,
1455   - pageSize: 2000
1456   - }
1457   - //如果有距离的话
1458   - if (th.data.lat != null) {
1459   - dd.lat = th.data.lat;
1460   - dd.lon = th.data.lon;
1461   - }
1462   - clearInterval(timer_get);
1463   -
1464   - //如果会员是有默认的门店话
1465   - if(!th.data.def_pick_store && th.data.fir_def_store){
1466   - th.setData({def_pick_store:th.data.fir_def_store});
1467   - }
1468   -
1469   - wx.showLoading({
1470   - title:'加载中.'
1471   - });
1472   - //----------获取门店----------------
1473   - getApp().request.promiseGet("/api/weshop/pickup/list", {
1474   - data: dd,
1475   - }).then(res => {
1476   - var e = res;
1477   - if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length>0) {
1478   -
1479   - var his_cate_num=0;
1480   - for(let i in e.data.data.pageData){
1481   - let item=e.data.data.pageData[i];
1482   - if(item.category_id>0){
1483   - his_cate_num=1;break;
1484   - }
  705 + },
  706 +
  707 + //-----------------拼单生成方法---------------------
  708 + addCart_pt: function () {
  709 + var th = this;
  710 + if (this.data.is_normal == 0) {
  711 + //看一下有没有起购数,如果有起购数,要计算起购数
  712 + var qnum = parseFloat(th.data.prom_act.minbuynum);
  713 + if (qnum > 0 && th.data.goodsInputNum < qnum) {
  714 + getApp().confirmBox("拼团商品至少要买" + qnum + "件!");
  715 + return false;
1485 716 }
1486   - e.his_cate_num=his_cate_num;
1487   -
1488   - //--普通门店排版--
1489   - setTimeout(function(){
1490   - var sto_list=th.data.data.storageId;
1491   - if(sto_list){
1492   - for (var k = 0; k < e.data.data.pageData.length; k++) {
1493   - var it=e.data.data.pageData[k];
1494   - if (sto_list.indexOf(it.keyid)==-1) {
1495   - //删除
1496   - e.data.data.pageData.splice(k--, 1);
1497   - }
1498   - }
1499   - }
1500   -
1501   - //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店
1502   - if(dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store)=='{}') && th.data.bconfig && th.data.bconfig.is_sort_storage){
1503   - th.setData({
1504   - def_pick_store:e.data.data.pageData[0],
1505   - sto_sele_name: e.data.data.pageData[0].pickup_name,
1506   - sto_sele_id: e.data.data.pageData[0].pickup_id,
1507   - sto_sele_distr: e.data.data.pageData[0].distr_type
1508   - });
1509   - th.data.fir_def_store=e.data.data.pageData[0];
1510   - }
1511   -
1512   - //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --
1513   - if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store)!='{}'){
1514   - for (var k = 0; k < e.data.data.pageData.length; k++) {
1515   - if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
1516   - e.data.data.pageData.splice(k, 1); //删除
1517   - break;
1518   - }
1519   - }
1520   - e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加
1521   - }
1522   -
1523   - th.setData({all_pick_list:e.data.data.pageData});
1524   - th.deal_pickup(e);
1525   - },800)
1526   -
  717 + th.addcart_pt_func();
  718 + } else {
  719 + th.addcart_pt_func();
1527 720 }
1528   - })
1529   - }, 200)
1530   - },
1531   -
1532   -
1533   - //------------处理门店---------------
1534   - deal_pickup(e){
1535   - var th=this;
1536   - if(!th.data.data) return false
1537   - wx.hideLoading();
1538   - //单总量超出5个的时候
1539   - if (e.data.data.total > 10 && e.his_cate_num) {
1540   - getApp().request.get("/api/weshop/storagecategory/page", {
1541   - data: {
1542   - store_id: os.stoid,
1543   - pageSize: 1000,
1544   - orderField:"sort",
1545   - orderType:'asc',
1546   - },
1547   - success: function(ee) {
1548   - if (ee.data.code == 0) {
1549   -
1550   - var check_all_cate=0;
1551   - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
1552   - for(let i in ee.data.data.pageData){
1553   - let item=ee.data.data.pageData[i];
1554   - if(item.is_show==1){
1555   - check_all_cate=1;break
1556   - }
1557   - }
1558   - }
1559   -
1560   - if (check_all_cate) {
1561   -
1562   -
1563   - var sto_cate = ee.data.data.pageData;
1564   - var sto_arr = e.data.data.pageData;
1565   - var newarr = new Array();
1566   - var qita = new Array();
1567   -
1568   - var is_del_pk=0;
1569   -
1570   - //----要进行门店分组--------
1571   - for (var i = 0; i < sto_arr.length; i++) {
1572   - //找一下这个门店有没有在分类数组内
1573   - var find2 = 0, find2name = "",sort=0;
1574   - is_del_pk=0;
1575   - for (var m = 0; m < sto_cate.length; m++) {
1576   - if (sto_arr[i].category_id == sto_cate[m].cat_id) {
1577   - if (sto_cate[m].is_show != 1) {
1578   - is_del_pk = 1;
1579   - sto_arr.splice(i, 1);
1580   - i--;
1581   - } else {
1582   - find2 = sto_cate[m].cat_id;
1583   - find2name = sto_cate[m].cat_name;
1584   - sort = sto_cate[m].sort;
1585   - is_del_pk = 0;
1586   - }
1587   - break;
1588   - }
1589   - }
1590   - if(is_del_pk) continue;
1591   -
1592   - if (newarr.length > 0) {
1593   - var find = 0;
1594   - //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
1595   - if (find2 != 0) {
1596   - for (var ii = 0; ii < newarr.length; ii++) {
1597   - if (sto_arr[i].category_id == newarr[ii].cat_id) {
1598   - newarr[ii].s_arr.push(sto_arr[i]);
1599   - find = 1;
1600   - break;
1601   - }
1602   - }
1603   - if (find == 0) {
1604   - var arr0 = new Array();
1605   - arr0.push(sto_arr[i]);
1606   - var item = {
1607   - cat_id: find2,
1608   - name: find2name,
1609   - sort:sort,
1610   - s_arr: arr0
1611   - };
1612   - newarr.push(item);
1613   - }
1614   - } else {
1615   - qita.push(sto_arr[i]);
1616   - }
1617   - } else {
1618   - //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
1619   - if (find2 != 0) {
1620   - var arr0 = new Array();
1621   - arr0.push(sto_arr[i]);
1622   - var item = {
1623   - cat_id: find2,
1624   - name: find2name,
1625   - sort:sort,
1626   - s_arr: arr0
1627   - };
1628   - newarr.push(item);
1629   - } else {
1630   - qita.push(sto_arr[i]);
1631   - }
  721 + },
  722 +
  723 + addcart_pt_func: function () {
  724 + if (oo.user_id == null) {
  725 + s.my_warnning("还未登录!", 0, this);
  726 + return;
  727 + }
  728 + var e = this,
  729 + th = e,
  730 + o = this.data.sele_g;
  731 +
  732 + //----------添加到购物车时,要判断限购数量,--------
  733 + e.get_buy_num(async function (ee) {
  734 +
  735 + //---判断商品是否超出活动限购,拼团的普通购买不计算活动的限购---
  736 + if (th.data.promcardbuynum != -1 && th.data.prom_buy_limit > 0 && th.data.is_normal != 1) {
  737 +
  738 + if (th.data.goodsInputNum + th.data.promcardbuynum > th.data.prom_buy_limit) {
  739 + s.my_warnning('超出商品活动限购', 0, th);
  740 + var num = th.data.prom_buy_limit - th.data.promcardbuynum;
  741 + if (num < 0) num = 0;
  742 + th.setData({goodsInputNum: num})
  743 + return false;
1632 744 }
1633   - }
  745 + }
  746 +
  747 + var redis_num = 0
  748 + //不是普通购买的时候
  749 + if (th.data.is_normal != 1) {
  750 + //-------判断活动是否抢光---------
  751 + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + th.data.prom_id, {
  752 + 1: 1
  753 + }).then(res => {
  754 + redis_num = res.data.data;
  755 + })
  756 +
  757 + if (th.data.goodsInputNum > redis_num) {
  758 + s.my_warnning('超出商品活动库存', 0, th);
  759 + th.setData({goodsInputNum: redis_num})
1634 760  
1635   - var def_arr = new Array();
1636   - //-- 开始就看10个门店 --
1637   - for (var k = 0; k < 10; k++) {
1638   - if (k == sto_arr.length) break;
1639   - def_arr.push(sto_arr[k]);
  761 + return false;
1640 762 }
  763 + }
  764 +
  765 + if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
  766 + if (th.data.goodsInputNum > o.store_count) {
  767 + th.setData({goodsInputNum: o.store_count})
  768 + return s.my_warnning("超出商品库存", 0, th);
  769 + }
1641 770  
  771 + if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
1642 772 th.setData({
1643   - def_pickpu_list: def_arr,
1644   - pickpu_list: ee.data.data.pageData
  773 + sto_sele_name: ""
1645 774 });
1646   -
1647   - //门店分类要排序下
1648   - function compare(property){
1649   - return function(a,b){
1650   - var value1 = a[property];
1651   - var value2 = b[property];
1652   - return value1 - value2;
1653   - }
1654   - }
1655   - if(newarr.length>0)
1656   - newarr.sort(compare("sort"));
1657   -
1658   - //----安排其他的分类-----
1659   - if (qita.length > 0) {
1660   - var item = {
1661   - cat_id: -1,
1662   - name: "其他",
1663   - s_arr: qita
1664   - };
1665   - newarr.push(item);
1666   - }
  775 + if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
  776 + //--------------此时操作的数据------------
  777 + var newd = {
  778 + id: o.id,
  779 + goods_num: th.data.goodsInputNum,
  780 + pick_id: th.data.sto_sele_id,
  781 + keyid: th.data.sto_sele_keyid,
  782 + user_id: oo.user_id,
  783 + store_id: th.data.stoid,
  784 + goods_price: o.money,
  785 + goods_name: o.serviceName,
  786 + goods_sn: o.serviceSn,
  787 + sku: o.sku,
  788 + };
1667 789  
1668   - var sd={
1669   - all_sto: newarr,
1670   - is_show_sto_cat:1
1671   - }
1672   - if(!sto_arr || sto_arr.length<=10){
1673   - sd.is_show_sto_cat=-1;
1674   - sd.only_pk=sto_arr;
  790 + //---是不是从收藏夹出来的---
  791 + if (th.data.c_guide_id) {
  792 + newd['guide_id'] = th.data.c_guide_id;
  793 + newd['guide_type'] = 2;
  794 +
  795 +
  796 +
  797 +
  798 + } else {
  799 + if (getApp().globalData.guide_id) {
  800 + newd['guide_id'] = getApp().globalData.guide_id;
  801 + newd['guide_type'] = 0;
1675 802 }
1676   - th.setData(sd);
  803 + }
1677 804  
  805 + //让商品带上房间号
  806 + if (!th.data.sys_switch.is_skuroom_id && th.data.sys_switch.is_skuroom_id == 1) {
  807 + if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
  808 + newd.room_id = getApp().globalData.room_id;
  809 + }
1678 810 } else {
1679   - th.setData({
1680   - is_show_sto_cat: -1,
1681   - only_pk: e.data.data.pageData
1682   - });
1683   - //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
1684   - if (!th.data.def_pick_store) {
1685   - th.setData({def_pick_store:e.data.data.pageData[0]})
1686   - }
  811 + if (newd.goods_id == getApp().globalData.room_goods_id) {
  812 + newd.room_id = getApp().globalData.room_id;
  813 + }
1687 814 }
1688   - } else {
1689   - th.setData({
1690   - is_show_sto_cat: -1,
1691   - only_pk: e.data.data.pageData
1692   - });
1693   - //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
1694   - if (!th.data.def_pick_store) {
1695   - th.setData({def_pick_store:e.data.data.pageData[0]})
  815 +
  816 + //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
  817 +
  818 + if (th.data.is_normal == 1) {
  819 + var conf = th.data.bconfig;
  820 + if (conf.switch_list) {
  821 + var s_list = JSON.parse(conf.switch_list);
  822 + //如果后台有开启等级价的功能
  823 + if (parseInt(s_list.rank_switch) == 2) {
  824 + var card_price = o[getApp().globalData.userInfo['card_field']];
  825 + //如果会员有等级价
  826 + if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null
  827 + && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) {
  828 + newd.goods_price = card_price;
  829 + }
  830 + }
  831 + }
1696 832 }
1697 833  
1698   - }
1699   - }
1700   - });
1701   - } else {
1702   - th.setData({
1703   - is_show_sto_cat: 0,
1704   - only_pk: e.data.data.pageData
1705   - });
1706   - //-----如果没有默认门店,要取第一个门店作为默认店------
1707   - if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {
1708   -
1709   - if(e.data.data && e.data.data.pageData && e.data.data.pageData.length>0){
1710   - th.setData({
1711   - def_pick_store:e.data.data.pageData[0],
1712   - sto_sele_name: e.data.data.pageData[0].pickup_name,
1713   - sto_sele_id: e.data.data.pageData[0].pickup_id,
1714   - sto_sele_distr: e.data.data.pageData[0].distr_type
1715   - })
1716   - }
1717   -
1718   - }
1719   - }
1720   - },
1721   -
1722   - //加载更多是靠这个函数
1723   - onReachBottom: function() {
1724   - if (this.data.activeCategoryId == 2){
1725   - if(!this.data.comments_no_more) this.requestComments_new();
1726   - }
1727   -
1728   - var goods_list = this.selectComponent("#goods_list"); //组件的id
1729   - if (goods_list) goods_list.get_list();
1730   - },
1731   -
1732   -
1733   - //---小于10的格式化函数----
1734   - timeFormat(param) {
1735   - return param < 10 ? '0' + param : param;
1736   - },
1737   -
1738   -
1739   - //--定义的保存图片方法,分享团---
1740   - saveImageToPhotosAlbum: function() {
1741   - //--先判断会员状态--
1742   - var user_info = getApp().globalData.userInfo;
1743   - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
1744   - //getApp().my_warnning("请先登录",0,this);
1745   - wx.navigateTo({ url: '/packageE/pages/togoin/togoin', })
1746   - return false;
1747   - }
1748   -
1749   - //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团
1750   - var type = this.data.prom_type;
1751   - if (type == 6) type = 2;
1752   - if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3;
1753   -
1754   - wx.showLoading({
1755   - title: '生成中...',
1756   - })
1757   - var that = this,
1758   - th = that;
1759   - //设置画板显示,才能开始绘图
1760   - that.setData({
1761   - canvasHidden: false
1762   - })
1763   -
1764   - var app = getApp();
1765   - var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
1766   - var path2 = that.data.data.original_img;
1767   - var scene = th.data.gid+"";
1768   - var user_id = getApp().globalData.user_id?getApp().globalData.user_id:0;
1769   - if(user_id>0) {
1770   - scene+="_"+user_id;
1771   - }
1772   - //-- 如果不是会员分享过来的要分享给别人 --
1773   - if(getApp().globalData.room_id && th.data.data.goods_id==getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) {
1774   - //固定房间是第3个字符
1775   - if(!user_id) scene+="_0";
1776   - scene+="_"+getApp().globalData.room_id ;
1777   - }
1778   - ///二微码
1779   - var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
1780   - os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo";
1781   -
1782   - console.log(path3);
1783   -
1784   - //读取文件成功则OK--
1785   - wx.getImageInfo({
1786   - src: path3,
1787   - success: function(res) {
1788   - //回调写法
1789   - th.get_head_temp(th.get_goods_temp, function() {
1790   - var vpath = res.path;
1791   - var context = wx.createCanvasContext('share');
1792   - //先画背景
1793   - var pg_path = "../../../images/share/share_bg.png";
1794   -
1795   - // context.fillStyle="#FFFFFF";
1796   - // context.fillRect(0,0,554 * unit, 899 * unit);
1797   -
1798   - //-- 如果有自定义海报的时候,判断背景的图片 --
1799   - if(th.data.share_b_img){
1800   - pg_path=th.data.share_b_img;
1801   - }
1802   - context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
1803   -
1804   - //-- 是自定义海报的情况下 --
1805   - if(th.data.poster && parseInt(th.data.poster.style)==2) {
1806   - //在线上分享人的情况下
1807   - if(parseInt(th.data.poster.show_headpic)){
1808   - //获取坐标
1809   - var x=parseFloat(th.data.poster.head_x)*2;
1810   - var y=parseFloat(th.data.poster.head_y)*2;
1811   - var x1=(x+90) *unit;
1812   - var y1=(y+50) *unit;
1813   - //--昵称---
1814   - context.setFontSize(24 * unit)
1815   - context.setFillStyle("black")
1816   - context.fillText(app.globalData.userInfo.nickname, x1, y1);
1817   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
1818   - //强烈推荐 改许程
1819   - var tj_path = "../../../images/share/q_tj.png";
1820   - context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit);
1821   - context.setFontSize(16 * unit)
1822   - context.setLineJoin('round'); //交点设置成圆角
1823   - context.setFillStyle("white")
1824   - context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit);
1825   -
1826   - //context.setFillStyle("black")
1827   - //context.setFontSize(24 * unit)
1828   - //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit);
1829   - }
1830   - } else {
1831   - //--昵称---
1832   - context.setFontSize(24 * unit)
1833   - context.setFillStyle("black")
1834   - context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
1835   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
1836   - //强烈推荐 改许程
1837   - var tj_path = "../../../images/share/q_tj.png";
1838   - context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
1839   - context.setFontSize(16 * unit);
1840   - context.setLineJoin('round'); //交点设置成圆角
1841   - context.setFillStyle("white");
1842   - context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
1843   - }
1844   -
1845   -
1846   - //---产品名称---
1847   - //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
1848   - if(type!=4){
1849   - context.setFillStyle("black");
1850   - context.setFontSize(21.3 * unit)
1851   - th.draw_Text(context, th.data.data.goods_name,
1852   - 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
1853   - //------产品的价格-------
1854   - context.setFontSize(23 * unit)
1855   - context.setFillStyle("red")
1856   - context.fillText("¥", 416 * unit, 185 * unit);
1857   - context.setFontSize(31 * unit)
1858   - var pri0 = th.data.data.shop_price;
1859   - if (th.data.prom_act)
1860   - pri0 = th.data.prom_act.price;
1861   - pri0 = parseFloat(pri0).toFixed(2);
1862   - context.fillText(pri0, 438 * unit, 185 * unit);
1863   - //---市场价划掉---
1864   - context.setFillStyle("gray")
1865   - context.setFontSize(22 * unit)
1866   - context.fillText("¥" + th.data.data.market_price, 426 * unit, 213 * unit);
1867   - context.setStrokeStyle('gray');
1868   - context.setLineWidth(1 * unit);
1869   - context.moveTo(426 * unit, 206 * unit);
1870   - context.lineTo(510 * unit, 206 * unit);
1871   - context.stroke();
1872   -
1873   - }else{
1874   - context.setFillStyle("black");
1875   - context.setFontSize(21.3 * unit)
1876   - th.draw_Text(context, th.data.data.goods_name,
1877   - 38 * unit, 170 * unit, 20 * unit, 300*unit, unit);
1878   - //------ 产品的价格 -----
1879   - var pri0 = th.data.prom_act.addmoney;
1880   - var integral=th.data.prom_act.integral;
1881   - var text= "";
1882   - if(integral){text=integral+"积分"; }
1883   - if(pri0 && integral){ text+="+";}
1884   - if(pri0){ text+="¥"+pri0;}
1885   -
1886   - if(!pri0 && !integral){ text="0积分";}
1887   - context.setFillStyle("red");
1888   - context.fillText(text, 38 * unit, 235 * unit);
1889   -
1890   - }
1891   -
1892   - //---中间大图---
1893   - context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit);
1894   - //-------大图后面就不一样了-----------
1895   - switch (type) {
1896   - case 0: //普通商品的展示
1897   - case 4:
1898   - //中间的几个字
1899   - if(th.data.poster && parseInt(th.data.poster.style)==2 ){
1900   - if(parseInt(th.data.poster.show_quality)){
1901   - var g_path = "../../../images/share/s_gou.png";
1902   - context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
1903   - context.setFillStyle("red")
1904   - context.setFontSize(18 * unit)
1905   - context.fillText("正品保证", 84 * unit, 690 * unit);
1906   -
1907   - context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
1908   - context.setFillStyle("red")
1909   - context.setFontSize(18 * unit)
1910   - context.fillText("纯实体店", 246 * unit, 690 * unit);
1911   -
1912   - context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
1913   - context.setFillStyle("red")
1914   - context.setFontSize(18 * unit)
1915   - context.fillText("官方验证", 420 * unit, 690 * unit);
1916   - }
1917   -
1918   - }else{
1919   - var g_path = "../../../images/share/s_gou.png";
1920   - context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit);
1921   - context.setFillStyle("red")
1922   - context.setFontSize(18 * unit)
1923   - context.fillText("正品保证", 84 * unit, 690 * unit);
1924   -
1925   - context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit);
1926   - context.setFillStyle("red")
1927   - context.setFontSize(18 * unit)
1928   - context.fillText("纯实体店", 246 * unit, 690 * unit);
1929   -
1930   - context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit);
1931   - context.setFillStyle("red")
1932   - context.setFontSize(18 * unit)
1933   - context.fillText("官方验证", 420 * unit, 690 * unit);
1934   - }
1935   -
1936   -
1937   - //---画线---
1938   - context.setLineWidth(1 * unit)
1939   - context.moveTo(32 * unit, 710 * unit)
1940   - context.lineTo(520 * unit, 710 * unit)
1941   - context.stroke();
1942   -
1943   - //---文字---
1944   - context.setFillStyle("black")
1945   - context.setFontSize(22 * unit)
1946   -
1947   - if(type==0){
1948   - // 原来start --->
1949   - context.setFontSize(24 * unit)
1950   - context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
1951   -
1952   - context.setFontSize(22 * unit)
1953   - context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 806 * unit);
1954   - context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 846 * unit);
1955   -
1956   - }else{
1957   - context.setFontSize(24 * unit)
1958   - context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit);
1959   - context.setFontSize(22 * unit)
1960   - context.fillText("长按识别二维码", 40 * unit, 806 * unit);
1961   - context.fillText("立即开始兑换", 40 * unit, 846 * unit);
1962   -
1963   -
1964   - }
1965   -
1966   - //---二维吗图---
1967   - //-- 自定义海报 --
1968   - if(th.data.poster){
1969   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
1970   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
1971   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
1972   - }else{
1973   - //---二维吗图---
1974   - context.drawImage(vpath, 410 * unit, 726 * unit, 115 * unit, 125 * unit);
1975   - }
1976   -
1977   - break;
1978   - case 1: //秒杀商品的展示
1979   - //---画线---
1980   - context.setLineWidth(1 * unit)
1981   - context.moveTo(32 * unit, 670 * unit)
1982   - context.lineTo(520 * unit, 670 * unit)
1983   - context.stroke();
1984   -
1985   - //画秒杀的图片
1986   - var miaos_path = '../../../images/share/miao_share.png';
1987   - context.drawImage(miaos_path, 43 * unit, 700 * unit, 222 * unit, 40 * unit);
1988   -
1989   - context.setFillStyle("black")
1990   - context.setFontSize(24 * unit)
1991   - context.fillText(th.data.sto_sele_name_1, 40 * unit, 786 * unit);
1992   - //---文字---
1993   - context.setFontSize(22 * unit)
1994   - context.setFillStyle("black")
1995   - context.fillText("特惠好物,限时秒杀", 40 * unit, 826 * unit);
1996   - context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 866 * unit);
1997   -
1998   -
1999   - //---二维吗图---
2000   - //-- 自定义海报 --
2001   - if(th.data.poster){
2002   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
2003   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
2004   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
2005   - }else{
2006   - //---二维吗图---
2007   - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
2008   - }
2009   - break;
2010   -
2011   - case 2: //会员团和商家团的展示
2012   - //---画线---
2013   - context.setLineWidth(1 * unit)
2014   - context.moveTo(32 * unit, 670 * unit)
2015   - context.lineTo(520 * unit, 670 * unit)
2016   - context.stroke();
2017   - //---文字---
2018   -
2019   - context.setFillStyle("black")
2020   - context.setFontSize(24 * unit)
2021   - context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
2022   -
2023   - //绘制成团图片
2024   - var ct_img = "../../../images/share/ct_num.png";
2025   - context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
2026   - var ct_num = th.data.prom_act.ct_num;
2027   - context.setFontSize(14 * unit)
2028   - context.font = 'normal';
2029   - context.setFillStyle("red")
2030   - if (ct_num < 10) {
2031   - context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit);
2032   - } else {
2033   - context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit);
2034   - }
2035   - context.setFontSize(22 * unit)
2036   - context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit);
2037   -
2038   - context.setFillStyle("gray")
2039   - context.fillText("快来和我一起拼团吧!", 40 * unit, 806 * unit);
2040   - context.setFillStyle("black")
2041   - context.font = 'normal bold 18px sans-serif';
2042   - context.setFontSize(21.3 * unit)
2043   - context.fillText("长按识别二维码,立即参团", 40 * unit, 836 * unit);
2044   -
2045   -
2046   - //---二维吗图---
2047   - //-- 自定义海报 --
2048   - if(th.data.poster){
2049   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
2050   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
2051   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
2052   - }else{
2053   - //---二维吗图---
2054   - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
2055   - }
2056   - break
2057   - case 3: //阶梯团的展示
2058   - //---画线---
2059   - context.setLineWidth(1 * unit)
2060   - context.moveTo(32 * unit, 670 * unit)
2061   - context.lineTo(520 * unit, 670 * unit)
2062   - context.stroke();
2063   - //---文字---
2064   -
2065   - context.setFillStyle("black")
2066   - context.setFontSize(24 * unit)
2067   - context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
2068   -
2069   - //---绘制中间阶梯的价格---
2070   - var list = th.data.prom_act.ct_rylist;
2071   - for (var i = 0; i < list.length; i++) {
2072   - var item = list[i];
2073   - var wi = i * 90 * unit;
2074   - context.font = 'normal';
2075   - context.setFontSize(16 * unit)
2076   - context.setFillStyle("red")
2077   - context.fillText("¥", 40 * unit + wi, 756 * unit);
2078   - context.setFontSize(22 * unit)
2079   - var pri = parseFloat(item.price).toFixed(2);
2080   - context.fillText(pri, 56 * unit + wi, 756 * unit);
2081   - context.setFillStyle("gray")
2082   - context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit);
2083   - }
2084   - //----------------下面部分----------------
2085   - // context.setFillStyle("gray")
2086   - // context.fillText("快来和我一起拼团吧!", 40 * unit, 830 * unit);
2087   - // context.setFillStyle("black")
2088   - // context.font = 'normal bold 18px sans-serif';
2089   - // context.setFontSize(22 * unit)
2090   - // context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
2091   - //context.setFillStyle("gray")
2092   - context.setFillStyle("black")
2093   - context.fillText("快来和我一起拼团吧!", 40 * unit, 820 * unit);
2094   - //context.font = 'normal bold 18px sans-serif';
2095   - context.setFontSize(22 * unit)
2096   - context.fillText("长按识别二维码,立即参团", 40 * unit, 850 * unit);
2097   -
2098   -
2099   - //-- 自定义海报 --
2100   - if(th.data.poster){
2101   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
2102   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
2103   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
2104   - }else{
2105   - //---二维吗图---
2106   - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
2107   - }
2108   - break
2109   -
2110   -
2111   - }
2112   -
2113   -
2114   - //--- 如果是自定义海报的时候 ---
2115   - if(th.data.poster && parseInt(th.data.poster.style)==2){
2116   -
2117   - //如果显示会员信息的话
2118   - if(parseInt(th.data.poster.show_headpic)){
2119   - //获取坐标
2120   - var x= parseFloat(th.data.poster.head_x)*2;
2121   - var y=parseFloat(th.data.poster.head_y)*2;
2122   - //---绘制圆形要放在最后----
2123   - context.save();
2124   - context.beginPath();
2125   - var h_x = x* unit;
2126   - var h_y = y * unit;
2127   - var h_r = 40 * unit;
2128   - var cx = h_x + h_r;
2129   - var cy = h_y + h_r;
2130   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
2131   - context.closePath();
2132   - context.fill();
2133   - context.clip();
2134   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
2135   - context.restore();
2136   - }
2137   -
2138   - }else{
2139   - //---绘制圆形要放在最后----
2140   - context.save();
2141   - context.beginPath();
2142   - var h_x = 60 * unit;
2143   - var h_y = 24 * unit;
2144   - var h_r = 40 * unit;
2145   - var cx = h_x + h_r;
2146   - var cy = h_y + h_r;
2147   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
2148   - context.closePath();
2149   - context.fill();
2150   - context.clip();
2151   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
2152   - context.restore();
2153   - }
2154   -
2155   -
2156   - //把画板内容绘制成图片,并回调 画板图片路径
2157   - context.draw(false, function() {
2158   - setTimeout(function() {
2159   - wx.canvasToTempFilePath({
2160   - x: 0,
2161   - y: 0,
2162   - width: 750,
2163   - height: 1217,
2164   - destWidth: 1.2 * 750 * 750 / that.data.screenWidth,
2165   - destHeight: 1.2 * 1217 * 750 / that.data.screenWidth,
2166   - canvasId: 'share',
2167   - success: function(res) {
2168   - that.setData({
2169   - shareImgPath: res.tempFilePath,
2170   - canvasHidden: true
2171   - })
2172   - if (!res.tempFilePath) {
2173   - wx.showModal({
2174   - title: '提示',
2175   - content: '图片绘制中,请稍后重试',
2176   - showCancel: false
2177   - })
2178   - return false;
2179   - }
2180   - // wx.previewImage({
2181   - // //将图片预览出来
2182   - // urls: [that.data.shareImgPath]
2183   - // });
2184   - that.setData({
2185   - showPoster: true,
2186   - });
2187   - wx.hideLoading();
  834 +
  835 + //-----如果是秒杀,团购,积分购,拼团,且不是普通购买-----
  836 + if (th.data.prom_type == 6 && th.data.is_normal != 1) {
  837 + newd.goods_price = th.data.prom_price;
  838 + newd.prom_type = th.data.prom_type;
  839 + newd.prom_id = th.data.prom_id;
  840 + newd.kt_type = th.data.prom_act.kttype; //开团类型
  841 + newd.is_pt_tz = 0;
  842 + //th.data.sto_sele_distr=1; //直接用自提的方式提交
  843 + if (newd.kt_type > 1) {
  844 + newd.is_pt_tz = 1; //开团类型
  845 + }
  846 + if (newd.kt_type == 3) {
  847 + th.data.sto_sele_distr = 1;
2188 848 }
2189   - })
2190   - }, 500)
2191 849  
2192   - });
2193   - });
2194   - }
2195   - });
2196   - },
2197   -
2198   -
2199   - //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
2200   - draw_Text: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) {
2201   - var lineWidth = 0;
2202   - var lastSubStrIndex = 0; //每次开始截取的字符串的索引
2203   - var han = 0;
2204   - for (let i = 0; i < str.length; i++) {
2205   - if (han == 2) return;
2206   - //lineWidth += ctx.measureText(str[i]).width;
2207   - lineWidth += ut.measureText(str[i], 21.3 * unit);
2208   - if (lineWidth > canvasWidth) {
2209   - han++;
2210   -
2211   - if (han == 2)
2212   - ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
2213   - else
2214   - ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
2215   -
2216   - initHeight += 22; //22为字体的高度
2217   - lineWidth = 0;
2218   - lastSubStrIndex = i;
2219   - titleHeight += 20;
2220   - }
2221   - if (i == str.length - 1) { //绘制剩余部分
2222   - ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
2223   - }
2224   - }
2225   - },
2226   -
2227   - // ----视频图片----
2228   - // 图片计数器
2229   - swiperChange: function (e) {
2230   - var that = this;
2231   - if (e.detail.current > 0) {
2232   - that.setData({
2233   - hiddenn: 1,
2234   - videopicture: 1,
2235   - })
2236   - } else {
2237   - that.setData({
2238   - hiddenn: 0,
2239   - videopicture: 0,
2240   - })
2241   - }
2242   - if (e.detail.source == 'touch') {
2243   - that.setData({
2244   - current: e.detail.current
2245   - })
2246   - }
2247   - },
2248   -
2249   - /*---视频相关--*/
2250   - videopicture: function (e) {
2251   - var vipi = e.currentTarget.dataset.vipi;
2252   - this.setData({
2253   - videopicture: vipi,
2254   - swiperCurrent: vipi,
2255   - noon: 0,
2256   - current: 1
2257   - });
2258   - },
2259   -
2260   - videoPlay: function (e) {
2261   - var _index = e.currentTarget.id
2262   - this.setData({
2263   - _index: _index,
2264   - noon: 1
2265   - })
2266   -
2267   - setTimeout(function () {
2268   - //将点击视频进行播放
2269   - var videoContext = wx.createVideoContext(_index)
2270   - videoContext.play();
2271   - }, 500)
2272   - },
2273   -
2274   - //--获取头像的本地缓存,回调写法--
2275   - get_head_temp: function(tt, func) {
2276   - var ee = this;
2277   - if (ee.data.share_head) {
2278   - tt(func);
2279   - return false;
2280   - }
2281   - //---获取分享图片的本地地址,头像和商品图片----
2282   - var path2 = getApp().globalData.userInfo.head_pic;
2283   - if (path2 == "") {
2284   - ee.data.share_head = "../../../images/share/hui_hear_pic.png";
2285   - tt(func);
2286   - } else {
2287   - path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
2288   - path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
2289   - wx.getImageInfo({
2290   - src: path2,
2291   - success: function(res) {
2292   - //res.path是网络图片的本地地址
2293   - ee.data.share_head = res.path;
2294   - tt(func);
2295   - },
2296   - fail: function(res) {
2297   - ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
2298   - tt(func);
  850 + }
  851 + else if (th.data.prom_type == 3) {
  852 + newd.prom_type = 0;
  853 + newd.prom_id = 0;
  854 + }
  855 + newd['pick_name'] = th.data.sto_sele_name;
  856 + newd['pick_dis'] = th.data.sto_sele_distr;
  857 + newd['is_normal'] = th.data.is_normal;
  858 +
  859 + if (newd['is_normal']) {
  860 + newd['is_pd_normal'] = 1;
  861 + th.buyNow(newd);
  862 + return false;
  863 + //判断一下有没有全局优惠活动
  864 + //th.check_nor_promgood(newd.goods_id, function (e) {
  865 + // if (e && e.act_id) {
  866 + // newd['prom_type'] = 3;
  867 + // newd['prom_id'] = e.act_id;
  868 + // }
  869 + // th.buyNow(newd)
  870 + //})
  871 + }
  872 + else th.buyNow_pt(newd);
  873 + })
  874 + },
  875 +
  876 + //----------立即购买-----------
  877 + buyNow: function(e) {
  878 + getApp().globalData.service_now=e;
  879 + this.setData({openSpecModal_pt:0})
  880 + wx.redirectTo({
  881 + url: "/packageA/pages/cart2_ser/cart2_ser",
  882 + });
  883 + },
  884 +
  885 + //----------立即购买_pt-----------
  886 + buyNow_pt: function (e) {
  887 + getApp().set_b_now(e);
  888 + this.setData({openSpecModal_pt:0})
  889 + getApp().goto("/packageA/pages/serviceCard_pd/cart/cart?is_bnow=1&goods_id=" + e.goods_id);
  890 + },
  891 +
  892 + //----------增加购买数量-----------
  893 + addCartNum: function (t) {
  894 + this.checkCartNum(this.data.goodsInputNum + 1);
  895 + },
  896 + //----------减少购买数量-----------
  897 + subCartNum: function (t) {
  898 + this.checkCartNum(this.data.goodsInputNum - 1);
  899 + },
  900 + //----------输入框输入购买数量-----------
  901 + inputCartNum: function (t) {
  902 + this.checkCartNum(Number(t.detail.value));
  903 + },
  904 +
  905 + //------检查数量是不是超出限购------
  906 + checkCartNum: async function (t) {
  907 + var th = this;
  908 +
  909 + if (!th.data.def_pick_store) {
  910 + wx.showModal({title: '请选择门店',});
  911 + return false;
  912 + }
  913 +
  914 + // 非秒杀活动
  915 + if (this.data.prom_type != 1) {
  916 + this.setData({
  917 + goodsInputNum: t,
  918 + });
  919 + }
  920 +
  921 + // 秒杀活动
  922 + // 如果是秒杀活动下的单独购买,is_normal为1
  923 + if (this.data.is_normal) {// 单独购买
  924 + this.setData({
  925 + goodsInputNum: t,
  926 + });
  927 + } else {// 秒杀购买
  928 +
  929 + // 获取redis当前可以购买的数量
  930 + // 如果数量为0,设置和显示已抢光
  931 + // 否则,进一步判断是否超出限购或超出库存
  932 + await this.getactLen().then(async function (res) {
  933 + // res: redis可购买数量
  934 + // console.log('当前可以购买的数量:', res);
  935 + if (res <= 0) {
  936 + // 可购买数量<=0, 设置和显示已抢光
  937 + th.setData({
  938 + prom_r_null: 1,
  939 + });
  940 + } else {
  941 + // 可购买数量>0
  942 + // 计算自己还可以购买的数量
  943 + // 自己还可购买的数量c = 每人活动限购数量a - 自己已经购买的数量b
  944 + // 如果限购数量a>redis可购买数量d,当增加数量t>d, 提示超出库存
  945 + // 如果限购数量a<=redis可购买数量d, 当增加数量t>a,提示超出限购
  946 + let actInfo = th.data.prom_act;
  947 + th.get_buy_num2().then(function (data) {
  948 + let limited = actInfo.buy_limit; // 限购数量a
  949 + let promcardbuynum = data.data.data.promcardbuynum;
  950 + let buyedNum = promcardbuynum; // 自己已经购买的数量b
  951 + let canBuyNum = limited - buyedNum; // 自己还可购买的数量c
  952 +
  953 + if (canBuyNum <= 0) {
  954 + canBuyNum = 0;
  955 + }
  956 + if (limited > res) {
  957 + if (t > res) { // t当前增减的数量
  958 + getApp().my_warnning('超出活动库存', 0, self);
  959 + th.setData({
  960 + goodsInputNum: res,
  961 + });
  962 + return false;
  963 + }
  964 +
  965 + }
  966 +
  967 + if (limited <= res) {
  968 + if (t > canBuyNum) {
  969 + getApp().my_warnning('超出限购数量', 0, self);
  970 + th.setData({
  971 + goodsInputNum: canBuyNum,
  972 + });
  973 + return false;
  974 + }
  975 +
  976 + }
  977 +
  978 + th.setData({
  979 + goodsInputNum: t,
  980 + });
  981 + });
  982 + }
  983 +
  984 + })
  985 +
  986 + }
  987 +
  988 +
  989 +
  990 +
  991 + },
  992 +
  993 +
  994 + closeSpecModal: function () {
  995 + this.setData({
  996 + openSpecModal: !1,
  997 + openSpecModal_pt: !1,
  998 + openSpecModal_flash_normal: !1,
  999 + });
  1000 + },
  1001 +
  1002 + openSpecModel: function (t) {
  1003 + var th = this;
  1004 + var open_store = t.currentTarget.dataset.ind;
  1005 + this.setData({
  1006 + store: 0,
  1007 + choice_sort_store: 0,
  1008 + sort_store: 0,
  1009 + open_ind_store: open_store,
  1010 + })
  1011 + //--先判断会员状态--
  1012 + var user_info = getApp().globalData.userInfo;
  1013 + if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
  1014 + wx.navigateTo({
  1015 + url: '/packageE/pages/togoin/togoin',
  1016 + })
  1017 + return false;
  1018 + }
  1019 +
  1020 + var ind = t.currentTarget.dataset.ind;
  1021 + this.setData({
  1022 + openSpecModal: !0,
  1023 + openSpecModal_ind: ind,
  1024 + });
  1025 +
  1026 + },
  1027 +
  1028 + //---------点击收藏和不收藏------------
  1029 + collectGoods: function () {
  1030 + var t = this, i = getApp().request;
  1031 + var user_id = s.globalData.user_id;
  1032 + if (user_id == '') {
  1033 + getApp().getUserFir(function () {
  1034 + });
  1035 + getApp().showWarning("未登录");
  1036 + return false;
  1037 + } else {
  1038 +
  1039 + if (t.data.is_collect_load) return false;
  1040 + t.data.is_collect_load = 1;
  1041 +
  1042 + if (t.data.is_collect == 1) { //删除收藏
  1043 + i.delete("/api/weshop/goodscollect/del/" + os.stoid + "/" + t.data.collect_id, {
  1044 + success: function (e) {
  1045 + t.data.is_collect_load = 0;
  1046 + if (e.data.code == 0) {
  1047 + t.setData({
  1048 + is_collect: 0,
  1049 + collect_id: 0,
  1050 + });
  1051 + }
  1052 + }
  1053 + });
  1054 + } else {
  1055 + var timestamp = Date.parse(new Date());
  1056 + timestamp = timestamp / 1000;
  1057 + var d = {
  1058 + goods_id: t.data.data.goods_id,
  1059 + user_id: s.globalData.user_id,
  1060 + store_id: os.stoid,
  1061 + add_time: timestamp,
  1062 + type: 1,
  1063 + };
  1064 + //加入收藏夹就是导购的ID
  1065 + if (getApp().globalData.guide_id) {
  1066 + d.guide_id = getApp().globalData.guide_id;
  1067 + d.guide_type = 2;
  1068 + }
  1069 +
  1070 + i.post("/api/weshop/goodscollect/save", { //添加收藏
  1071 + data: d,
  1072 + success: function (e) {
  1073 + t.data.is_collect_load = 0;
  1074 + if (e.data.code == 0) {
  1075 + t.setData({
  1076 + is_collect: 1,
  1077 + collect_id: e.data.data.collect_id,
  1078 + });
  1079 + }
  1080 + }
  1081 + });
  1082 + }
  1083 + }
  1084 + },
  1085 + //---------联系客服------------
  1086 + contactService: function () {
  1087 + this.getTel()
  1088 + .then(() => {
  1089 + if (self.data.store_tel) {
  1090 + wx.showModal({
  1091 + title: '联系客服',
  1092 + content: '客服热线:' + self.data.store_tel,
  1093 + confirmText: '拨打',
  1094 + success(res) {
  1095 + if (res.confirm) {
  1096 + wx.makePhoneCall({
  1097 + phoneNumber: self.data.store_tel,
  1098 + })
  1099 + }
  1100 + },
  1101 + });
  1102 + }
  1103 + });
  1104 + },
  1105 + // 获取客服电话
  1106 + getTel() {
  1107 + return new Promise((resolve, reject) => {
  1108 + s.getConfig(function (t) {
  1109 + if (t.store_tel == undefined) {
  1110 + getApp().request.get("/api/weshop/store/get/" + os.stoid, {
  1111 + isShowLoading: 1,
  1112 + data: {},
  1113 + success: function (rs) {
  1114 + getApp().globalData.config = rs.data.data;
  1115 + if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) {
  1116 + getApp().my_warnning("商家未设置电话", 0, th);
  1117 + return false;
  1118 + }
  1119 + self.setData({
  1120 + store_tel: rs.data.data.store_tel,
  1121 + });
  1122 + // s.confirmBox("请联系客服:" + rs.data.data.store_tel);
  1123 + }
  1124 + })
  1125 + } else {
  1126 + self.setData({
  1127 + store_tel: t.store_tel,
  1128 + });
  1129 + // s.confirmBox("请联系客服:" + t.store_tel);
  1130 + }
  1131 + resolve();
  1132 + });
  1133 + });
  1134 + },
  1135 +
  1136 +
  1137 + //--点击分享事件---
  1138 + onShareAppMessage: function (t) {
  1139 +
  1140 + var th = this;
  1141 + var price = th.data.data.shop_price;
  1142 + if (th.data.prom_act) {
  1143 + price = th.data.prom_act.price;
  1144 +
  1145 + }
  1146 + var title = th.data.data.goods_name;
  1147 + var img = th.data.data.original_img;
  1148 + if (th.data.prom_type == 6) {
  1149 + title = th.data.prom_act.share_title;
  1150 + img = th.data.iurl + th.data.prom_act.share_imgurl;
  1151 + }
  1152 +
  1153 +
  1154 + var url = "/packageA/pages/serviceCard_pd/goodsInfo/goodsInfo?goods_id=" + th.data.gid;
  1155 + if (getApp().globalData.user_id) {
  1156 + url += "&first_leader=" + getApp().globalData.user_id;
  1157 + }
  1158 +
  1159 + //-- 如果房间分享,且不是会员分享的 --
  1160 + if (getApp().globalData.room_id &&
  1161 + th.data.data.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share
  1162 + ) {
  1163 + url += "&room_id=" + getApp().globalData.room_id + "&room_user_share=1";
  1164 + }
  1165 +
  1166 +
  1167 + var ob = {
  1168 + title: price + "元 " + title,
  1169 + path: url,
  1170 + imageUrl: img,
  1171 + };
  1172 +
  1173 + // 如果服务卡参加秒杀活动,且后台设置了分享标题和分享图片
  1174 + if (th.data.prom_type == 1) {
  1175 + if (th.data.sele_g && th.data.sele_g.share_title) {
  1176 + title = th.data.sele_g.share_title;
  1177 + ob.title = title;
  1178 + }
  1179 +
  1180 + if (th.data.sele_g && th.data.sele_g.share_imgurl) {
  1181 + img = th.data.iurl + th.data.sele_g.share_imgurl;
  1182 + ob.imageUrl = img;
  1183 + }
  1184 +
  1185 + }
  1186 +
  1187 + return ob;
  1188 +
  1189 + },
  1190 +
  1191 + //-----图片失败,默认图片-----
  1192 + bind_bnerr: function (e) {
  1193 + var _errImg = e.target.dataset.errorimg;
  1194 + var _errObj = {};
  1195 + _errObj[_errImg] = this.data.iurl + "/miniapp/images/default_g_img.gif";
  1196 + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
  1197 + },
  1198 +
  1199 + //-----图片失败,默认图片-----
  1200 + bind_bnerr2: function (e) {
  1201 +
  1202 + var _errImg = e.target.dataset.errorimg;
  1203 + var _errObj = {};
  1204 + _errObj[_errImg] = this.data.iurl + "/miniapp/images/hui_hear_pic.png"
  1205 + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
  1206 + },
  1207 +
  1208 +
  1209 + //---------拿出门店分类和门店------------
  1210 + get_sto(e) {
  1211 + var th = this, that = this;
  1212 + var timer_get = setInterval(function () {
  1213 + if (th.data.is_get_local_ok == 0) return false;
  1214 + var i = getApp().request;
  1215 + if (!th.data.data) return false;
  1216 + var dd = {
  1217 + store_id: os.stoid,
  1218 + isstop: 0,
  1219 + is_pos: 1,
  1220 + pageSize: 2000
  1221 + }
  1222 + //如果有距离的话
  1223 + if (th.data.lat != null) {
  1224 + dd.lat = th.data.lat;
  1225 + dd.lon = th.data.lon;
  1226 + }
  1227 + clearInterval(timer_get);
  1228 +
  1229 + //如果会员是有默认的门店话
  1230 + if (!th.data.def_pick_store && th.data.fir_def_store) {
  1231 + th.setData({def_pick_store: th.data.fir_def_store});
  1232 + }
  1233 +
  1234 + wx.showLoading({
  1235 + title: '加载中.'
  1236 + });
  1237 + //----------获取门店----------------
  1238 + getApp().request.promiseGet("/api/weshop/pickup/list", {
  1239 + data: dd,
  1240 + }).then(res => {
  1241 + var e = res;
  1242 + if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {
  1243 +
  1244 + var his_cate_num = 0;
  1245 + for (let i in e.data.data.pageData) {
  1246 + let item = e.data.data.pageData[i];
  1247 + if (item.category_id > 0) {
  1248 + his_cate_num = 1;
  1249 + break;
  1250 + }
  1251 + }
  1252 + e.his_cate_num = his_cate_num;
  1253 +
  1254 + //--普通门店排版,服务卡项有指定门店才能使用,所以要筛选一下--
  1255 + setTimeout(function () {
  1256 + var sto_list = th.data.data.storageId;
  1257 + if (sto_list) {
  1258 + for (var k = 0; k < e.data.data.pageData.length; k++) {
  1259 + var it = e.data.data.pageData[k];
  1260 + if (sto_list.indexOf(it.keyid) == -1) {
  1261 + //删除
  1262 + e.data.data.pageData.splice(k--, 1);
  1263 + }
  1264 + }
  1265 + }
  1266 +
  1267 + //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店
  1268 + if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) {
  1269 + th.setData({
  1270 + def_pick_store: e.data.data.pageData[0],
  1271 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  1272 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  1273 + sto_sele_distr: e.data.data.pageData[0].distr_type,
  1274 + sto_sele_keyid: e.data.data.pageData[0].keyid,
  1275 + });
  1276 + th.data.fir_def_store = e.data.data.pageData[0];
  1277 + }
  1278 +
  1279 + //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --
  1280 + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') {
  1281 + for (var k = 0; k < e.data.data.pageData.length; k++) {
  1282 + if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
  1283 + e.data.data.pageData.splice(k, 1); //删除
  1284 + break;
  1285 + }
  1286 + }
  1287 + e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加
  1288 + }
  1289 +
  1290 + th.setData({all_pick_list: e.data.data.pageData});
  1291 + th.deal_pickup(e);
  1292 + }, 800)
  1293 +
  1294 + }
  1295 + })
  1296 + }, 200)
  1297 + },
  1298 +
  1299 +
  1300 + //------------处理门店---------------
  1301 + deal_pickup(e){
  1302 + var th = this;
  1303 + if (!th.data.data) return false
  1304 + wx.hideLoading();
  1305 + //单总量超出5个的时候
  1306 + if (e.data.data.total > 10 && e.his_cate_num) {
  1307 + getApp().request.get("/api/weshop/storagecategory/page", {
  1308 + data: {
  1309 + store_id: os.stoid,
  1310 + pageSize: 1000,
  1311 + orderField: "sort",
  1312 + orderType: 'asc',
  1313 + },
  1314 + success: function (ee) {
  1315 + if (ee.data.code == 0) {
  1316 +
  1317 + var check_all_cate = 0;
  1318 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
  1319 + for (let i in ee.data.data.pageData) {
  1320 + let item = ee.data.data.pageData[i];
  1321 + if (item.is_show == 1) {
  1322 + check_all_cate = 1;
  1323 + break
  1324 + }
  1325 + }
  1326 + }
  1327 +
  1328 + if (check_all_cate) {
  1329 +
  1330 +
  1331 + var sto_cate = ee.data.data.pageData;
  1332 + var sto_arr = e.data.data.pageData;
  1333 + var newarr = new Array();
  1334 + var qita = new Array();
  1335 +
  1336 + var is_del_pk = 0;
  1337 +
  1338 + //----要进行门店分组--------
  1339 + for (var i = 0; i < sto_arr.length; i++) {
  1340 + //找一下这个门店有没有在分类数组内
  1341 + var find2 = 0, find2name = "", sort = 0;
  1342 + is_del_pk = 0;
  1343 + for (var m = 0; m < sto_cate.length; m++) {
  1344 + if (sto_arr[i].category_id == sto_cate[m].cat_id) {
  1345 + if (sto_cate[m].is_show != 1) {
  1346 + is_del_pk = 1;
  1347 + sto_arr.splice(i, 1);
  1348 + i--;
  1349 + } else {
  1350 + find2 = sto_cate[m].cat_id;
  1351 + find2name = sto_cate[m].cat_name;
  1352 + sort = sto_cate[m].sort;
  1353 + is_del_pk = 0;
  1354 + }
  1355 + break;
  1356 + }
  1357 + }
  1358 + if (is_del_pk) continue;
  1359 +
  1360 + if (newarr.length > 0) {
  1361 + var find = 0;
  1362 + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
  1363 + if (find2 != 0) {
  1364 + for (var ii = 0; ii < newarr.length; ii++) {
  1365 + if (sto_arr[i].category_id == newarr[ii].cat_id) {
  1366 + newarr[ii].s_arr.push(sto_arr[i]);
  1367 + find = 1;
  1368 + break;
  1369 + }
  1370 + }
  1371 + if (find == 0) {
  1372 + var arr0 = new Array();
  1373 + arr0.push(sto_arr[i]);
  1374 + var item = {
  1375 + cat_id: find2,
  1376 + name: find2name,
  1377 + sort: sort,
  1378 + s_arr: arr0
  1379 + };
  1380 + newarr.push(item);
  1381 + }
  1382 + } else {
  1383 + qita.push(sto_arr[i]);
  1384 + }
  1385 + } else {
  1386 + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
  1387 + if (find2 != 0) {
  1388 + var arr0 = new Array();
  1389 + arr0.push(sto_arr[i]);
  1390 + var item = {
  1391 + cat_id: find2,
  1392 + name: find2name,
  1393 + sort: sort,
  1394 + s_arr: arr0
  1395 + };
  1396 + newarr.push(item);
  1397 + } else {
  1398 + qita.push(sto_arr[i]);
  1399 + }
  1400 + }
  1401 + }
  1402 +
  1403 + var def_arr = new Array();
  1404 + //-- 开始就看10个门店 --
  1405 + for (var k = 0; k < 10; k++) {
  1406 + if (k == sto_arr.length) break;
  1407 + def_arr.push(sto_arr[k]);
  1408 + }
  1409 +
  1410 + th.setData({
  1411 + def_pickpu_list: def_arr,
  1412 + pickpu_list: ee.data.data.pageData
  1413 + });
  1414 +
  1415 + //门店分类要排序下
  1416 + function compare(property) {
  1417 + return function (a, b) {
  1418 + var value1 = a[property];
  1419 + var value2 = b[property];
  1420 + return value1 - value2;
  1421 + }
  1422 + }
  1423 +
  1424 + if (newarr.length > 0)
  1425 + newarr.sort(compare("sort"));
  1426 +
  1427 + //----安排其他的分类-----
  1428 + if (qita.length > 0) {
  1429 + var item = {
  1430 + cat_id: -1,
  1431 + name: "其他",
  1432 + s_arr: qita
  1433 + };
  1434 + newarr.push(item);
  1435 + }
  1436 +
  1437 + var sd = {
  1438 + all_sto: newarr,
  1439 + is_show_sto_cat: 1
  1440 + }
  1441 + if (!sto_arr || sto_arr.length <= 10) {
  1442 + sd.is_show_sto_cat = -1;
  1443 + sd.only_pk = sto_arr;
  1444 + }
  1445 + th.setData(sd);
  1446 +
  1447 + } else {
  1448 + th.setData({
  1449 + is_show_sto_cat: -1,
  1450 + only_pk: e.data.data.pageData
  1451 + });
  1452 + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
  1453 + if (!th.data.def_pick_store) {
  1454 + th.setData({def_pick_store: e.data.data.pageData[0]})
  1455 + }
  1456 + }
  1457 + } else {
  1458 + th.setData({
  1459 + is_show_sto_cat: -1,
  1460 + only_pk: e.data.data.pageData
  1461 + });
  1462 + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
  1463 + if (!th.data.def_pick_store) {
  1464 + th.setData({def_pick_store: e.data.data.pageData[0]})
  1465 + }
  1466 +
  1467 + }
  1468 + }
  1469 + });
  1470 + } else {
  1471 + th.setData({
  1472 + is_show_sto_cat: 0,
  1473 + only_pk: e.data.data.pageData
  1474 + });
  1475 + //-----如果没有默认门店,要取第一个门店作为默认店------
  1476 + if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {
  1477 +
  1478 + if (e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {
  1479 + th.setData({
  1480 + def_pick_store: e.data.data.pageData[0],
  1481 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  1482 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  1483 + sto_sele_distr: e.data.data.pageData[0].distr_type,
  1484 + sto_sele_keyid:e.data.data.pageData[0].keyid,
  1485 + })
  1486 + }
  1487 +
  1488 + }
  1489 + }
  1490 + },
  1491 +
  1492 + //加载更多是靠这个函数
  1493 + onReachBottom: function () {
  1494 + if (this.data.activeCategoryId == 2) {
  1495 + if (!this.data.comments_no_more) this.requestComments_new();
  1496 + }
  1497 +
  1498 + var goods_list = this.selectComponent("#goods_list"); //组件的id
  1499 + if (goods_list) goods_list.get_list();
  1500 + },
  1501 +
  1502 +
  1503 + //---小于10的格式化函数----
  1504 + timeFormat(param) {
  1505 + return param < 10 ? '0' + param : param;
  1506 + },
  1507 +
  1508 +
  1509 + //--定义的保存图片方法,分享团---
  1510 + saveImageToPhotosAlbum: function () {
  1511 + //--先判断会员状态--
  1512 + var user_info = getApp().globalData.userInfo;
  1513 + if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
  1514 + //getApp().my_warnning("请先登录",0,this);
  1515 + wx.navigateTo({url: '/packageE/pages/togoin/togoin',})
  1516 + return false;
  1517 + }
  1518 +
  1519 + //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4积分购
  1520 + var type = 2
  1521 + if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3;
  1522 +
  1523 + wx.showLoading({
  1524 + title: '生成中...',
  1525 + })
  1526 + var that = this,
  1527 + th = that;
  1528 + //设置画板显示,才能开始绘图
  1529 + that.setData({
  1530 + canvasHidden: false
  1531 + })
  1532 +
  1533 + var app = getApp();
  1534 + var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
  1535 + var path2 = that.data.data.original_img;
  1536 + var scene = th.data.gid + "";
  1537 + var user_id = getApp().globalData.user_id ? getApp().globalData.user_id : 0;
  1538 + if (user_id > 0) {
  1539 + scene += "_" + user_id;
  1540 + }
  1541 + //-- 如果不是会员分享过来的要分享给别人 --
  1542 + if (getApp().globalData.room_id && th.data.data.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) {
  1543 + //固定房间是第3个字符
  1544 + if (!user_id) scene += "_0";
  1545 + scene += "_" + getApp().globalData.room_id;
  1546 + }
  1547 + ///二微码
  1548 + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
  1549 + os.stoid + "?sceneValue=" + scene + "&pageValue=packageA/pages/serviceCard_pd/goodsInfo/goodsInfo";
  1550 +
  1551 + console.log(path3);
  1552 +
  1553 + //读取文件成功则OK--
  1554 + wx.getImageInfo({
  1555 + src: path3,
  1556 + success: function (res) {
  1557 + //回调写法
  1558 + th.get_head_temp(th.get_goods_temp, function () {
  1559 + var vpath = res.path;
  1560 + var context = wx.createCanvasContext('share');
  1561 + //先画背景
  1562 + var pg_path = "../../../../images/share/share_bg.png";
  1563 +
  1564 +
  1565 + //-- 如果有自定义海报的时候,判断背景的图片 --
  1566 + if (th.data.share_b_img) {
  1567 + pg_path = th.data.share_b_img;
  1568 + }
  1569 +
  1570 + var act_time='';
  1571 + if (!th.data.share_b_img){ // 如果是普通商品,绘制新海报
  1572 + th.drawPoster(context, unit, th.data.share_goods_img, vpath, type);
  1573 + } else {
  1574 +
  1575 + context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  1576 +
  1577 + //-- 是自定义海报的情况下 --
  1578 + if (th.data.poster && parseInt(th.data.poster.style) == 2) {
  1579 + //在线上分享人的情况下
  1580 + if (parseInt(th.data.poster.show_headpic)) {
  1581 + //获取坐标
  1582 + var x = parseFloat(th.data.poster.head_x) * 2;
  1583 + var y = parseFloat(th.data.poster.head_y) * 2;
  1584 + var x1 = (x + 90) * unit;
  1585 + var y1 = (y + 50) * unit;
  1586 + //--昵称---
  1587 + context.setFontSize(24 * unit)
  1588 + context.setFillStyle("black")
  1589 + context.fillText(app.globalData.userInfo.nickname, x1, y1);
  1590 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
  1591 + //强烈推荐 改许程
  1592 + var tj_path = "../../../../images/share/q_tj.png";
  1593 + context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
  1594 + context.setFontSize(16 * unit)
  1595 + context.setLineJoin('round'); //交点设置成圆角
  1596 + context.setFillStyle("white")
  1597 + context.fillText('强烈推荐', x1 + width + 8 * unit, y1 - 1 * unit);
  1598 +
  1599 + }
  1600 + } else {
  1601 + //--昵称---
  1602 + context.setFontSize(24 * unit)
  1603 + context.setFillStyle("black")
  1604 + context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
  1605 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
  1606 + //强烈推荐 改许程
  1607 + var tj_path = "../../../../images/share/q_tj.png";
  1608 + context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
  1609 + context.setFontSize(16 * unit);
  1610 + context.setLineJoin('round'); //交点设置成圆角
  1611 + context.setFillStyle("white");
  1612 + context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
  1613 + }
  1614 +
  1615 +
  1616 + //---产品名称---
  1617 + //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
  1618 +
  1619 + context.setFillStyle("black");
  1620 + context.setFontSize(21.3 * unit)
  1621 + th.draw_Text(context, th.data.data.goods_name,
  1622 + 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
  1623 + //------产品的价格-------
  1624 + context.setFontSize(23 * unit)
  1625 + context.setFillStyle("red")
  1626 + context.fillText("¥", 416 * unit, 185 * unit);
  1627 + context.setFontSize(31 * unit)
  1628 + var pri0 = th.data.data.shop_price;
  1629 + if (th.data.prom_act)
  1630 + pri0 = th.data.prom_act.price;
  1631 + pri0 = parseFloat(pri0).toFixed(2);
  1632 + context.fillText(pri0, 438 * unit, 185 * unit);
  1633 + //---市场价划掉---
  1634 + context.setFillStyle("gray")
  1635 + context.setFontSize(22 * unit)
  1636 + context.fillText("¥" + th.data.data.show_price, 426 * unit, 213 * unit);
  1637 + context.setStrokeStyle('gray');
  1638 + context.setLineWidth(1 * unit);
  1639 + context.moveTo(426 * unit, 206 * unit);
  1640 + context.lineTo(510 * unit, 206 * unit);
  1641 + context.stroke();
  1642 +
  1643 + //---中间大图---
  1644 + context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit);
  1645 + //-------大图后面就不一样了-----------
  1646 + switch (type) {
  1647 + case 2: //会员团和商家团的展示
  1648 + //---画线---
  1649 + context.setLineWidth(1 * unit)
  1650 + context.moveTo(32 * unit, 670 * unit)
  1651 + context.lineTo(520 * unit, 670 * unit)
  1652 + context.stroke();
  1653 + //---文字---
  1654 +
  1655 + context.setFillStyle("black")
  1656 + context.setFontSize(24 * unit)
  1657 + context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
  1658 +
  1659 + //绘制成团图片
  1660 + var ct_img = "../../../../images/share/ct_num.png";
  1661 + context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
  1662 + var ct_num = th.data.prom_act.ct_num;
  1663 + context.setFontSize(14 * unit)
  1664 + context.font = 'normal';
  1665 + context.setFillStyle("red")
  1666 + if (ct_num < 10) {
  1667 + context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit);
  1668 + } else {
  1669 + context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit);
  1670 + }
  1671 + context.setFontSize(22 * unit)
  1672 + context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit);
  1673 +
  1674 + context.setFillStyle("gray")
  1675 + context.fillText("快来和我一起拼团吧!", 40 * unit, 806 * unit);
  1676 + context.setFillStyle("black")
  1677 + context.font = 'normal bold 18px sans-serif';
  1678 + context.setFontSize(21.3 * unit)
  1679 + context.fillText("长按识别二维码,立即参团", 40 * unit, 836 * unit);
  1680 +
  1681 +
  1682 + //---二维吗图---
  1683 + //-- 自定义海报 --
  1684 + if (th.data.poster) {
  1685 + var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
  1686 + var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
  1687 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  1688 + } else {
  1689 + //---二维吗图---
  1690 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  1691 + }
  1692 + break
  1693 + case 3: //阶梯团的展示
  1694 + //---画线---
  1695 + context.setLineWidth(1 * unit)
  1696 + context.moveTo(32 * unit, 670 * unit)
  1697 + context.lineTo(520 * unit, 670 * unit)
  1698 + context.stroke();
  1699 + //---文字---
  1700 +
  1701 + context.setFillStyle("black")
  1702 + context.setFontSize(24 * unit)
  1703 + context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
  1704 +
  1705 + //---绘制中间阶梯的价格---
  1706 + var list = th.data.prom_act.ct_rylist;
  1707 + for (var i = 0; i < list.length; i++) {
  1708 + var item = list[i];
  1709 + var wi = i * 90 * unit;
  1710 + context.font = 'normal';
  1711 + context.setFontSize(16 * unit)
  1712 + context.setFillStyle("red")
  1713 + context.fillText("¥", 40 * unit + wi, 756 * unit);
  1714 + context.setFontSize(22 * unit)
  1715 + var pri = parseFloat(item.price).toFixed(2);
  1716 + context.fillText(pri, 56 * unit + wi, 756 * unit);
  1717 + context.setFillStyle("gray")
  1718 + context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit);
  1719 + }
  1720 + //----------------下面部分----------------
  1721 + context.setFillStyle("black")
  1722 + context.fillText("快来和我一起拼团吧!", 40 * unit, 820 * unit);
  1723 + //context.font = 'normal bold 18px sans-serif';
  1724 + context.setFontSize(22 * unit)
  1725 + context.fillText("长按识别二维码,立即参团", 40 * unit, 850 * unit);
  1726 + //-- 自定义海报 --
  1727 + if (th.data.poster) {
  1728 + var erm_x = parseFloat(th.data.poster.ewm_x) * 2;
  1729 + var erm_y = parseFloat(th.data.poster.ewm_y) * 2;
  1730 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  1731 + } else {
  1732 + //---二维吗图---
  1733 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  1734 + }
  1735 + break
  1736 +
  1737 +
  1738 + }
  1739 +
  1740 +
  1741 + //--- 如果是自定义海报的时候 ---
  1742 + if (th.data.poster && parseInt(th.data.poster.style) == 2) {
  1743 +
  1744 + //如果显示会员信息的话
  1745 + if (parseInt(th.data.poster.show_headpic)) {
  1746 + //获取坐标
  1747 + var x = parseFloat(th.data.poster.head_x) * 2;
  1748 + var y = parseFloat(th.data.poster.head_y) * 2;
  1749 + //---绘制圆形要放在最后----
  1750 + context.save();
  1751 + context.beginPath();
  1752 + var h_x = x * unit;
  1753 + var h_y = y * unit;
  1754 + var h_r = 40 * unit;
  1755 + var cx = h_x + h_r;
  1756 + var cy = h_y + h_r;
  1757 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  1758 + context.closePath();
  1759 + context.fill();
  1760 + context.clip();
  1761 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  1762 + context.restore();
  1763 + }
  1764 +
  1765 + } else {
  1766 + //---绘制圆形要放在最后----
  1767 + context.save();
  1768 + context.beginPath();
  1769 + var h_x = 60 * unit;
  1770 + var h_y = 24 * unit;
  1771 + var h_r = 40 * unit;
  1772 + var cx = h_x + h_r;
  1773 + var cy = h_y + h_r;
  1774 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  1775 + context.closePath();
  1776 + context.fill();
  1777 + context.clip();
  1778 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  1779 + context.restore();
  1780 + }
  1781 + }
  1782 +
  1783 +
  1784 + //把画板内容绘制成图片,并回调 画板图片路径
  1785 + context.draw(false, function () {
  1786 + setTimeout(function () {
  1787 + wx.canvasToTempFilePath({
  1788 + x: 0,
  1789 + y: 0,
  1790 + width: 750,
  1791 + height: 1217,
  1792 + destWidth: 1.2 * 750 * 750 / that.data.screenWidth,
  1793 + destHeight: 1.2 * 1217 * 750 / that.data.screenWidth,
  1794 + canvasId: 'share',
  1795 + success: function (res) {
  1796 + that.setData({
  1797 + shareImgPath: res.tempFilePath,
  1798 + canvasHidden: true
  1799 + })
  1800 + if (!res.tempFilePath) {
  1801 + wx.showModal({
  1802 + title: '提示',
  1803 + content: '图片绘制中,请稍后重试',
  1804 + showCancel: false
  1805 + })
  1806 + return false;
  1807 + }
  1808 + // wx.previewImage({
  1809 + // //将图片预览出来
  1810 + // urls: [that.data.shareImgPath]
  1811 + // });
  1812 + that.setData({
  1813 + showPoster: true,
  1814 + });
  1815 + wx.hideLoading();
  1816 + }
  1817 + })
  1818 + }, 500)
  1819 +
  1820 + });
  1821 + });
  1822 + }
  1823 + });
  1824 + },
  1825 +
  1826 +
  1827 + //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
  1828 + draw_Text: function (ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) {
  1829 + var lineWidth = 0;
  1830 + var lastSubStrIndex = 0; //每次开始截取的字符串的索引
  1831 + var han = 0;
  1832 + for (let i = 0; i < str.length; i++) {
  1833 + if (han == 2) return;
  1834 + //lineWidth += ctx.measureText(str[i]).width;
  1835 + lineWidth += ut.measureText(str[i], 21.3 * unit);
  1836 + if (lineWidth > canvasWidth) {
  1837 + han++;
  1838 +
  1839 + if (han == 2)
  1840 + ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
  1841 + else
  1842 + ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
  1843 +
  1844 + initHeight += 22; //22为字体的高度
  1845 + lineWidth = 0;
  1846 + lastSubStrIndex = i;
  1847 + titleHeight += 20;
  1848 + }
  1849 + if (i == str.length - 1) { //绘制剩余部分
  1850 + ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
  1851 + }
  1852 + }
  1853 + },
  1854 +
  1855 + // ----视频图片----
  1856 + // 图片计数器
  1857 + swiperChange: function (e) {
  1858 + var that = this;
  1859 + if (e.detail.current > 0) {
  1860 + that.setData({
  1861 + hiddenn: 1,
  1862 + videopicture: 1,
  1863 + })
  1864 + } else {
  1865 + that.setData({
  1866 + hiddenn: 0,
  1867 + videopicture: 0,
  1868 + })
  1869 + }
  1870 + if (e.detail.source == 'touch') {
  1871 + that.setData({
  1872 + current: e.detail.current
  1873 + })
  1874 + }
  1875 + },
  1876 +
  1877 + /*---视频相关--*/
  1878 + videopicture: function (e) {
  1879 + var vipi = e.currentTarget.dataset.vipi;
  1880 + this.setData({
  1881 + videopicture: vipi,
  1882 + swiperCurrent: vipi,
  1883 + noon: 0,
  1884 + current: 1
  1885 + });
  1886 + },
  1887 +
  1888 + videoPlay: function (e) {
  1889 + var _index = e.currentTarget.id
  1890 + this.setData({
  1891 + _index: _index,
  1892 + noon: 1
  1893 + })
  1894 +
  1895 + setTimeout(function () {
  1896 + //将点击视频进行播放
  1897 + var videoContext = wx.createVideoContext(_index)
  1898 + videoContext.play();
  1899 + }, 500)
  1900 + },
  1901 +
  1902 + //--获取头像的本地缓存,回调写法--
  1903 + get_head_temp: function (tt, func) {
  1904 + var ee = this;
  1905 + if (ee.data.share_head) {
  1906 + tt(func);
  1907 + return false;
  1908 + }
  1909 + //---获取分享图片的本地地址,头像和商品图片----
  1910 + var path2 = getApp().globalData.userInfo.head_pic;
  1911 + if (path2 == "") {
  1912 + ee.data.share_head = "../../../images/share/hui_hear_pic.png";
  1913 + tt(func);
  1914 + } else {
  1915 + path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
  1916 + path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
  1917 + wx.getImageInfo({
  1918 + src: path2,
  1919 + success: function (res) {
  1920 + //res.path是网络图片的本地地址
  1921 + ee.data.share_head = res.path;
  1922 + tt(func);
  1923 + },
  1924 + fail: function (res) {
  1925 + ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
  1926 + tt(func);
  1927 + }
  1928 + });
  1929 + }
  1930 + },
  1931 + //--获取商品图片的本地缓存,回调写法--
  1932 + get_goods_temp: function (tt) {
  1933 + var ee = this;
  1934 + if (ee.data.share_goods_img) {
  1935 + tt();
  1936 + return false;
  1937 + }
  1938 + //获取商品是分享图信息
  1939 + wx.getImageInfo({
  1940 + src: ee.data.data.original_img,
  1941 + success: function (res) {
  1942 + //res.path是网络图片的本地地址
  1943 + ee.data.share_goods_img = res.path;
  1944 + tt();
  1945 + },
  1946 + fail: function (res) {
  1947 + //获取默认空白图
  1948 + wx.getImageInfo({
  1949 + src: ee.data.iurl+'/miniapp/images/default_g_img.gif',
  1950 + success: function(res) {
  1951 + ee.data.share_goods_img = res.path; //分享的图片不能用网络的
  1952 + tt();
  1953 + }
  1954 + })
  1955 + }
  1956 + });
  1957 + },
  1958 +
  1959 +
  1960 + //--跳转到商品详情页面--
  1961 + go_goods: function (e) {
  1962 + var gid = e.currentTarget.dataset.gid;
  1963 + var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid;
  1964 + getApp().goto(url);
  1965 + },
  1966 +
  1967 +
  1968 + pop_err_img: function (e) {
  1969 + var txt = e.currentTarget.dataset.errorimg;
  1970 + var ob = {};
  1971 + ob[txt] = this.data.iurl + "/miniapp/images/default_g_img.gif";
  1972 + this.setData(ob);
  1973 + },
  1974 +
  1975 + // 选择门店
  1976 + choice_store: function (ee) {
  1977 + var th = this;
  1978 + var ind = ee.currentTarget.dataset.ind;
  1979 + var bconfig = th.data.bconfig;
  1980 +
  1981 + //如果开启了,则不在选择门店
  1982 + if(this.data.sys_switch.is_pricing_open_store && getApp().globalData.pk_store){
  1983 + return false;
  1984 + }
  1985 +
  1986 + if (!th.data.only_pk && !th.data.def_pickpu_list) {
  1987 + getApp().confirmBox("门店库存不足", null, 25000, !1);
  1988 + return false;
  1989 + }
  1990 +
  1991 + if (th.data.only_pk && !th.data.only_pk.length) {
  1992 + getApp().confirmBox("门店库存不足", null, 25000, !1);
  1993 + return false;
  1994 + }
  1995 + if (th.data.def_pickpu_list && !th.data.def_pickpu_list.length) {
  1996 + getApp().confirmBox("门店库存不足", null, 25000, !1);
  1997 + return false;
  1998 + }
  1999 +
  2000 +
  2001 + if (bconfig && bconfig.is_sort_storage) {
  2002 + wx.getLocation({
  2003 + type: 'gcj02',
  2004 + success: function (res) {
  2005 +
  2006 + th.data.lat = res.latitude;
  2007 + th.data.lon = res.longitude;
  2008 + th.data.is_get_local_ok = 1;
  2009 + th.setData({is_gps: 1});
  2010 + th.get_sto(th.data.is_normal);
  2011 + },
  2012 + fail: function (res) {
  2013 +
  2014 + th.data.is_get_local_ok = 1;
  2015 + th.get_sto(th.data.is_normal);
  2016 + if (res.errCode == 2) {
  2017 + th.setData({is_gps: 0});
  2018 + if (th.data.is_gps == 0) {
  2019 + getApp().confirmBox("请开启GPS定位", null, 25000, !1);
  2020 + }
  2021 + } else {
  2022 + th.setData({is_gps: "3"});
  2023 + }
  2024 +
  2025 + }
  2026 + })
  2027 + } else {
  2028 + th.data.is_get_local_ok = 1;
  2029 + th.get_sto(th.data.is_normal);
  2030 + }
  2031 +
  2032 + if (ind != undefined && ind != null) {
  2033 + this.setData({
  2034 + open_ind_store: ind,
  2035 + store: 1,
  2036 + openSpecModal: !1,
  2037 + openSpecModal_pt: !1
  2038 + })
  2039 + } else {
  2040 + this.setData({
  2041 + store: 1,
  2042 + openSpecModal: !1,
  2043 + openSpecModal_pt: !1
  2044 + })
  2045 + }
  2046 + },
  2047 + //关闭选择门店
  2048 + close_popup: function (e) {
  2049 + var th = this;
  2050 + this.setData({
  2051 + store: 0,
  2052 + choice_sort_store: 0,
  2053 + sort_store: 0,
  2054 + fir_pick_index: 0,
  2055 + sec_pick_index: 0
  2056 + })
  2057 +
  2058 + var openindstore = this.data.open_ind_store;
  2059 + if (openindstore == 1) {
  2060 + th.setData({
  2061 + openSpecModal: !0,
  2062 + openSpecModal_ind: openindstore,
  2063 + });
  2064 + } else if (openindstore == 2) {
  2065 + th.setData({
  2066 + openSpecModal: !0,
  2067 + openSpecModal_ind: openindstore,
  2068 + });
  2069 + }
  2070 + else if (openindstore == 4) { //4就是拼团
  2071 + th.setData({
  2072 + openSpecModal_pt: 1, //打开拼团购买界面
  2073 + store: 0, //关闭门店
  2074 + choice_sort_store: 0, //关闭门店2级
  2075 + sort_store: 0, //关闭门店2级
  2076 + });
  2077 + }
  2078 + else {
  2079 + th.setData({
  2080 + store: 0,
  2081 + choice_sort_store: 0,
  2082 + sort_store: 0
  2083 + })
  2084 + }
  2085 + },
  2086 +
  2087 + //选择更多门店
  2088 + more_store: function () {
  2089 + this.setData({
  2090 + sort_store: 1
  2091 + });
  2092 + },
  2093 +
  2094 + sort_store: function () {
  2095 + },
  2096 + // 返回按钮
  2097 + returns: function () {
  2098 + this.setData({
  2099 + sort_store: 0,
  2100 + choice_sort_store: 0
  2101 + });
  2102 + },
  2103 + //---选择分类门店---
  2104 + choice_sort_store: function (e) {
  2105 + var index = e.currentTarget.dataset.index;
  2106 + var region_name = e.currentTarget.dataset.region;
  2107 + var item = this.data.all_sto[index];
  2108 + this.setData({
  2109 + region_name: region_name,
  2110 + sort_store: 0,
  2111 + choice_sort_store: 1,
  2112 + sec_sto: item,
  2113 + sec_pick_index: 0
  2114 + });
  2115 + },
  2116 +
  2117 + choose_for_store_fir: function (e) {
  2118 + var index_c = e.currentTarget.dataset.ind;
  2119 + var th = this;
  2120 + th.setData({
  2121 + fir_pick_index: index_c
  2122 + })
  2123 +
  2124 + },
  2125 +
  2126 + //确定def_pick为选择的门店
  2127 + sure_pick: function (e) {
  2128 + var th = this;
  2129 + var item = null;
  2130 + var openindstore = th.data.open_ind_store;
  2131 +
  2132 + if (th.data.choice_sort_store == 0) {
  2133 + var index = th.data.fir_pick_index;
  2134 + if (th.data.is_show_sto_cat == 1) {
  2135 + item = th.data.def_pickpu_list[index];
  2136 + } else {
  2137 + item = th.data.only_pk?th.data.only_pk[index]:null; //当没有门店分类的时候
  2138 + }
  2139 +
  2140 + } else {
  2141 + var index = th.data.sec_pick_index;
  2142 + item = th.data.sec_sto.s_arr[index];
  2143 + }
  2144 +
  2145 + if(!item) return false;
  2146 +
  2147 + var ser_card = this.data.data;
  2148 + //判断门店的配送方式是不是匹配
  2149 + if (ser_card.storageId != null && ser_card.storageId != "" && ser_card.storageId.indexOf(item.keyid) == -1) {
  2150 + wx.showToast({
  2151 + title: "该门店无此服务项目,请重新选择!",
  2152 + icon: 'none',
  2153 + duration: 2000
  2154 + });
  2155 + return false;
  2156 + }
  2157 +
  2158 + if (!item) return false;
  2159 +
  2160 + th.setData({
  2161 + def_pick_store: item,
  2162 + sto_sele_name: item.pickup_name,
  2163 + sto_sele_id: item.pickup_id,
  2164 + sto_sele_keyid: item.keyid,
  2165 + sto_sele_distr: item.distr_type,
  2166 + store: 0,
  2167 + choice_sort_store: 0,
  2168 + fir_pick_index: 0
  2169 + });
  2170 +
  2171 + if (openindstore == 1) {
  2172 + th.setData({
  2173 + openSpecModal: !0,
  2174 + openSpecModal_ind: openindstore,
  2175 + });
  2176 + } else if (openindstore == 2) {
  2177 + th.setData({
  2178 + openSpecModal: !0,
  2179 + openSpecModal_ind: openindstore,
  2180 + });
  2181 + }
  2182 + else if (openindstore == 4) { //4就是拼团
  2183 + th.setData({
  2184 + openSpecModal_pt: 1, //打开拼团购买界面
  2185 + store: 0, //关闭门店
  2186 + choice_sort_store: 0, //关闭门店2级
  2187 + sort_store: 0, //关闭门店2级
  2188 + });
  2189 + }
  2190 + else {
  2191 + th.setData({
  2192 + store: 0,
  2193 + choice_sort_store: 0,
  2194 + sort_store: 0
  2195 + })
  2196 + }
  2197 + },
  2198 +
  2199 + //---点击二级之后的选择---
  2200 + choose_for_store: function (e) {
  2201 + var index_c = e.currentTarget.dataset.ind;
  2202 + var th = this;
  2203 + th.setData({
  2204 + sec_pick_index: index_c,
  2205 + fir_pick_index: index_c
  2206 + })
  2207 +
  2208 + },
  2209 + //把选择的门店设置成默认的门店def_pick
  2210 + set_def_pick: function (e) {
  2211 + var th = this;
  2212 + var item = null;
  2213 + if (th.data.choice_sort_store == 0) {
  2214 + var index = th.data.fir_pick_index;
  2215 + if (th.data.is_show_sto_cat == 1) {
  2216 + item = th.data.def_pickpu_list[index];
  2217 + } else {
  2218 + item = th.data.only_pk?th.data.only_pk[index]:null; //当没有门店分类的时候
  2219 + }
  2220 + } else {
  2221 + var index = th.data.sec_pick_index;
  2222 + item = th.data.sec_sto.s_arr[index];
  2223 + }
  2224 +
  2225 + if(!item) return false;
  2226 +
  2227 + //判断门店的配送方式是不是匹配
  2228 + var ser_card = this.data.data;
  2229 + //判断门店的配送方式是不是匹配
  2230 + if (ser_card.storageId != null && ser_card.storageId != "" && ser_card.storageId.indexOf(item.keyid) == -1) {
  2231 + wx.showToast({
  2232 + title: "该门店无此服务项目,请重新选择!",
  2233 + icon: 'none',
  2234 + duration: 2000
  2235 + });
  2236 + return false;
  2237 + }
  2238 +
  2239 +
  2240 + var store_id = os.stoid;
  2241 + var user_id = getApp().globalData.user_id;
  2242 + var def_pickup_id = item.pickup_id;
  2243 +
  2244 + getApp().request.put('/api/weshop/users/update', {
  2245 + data: {
  2246 + user_id: user_id,
  2247 + def_pickup_id: def_pickup_id
  2248 + },
  2249 + success: function (res) {
  2250 + if (res.data.code == 0) {
  2251 + if (th.data.choice_sort_store == 0) th.setData({
  2252 + fir_pick_index: 0
  2253 + });
  2254 + getApp().globalData.pk_store = item;
  2255 + } else {
  2256 + //s.showWarning("设置默认门店地址失败", null, 500, !1);
  2257 + getApp().my_warnning("设置默认门店地址失败", 0, th)
  2258 + }
  2259 +
  2260 + }
  2261 + });
  2262 +
  2263 +
  2264 + if (!item) return false;
  2265 +
  2266 + th.setData({
  2267 + def_pick_store: item,
  2268 + sto_sele_name: item.pickup_name,
  2269 + sto_sele_id: item.pickup_id,
  2270 + sto_sele_keyid: item.keyid,
  2271 + sto_sele_distr: item.distr_type,
  2272 + store: 0,
  2273 + choice_sort_store: 0
  2274 + });
  2275 +
  2276 + var openindstore = th.data.open_ind_store;
  2277 + if (openindstore == 1) {
  2278 + th.setData({
  2279 + openSpecModal: !0,
  2280 + openSpecModal_ind: openindstore,
  2281 + store: 0,
  2282 + choice_sort_store: 0,
  2283 + sort_store: 0,
  2284 + });
  2285 + } else if (openindstore == 2) {
  2286 + th.setData({
  2287 + openSpecModal: !0,
  2288 + openSpecModal_ind: openindstore,
  2289 + store: 0,
  2290 + choice_sort_store: 0,
  2291 + sort_store: 0,
  2292 + });
  2293 + }
  2294 + else if (openindstore == 4) { //4就是拼团
  2295 + th.setData({
  2296 + openSpecModal_pt: 1, //打开拼团购买界面
  2297 + store: 0, //关闭门店
  2298 + choice_sort_store: 0, //关闭门店2级
  2299 + sort_store: 0, //关闭门店2级
  2300 + });
  2301 + }
  2302 +
  2303 + else {
  2304 + th.setData({
  2305 + store: 0,
  2306 + choice_sort_store: 0,
  2307 + sort_store: 0,
  2308 + })
  2309 + }
  2310 +
  2311 + },
  2312 +
  2313 + wait_for_store_config: function () {
  2314 + var th = this;
  2315 + var t_time = setInterval(function () {
  2316 + if (th.data.bconfig == null) false;
  2317 + var e = th.data.bconfig;
  2318 + if (e && e.is_sort_storage) {
  2319 + wx.getLocation({
  2320 + type: 'gcj02',
  2321 + success: function (res) {
  2322 + th.data.lat = res.latitude;
  2323 + th.data.lon = res.longitude;
  2324 + th.data.is_get_local_ok = 1;
  2325 + },
  2326 + fail: function (res) {
  2327 + if (res.errCode == 2) {
  2328 + th.setData({
  2329 + is_gps: 0
  2330 + });
  2331 + if (th.data.is_gps == 0) {
  2332 + getApp().confirmBox("请开启GPS定位", null, 10000, !1);
  2333 + }
  2334 +
  2335 + } else {
  2336 + th.setData({
  2337 + is_gps: "3"
  2338 + });
  2339 + }
  2340 +
  2341 + th.data.is_get_local_ok = 1;
  2342 + }
  2343 + })
  2344 + } else {
  2345 + th.data.is_get_local_ok = 1;
  2346 + }
  2347 + clearInterval(t_time);
  2348 + }, 500)
  2349 + },
  2350 +
  2351 +
  2352 + //-- 根据ID拿出门店 --
  2353 + get_pick_from_list(pid){
  2354 + var all_pick_list = this.data.all_pick_list;
  2355 + for (var i in all_pick_list) {
  2356 + var item = all_pick_list[i];
  2357 + if (item.pickup_id == pid) {
  2358 + return item;
  2359 + }
  2360 + }
  2361 + },
  2362 +
  2363 + closePoster() {
  2364 + this.setData({
  2365 + showPoster: false,
  2366 + });
  2367 + },
  2368 +
  2369 + // 保存图片到手机
  2370 + savePic() {
  2371 + console.log('保存图片');
  2372 + var self = this;
  2373 + // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限
  2374 + this.getSetting().then((res) => {
  2375 + // 判断用户是否授权了保存到相册的权限,如果没有发起授权
  2376 + if (!res.authSetting['scope.writePhotosAlbum']) {
  2377 + this.authorize().then(() => {
  2378 + // 同意授权后保存下载文件
  2379 + this.saveImage(self.data.shareImgPath)
  2380 + .then(() => {
  2381 + self.setData({
  2382 + showPoster: false
  2383 + });
  2384 + });
  2385 + })
  2386 + } else {
  2387 + // 如果已经授权,保存下载文件
  2388 + this.saveImage(self.data.shareImgPath)
  2389 + .then(() => {
  2390 + self.setData({showPoster: false});
  2391 + });
  2392 + }
  2393 +
  2394 + })
  2395 + },
  2396 +
  2397 + // 获取用户已经授予了哪些权限
  2398 + getSetting() {
  2399 + return new Promise((resolve, reject) => {
  2400 + wx.getSetting({
  2401 + success: res => {
  2402 + resolve(res)
  2403 + }
  2404 + })
  2405 + })
  2406 + },
  2407 +
  2408 + // 发起首次授权请求
  2409 + authorize() {
  2410 + // isFirst 用来记录是否为首次发起授权,
  2411 + // 如果首次授权拒绝后,isFirst赋值为1
  2412 + let isFirst = wx.getStorageSync('isFirst') || 0;
  2413 + return new Promise((resolve, reject) => {
  2414 + wx.authorize({
  2415 + scope: 'scope.writePhotosAlbum',
  2416 + // 同意授权
  2417 + success: () => {
  2418 + resolve();
  2419 + },
  2420 + // 拒绝授权,这里是用户拒绝授权后的回调
  2421 + fail: res => {
  2422 + if (isFirst === 0) {
  2423 + wx.setStorageSync('isFirst', 1);
  2424 + wx.showToast({
  2425 + title: '保存失败',
  2426 + icon: 'none',
  2427 + duration: 1000
  2428 + })
  2429 + } else {
  2430 + this.showModal();
  2431 + }
  2432 + console.log('拒绝授权');
  2433 + reject();
  2434 + }
  2435 + })
  2436 + })
  2437 + },
  2438 +
  2439 + // 保存图片到系统相册
  2440 + saveImage(saveUrl) {
  2441 + var self = this;
  2442 + return new Promise((resolve, reject) => {
  2443 + wx.saveImageToPhotosAlbum({
  2444 + filePath: saveUrl,
  2445 + success: (res) => {
  2446 + wx.showToast({
  2447 + title: '保存成功',
  2448 + duration: 1000,
  2449 + });
  2450 + self.setData({
  2451 + showPlaybill: 'true'
  2452 + });
  2453 + resolve();
  2454 + },
  2455 + fail: () => {
  2456 + wx.showToast({
  2457 + title: '保存失败',
  2458 + duration: 1000,
  2459 + });
  2460 + }
  2461 + })
  2462 + })
  2463 + },
  2464 +
  2465 + previewImage() {
  2466 + getApp().pre_img(this.data.shareImgPath);
  2467 + },
  2468 +
  2469 + onShareTimeline() {
  2470 + getApp().globalData.no_clear = 1;
  2471 + var th=this;
  2472 + var store_name = getApp().globalData.config ? getApp().globalData.config.store_name : '';
  2473 + if (!store_name)
  2474 + store_name = getApp().globalData.setting.appName;
  2475 +
  2476 +
  2477 + var url = "goods_id=" + th.data.gid;
  2478 + if (getApp().globalData.user_id) {
  2479 + url += "&first_leader=" + getApp().globalData.user_id;
  2480 + }
  2481 +
  2482 + //-- 如果房间分享,且不是会员分享的 --
  2483 + if (getApp().globalData.room_id &&
  2484 + th.data.data.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share
  2485 + ) {
  2486 + url += "&room_id=" + getApp().globalData.room_id + "&room_user_share=1";
  2487 + }
  2488 +
  2489 + return {
  2490 + title: this.data.data.goods_name + '-' + store_name,
  2491 + imageUrl: this.data.gallery[0].image_url,
  2492 + query: url
  2493 + }
  2494 + },
  2495 +
  2496 +
  2497 + clickCollapse() {
  2498 + this.setData({
  2499 + flag: !this.data.flag,
  2500 + })
  2501 + },
  2502 +
  2503 + //---------联系微信客服------------
  2504 + con_weixin: function () {
  2505 + var url = this.data.sys_switch.weapp_customertype_url;
  2506 + var id = this.data.sys_switch.weapp_customertype_appid;
  2507 + wx.openCustomerServiceChat({
  2508 + extInfo: {url: url},
  2509 + corpId: id,
  2510 + success(res) {
  2511 + }
  2512 + })
  2513 + },
  2514 +
  2515 + //评论的调用
  2516 + requestComments_new: async function () {
  2517 + var e = this, th = e, ee = e;
  2518 + var tp = e.data.activeCategoryId3;
  2519 + var t = '/api/weshop/serviceComment/pageComment?page=' + e.data.c_curr_p;
  2520 +
  2521 + wx.showLoading();
  2522 + var req_where = {
  2523 + store_id: os.stoid, pageSize: 5, is_show: 1,
  2524 + parent_id: 0, goods_id: th.data.gid, commenttype: tp,
  2525 + service_id: this.data.gid,
  2526 + }
  2527 + if (getApp().globalData.userInfo) {
  2528 + req_where.userId = getApp().globalData.user_id;
  2529 + }
  2530 +
  2531 + var rs_data = null;
  2532 + await getApp().request.promiseGet(t, {data: req_where}).then(res => {
  2533 + var tot = res.data.data.total;
  2534 + e.data.c_curr_p++;
  2535 + e.setData({
  2536 + com_num: tot, //已经有加载
  2537 + });
  2538 + if (res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
  2539 + rs_data = res.data.data.pageData;
  2540 + } else {
  2541 + th.setData({comments_no_more: 1, auto: 1});
  2542 + }
  2543 + })
  2544 +
  2545 + if (rs_data) {
  2546 + //var cda = th.data.comments;
  2547 + var cda = rs_data, com_data = th.data.comments;
  2548 + for (var ind in cda) {
  2549 + var ep = cda[ind];
  2550 + if (cda[ind].head_pic == '') {
  2551 + cda[ind].head_pic = th.data.iurl + "/miniapp/images/hui_hear_pic.png";
  2552 + }
  2553 + if (ep.weapp_img != "" && ut.isString(ep.weapp_img)) {
  2554 + cda[ind].weapp_img = JSON.parse(ep.weapp_img);
  2555 + }
  2556 + if (ep.img != "" && ut.isString(ep.img)) {
  2557 + cda[ind].img = ut.unserialize(ep.img);
  2558 + }
  2559 +
  2560 + //--测量多有字的宽带,计算有多少行--
  2561 + var widh = ut.measureText(ep.content, 30);
  2562 + var lines = widh / 712;
  2563 + cda[ind].seeMore = false;
  2564 + if (lines > 3) cda[ind].seeMore = true;
  2565 +
  2566 + await getApp().request.promiseGet("/api/weshop/serviceComment/pageComment", {
  2567 + data: {
  2568 + store_id: os.stoid,
  2569 + parent_id: ep.comment_id,
  2570 + service_id: this.data.gid,
  2571 + }
  2572 + }).then(res => {
  2573 + if (res.data.data.pageData && res.data.data.pageData.length > 0) {
  2574 + cda[ind].replay_list = res.data.data.pageData;
  2575 + }
  2576 + })
  2577 + }
  2578 +
  2579 + if (!com_data) com_data = cda;
  2580 + else com_data = com_data.concat(cda);
  2581 +
  2582 + th.setData({comments: com_data});
  2583 + }
  2584 + th.setData({get_c: 1});
  2585 + wx.hideLoading();
  2586 + },
  2587 +
  2588 +
  2589 + //--点赞功能--
  2590 + click_zan: function (e) {
  2591 + var com_id = e.currentTarget.dataset.com_id;
  2592 + var item_id = e.currentTarget.dataset.item_id;
  2593 + var app = getApp(),
  2594 + th = this;
  2595 +
  2596 + if (app.globalData.userInfo == null || app.globalData.userInfo == undefined) {
  2597 + app.confirmBox("您还未登录");
  2598 + return false;
  2599 + }
  2600 +
  2601 + var iszan = th.data.comments[item_id].userZanNum;
  2602 + if (this.data.iszaning) return false;
  2603 + this.data.iszaning = 1;
  2604 +
  2605 +
  2606 + app.request.post("/api/weshop/serviceCommentZan/save", {
  2607 + data: {
  2608 + store_id: os.stoid,
  2609 + user_id: app.globalData.user_id,
  2610 + goods_id: th.data.gid,
  2611 + service_id: th.data.gid,
  2612 + comment_id: com_id
  2613 + },
  2614 + success: function (ee) {
  2615 +
  2616 + if (ee.data.code == "-1") {
  2617 + app.my_warnning("不能给自己点赞", 0, th);
  2618 + th.data.iszaning = 0;
  2619 + return;
  2620 + }
  2621 +
  2622 + if (ee.data.code == 0 && iszan != 1) {
  2623 + var num = th.data.comments[item_id].zan_num;
  2624 + num++;
  2625 + var text = "comments[" + item_id + "].zan_num";
  2626 + var text1 = "comments[" + item_id + "].userZanNum";
  2627 + var _errObj = {};
  2628 + _errObj[text] = num;
  2629 + _errObj[text1] = 1;
  2630 + th.setData(_errObj);
  2631 +
  2632 + } else {
  2633 + var num = th.data.comments[item_id].zan_num;
  2634 + num--;
  2635 + var text = "comments[" + item_id + "].zan_num";
  2636 + var text1 = "comments[" + item_id + "].userZanNum";
  2637 + var _errObj = {};
  2638 + _errObj[text] = num;
  2639 + _errObj[text1] = 0;
  2640 + th.setData(_errObj);
  2641 + }
  2642 +
  2643 + setTimeout(function () {
  2644 + th.data.iszaning = 0;
  2645 + }, 500)
  2646 +
  2647 + }
  2648 + })
  2649 + },
  2650 +
  2651 +
  2652 + //--外侧评价的点击效果---
  2653 + clik_evaluate: function (e) {
  2654 + var val = e.currentTarget.dataset.val;
  2655 + this.setData({
  2656 + activeCategoryId: 2,
  2657 + activeCategoryId3: val,
  2658 + comments: null
  2659 + });
  2660 + this.requestComments_new();
  2661 + },
  2662 +
  2663 +
  2664 + //显示全部
  2665 + toggleHandler: function (e) {
  2666 + var that = this,
  2667 + index = e.currentTarget.dataset.index;
  2668 + for (var i = 0; i < that.data.comments.length; i++) {
  2669 + if (index == i) {
  2670 + for (var i = 0; i < that.data.comments.length; i++) {
  2671 + that.data.comments[index].auto = true;
  2672 + that.data.comments[index].seeMore = false;
  2673 + }
  2674 + }
  2675 + }
  2676 + that.setData({
  2677 + comments: that.data.comments
  2678 + })
  2679 + },
  2680 +
  2681 + //收起更多
  2682 + toggleContent: function (e) {
  2683 + var that = this,
  2684 + index = e.currentTarget.dataset.index;
  2685 + for (var i = 0; i < that.data.comments.length; i++) {
  2686 + if (index == i) {
  2687 + that.data.comments[index].auto = true;
  2688 + that.data.comments[index].seeMore = true;
  2689 + }
  2690 + }
  2691 + that.setData({
  2692 + comments: that.data.comments
  2693 + })
  2694 + },
  2695 +
  2696 + //--查看评价--
  2697 + look_pj: function () {
  2698 + this.tabComment();
  2699 + this.doScrollTop();
  2700 + },
  2701 +
  2702 + previewCommentImgs_w: function (t) {
  2703 + var e = this.data.comments[t.currentTarget.dataset.cidx].weapp_img;
  2704 + var b = e.slice()
  2705 + // for (var i in b) {
  2706 + // b[i] = this.data.iurl + e[i];
  2707 + // }
  2708 + this.data.show_prew_img = 1;
  2709 + wx.previewImage({
  2710 + current: b[t.currentTarget.dataset.id],
  2711 + urls: b
  2712 + });
  2713 + },
  2714 +
  2715 +
  2716 + // 判断是否开启美业,获取套盒列表
  2717 + getTaohe() {
  2718 + // 判断是否开启美业
  2719 + getApp().promiseGet('/api/weshop/store/getTabSys/' + os.stoid, {}).then(res => {
  2720 + if (res.data.code == 0) {
  2721 + let enableMeiye = res.data.data.EnableMeiye;
  2722 + self.setData({
  2723 + enableMeiye,
  2724 + });
  2725 +
  2726 + if (enableMeiye) { // 开启美业
  2727 + // 获取套盒列表
  2728 + let url = '/api/weshop/serviceGoods/list'
  2729 + let data = {
  2730 + store_id: getApp().globalData.setting.stoid,
  2731 + service_id: this.data.data.id,
  2732 + };
  2733 + // 请求数据
  2734 + getApp().promiseGet(url, {
  2735 + data: data,
  2736 + }).then(res => {
  2737 + if (res.data.code == 0) {
  2738 + console.log('请求成功套盒列表', res);
  2739 + self.setData({
  2740 + taoheList: res.data.data,
  2741 + });
  2742 + } else {
  2743 + throw (res);
  2744 + }
  2745 + ;
  2746 + }).catch(err => {
  2747 + });
  2748 +
  2749 + }
  2750 + ;
  2751 + }
  2752 + ;
  2753 + });
  2754 + },
  2755 +
  2756 + //---小于10的格式化函数----
  2757 + timeFormat(param) {
  2758 + return param < 10 ? '0' + param : param;
  2759 + },
  2760 + //----倒计时函数-----
  2761 + countDown(time, prom_st) {
  2762 + if (!this.data.is_timer) return false;
  2763 + var th = this;
  2764 + // 获取当前时间,同时得到活动结束时间数组
  2765 + var endTime = time;
  2766 + var newTime = ut.gettimestamp();
  2767 + // 对结束时间进行处理渲染到页面
  2768 + var obj = null;
  2769 + // 如果活动未结束,对时间进行处理
  2770 + if (endTime - newTime > 0) {
  2771 + var time = (endTime - newTime);
  2772 + // 获取天、时、分、秒
  2773 + var day = parseInt(time / (60 * 60 * 24));
  2774 + var hou = parseInt(time % (60 * 60 * 24) / 3600);
  2775 + var min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
  2776 + var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
  2777 + obj = {
  2778 + day: this.timeFormat(day),
  2779 + hou: this.timeFormat(hou),
  2780 + min: this.timeFormat(min),
  2781 + sec: this.timeFormat(sec)
  2782 + }
  2783 + } else {
  2784 + if (th.data.prom_st == 0) {
  2785 + //var endTime2 = new Date(th.data.prom_end_time).getTime();
  2786 + var endTime2 = th.data.prom_act.end_time;
  2787 + th.setData({
  2788 + prom_time_text: '距结束还剩:',
  2789 + prom_st: 1
  2790 + })
  2791 + setTimeout(function () {
  2792 + th.countDown(endTime2)
  2793 + }, 1000);
  2794 + return false;
  2795 +
  2796 + } else {
  2797 + //活动已结束,全部设置为'00'
  2798 + obj = {
  2799 + day: '00',
  2800 + hou: '00',
  2801 + min: '00',
  2802 + sec: '00'
  2803 + }
  2804 + th.setData({
  2805 + prom_time_text: '活动已经结束:',
  2806 + prom_st: 3
  2807 + })
  2808 + th.setData({
  2809 + djs: obj
  2810 + });
  2811 + return false;
  2812 + }
  2813 + }
  2814 +
  2815 + th.setData({
  2816 + djs: obj
  2817 + });
  2818 + setTimeout(function () {
  2819 + th.countDown(endTime)
  2820 + }, 1000);
  2821 + },
  2822 + get_normal(gid) {
  2823 + this.setData({
  2824 + prom_type: 0,
  2825 + isshow: 1,
  2826 + });
  2827 + this.get_sku(os.stoid, this.data.data, gid);
  2828 + this.get_sto();
  2829 + //this.check_is_youhui(gid, 1);
  2830 + this.data.is_normal = 1;
  2831 + },
  2832 + //获取redis中的数量
  2833 + async getactLen() {
  2834 + let prom_type = this.data.options.prom_type;
  2835 + let prom_id = this.data.options.prom_id;
  2836 + return await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
  2837 + 1: 1
  2838 + }).then(res => {
  2839 + if (res.data.code == 0) {
  2840 + // 当前可以购买的数量
  2841 + let r_num = res.data.data;
  2842 + return r_num;
  2843 + }
  2844 + ;
  2845 + })
  2846 + },
  2847 +
  2848 +
  2849 + //--------检查是否活动,活动是否开始,或者是否结束-------
  2850 + async check_prom(gid, prom_type, prom_id) {
  2851 + var ee = this, th = ee;
  2852 + var user_id = getApp().globalData.user_id;
  2853 + if (!user_id) user_id = 0;
  2854 + //-------判断活动是否抢光---------
  2855 + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + prom_id, {
  2856 + 1: 1
  2857 + }).then(res => {
  2858 + var em = res;
  2859 + var flag = null;
  2860 + if (em.data.code == 0) {
  2861 + if (em.data.data <= 0) ee.setData({
  2862 + prom_r_null: 1
  2863 + });
  2864 + //拿取价格并且判断时间--
  2865 + getApp().request.get("/api/weshop/teamlist/get/" +
  2866 + os.stoid + "/" + prom_id, {
  2867 + success: async function (t) {
  2868 + if (t.data.code != 0) {
  2869 + ee.get_normal(gid);
  2870 + return false;
  2871 + }
  2872 + //----已经结束-----
  2873 + if (t.data.data.is_end == 1) {
  2874 + ee.get_normal(gid);
  2875 + return false;
  2876 + }
  2877 + //----已经过期-----
  2878 + var now = ut.gettimestamp();
  2879 + if (t.data.data.end_time < now) {
  2880 + ee.get_normal(gid);
  2881 + return false;
  2882 + }
  2883 +
  2884 + /*-- 还没有开始预热的也不显示 --*/
  2885 + if (t.data.data.show_time > now) {
  2886 + ee.get_normal(gid);
  2887 + return false;
  2888 + }
  2889 +
  2890 + /*-- 判断拼单是否启用 --*/
  2891 + if (!t.data.data.is_show) {
  2892 + console.log('没启用');
  2893 + wx.setNavigationBarTitle({
  2894 + title: '系统提示',
  2895 + });
  2896 + wx.showToast({
  2897 + title: '此商品暂时没有拼单活动',
  2898 + icon: 'none',
  2899 + success(){
  2900 + setTimeout(() => {
  2901 + wx.navigateBack()
  2902 + }, 2000)
  2903 + }
  2904 + });
  2905 + return false
  2906 + }
  2907 +
  2908 + //判断拼团的---会员身份--
  2909 + await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2", {
  2910 + data: {
  2911 + store_id: os.stoid,
  2912 + is_end: 0,
  2913 + is_show: 1,
  2914 + user_id: getApp().globalData.user_id,
  2915 + pageSize: 1000
  2916 + }
  2917 + }).then(res => {
  2918 + let pd_list = res.data.data.pageData;
  2919 + if (res.data.code == 0 && pd_list.length > 0) {
  2920 + flag = pd_list.some(pd => {
  2921 + return pd.goods_id == gid && pd.goods_type==1
  2922 + })
  2923 + }
  2924 + })
  2925 + if (!flag) {
  2926 + ee.get_normal(gid);
  2927 + return false;
  2928 +
  2929 + }
  2930 + //-------查看自己是不是有买过该团的商品,并还为支付,或者在进行中-------
  2931 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
  2932 + data: {
  2933 + prom_id: prom_id,
  2934 + prom_type: 6,
  2935 + user_id: oo.user_id,
  2936 + store_id: os.stoid,
  2937 + pageSize: 1,
  2938 + page: 1
  2939 + }
  2940 + }).then(e => {
  2941 + if (e.data.code == 0 && e.data.data.pageData.length > 0) {
  2942 + var odr = e.data.data.pageData[0];
  2943 + th.data.buy_order = odr;
  2944 + if (odr.pt_status == 0 && odr.order_status == 1) {
  2945 + th.setData({
  2946 + user_order_pt_state: 1
  2947 + });
  2948 + }
  2949 + if (odr.pt_status == 1) {
  2950 + if (odr.is_zsorder == 4) {
  2951 + getApp().request.promiseGet("/api/weshop/teamgroup/page/", {
  2952 + data: {
  2953 + store_id: os.stoid,
  2954 + team_id: odr.prom_id,
  2955 + listno: odr.pt_listno
  2956 + }
  2957 + }).then(res => {
  2958 + var now = ut.gettimestamp();
  2959 + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
  2960 + var tgr = res.data.data.pageData[0];
  2961 + //如果团的时间已经到了
  2962 + if (now >= tgr.kt_end_time) {
  2963 + th.update_jiti(tgr.id);
  2964 + } else {
  2965 + th.setData({
  2966 + user_order_pt_state: 2
  2967 + });
  2968 + }
  2969 + }
  2970 + })
  2971 +
  2972 + } else {
  2973 + th.setData({
  2974 + user_order_pt_state: 2
  2975 + });
  2976 + }
  2977 + }
  2978 +
  2979 + if (odr.pt_status == 2 && odr.is_zsorder == 4) {
  2980 + th.setData({
  2981 + user_order_pt_state: 3,
  2982 + });
  2983 + th.data.wk_order_id = odr.order_id;
  2984 + }
  2985 + }
  2986 + })
  2987 +
  2988 + //----------查看阶梯团------------
  2989 + if (t.data.data.ct_rylist != "null" && t.data.data.ct_rylist != "" && t.data.data.ct_rylist != null && t.data.data.ct_rylist != undefined) {
  2990 + t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist);
  2991 + var max_num = 0;
  2992 + t.data.data.ct_rylist.forEach(function (val, ind) {
  2993 + if (parseInt(val.rynum) > max_num) max_num = parseInt(val.rynum);
  2994 + })
  2995 + t.data.data.max_ct_num = max_num;
  2996 + }
  2997 +
  2998 + var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
  2999 + var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
  3000 +
  3001 + ee.setData({
  3002 + prom_price: t.data.data.price,
  3003 + prom_type: 6,
  3004 + prom_id: prom_id,
  3005 + prom_buy_limit: t.data.data.buy_limit,
  3006 + prom_act: t.data.data,
  3007 + prom_end_time: prom_end_time,
  3008 + prom_start_time: prom_start_time,
  3009 + isshow: 1,
  3010 + });
  3011 +
  3012 + ee.get_sto();
  3013 +
  3014 + var newTime = now;
  3015 + var endTime2 = t.data.data.end_time;
  3016 + var endTime1 = t.data.data.start_time;
  3017 +
  3018 + if (endTime1 > newTime) {
  3019 + ee.setData({
  3020 + prom_time_text: '距拼单开始还剩:',
  3021 + prom_st: 0
  3022 + })
  3023 + ee.countDown(endTime1, 0);
  3024 + } else {
  3025 + if (endTime2 > newTime) {
  3026 + ee.setData({
  3027 + prom_time_text: '距拼单结束还剩:',
  3028 + prom_st: 1
  3029 + })
  3030 + ee.countDown(endTime2);
  3031 + }
  3032 + }
  3033 +
  3034 + //-------查看有多少人在开这个团-------
  3035 + th.get_team_group(prom_id);
  3036 + }
  3037 + });
  3038 + }
  3039 + })
  3040 +
  3041 + },
  3042 +
  3043 +
  3044 + viewFlash(e) {
  3045 + let prom_type = e.currentTarget.dataset.promtype;
  3046 + let prom_id = e.currentTarget.dataset.promid;
  3047 + let goods_id = this.data.data.goods_id;
  3048 + let url = `/packageA/pages/goodsInfo/goodsInfo?goods_id=${goods_id}&prom_type=${prom_type}&prom_id=${prom_id}`;
  3049 + s
  3050 + getApp().goto(url);
  3051 + },
  3052 +
  3053 +
  3054 + //获取更多秒杀
  3055 + get_more_flash: async function (func) {
  3056 + var f_more = false;
  3057 + var user_id = getApp().globalData.user_id;
  3058 + if (!user_id) user_id = 0;
  3059 +
  3060 + var url = "/api/weshop/goods/listSkuFlash?store_id=" + os.stoid + "&goods_id=" + this.data.options.goods_id + "&user_id=" + user_id;
  3061 + //获取秒杀的多规格
  3062 + await getApp().request.promiseGet(url, {}).then(res => {
  3063 + if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
  3064 + f_more = res.data.data;
  3065 + }
  3066 + })
  3067 + if (!f_more) {
  3068 + func(false);
  3069 + return false;
2299 3070 }
2300   - });
2301   - }
2302   - },
2303   - //--获取商品图片的本地缓存,回调写法--
2304   - get_goods_temp: function(tt) {
2305   - var ee = this;
2306   - if (ee.data.share_goods_img) {
2307   - tt();
2308   - return false;
2309   - }
2310   - //获取商品是分享图信息
2311   - wx.getImageInfo({
2312   - src: ee.data.data.original_img,
2313   - success: function(res) {
2314   - //res.path是网络图片的本地地址
2315   - ee.data.share_goods_img = res.path;
2316   - tt();
2317   - },
2318   - fail: function(res) {
2319   -
2320   - ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
2321   - tt();
2322   - }
2323   - });
2324   - },
2325   -
2326   -
2327   - //--跳转到商品详情页面--
2328   - go_goods: function(e) {
2329   - var gid = e.currentTarget.dataset.gid;
2330   - var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid;
2331   - getApp().goto(url);
2332   - },
2333   -
2334   -
2335   - pop_err_img: function(e) {
2336   - var txt = e.currentTarget.dataset.errorimg;
2337   - var ob = {};
2338   - ob[txt] = this.data.iurl + "/miniapp/images/default_g_img.gif";
2339   - this.setData(ob);
2340   - },
2341   -
2342   - // 选择门店
2343   - choice_store: function(ee) {
2344   - var th = this;
2345   - var ind=ee.currentTarget.dataset.ind;
2346   - var bconfig = th.data.bconfig;
2347   -
2348   - if(!th.data.only_pk && !th.data.def_pickpu_list){
2349   - getApp().confirmBox("门店库存不足", null, 25000, !1);
2350   - return false;
2351   - }
2352   -
2353   - if(th.data.only_pk && !th.data.only_pk.length){
2354   - getApp().confirmBox("门店库存不足", null, 25000, !1);
2355   - return false;
2356   - }
2357   - if(th.data.def_pickpu_list && !th.data.def_pickpu_list.length){
2358   - getApp().confirmBox("门店库存不足", null, 25000, !1);
2359   - return false;
2360   - }
2361   -
2362   -
2363   - if (bconfig && bconfig.is_sort_storage) {
2364   - wx.getLocation({
2365   - type: 'gcj02',
2366   - success: function(res) {
2367   -
2368   - th.data.lat = res.latitude;
2369   - th.data.lon = res.longitude;
2370   - th.data.is_get_local_ok = 1;
2371   - th.setData({ is_gps: 1 });
2372   - th.get_sto(th.data.is_normal);
2373   - },
2374   - fail: function(res) {
2375   -
2376   - th.data.is_get_local_ok = 1;
2377   - th.get_sto(th.data.is_normal);
2378   - if (res.errCode == 2) {
2379   - th.setData({is_gps: 0});
2380   - if (th.data.is_gps == 0) {
2381   - getApp().confirmBox("请开启GPS定位", null, 25000, !1);
  3071 + //-- 秒杀的价格要更新 --
  3072 + for (let i in f_more) {
  3073 +
  3074 + let item = f_more[i];
  3075 + f_more[i].prom_id = item.act_id;
  3076 + f_more[i].prom_type = 1;
  3077 + if (item.goods_id == this.data.data.goods_id) {
  3078 + continue;
2382 3079 }
2383   - } else {
2384   - th.setData({ is_gps: "3" });
2385   - }
  3080 + var url = "/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + item.act_id;
  3081 + await getApp().request.promiseGet(url, {}).then(rs => {
  3082 + if (rs.data.code == 0) {
  3083 + f_more[i].price = rs.data.data.user_price;
2386 3084  
  3085 + }
  3086 + })
2387 3087 }
2388   - })
2389   - }else{
2390   - th.data.is_get_local_ok = 1;
2391   - th.get_sto(th.data.is_normal);
2392   - }
2393   -
2394   - if(ind!=undefined && ind!=null ){
2395   - this.setData({
2396   - open_ind_store: ind,
2397   - store: 1,
2398   - openSpecModal: !1,
2399   - openSpecModal_pt: !1
2400   - })
2401   - }else{
2402   - this.setData({
2403   - store: 1,
2404   - openSpecModal: !1,
2405   - openSpecModal_pt: !1
2406   - })
2407   - }
2408   - },
2409   - //关闭选择门店
2410   - close_popup: function(e) {
2411   - var th=this;
2412   - this.setData({
2413   - store: 0,
2414   - choice_sort_store: 0,
2415   - sort_store: 0,
2416   - fir_pick_index:0,
2417   - sec_pick_index:0
2418   - })
2419   -
2420   - var openindstore=this.data.open_ind_store;
2421   - if (openindstore == 1) {
2422   - th.setData({
2423   - openSpecModal: !0,
2424   - openSpecModal_ind: openindstore,
2425   - });
2426   - } else if (openindstore == 2) {
2427   - th.setData({
2428   - openSpecModal: !0,
2429   - openSpecModal_ind: openindstore,
2430   - });
2431   - }
2432   - else if (openindstore == 4) { //4就是拼团
2433   - th.setData({
2434   - openSpecModal_pt: 1, //打开拼团购买界面
2435   - store: 0, //关闭门店
2436   - choice_sort_store: 0, //关闭门店2级
2437   - sort_store: 0, //关闭门店2级
2438   - });
2439   - }
2440   - else {
2441   - th.setData({
2442   - store: 0,
2443   - choice_sort_store: 0,
2444   - sort_store: 0
2445   - })
2446   - }
2447   - },
2448   -
2449   - //选择更多门店
2450   - more_store: function() {
2451   - this.setData({
2452   - sort_store: 1
2453   - });
2454   - },
2455   -
2456   - sort_store: function() { },
2457   - // 返回按钮
2458   - returns: function() {
2459   - this.setData({
2460   - sort_store: 0,
2461   - choice_sort_store: 0
2462   - });
2463   - },
2464   - //---选择分类门店---
2465   - choice_sort_store: function(e) {
2466   - var index = e.currentTarget.dataset.index;
2467   - var region_name = e.currentTarget.dataset.region;
2468   - var item = this.data.all_sto[index];
2469   - this.setData({
2470   - region_name: region_name,
2471   - sort_store: 0,
2472   - choice_sort_store: 1,
2473   - sec_sto: item,
2474   - sec_pick_index: 0
2475   - });
2476   - },
2477   -
2478   - choose_for_store_fir: function(e) {
2479   - var index_c = e.currentTarget.dataset.ind;
2480   - var th=this;
2481   - th.setData({
2482   - fir_pick_index: index_c
2483   - })
2484   -
2485   - },
2486   -
2487   - //确定def_pick为选择的门店
2488   - sure_pick: function(e) {
2489   - var th = this;
2490   - var item = null;
2491   - var openindstore = th.data.open_ind_store;
2492   -
2493   - if (th.data.choice_sort_store == 0) {
2494   - var index = th.data.fir_pick_index;
2495   - if (th.data.is_show_sto_cat == 1) {
2496   - item = th.data.def_pickpu_list[index];
2497   - } else {
2498   - item = th.data.only_pk[index]; //当没有门店分类的时候
2499   - }
2500   -
2501   - } else {
2502   - var index = th.data.sec_pick_index;
2503   - item = th.data.sec_sto.s_arr[index];
2504   - }
2505   -
2506   - var ser_card=this.data.data;
2507   - //判断门店的配送方式是不是匹配
2508   - if(ser_card.storageId!=null && ser_card.storageId!="" && ser_card.storageId.indexOf(item.keyid)==-1){
2509   - wx.showToast({
2510   - title: "该门店无此服务项目,请重新选择!",
2511   - icon: 'none',
2512   - duration: 2000
2513   - });
2514   - return false;
2515   - }
2516   -
2517   - if(!item) return false;
2518   -
2519   - th.setData({
2520   - def_pick_store: item,
2521   - sto_sele_name: item.pickup_name,
2522   - sto_sele_id: item.pickup_id,
2523   - sto_sele_keyid: item.keyid,
2524   - sto_sele_distr: item.distr_type,
2525   - store: 0,
2526   - choice_sort_store: 0,
2527   - fir_pick_index: 0
2528   - });
2529   -
2530   - if (openindstore == 1) {
2531   - th.setData({
2532   - openSpecModal: !0,
2533   - openSpecModal_ind: openindstore,
2534   - });
2535   - } else if (openindstore == 2) {
2536   - th.setData({
2537   - openSpecModal: !0,
2538   - openSpecModal_ind: openindstore,
2539   - });
2540   - }
2541   - else if(openindstore == 4) { //4就是拼团
2542   - th.setData({
2543   - openSpecModal_pt: 1, //打开拼团购买界面
2544   - store: 0, //关闭门店
2545   - choice_sort_store: 0, //关闭门店2级
2546   - sort_store: 0, //关闭门店2级
2547   - });
2548   - }
2549   - else {
2550   - th.setData({
2551   - store: 0,
2552   - choice_sort_store: 0,
2553   - sort_store: 0
2554   - })
2555   - }
2556   - },
2557   -
2558   - //---点击二级之后的选择---
2559   - choose_for_store: function(e) {
2560   - var index_c = e.currentTarget.dataset.ind;
2561   - var th=this;
2562   - th.setData({
2563   - sec_pick_index: index_c,
2564   - fir_pick_index: index_c
2565   - })
2566   -
2567   - },
2568   - //把选择的门店设置成默认的门店def_pick
2569   - set_def_pick: function(e) {
2570   - var th = this;
2571   - var item = null;
2572   - if (th.data.choice_sort_store == 0) {
2573   - var index = th.data.fir_pick_index;
2574   - if (th.data.is_show_sto_cat == 1) {
2575   - item = th.data.def_pickpu_list[index];
2576   - } else {
2577   - item = th.data.only_pk[index]; //当没有门店分类的时候
2578   - }
2579   - } else {
2580   - var index = th.data.sec_pick_index;
2581   - item = th.data.sec_sto.s_arr[index];
2582   - }
2583   -
2584   - //判断门店的配送方式是不是匹配
2585   - var ser_card=this.data.data;
2586   - //判断门店的配送方式是不是匹配
2587   - if(ser_card.storageId!=null && ser_card.storageId!="" && ser_card.storageId.indexOf(item.keyid)==-1){
2588   - wx.showToast({
2589   - title: "该门店无此服务项目,请重新选择!",
2590   - icon: 'none',
2591   - duration: 2000
2592   - });
2593   - return false;
2594   - }
2595   -
2596   -
2597   -
2598   - var store_id = os.stoid;
2599   - var user_id = getApp().globalData.user_id;
2600   - var def_pickup_id = item.pickup_id;
2601   -
2602   - getApp().request.put('/api/weshop/users/update', {
2603   - data: {
2604   - user_id:user_id,
2605   - def_pickup_id:def_pickup_id
2606   - },
2607   - success: function(res) {
2608   - if (res.data.code == 0) {
2609   - if (th.data.choice_sort_store == 0) th.setData({
2610   - fir_pick_index: 0
2611   - });
2612   - getApp().globalData.pk_store = item;
2613   - } else {
2614   - //s.showWarning("设置默认门店地址失败", null, 500, !1);
2615   - getApp().my_warnning("设置默认门店地址失败",0,th)
2616   - }
  3088 + func(f_more);
  3089 +
  3090 + },
  3091 +
  3092 +
  3093 + //-------------获取购买数量的总函数----------------
  3094 + get_buy_num: function (func) {
  3095 +
  3096 + var th = this,
  3097 + user_id = getApp().globalData.user_id;
  3098 + if (user_id == null) {
2617 3099  
  3100 + th.setData({
  3101 + prom_buy_num: 0,
  3102 + });
  3103 + "function" == typeof func && func();
  3104 + return false;
2618 3105 }
2619   - });
2620 3106  
  3107 + //----获取活动购买数----
  3108 + getApp().request.get("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
  3109 + data: {
  3110 + store_id: os.stoid,
  3111 + user_id: user_id,
  3112 + card_id: th.data.options.goods_id,
  3113 + prom_type: th.data.options.prom_type,
  3114 + prom_id: th.data.options.prom_id
  3115 + },
  3116 + //-----获取-----
  3117 + success: function (tt) {
  3118 + if (tt.data.code == 0) {
  3119 + // map.set(gd.goods_id, g_buy_num);
  3120 + th.setData({
  3121 + // g_buy_num: map,
  3122 + promcardbuynum: tt.data.data.promcardbuynum,
  3123 + cardbuynum: tt.data.data.cardbuynum,
  3124 + });
  3125 + "function" == typeof func && func();
  3126 + }
  3127 + }
  3128 + });
2621 3129  
2622   - if(!item) return false;
  3130 + },
2623 3131  
2624   - th.setData({
2625   - def_pick_store: item,
2626   - sto_sele_name: item.pickup_name,
2627   - sto_sele_id: item.pickup_id,
2628   - sto_sele_keyid: item.keyid,
2629   - sto_sele_distr: item.distr_type,
2630   - store: 0,
2631   - choice_sort_store: 0
2632   - });
2633 3132  
2634   - var openindstore = th.data.open_ind_store;
2635   - if (openindstore == 1) {
2636   - th.setData({
2637   - openSpecModal: !0,
2638   - openSpecModal_ind: openindstore,
2639   - store: 0,
2640   - choice_sort_store: 0,
2641   - sort_store: 0,
2642   - });
2643   - } else if (openindstore == 2) {
2644   - th.setData({
2645   - openSpecModal: !0,
2646   - openSpecModal_ind: openindstore,
2647   - store: 0,
2648   - choice_sort_store: 0,
2649   - sort_store: 0,
2650   - });
2651   - }
2652   - else if (openindstore == 4) { //4就是拼团
2653   - th.setData({
2654   - openSpecModal_pt: 1, //打开拼团购买界面
2655   - store: 0, //关闭门店
2656   - choice_sort_store: 0, //关闭门店2级
2657   - sort_store: 0, //关闭门店2级
  3133 + get_buy_num2: async function () {
  3134 + // var map = this.data.g_buy_num,
  3135 + var th = this, user_id = getApp().globalData.user_id;
  3136 + //----获取活动购买数----
  3137 + return await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
  3138 + data: {
  3139 + store_id: os.stoid,
  3140 + user_id: user_id,
  3141 + card_id: th.data.options.goods_id,
  3142 + prom_type: th.data.options.prom_type,
  3143 + prom_id: th.data.options.prom_id
  3144 + }
2658 3145 });
2659   - }
  3146 + },
2660 3147  
2661   - else {
2662   - th.setData({
2663   - store: 0,
2664   - choice_sort_store: 0,
2665   - sort_store: 0,
  3148 +
  3149 + // 促销 -> 送礼包 -> 查看详情
  3150 + viewLbDetails(e) {
  3151 + let id = e.currentTarget.dataset.id; // 获取礼包id
  3152 + let url = `/packageA/pages/myGiftDetails/myGiftDetails?btn=0&index=0&id=${id}`; // btn=0 控制跳转到的页面不显示按钮
  3153 + // console.log('myurl', url);
  3154 + getApp().goto(url);
  3155 + },
  3156 +
  3157 + go_more_ladder: function (e) {
  3158 + var prom_id = e.currentTarget.dataset.id;
  3159 + getApp().goto("/pages/goods/goodsList/goodsList?ladder_id=" + prom_id);
  3160 + },
  3161 +
  3162 + getHistoryBuy() {
  3163 + let _this = this;
  3164 + let req_data = {
  3165 + store_id: os.stoid,
  3166 + goods_id: this.data.gid,
  3167 + pay_status: 1,
  3168 + rndid: 1
  3169 + };
  3170 + getApp().request.promiseGet('/api/weshop/ordergoods/list', {
  3171 + data: req_data,
2666 3172 })
2667   - }
2668   -
2669   - },
2670   -
2671   - wait_for_store_config: function() {
2672   - var th = this;
2673   - var t_time = setInterval(function() {
2674   - if (th.data.bconfig == null) false;
2675   - var e = th.data.bconfig;
2676   - if (e && e.is_sort_storage) {
2677   - wx.getLocation({
2678   - type: 'gcj02',
2679   - success: function(res) {
2680   - th.data.lat = res.latitude;
2681   - th.data.lon = res.longitude;
2682   - th.data.is_get_local_ok = 1;
2683   - },
2684   - fail: function(res) {
2685   - if (res.errCode == 2) {
2686   - th.setData({
2687   - is_gps: 0
2688   - });
2689   - if (th.data.is_gps == 0) {
2690   - getApp().confirmBox("请开启GPS定位", null, 10000, !1);
2691   - }
  3173 + .then(res => {
  3174 + if (ut.ajax_ok(res)) {
  3175 + _this.setData({
  3176 + historyBuyInfo: res.data.data.pageData,
  3177 + })
  3178 + }
  3179 + })
  3180 + },
  3181 +
2692 3182  
  3183 + //打开客服操作菜单
  3184 + openCS() {
  3185 + // 判断会员状态
  3186 + let user_info = getApp().globalData.userInfo;
  3187 + if (user_info == null || user_info.mobile == undefined || user_info.mobile == '' || user_info.mobile == null) {
  3188 + wx.navigateTo({
  3189 + url: '/packageE/pages/togoin/togoin',
  3190 + })
  3191 + return false;
  3192 + }
  3193 + ;
  3194 + // csType/在线客服设置:
  3195 + // 0关闭(如果有设置热线电话,则显示拨打热线电话)、
  3196 + // 1小程序客服、
  3197 + // 2企业微信客服
  3198 + if (this.data.sys_switch) {
  3199 + let csType = this.data.sys_switch.weapp_customertype;
  3200 + if (csType == 0) {
  3201 + // 拨打电话号码
  3202 + this.contactService();
2693 3203 } else {
2694   - th.setData({
2695   - is_gps: "3"
2696   - });
  3204 + this.getTel()
  3205 + .then(() => {
  3206 + self.setData({
  3207 + hiddenCS: false,
  3208 + });
  3209 + });
2697 3210 }
  3211 + ;
  3212 + }
  3213 + ;
2698 3214  
2699   - th.data.is_get_local_ok = 1;
2700   - }
2701   - })
2702   - } else {
2703   - th.data.is_get_local_ok = 1;
2704   - }
2705   - clearInterval(t_time);
2706   - }, 500)
2707   - },
2708   -
2709   -
2710   - //-- 根据ID拿出门店 --
2711   - get_pick_from_list(pid){
2712   - var all_pick_list=this.data.all_pick_list;
2713   - for(var i in all_pick_list){
2714   - var item=all_pick_list[i];
2715   - if(item.pickup_id==pid){ return item;}
2716   - }
2717   - },
2718   -
2719   - closePoster() {
2720   - this.setData({
2721   - showPoster: false,
2722   - });
2723   - },
2724   -
2725   - // 保存图片到手机
2726   - savePic() {
2727   - console.log('保存图片');
2728   - var self = this;
2729   - // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限
2730   - this.getSetting().then((res) => {
2731   - // 判断用户是否授权了保存到相册的权限,如果没有发起授权
2732   - if (!res.authSetting['scope.writePhotosAlbum']) {
2733   - this.authorize().then(() => {
2734   - // 同意授权后保存下载文件
2735   - this.saveImage(self.data.shareImgPath)
2736   - .then(() => {
2737   - self.setData({
2738   - showPoster: false
2739   - });
2740   - });
2741   - })
2742   - } else {
2743   - // 如果已经授权,保存下载文件
2744   - this.saveImage(self.data.shareImgPath)
2745   - .then(() => {
2746   - self.setData({ showPoster: false });
2747   - });
2748   - }
2749   -
2750   - })
2751   - },
2752   -
2753   - // 获取用户已经授予了哪些权限
2754   - getSetting() {
2755   - return new Promise((resolve, reject) => {
2756   - wx.getSetting({
2757   - success: res => {
2758   - resolve(res)
2759   - }
2760   - })
2761   - })
2762   - },
2763   -
2764   - // 发起首次授权请求
2765   - authorize() {
2766   - // isFirst 用来记录是否为首次发起授权,
2767   - // 如果首次授权拒绝后,isFirst赋值为1
2768   - let isFirst = wx.getStorageSync('isFirst') || 0;
2769   - return new Promise((resolve, reject) => {
2770   - wx.authorize({
2771   - scope: 'scope.writePhotosAlbum',
2772   - // 同意授权
2773   - success: () => {
2774   - resolve();
2775   - },
2776   - // 拒绝授权,这里是用户拒绝授权后的回调
2777   - fail: res => {
2778   - if(isFirst === 0) {
2779   - wx.setStorageSync('isFirst', 1);
2780   - wx.showToast({
2781   - title: '保存失败',
2782   - icon: 'none',
2783   - duration: 1000
2784   - })
2785   - } else {
2786   - this.showModal();
2787   - }
2788   - console.log('拒绝授权');
2789   - reject();
2790   - }
2791   - })
2792   - })
2793   - },
2794   -
2795   - // 保存图片到系统相册
2796   - saveImage(saveUrl) {
2797   - var self = this;
2798   - return new Promise((resolve, reject) => {
2799   - wx.saveImageToPhotosAlbum({
2800   - filePath: saveUrl,
2801   - success: (res) => {
2802   - wx.showToast({
2803   - title: '保存成功',
2804   - duration: 1000,
2805   - });
2806   - self.setData({
2807   - showPlaybill: 'true'
2808   - });
2809   - resolve();
2810   - },
2811   - fail: () => {
2812   - wx.showToast({
2813   - title: '保存失败',
2814   - duration: 1000,
2815   - });
2816   - }
2817   - })
2818   - })
2819   - },
2820   -
2821   - previewImage() {
2822   - getApp().pre_img(this.data.shareImgPath);
2823   - },
2824   -
2825   - onShareTimeline() {
2826   - getApp().globalData.no_clear=1
2827   - var store_name=getApp().globalData.config?getApp().globalData.config.store_name:'';
2828   - if(!store_name)
2829   - store_name=getApp().globalData.setting.appName;
2830   -
2831   - return {
2832   - title:this.data.data.goods_name + '-' + store_name,
2833   - imageUrl:this.data.gallery[0].image_url,
2834   - }
2835   - },
2836   -
2837   -
2838   -
2839   - clickCollapse() {
2840   - this.setData({
2841   - flag: !this.data.flag,
2842   - })
2843   - },
  3215 + },
2844 3216  
2845   - //---------联系微信客服------------
2846   - con_weixin:function () {
2847   - var url=this.data.sys_switch.weapp_customertype_url;
2848   - var id=this.data.sys_switch.weapp_customertype_appid;
2849   - wx.openCustomerServiceChat({
2850   - extInfo: {url: url},
2851   - corpId: id,
2852   - success(res) {}
2853   - })
  3217 + //关闭客服操作菜单
  3218 + closeCS() {
  3219 + this.setData({
  3220 + hiddenCS: true,
  3221 + });
2854 3222 },
2855   -
2856   - //评论的调用
2857   - requestComments_new: async function () {
2858   - var e = this, th = e, ee = e; var tp = e.data.activeCategoryId3;
2859   - var t = '/api/weshop/serviceComment/pageComment?page=' + e.data.c_curr_p;
2860   -
2861   - wx.showLoading();
2862   - var req_where = {
2863   - store_id: os.stoid, pageSize: 5, is_show: 1,
2864   - parent_id: 0, goods_id: th.data.gid, commenttype: tp,
2865   - service_id: this.data.gid,
2866   - }
2867   - if (getApp().globalData.userInfo) {
2868   - req_where.userId = getApp().globalData.user_id;
2869   - }
2870   -
2871   - var rs_data = null;
2872   - await getApp().request.promiseGet(t, { data: req_where }).then(res => {
2873   - var tot = res.data.data.total;
2874   - e.data.c_curr_p++;
2875   - e.setData({
2876   - com_num: tot, //已经有加载
2877   - });
2878   - if (res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
2879   - rs_data = res.data.data.pageData;
2880   - } else {
2881   - th.setData({ comments_no_more: 1, auto: 1 });
2882   - }
2883   - })
2884   -
2885   - if (rs_data) {
2886   - //var cda = th.data.comments;
2887   - var cda = rs_data, com_data = th.data.comments;
2888   - for (var ind in cda) {
2889   - var ep = cda[ind];
2890   - if (cda[ind].head_pic == '') {
2891   - cda[ind].head_pic = th.data.iurl + "/miniapp/images/hui_hear_pic.png";
2892   - }
2893   - if (ep.weapp_img != "" && ut.isString(ep.weapp_img)) {
2894   - cda[ind].weapp_img = JSON.parse(ep.weapp_img);
2895   - }
2896   - if (ep.img != "" && ut.isString(ep.img)) {
2897   - cda[ind].img = ut.unserialize(ep.img);
2898   - }
2899   -
2900   - //--测量多有字的宽带,计算有多少行--
2901   - var widh = ut.measureText(ep.content, 30);
2902   - var lines = widh / 712;
2903   - cda[ind].seeMore = false;
2904   - if (lines > 3) cda[ind].seeMore = true;
2905   -
2906   - await getApp().request.promiseGet("/api/weshop/serviceComment/pageComment", {
2907   - data: {
2908   - store_id: os.stoid,
2909   - parent_id: ep.comment_id,
2910   - service_id: this.data.gid,
2911   - }
2912   - }).then(res => {
2913   - if (res.data.data.pageData && res.data.data.pageData.length > 0) {
2914   - cda[ind].replay_list = res.data.data.pageData;
2915   - }
2916   - })
2917   - }
2918   -
2919   - if (!com_data) com_data = cda;
2920   - else com_data = com_data.concat(cda);
2921   -
2922   - th.setData({ comments: com_data });
2923   - }
2924   - th.setData({ get_c: 1 });
2925   - wx.hideLoading();
2926   - },
2927   -
2928   -
2929   -
2930   - //--点赞功能--
2931   - click_zan: function (e) {
2932   - var com_id = e.currentTarget.dataset.com_id;
2933   - var item_id = e.currentTarget.dataset.item_id;
2934   - var app = getApp(),
2935   - th = this;
2936   -
2937   - if (app.globalData.userInfo == null || app.globalData.userInfo == undefined) {
2938   - app.confirmBox("您还未登录");
2939   - return false;
2940   - }
2941   -
2942   - var iszan = th.data.comments[item_id].userZanNum;
2943   - if (this.data.iszaning) return false;
2944   - this.data.iszaning = 1;
2945   -
2946   -
2947   - app.request.post("/api/weshop/serviceCommentZan/save", {
2948   - data: {
2949   - store_id: os.stoid,
2950   - user_id: app.globalData.user_id,
2951   - goods_id: th.data.gid,
2952   - service_id: th.data.gid,
2953   - comment_id: com_id
2954   - },
2955   - success: function (ee) {
2956   -
2957   - if (ee.data.code == "-1") {
2958   - app.my_warnning("不能给自己点赞", 0, th);
2959   - th.data.iszaning = 0;
2960   - return;
2961   - }
2962   -
2963   - if (ee.data.code == 0 && iszan != 1) {
2964   - var num = th.data.comments[item_id].zan_num;
2965   - num++;
2966   - var text = "comments[" + item_id + "].zan_num";
2967   - var text1 = "comments[" + item_id + "].userZanNum";
2968   - var _errObj = {};
2969   - _errObj[text] = num;
2970   - _errObj[text1] = 1;
2971   - th.setData(_errObj);
2972   -
2973   - } else {
2974   - var num = th.data.comments[item_id].zan_num;
2975   - num--;
2976   - var text = "comments[" + item_id + "].zan_num";
2977   - var text1 = "comments[" + item_id + "].userZanNum";
2978   - var _errObj = {};
2979   - _errObj[text] = num;
2980   - _errObj[text1] = 0;
2981   - th.setData(_errObj);
2982   - }
2983   -
2984   - setTimeout(function () {
2985   - th.data.iszaning = 0;
2986   - }, 500)
2987   -
2988   - }
2989   - })
2990   - },
2991   -
2992   -
2993   - //--外侧评价的点击效果---
2994   - clik_evaluate: function (e) {
2995   - var val = e.currentTarget.dataset.val;
2996   - this.setData({
2997   - activeCategoryId: 2,
2998   - activeCategoryId3: val,
2999   - comments: null
3000   - });
3001   - this.requestComments_new();
3002   - },
3003   -
3004   -
3005   - //显示全部
3006   - toggleHandler: function (e) {
3007   - var that = this,
3008   - index = e.currentTarget.dataset.index;
3009   - for (var i = 0; i < that.data.comments.length; i++) {
3010   - if (index == i) {
3011   - for (var i = 0; i < that.data.comments.length; i++) {
3012   - that.data.comments[index].auto = true;
3013   - that.data.comments[index].seeMore = false;
3014   - }
3015   - }
3016   - }
3017   - that.setData({
3018   - comments: that.data.comments
3019   - })
3020   - },
3021   -
3022   - //收起更多
3023   - toggleContent: function (e) {
3024   - var that = this,
3025   - index = e.currentTarget.dataset.index;
3026   - for (var i = 0; i < that.data.comments.length; i++) {
3027   - if (index == i) {
3028   - that.data.comments[index].auto = true;
3029   - that.data.comments[index].seeMore = true;
3030   - }
3031   - }
3032   - that.setData({
3033   - comments: that.data.comments
3034   - })
3035   - },
3036   -
3037   - //--查看评价--
3038   - look_pj: function () {
3039   - this.tabComment();
3040   - this.doScrollTop();
3041   - },
3042   -
3043   - previewCommentImgs_w: function (t) {
3044   - var e = this.data.comments[t.currentTarget.dataset.cidx].weapp_img;
3045   - var b = e.slice()
3046   - // for (var i in b) {
3047   - // b[i] = this.data.iurl + e[i];
3048   - // }
3049   - this.data.show_prew_img = 1;
3050   - wx.previewImage({
3051   - current: b[t.currentTarget.dataset.id],
3052   - urls: b
3053   - });
3054   - },
3055   -
3056   -
3057   - // 判断是否开启美业,获取套盒列表
3058   - getTaohe() {
3059   - // 判断是否开启美业
3060   - getApp().promiseGet('/api/weshop/store/getTabSys/' + os.stoid, {}).then(res => {
3061   - if(res.data.code == 0) {
3062   - let enableMeiye = res.data.data.EnableMeiye;
3063   - self.setData({
3064   - enableMeiye,
3065   - });
3066   -
3067   - if(enableMeiye) { // 开启美业
3068   - // 获取套盒列表
3069   - let url = '/api/weshop/serviceGoods/list'
3070   - let data = {
3071   - store_id: getApp().globalData.setting.stoid,
3072   - service_id: this.data.data.id,
3073   - };
3074   - // 请求数据
3075   - getApp().promiseGet(url, {
3076   - data: data,
3077   - }).then(res => {
3078   - if (res.data.code == 0) {
3079   - console.log('请求成功套盒列表', res);
3080   - self.setData({
3081   - taoheList: res.data.data,
3082   - });
3083   - } else {
3084   - throw (res);
3085   - };
3086   - }).catch(err => {});
3087   -
3088   - };
3089   - };
3090   - });
3091   - },
3092   -
3093   - //---小于10的格式化函数----
3094   - timeFormat(param) {
3095   - return param < 10 ? '0' + param : param;
  3223 +
  3224 + click_contact: function () {
  3225 + getApp().globalData.no_clear = 1;
3096 3226 },
3097   - //----倒计时函数-----
3098   - countDown(time, prom_st) {
3099   - if (!this.data.is_timer) return false;
3100   - var th = this;
3101   - // 获取当前时间,同时得到活动结束时间数组
3102   - var endTime = time;
3103   - var newTime = ut.gettimestamp();
3104   - // 对结束时间进行处理渲染到页面
3105   - var obj = null;
3106   - // 如果活动未结束,对时间进行处理
3107   - if (endTime - newTime > 0) {
3108   - var time = (endTime - newTime);
3109   - // 获取天、时、分、秒
3110   - var day = parseInt(time / (60 * 60 * 24));
3111   - var hou = parseInt(time % (60 * 60 * 24) / 3600);
3112   - var min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
3113   - var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
3114   - obj = {
3115   - day: this.timeFormat(day),
3116   - hou: this.timeFormat(hou),
3117   - min: this.timeFormat(min),
3118   - sec: this.timeFormat(sec)
3119   - }
3120   - } else {
3121   - if (th.data.prom_st == 0) {
3122   - //var endTime2 = new Date(th.data.prom_end_time).getTime();
3123   - var endTime2 = th.data.prom_act.end_time;
3124   - th.setData({
3125   - prom_time_text: '距结束还剩:',
3126   - prom_st: 1
3127   - })
3128   - setTimeout(function () {
3129   - th.countDown(endTime2)
3130   - }, 1000);
3131   - return false;
3132   -
3133   - } else {
3134   - //活动已结束,全部设置为'00'
3135   - obj = {
3136   - day: '00',
3137   - hou: '00',
3138   - min: '00',
3139   - sec: '00'
3140   - }
3141   - th.setData({
3142   - prom_time_text: '活动已经结束:',
3143   - prom_st: 3
3144   - })
3145   - th.setData({
3146   - djs: obj
3147   - });
3148   - return false;
3149   - }
3150   - }
3151   -
3152   - th.setData({
3153   - djs: obj
3154   - });
3155   - setTimeout(function () {
3156   - th.countDown(endTime)
3157   - }, 1000);
3158   - },
3159   -
3160   -
3161   - get_normal(gid) {
3162   - this.setData({
3163   - prom_type: 0,
3164   - isshow: 1,
3165   - });
3166   - this.get_sku(os.stoid, this.data.data, gid);
3167   - this.get_sto();
3168   - this.check_is_youhui(gid, 1);
3169   - this.data.is_normal = 1;
3170   - },
3171   -
3172   - //获取redis中的数量
3173   - async getactLen() {
3174   - let prom_type = this.data.options.prom_type;
3175   - let prom_id = this.data.options.prom_id;
3176   - return await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
3177   - 1: 1
3178   - }).then(res => {
3179   - if (res.data.code == 0) {
3180   - // 当前可以购买的数量
3181   - let r_num = res.data.data;
3182   - return r_num;
3183   - };
3184   - })
3185   - },
3186 3227  
  3228 + //打开客服操作菜单
  3229 + openCS() {
  3230 + // csType/在线客服设置:
  3231 + // 0关闭(如果有设置热线电话,则显示拨打热线电话)、
  3232 + // 1小程序客服、
  3233 + // 2企业微信客服
  3234 + let csType = this.data.sys_switch.weapp_customertype;
  3235 + if (csType == 0) {
  3236 + // 获取电话号码
  3237 + this.contactService();
  3238 + } else {
  3239 + this.getTel()
  3240 + .then(() => {
  3241 + self.setData({
  3242 + hiddenCS: false,
  3243 + });
  3244 + });
3187 3245  
  3246 + }
  3247 + ;
  3248 + },
3188 3249  
3189   - //--------检查是否活动,活动是否开始,或者是否结束-------
3190   - async check_prom(gid, prom_type, prom_id) {
3191   - var ee = this, th = ee;
3192   - var user_id = getApp().globalData.user_id;
3193   - if (!user_id) user_id = 0;
3194   - //-------判断活动是否抢光---------
3195   - await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + prom_id, {
3196   - 1: 1
3197   - }).then(res => {
3198   - var em = res;
3199   - var flag = null;
3200   - if (em.data.code == 0) {
3201   - if (em.data.data <= 0) ee.setData({
3202   - prom_r_null: 1
3203   - });
3204   - //拿取价格并且判断时间--
3205   - getApp().request.get("/api/weshop/teamlist/get/" +
3206   - os.stoid + "/" + prom_id, {
3207   - success: async function (t) {
3208   - if (t.data.code != 0) {
3209   - ee.get_normal(gid);
3210   - return false;
3211   - }
3212   - //----已经结束-----
3213   - if (t.data.data.is_end == 1) {
3214   - ee.get_normal(gid);
3215   - return false;
3216   - }
3217   - //----已经过期-----
3218   - var now = ut.gettimestamp();
3219   - if (t.data.data.end_time < now) {
3220   - ee.get_normal(gid);
3221   - return false;
3222   - }
  3250 + //关闭客服操作菜单
  3251 + closeCS() {
  3252 + this.setData({
  3253 + hiddenCS: true,
  3254 + });
  3255 + },
3223 3256  
3224   - /*-- 还没有开始预热的也不显示 --*/
3225   - if (t.data.data.show_time > now) {
3226   - ee.get_normal(gid);
3227   - return false;
3228   - }
  3257 + //--点击弹起拼单--
  3258 + openSpecModel_pt: function (e) {
3229 3259  
3230   - /*-- 判断拼单是否启用 --*/
3231   - if (!t.data.data.is_show) {
3232   - console.log('没启用');
3233   - wx.setNavigationBarTitle({
3234   - title: '系统提示',
3235   - });
3236   - wx.showToast({
3237   - title: '此商品暂时没有拼单活动',
3238   - icon: 'none',
3239   - success(){
3240   - setTimeout(() => {
3241   - wx.navigateBack()
3242   - }, 2000)
3243   - }
3244   - });
3245   - return false
3246   - }
3247 3260  
3248   - //判断拼团的---会员身份--
3249   - await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2", {
3250   - data: {
3251   - store_id: os.stoid,
3252   - is_end: 0,
3253   - is_show: 1,
3254   - user_id: getApp().globalData.user_id,
3255   - pageSize: 1000
3256   - }
3257   - }).then(res => {
3258   - let pd_list = res.data.data.pageData;
3259   - if (res.data.code == 0 && pd_list.length > 0) {
3260   - flag = pd_list.some(pd => {
3261   - return pd.goods_id == gid
3262   - })
3263   - }
3264   - })
3265   - if (!flag) {
3266   - ee.get_normal(gid);
3267   - return false;
  3261 + this.setData({open_ind_store: 4, goodsInputNum: 1});//拼团直接给4
3268 3262  
3269   - }
3270   - //-------查看自己是不是有买过该团的商品,并还为支付,或者在进行中-------
3271   - await getApp().request.promiseGet("/api/weshop/order/page", {
3272   - data: {
3273   - pt_prom_id: prom_id,
3274   - user_id: oo.user_id,
3275   - store_id: os.stoid,
3276   - pageSize: 1,
3277   - page: 1
3278   - }
3279   - }).then(e => {
3280   - if (e.data.code == 0 && e.data.data.pageData.length > 0) {
3281   - var odr = e.data.data.pageData[0];
3282   - th.data.buy_order = odr;
3283   - if (odr.pt_status == 0 && odr.order_status == 1) {
3284   - th.setData({
3285   - user_order_pt_state: 1
3286   - });
3287   - }
3288   - if (odr.pt_status == 1 && odr.order_status == 1) {
3289   - if (odr.is_zsorder == 4) {
3290   - getApp().request.promiseGet("/api/weshop/teamgroup/page/", {
3291   - data: {
3292   - store_id: os.stoid,
3293   - team_id: odr.pt_prom_id,
3294   - listno: odr.pt_listno
3295   - }
3296   - }).then(res => {
3297   - var now = ut.gettimestamp();
3298   - if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
3299   - var tgr = res.data.data.pageData[0];
3300   - //如果团的时间已经到了
3301   - if (now >= tgr.kt_end_time) {
3302   - th.update_jiti(tgr.id);
3303   - } else {
3304   - th.setData({
3305   - user_order_pt_state: 2
3306   - });
3307   - }
3308   - }
3309   - })
3310 3263  
3311   - } else {
3312   - th.setData({
3313   - user_order_pt_state: 2
3314   - });
3315   - }
3316   - }
  3264 + //--先判断会员状态--
  3265 + var user_info = getApp().globalData.userInfo;
  3266 + if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
  3267 + wx.navigateTo({
  3268 + url: '/packageE/pages/togoin/togoin',
  3269 + })
  3270 + return false;
  3271 + }
3317 3272  
3318   - if (odr.pt_status == 2 && odr.is_zsorder == 4) {
3319   - th.setData({
3320   - user_order_pt_state: 3,
3321   - });
3322   - th.data.wk_order_id = odr.order_id;
3323   - }
3324   - }
3325   - })
  3273 + var th = this;
  3274 + var ind = parseInt(e.currentTarget.dataset.it);
3326 3275  
3327   - //----------查看阶梯团------------
3328   - if (t.data.data.ct_rylist != "null" && t.data.data.ct_rylist != "" && t.data.data.ct_rylist != null && t.data.data.ct_rylist != undefined) {
3329   - t.data.data.ct_rylist = JSON.parse(t.data.data.ct_rylist);
3330   - var max_num = 0;
3331   - t.data.data.ct_rylist.forEach(function (val, ind) {
3332   - if (parseInt(val.rynum) > max_num) max_num = parseInt(val.rynum);
3333   - })
3334   - t.data.data.max_ct_num = max_num;
3335   - }
  3276 + //如果是拼单活动的普通购买
  3277 + if (ind == 1) {
  3278 +
  3279 + if (!th.data.is_normal) {
  3280 + th.data.g_buy_num = new Map();
  3281 + }
  3282 + //如果拼单的sku data是空的,就要先获取一下
  3283 + th.get_sto(1);
  3284 + th.setData({
  3285 + is_normal: ind,
  3286 + openSpecModal_pt: 1
  3287 + });
  3288 + //th.check_is_youhui(th.data.gid, 1);
  3289 + } else {
3336 3290  
3337   - var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss");
3338   - var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
  3291 + if (th.data.is_normal) {
  3292 + th.data.g_buy_num = new Map();
  3293 + }
3339 3294  
3340   - ee.setData({
3341   - prom_price: t.data.data.price,
3342   - prom_type: 6,
3343   - prom_id: prom_id,
3344   - prom_buy_limit: t.data.data.buy_limit,
3345   - prom_act: t.data.data,
3346   - prom_end_time: prom_end_time,
3347   - prom_start_time: prom_start_time,
3348   - isshow: 1,
  3295 + //拼单商品从这里进,先判断有没有买过商品,
  3296 + getApp().request.get("/api/weshop/rechargeServicelist/page", {
  3297 + data: {
  3298 + prom_id: th.data.prom_act.id,
  3299 + prom_type: 6,
  3300 + user_id: oo.user_id,
  3301 + store_id: os.stoid,
  3302 + pageSize: 1,
  3303 + page: 1
  3304 + },
  3305 + success: function (e) {
  3306 + //--跳转到已经购买的情况--
  3307 + if (e.data.data.pageData.length > 0) {
  3308 + var odr = e.data.data.pageData[0];
  3309 + //还未支付
  3310 + if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
  3311 + wx.showModal({
  3312 + title: "您已经购买了该商品待支付中",
  3313 + success: function (a) {
  3314 + if (a.confirm) {
  3315 + wx.navigateTo({
  3316 + url: "/packageA/pages/details_serviceCard/details_serviceCard?order_id=" + odr.order_id,
  3317 + });
  3318 + }
  3319 + }
3349 3320 });
  3321 + } else if (odr.pt_status == 1 && odr.order_status == 1) {
3350 3322  
3351   - ee.get_sto();
  3323 + if (this.data.is_go_to_team_show) return false;
  3324 + this.data.is_go_to_team_show = 1;
  3325 + wx.showLoading();
3352 3326  
3353   - var newTime = now;
3354   - var endTime2 = t.data.data.end_time;
3355   - var endTime1 = t.data.data.start_time;
  3327 + /*---
  3328 + wx.redirectTo({
  3329 + url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
  3330 + });--*/
  3331 + getApp().goto("/pages/team/team_success/team_success?ordersn=" + odr.order_sn);
3356 3332  
3357   - if (endTime1 > newTime) {
3358   - ee.setData({
3359   - prom_time_text: '距拼单开始还剩:'
3360   - })
3361   - ee.countDown(endTime1, 0);
3362   - } else {
3363   - if (endTime2 > newTime) {
3364   - ee.setData({
3365   - prom_time_text: '距拼单结束还剩:',
3366   - prom_st: 1
3367   - })
3368   - ee.countDown(endTime2);
3369   - }
3370   - }
3371   - //-------查看有多少人在开这个团-------
3372   - th.get_team_group(prom_id);
  3333 + } else {
  3334 + th.setData({
  3335 + is_normal: ind,
  3336 + openSpecModal_pt: 1
  3337 + });
3373 3338 }
3374   - });
  3339 + }
  3340 + else {
  3341 + th.setData({
  3342 + is_normal: ind,
  3343 + openSpecModal_pt: 1
  3344 + });
  3345 + }
3375 3346 }
3376 3347 })
3377   -
  3348 + }
3378 3349 },
3379   -
3380   -
3381   - viewFlash(e) {
3382   - let prom_type = e.currentTarget.dataset.promtype;
3383   - let prom_id = e.currentTarget.dataset.promid;
3384   - let goods_id = this.data.data.goods_id;
3385   - let url = `/packageA/pages/goodsInfo/goodsInfo?goods_id=${goods_id}&prom_type=${prom_type}&prom_id=${prom_id}`;s
3386   - getApp().goto(url);
3387   - },
3388   -
3389   -
3390   -
3391   - //获取更多秒杀
3392   - get_more_flash: async function (func) {
3393   - var f_more = false;
3394   - var user_id = getApp().globalData.user_id;
3395   - if (!user_id) user_id = 0;
3396   -
3397   - var url = "/api/weshop/goods/listSkuFlash?store_id=" + os.stoid + "&goods_id=" + this.data.options.goods_id + "&user_id=" + user_id;
3398   - //获取秒杀的多规格
3399   - await getApp().request.promiseGet(url, {}).then(res => {
3400   - if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
3401   - f_more = res.data.data;
3402   - }
3403   - })
3404   - if (!f_more) {
3405   - func(false);
3406   - return false;
3407   - }
3408   - //-- 秒杀的价格要更新 --
3409   - for (let i in f_more) {
3410   -
3411   - let item = f_more[i];
3412   - f_more[i].prom_id = item.act_id;
3413   - f_more[i].prom_type = 1;
3414   - if (item.goods_id == this.data.data.goods_id) {
3415   - continue;
3416   - }
3417   - var url = "/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + item.act_id;
3418   - await getApp().request.promiseGet(url, {}).then(rs => {
3419   - if (rs.data.code == 0) {
3420   - f_more[i].price = rs.data.data.user_price;
3421   -
3422   - }
3423   - })
3424   - }
3425   - func(f_more);
3426   -
3427   - },
3428   -
3429   -
3430   -
3431   -
3432   -
3433   -
3434   - //-------------获取购买数量的总函数----------------
3435   - get_buy_num: function (gd, func) {
3436   - // var map = this.data.g_buy_num,
3437   - var th = this,
3438   - user_id = getApp().globalData.user_id;
3439   - if (user_id == null) {
3440   - // map.set(gd.goods_id, 0);
3441   - th.setData({
3442   - // g_buy_num: map,
3443   - prom_buy_num: 0,
3444   - });
3445   - "function" == typeof func && func();
3446   - return false;
3447   - }
3448   -
3449   - // if (map.has(gd.goods_id)) {
3450   - // "function" == typeof func && func();
3451   - // } else {
3452   - //----获取商品购买数----
3453   - if (th.data.prom_type == 1) {
3454   - //----获取活动购买数----
3455   - getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
3456   - data: {
3457   - store_id: os.stoid,
3458   - user_id: user_id,
3459   - card_id: th.data.options.goods_id,
3460   - prom_type: th.data.options.prom_type,
3461   - prom_id: th.data.options.prom_id
3462   - },
3463   - //-----获取-----
3464   - success: function (tt) {
3465   - if (tt.data.code == 0) {
3466   - // map.set(gd.goods_id, g_buy_num);
3467   - th.setData({
3468   - // g_buy_num: map,
3469   - promcardbuynum: tt.data.data.promcardbuynum,
3470   - cardbuynum: tt.data.data.cardbuynum,
3471   - });
3472   - "function" == typeof func && func();
3473   - }
3474   - }
3475   - });
3476   - } else {
3477   - "function" == typeof func && func();
3478   - };
3479   -
3480   - },
3481   -
3482   -
3483   - get_buy_num2: async function () {
3484   - // var map = this.data.g_buy_num,
3485   - var th = this,
3486   - user_id = getApp().globalData.user_id;
3487   - // if (user_id == null) {
3488   - // // map.set(gd.goods_id, 0);
3489   - // th.setData({
3490   - // // g_buy_num: map,
3491   - // prom_buy_num: 0,
3492   - // });
3493   - // "function" == typeof func && func();
3494   - // return false;
3495   - // }
3496   -
3497   -
3498   - //----获取商品购买数----
3499   -
3500   - //----获取活动购买数----
3501   - return await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
3502   - data: {
3503   - store_id: os.stoid,
3504   - user_id: user_id,
3505   - card_id: th.data.options.goods_id,
3506   - prom_type: th.data.options.prom_type,
3507   - prom_id: th.data.options.prom_id
3508   - },
3509   - //-----获取-----
3510   - success: function (tt) {
3511   - if (tt.data.code == 0) {
3512   - // map.set(gd.goods_id, g_buy_num);
3513   - th.setData({
3514   - // g_buy_num: map,
3515   - promcardbuynum: tt.data.data.promcardbuynum,
3516   - cardbuynum: tt.data.data.cardbuynum,
3517   - });
3518   - }
3519   - }
3520   - });
3521   -
3522   -
3523   - },
3524   -
3525   -
3526   -
3527   -
3528   -
3529   - // 促销 -> 送礼包 -> 查看详情
3530   - viewLbDetails(e) {
3531   - let id = e.currentTarget.dataset.id; // 获取礼包id
3532   - let url = `/packageA/pages/myGiftDetails/myGiftDetails?btn=0&index=0&id=${id}`; // btn=0 控制跳转到的页面不显示按钮
3533   - // console.log('myurl', url);
3534   - getApp().goto(url);
3535   - },
3536   -
3537   - go_more_ladder: function (e) {
3538   - var prom_id = e.currentTarget.dataset.id;
3539   - getApp().goto("/pages/goods/goodsList/goodsList?ladder_id=" + prom_id);
3540   - },
3541   -
3542   - getHistoryBuy() {
3543   - let _this = this;
3544   - let req_data = {
3545   - store_id: os.stoid,
3546   - goods_id: this.data.gid,
3547   - pay_status: 1,
3548   - rndid: 1
3549   - };
3550   - getApp().request.promiseGet('/api/weshop/ordergoods/list', {
3551   - data: req_data,
3552   - })
3553   - .then(res => {
3554   - if (t.ajax_ok(res)) {
3555   - _this.setData({
3556   - historyBuyInfo: res.data.data.pageData,
3557   - })
3558   - }
3559   - })
3560   - },
3561   -
3562   -
3563   -
3564   - //-- 秒杀的普通购买 --
3565   - openSpecModel_Nor: function () {
3566   -
3567   - // 是否授权登陆
3568   - var user_info = getApp().globalData.userInfo;
3569   - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
3570   - wx.navigateTo({
3571   - url: '/packageE/pages/togoin/togoin',
3572   - })
3573   - return false;
3574   - }
3575   -
3576   -
3577   - this.data.g_buy_num = new Map();
3578   - var th = this;
3579   - this.setData({open_ind_store: 5, goodsInputNum: 1});//拼团直接给4
3580   -
3581   - this.setData({openSpecModal_flash_normal: 1});
3582   -
3583   -
3584   - // if (th.data.sku_g_pt) {
3585   - // // this.get_sto(1)
3586   - // this.setData({openSpecModal_flash_normal: 1});
3587   - // } else {
3588   - // th.get_sto(1);
3589   - // th.get_sku(os.stoid, th.data.data, th.data.gid, 1, function () {
3590   - // th.setData({
3591   - // openSpecModal_flash_normal: 1
3592   - // });
3593   - // });
3594   - // }
3595   - // this.check_is_youhui(th.data.gid, 1);
3596   - },
3597   -
3598   - closeSpecModal_flash_normal: function () {
3599   - this.setData({openSpecModal_flash_normal: 0});
3600   - },
3601   -
3602   -
3603   - //打开客服操作菜单
3604   - openCS() {
3605   - // 判断会员状态
3606   - let user_info = getApp().globalData.userInfo;
3607   - if (user_info == null || user_info.mobile == undefined || user_info.mobile == '' || user_info.mobile == null) {
3608   - wx.navigateTo({
3609   - url: '/packageE/pages/togoin/togoin',
3610   - })
3611   - return false;
3612   - };
3613   - // csType/在线客服设置:
3614   - // 0关闭(如果有设置热线电话,则显示拨打热线电话)、
3615   - // 1小程序客服、
3616   - // 2企业微信客服
3617   - if(this.data.sys_switch) {
3618   - let csType = this.data.sys_switch.weapp_customertype;
3619   - if(csType == 0) {
3620   - // 拨打电话号码
3621   - this.contactService();
3622   - } else {
3623   - this.getTel()
3624   - .then(() => {
3625   - self.setData({
3626   - hiddenCS: false,
3627   - });
3628   - });
3629   - };
3630   - };
3631   -
3632   - },
3633   -
3634   - //关闭客服操作菜单
3635   - closeCS() {
3636   - this.setData({
3637   - hiddenCS: true,
3638   - });
3639   - },
3640   -
3641   -
3642   -
3643   -
3644   -
3645   -
3646   -
3647   - //-- 加入购物的函数 --
3648   - add_cart_func: function (t) {
3649   - var i = getApp().request;
3650   - if (oo.user_id == null) {
3651   - return s.my_warnning("还未登录!", 0, this);
3652   - }
3653   -
3654   - if (!getApp().globalData.userInfo) {
3655   - return s.my_warnning("还未登录!", 0, this);
3656   - }
3657   -
3658   - var e = this,
3659   - th = e,
3660   - a = 0,
3661   - o = this.data.sele_g;
3662   - a = o.goods_id;
3663   -
3664   - //----------添加到购物车时,要判断限购数量,--------
3665   - e.get_buy_num(o, function (ee) {
3666   - //---判断商品是否超出限购---
3667   - if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
3668   - if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id) > th.data.sele_g.viplimited) {
3669   - // wx.showModal({
3670   - // title: '提示',
3671   - // content: '超出活动限购数量'
3672   - // });
3673   - getApp().my_warnning('超出活动限购数量', 0, self);
3674   - return false;
3675   - }
3676   - }
3677   - //---判断商品是否超出活动限购---
3678   - if ((th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0) && !th.data.is_normal) {
3679   - if (th.data.goodsInputNum + th.data.prom_buy_num > th.data.prom_buy_limit) {
3680   - // wx.showModal({
3681   - // title: '提示',
3682   - // content: '超出活动限购数量'
3683   - // });
3684   - getApp().my_warnning('超出活动限购数量', 0, self);
3685   - return false;
3686   - }
3687   - }
3688   -
3689   - if (th.data.goodsInputNum <= 0) return s.my_warnning("商品数量不能为0", 0, th);
3690   - if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
3691   - this.setData({
3692   - sto_sele_name: ""
3693   - });
3694   - if (th.data.sto_sele_name == "") return s.my_warnning("请选择门店", 0, th);
3695   -
3696   - //--------------此时操作的数据------------
3697   - var newd = {
3698   - goods_id: o.goods_id,
3699   - goods_num: th.data.goodsInputNum,
3700   - pick_id: th.data.sto_sele_id,
3701   - user_id: oo.user_id,
3702   - store_id: th.data.stoid,
3703   - goods_price: o.shop_price,
3704   - member_goods_price: o.shop_price,
3705   - goods_name: o.goods_name,
3706   - goods_sn: o.goods_sn,
3707   - sku: o.sku,
3708   - prom_id: th.data.sele_g.prom_id,
3709   - prom_type: th.data.sele_g.prom_type,
3710   - };
3711   -
3712   - //---是不是从收藏夹出来的---
3713   - if (th.data.c_guide_id) {
3714   - newd['guide_id'] = th.data.c_guide_id;
3715   - newd['guide_type'] = 2;
3716   - if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 3;
3717   - } else {
3718   - if (getApp().globalData.guide_id) {
3719   - newd['guide_id'] = getApp().globalData.guide_id;
3720   - newd['guide_type'] = 0;
3721   - if ("add" == t.currentTarget.dataset.action) newd['guide_type'] = 1;
3722   - }
3723   - }
3724   -
3725   - //让商品带上房间号
3726   - //让商品带上房间号
3727   - if (th.data.sys_switch.is_skuroom_id == 1) {
3728   - if (th.data.data.goods_id == getApp().globalData.room_goods_id) {
3729   - newd.room_id = getApp().globalData.room_id;
3730   - }
3731   - } else {
3732   - if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id;
3733   - }
3734   -
3735   - //如果是积分够,is_integral_normal就要有积分购普通购买字段
3736   - if (o.prom_type == 4) {
3737   - newd.is_integral_normal = 1;
3738   - }
3739   -
3740   - //如果有线下取价
3741   - if (o.offline_price) {
3742   - newd.offline_price = o.offline_price;
3743   - newd.pricing_type = o.pricing_type;
3744   - }
3745   -
3746   - //-----如果是秒杀,团购,积分购,拼团-----
3747   - if (th.data.prom_type == 1 || th.data.prom_type == 2) {
3748   -
3749   - if (th.data.openSpecModal_flash_normal) {
3750   -
3751   - newd.prom_type = 0;
3752   - newd.prom_id = 0;
3753   -
3754   - //---如果是线下门店销售的时候---
3755   - if (th.data.sales_rules == 2) {
3756   - var pick = th.get_pick_from_list(th.data.sto_sele_id)
3757   - //---通过接口获取门店的线下库存信息--
3758   - getApp().request.get("/api/weshop/goods/getWareStorages", {
3759   - data: {
3760   - storageNos: pick.pickup_no,
3761   - wareIds: encodeURIComponent(th.data.sele_g.erpwareid),
3762   - storeId: os.stoid
3763   - },
3764   - success: function (res) {
3765   - if (res.data.code == 0) {
3766   - if (res.data.data.pageData.length > 0) {
3767   - var CanOutQty = res.data.data.pageData[0].CanOutQty;
3768   - if (CanOutQty < e.data.goodsInputNum) {
3769   - return s.my_warnning("库存不足!", 0, th);
3770   - }
3771   - //在调一次接口,读取商品的预出库的数量,lock
3772   - getApp().request.get("/api/weshop/order/ware/lock/page", {
3773   - data: {
3774   - store_id: os.stoid,
3775   - wareId: th.data.sele_g.goods_id,
3776   - storageId: pick.pickup_id,
3777   - pageSize: 1000
3778   - },
3779   - success: function (res_data) {
3780   - if (res_data.data.code == 0 && res_data.data.data.total > 0) {
3781   -
3782   - var lock = 0;
3783   - for (var i in res_data.data.data.pageData) {
3784   - lock += res_data.data.data.pageData[i].outQty;
3785   - }
3786   -
3787   - if (CanOutQty <= lock) {
3788   - return s.my_warnning("库存不足!", 0, th);
3789   - }
3790   - th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
3791   - } else {
3792   - th.add_cart_next(e, t, a, o, newd, CanOutQty);
3793   - }
3794   - }
3795   - })
3796   - } else {
3797   - return s.my_warnning("库存不足!", 0, th);
3798   - }
3799   -
3800   - }
3801   - }
3802   - })
3803   - } else {
3804   - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
3805   - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
3806   - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
3807   - }
3808   -
3809   - return false;
3810   - }
3811   -
3812   -
3813   - newd.goods_price = th.data.prom_price;
3814   - newd.member_goods_price = th.data.prom_price,
3815   - newd.prom_type = th.data.prom_type;
3816   - newd.prom_id = th.data.prom_id;
3817   -
3818   - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
3819   - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
3820   -
3821   - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
3822   -
3823   - } else if (o.prom_type == 7) {
3824   -
3825   - //判断进行中的活动,是不是要判断线下库存
3826   - th.check_zh_acting(function (ee) {
3827   - newd.prom_id = 0;
3828   - newd.prom_type = 0;
3829   - if (ee && th.data.sele_g.act) {
3830   - newd.prom_id = th.data.sele_g.act.id;
3831   - newd.prom_type = 7;
3832   - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
3833   - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
3834   - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
3835   - return false;
3836   - } else {
3837   - //---如果是线下门店销售的时候---
3838   - if (th.data.sales_rules == 2) {
3839   - var pick = th.get_pick_from_list(th.data.sto_sele_id)
3840   - //---通过接口获取门店的线下库存信息--
3841   - getApp().request.get("/api/weshop/goods/getWareStorages", {
3842   - data: {
3843   - storageNos: pick.pickup_no,
3844   - wareIds: encodeURIComponent(th.data.sele_g.erpwareid),
3845   - storeId: os.stoid
3846   - },
3847   - success: function (res) {
3848   - if (res.data.code == 0) {
3849   - if (res.data.data.pageData.length > 0) {
3850   - var CanOutQty = res.data.data.pageData[0].CanOutQty;
3851   - if (CanOutQty < e.data.goodsInputNum) {
3852   - return s.my_warnning("库存不足!", 0, th);
3853   - }
3854   - //在调一次接口,读取商品的预出库的数量,lock
3855   - getApp().request.get("/api/weshop/order/ware/lock/page", {
3856   - data: {
3857   - store_id: os.stoid,
3858   - wareId: th.data.sele_g.goods_id,
3859   - storageId: pick.pickup_id,
3860   - pageSize: 1000
3861   - },
3862   - success: function (res_data) {
3863   - if (res_data.data.code == 0 && res_data.data.data.total > 0) {
3864   -
3865   - var lock = 0;
3866   - for (var i in res_data.data.data.pageData) {
3867   - lock += res_data.data.data.pageData[i].outQty;
3868   - }
3869   -
3870   - if (CanOutQty <= lock) {
3871   - return s.my_warnning("库存不足!", 0, th);
3872   - }
3873   - th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
3874   - } else {
3875   - th.add_cart_next(e, t, a, o, newd, CanOutQty);
3876   - }
3877   - }
3878   - })
3879   - } else {
3880   - return s.my_warnning("库存不足!", 0, th);
3881   - }
3882   -
3883   - }
3884   - }
3885   - })
3886   - } else {
3887   - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
3888   - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
3889   - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
3890   - }
3891   - }
3892   - })
3893   -
3894   - }
3895   - else if (th.data.prom_type == 0 || th.data.prom_type == 3 || th.data.prom_type == 4 || th.data.prom_type == 5 || th.data.prom_type == 10) {
3896   - newd.prom_type = 0;
3897   - newd.prom_id = 0;
3898   -
3899   - if (th.data.prom_type == 10) {
3900   - newd.prom_type = th.data.prom_type;
3901   - newd.prom_id = th.data.prom_id;
3902   - }
3903   -
3904   - //---如果是线下门店销售的时候---
3905   - if (th.data.sales_rules == 2) {
3906   - var pick = th.get_pick_from_list(th.data.sto_sele_id)
3907   - //---通过接口获取门店的线下库存信息--
3908   - getApp().request.get("/api/weshop/goods/getWareStorages", {
3909   - data: {
3910   - storageNos: pick.pickup_no,
3911   - wareIds: encodeURIComponent(th.data.sele_g.erpwareid),
3912   - storeId: os.stoid
3913   - },
3914   - success: function (res) {
3915   - if (res.data.code == 0) {
3916   - if (res.data.data.pageData.length > 0) {
3917   - var CanOutQty = res.data.data.pageData[0].CanOutQty;
3918   - if (CanOutQty < e.data.goodsInputNum) {
3919   - return s.my_warnning("库存不足!", 0, th);
3920   - }
3921   - //在调一次接口,读取商品的预出库的数量,lock
3922   - getApp().request.get("/api/weshop/order/ware/lock/page", {
3923   - data: {
3924   - store_id: os.stoid,
3925   - wareId: th.data.sele_g.goods_id,
3926   - storageId: pick.pickup_id,
3927   - pageSize: 1000
3928   - },
3929   - success: function (res_data) {
3930   - if (res_data.data.code == 0 && res_data.data.data.total > 0) {
3931   -
3932   - var lock = 0;
3933   - for (var i in res_data.data.data.pageData) {
3934   - lock += res_data.data.data.pageData[i].outQty;
3935   - }
3936   -
3937   - if (CanOutQty <= lock) {
3938   - return s.my_warnning("库存不足!", 0, th);
3939   - }
3940   - th.add_cart_next(e, t, a, o, newd, CanOutQty - lock);
3941   - } else {
3942   - th.add_cart_next(e, t, a, o, newd, CanOutQty);
3943   - }
3944   - }
3945   - })
3946   - } else {
3947   - return s.my_warnning("库存不足!", 0, th);
3948   - }
3949   -
3950   - }
3951   - }
3952   - })
3953   - } else {
3954   - if (o.store_count <= 0) return s.my_warnning("库存已为空!", 0, th);
3955   - if (o.store_count < e.data.goodsInputNum) return s.my_warnning("库存不足!", 0, th);
3956   - th.add_cart_next(e, t, a, o, newd); //加入购物车下一步
3957   - }
3958   - }
3959   - })
3960   - },
3961   -
3962   - //---加入购物车的最后一步---
3963   - add_cart_next(e, t, a, o, newd, CanOutQty) {
3964   - var th = this, i = getApp().request;
3965   - //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
3966   - if ((o.prom_type != 1 || o.prom_id <= 0) && ((o.prom_type != 6 && o.prom_type != 4 && o.prom_type != 2 ) || th.data.is_normal)) {
3967   - var conf = th.data.bconfig;
3968   - if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) {
3969   - var s_list = JSON.parse(conf.switch_list);
3970   - var now = ut.gettimestamp();
3971   -
3972   -
3973   - var str = getApp().globalData.userInfo['card_expiredate'].replace(/-/g, '/');
3974   - var end = new Date(str);
3975   - end = Date.parse(end) / 1000;
3976   -
3977   - //--如果后台有开启等级价的功能,而且会员的等级没有过期的情况下--
3978   - if (parseInt(s_list.rank_switch) == 2 && end > now) {
3979   - var card_price = o[getApp().globalData.userInfo['card_field']];
3980   - //如果会员有等级价
3981   - if (getApp().globalData.userInfo['card_field'] != undefined && getApp().globalData.userInfo['card_field'] != null
3982   - && getApp().globalData.userInfo['card_field'] != "" && card_price > 0) {
3983   - newd.goods_price = card_price;
3984   - newd.member_goods_price = card_price;
3985   - }
3986   - }
3987   - }
3988   - }
3989   -
3990   - if ("add" == t.currentTarget.dataset.action) {
3991   -
3992   - if (th.data.prom_goods) {
3993   - newd.prom_type = 3;
3994   - newd.prom_id = th.data.prom_goods[0].prom_id;
3995   - }
3996   -
3997   - //----先看会员在购物车中是否加入了该商品-----
3998   - i.get("/api/weshop/cart/page", {
3999   - data: {
4000   - store_id: e.data.stoid,
4001   - user_id: oo.user_id,
4002   - goods_id: a,
4003   - pick_id: e.data.sto_sele_id,
4004   - state: 0
4005   - },
4006   - success: function (re) {
4007   -
4008   - //-------如果购物车中有相关的数据---------
4009   - if (re.data.data.total > 0) {
4010   -
4011   - var item = re.data.data.pageData[0];
4012   -
4013   - //判断数量,要看下购物车中有没有该商品
4014   - if (CanOutQty) {
4015   - if (item.goods_num + th.data.goodsInputNum > CanOutQty) {
4016   - return s.my_warnning("库存不足!", 0, th);
4017   - }
4018   - } else {
4019   - if (item.goods_num + th.data.goodsInputNum > o.store_count) {
4020   - return s.my_warnning("库存不足!", 0, th);
4021   - }
4022   - }
4023   -
4024   - var updata = {
4025   - id: item.id,
4026   - goods_num: e.data.goodsInputNum + item.goods_num,
4027   - goods_price: newd.goods_price,
4028   - member_goods_price: newd.goods_price,
4029   - store_id: th.data.stoid,
4030   - };
4031   -
4032   - //---是不是从收藏夹出来的---
4033   - if (th.data.c_guide_id) {
4034   - updata['guide_id'] = th.data.c_guide_id;
4035   - updata['guide_type'] = 3; //加入购物车之后就变成了3
4036   - } else {
4037   - if (getApp().globalData.guide_id) {
4038   - updata['guide_id'] = getApp().globalData.guide_id;
4039   - updata['guide_type'] = 0;
4040   - }
4041   - }
4042   -
4043   - i.put("/api/weshop/cart/update", {
4044   - data: updata,
4045   - success: function (t) {
4046   - getApp().my_warnning('加入购物车成功', 1, th, 450);
4047   - var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
4048   - th.setData({
4049   - cartGoodsNum: c_num
4050   - });
4051   - th.closeSpecModal();
4052   - }
4053   - });
4054   - } else {
4055   -
4056   -
4057   - i.post("/api/weshop/cart/save", {
4058   - data: newd,
4059   - success: function (t) {
4060   - getApp().my_warnning('加入购物车成功', 1, th, 450);
4061   - var c_num = th.data.cartGoodsNum + e.data.goodsInputNum;
4062   - th.setData({
4063   - cartGoodsNum: c_num
4064   - });
4065   - th.closeSpecModal();
4066   - }
4067   - });
4068   - }
4069   - }
4070   - });
4071   -
4072   - }
4073   - else {
4074   -
4075   - //这一步主要是要让立即购买 走 购物车的逻辑 参与活动
4076   - if (newd.prom_type == 10 || newd.prom_type == 7) {
4077   - //----先看会员在购物车中是否加入了该商品,立即购买的-----
4078   - getApp().request.get("/api/weshop/cart/page", {
4079   - data: {
4080   - store_id: e.data.stoid,
4081   - user_id: oo.user_id,
4082   - state: 1
4083   - },
4084   - success: function (res) {
4085   - //-------如果购物车中有相关的数据---------
4086   - if (res.data.code == 0 && res.data.data.total > 0) {
4087   - for (let j in res.data.data.pageData) {
4088   - let item_j = res.data.data.pageData[j];
4089   - var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id;
4090   - getApp().request.delete(url, {});
4091   - }
4092   - }
4093   - newd.state = 1;
4094   - getApp().request.post("/api/weshop/cart/save", {
4095   - data: newd,
4096   - success: function (t) {
4097   - th.closeSpecModal();
4098   - getApp().goto("/packageE/pages/cart/cart2/cart2?state=1");
4099   - }
4100   - });
4101   - },
4102   - })
4103   - return false;
4104   - }
4105   -
4106   - if (th.data.prom_goods) {
4107   - var prom_d = th.data.prom_goods;
4108   - for (var i in prom_d) {
4109   - //判断活动有俩种条件,0元 1件
4110   - var condition_t = prom_d[i].prom_type;
4111   - switch (condition_t) {
4112   - case 0: //按钱
4113   - if (newd.goods_price >= condition_t) {
4114   - newd.prom_type = 3;
4115   - newd.prom_id = prom_d[i].prom_id;
4116   - }
4117   - break
4118   - case 1://按购买数量
4119   - if (newd.goods_num >= condition_t) {
4120   - newd.prom_type = 3;
4121   - newd.prom_id = prom_d[i].prom_id;
4122   - }
4123   - break;
4124   - }
4125   - }
4126   -
4127   - }
4128   -
4129   - newd['pick_name'] = th.data.sto_sele_name;
4130   - newd['pick_dis'] = th.data.sto_sele_distr;
4131   - th.buyNow(newd);
4132   - }
4133   - },
4134   -
4135   - click_contact:function () {
4136   - getApp().globalData.no_clear=1;
4137   - },
4138   -
4139   - //打开客服操作菜单
4140   - openCS() {
4141   - // csType/在线客服设置:
4142   - // 0关闭(如果有设置热线电话,则显示拨打热线电话)、
4143   - // 1小程序客服、
4144   - // 2企业微信客服
4145   - let csType = this.data.sys_switch.weapp_customertype;
4146   - if(csType == 0) {
4147   - // 获取电话号码
4148   - this.contactService();
4149   - } else {
4150   - this.getTel()
4151   - .then(() => {
4152   - self.setData({
4153   - hiddenCS: false,
4154   - });
4155   - });
4156   -
4157   - };
4158   - },
4159   -
4160   - //关闭客服操作菜单
4161   - closeCS() {
4162   - this.setData({
4163   - hiddenCS: true,
4164   - });
4165   - },
4166   -
4167   - //--点击弹起拼单--
4168   - openSpecModel_pt: function (e) {
4169   -
4170   -
4171   - this.setData({open_ind_store: 4, goodsInputNum: 1});//拼团直接给4
4172   -
4173   -
4174   - //--先判断会员状态--
4175   - var user_info = getApp().globalData.userInfo;
4176   - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
4177   - wx.navigateTo({
4178   - url: '/packageE/pages/togoin/togoin',
4179   - })
4180   - return false;
4181   - }
4182   -
4183   - var th = this;
4184   - var ind = parseInt(e.currentTarget.dataset.it);
4185   -
4186   - //如果是拼单活动的普通购买
4187   - if (ind == 1) {
4188   -
4189   - if (!th.data.is_normal) {
4190   - th.data.g_buy_num = new Map();
4191   - }
4192   -
4193   - //如果拼单的sku data是空的,就要先获取一下
4194   - if (th.data.sku_g_pt) {
4195   - th.get_sto(1);
4196   - th.setData({
4197   - is_normal: ind,
4198   - openSpecModal_pt: 1
4199   - });
4200   - } else {
4201   - th.get_sto(1);
4202   - th.get_sku(os.stoid, th.data.data, th.data.gid, 1, function () {
4203   - th.setData({
4204   - is_normal: ind,
4205   - openSpecModal_pt: 1
4206   - });
4207   - });
4208   - }
4209   - th.check_is_youhui(th.data.gid, 1);
4210   - } else {
4211   -
4212   - if (th.data.is_normal) {
4213   - th.data.g_buy_num = new Map();
4214   - }
4215   -
4216   - //拼单商品从这里进,先判断有没有买过商品,
4217   - getApp().request.get("/api/weshop/order/page", {
4218   - data: {
4219   - pt_prom_id: th.data.prom_act.id,
4220   - user_id: oo.user_id,
4221   - store_id: os.stoid,
4222   - pageSize: 1,
4223   - page: 1
4224   - },
4225   - success: function (e) {
4226   - //--跳转到已经购买的情况--
4227   - if (e.data.data.pageData.length > 0) {
4228   - var odr = e.data.data.pageData[0];
4229   - //还未支付
4230   - if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
4231   - wx.showModal({
4232   - title: "您已经购买了该商品待支付中",
4233   - success: function (a) {
4234   - if (a.confirm) {
4235   - wx.navigateTo({
4236   - url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
4237   - });
4238   - }
4239   - }
4240   - });
4241   - } else if (odr.pt_status == 1 && odr.order_status == 1) {
4242   -
4243   - if (this.data.is_go_to_team_show) return false;
4244   - this.data.is_go_to_team_show = 1;
4245   - wx.showLoading();
4246   -
4247   - /*---
4248   - wx.redirectTo({
4249   - url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
4250   - });--*/
4251   - getApp().goto("/pages/team/team_success/team_success?ordersn=" + odr.order_sn);
4252   -
4253   - } else {
4254   - th.setData({
4255   - is_normal: ind,
4256   - openSpecModal_pt: 1
4257   - });
4258   - }
4259   - }
4260   - else {
4261   - th.setData({
4262   - is_normal: ind,
4263   - openSpecModal_pt: 1
4264   - });
4265   - }
4266   - }
4267   - })
4268   - }
4269   - },
4270 3350  
4271 3351 //--获取有多少人在开团--
4272 3352 async get_team_group(prom_id) {
... ... @@ -4296,18 +3376,32 @@ Page({
4296 3376 teamgroup = res.data.data.pageData;
4297 3377 grounp_tatal = res.data.data.total;
4298 3378 })
  3379 +
4299 3380 //获取订单的总数这个接口不能用
4300   - for (i = 0; i < teamgroup.length; i++) {
4301   - await getApp().request.promiseGet("/api/weshop/order/page", {
4302   - data: {
4303   - store_id: os.stoid,
4304   - pt_status: 1,
4305   - pt_listno: teamgroup[i].listno
4306   - }
4307   - }).then(res => {
4308   - var order = res.data.data.pageData;
4309   - teamgroup[i].open_num = order.length;
4310   - })
  3381 + for (var i = 0; i < teamgroup.length; i++) {
  3382 +
  3383 + if(teamgroup[i].goods_type==0){
  3384 + await getApp().request.promiseGet("/api/weshop/order/page", {
  3385 + data: {
  3386 + store_id: os.stoid,
  3387 + pt_status: 1,
  3388 + pt_listno: teamgroup[i].listno
  3389 + }
  3390 + }).then(res => {
  3391 + var order = res.data.data.pageData;
  3392 + teamgroup[i].open_num = order.length;
  3393 + })
  3394 + }else{
  3395 +
  3396 + //获取order信息根据订单编号order_sn
  3397 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
  3398 + data: { store_id: os.stoid, prom_id: prom_id,pt_status: 1}
  3399 + }).then(res => {
  3400 + var order = res.data.data.pageData;
  3401 + teamgroup[i].open_num = order.length;
  3402 + })
  3403 + }
  3404 +
4311 3405 await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + teamgroup[i].openvipid, {}).then(res => {
4312 3406 var user = res.data.data;
4313 3407 teamgroup[i].user = user;
... ... @@ -4324,6 +3418,377 @@ Page({
4324 3418 }
4325 3419 },
4326 3420  
  3421 + doScrollTop: function () {
  3422 + wx.pageScrollTo({
  3423 + scrollTop: 0
  3424 + });
  3425 + },
  3426 +
  3427 +
  3428 + clickShare() {
  3429 + if(!getApp().globalData.user_id){
  3430 + getApp().goto("/packageE/pages/togoin/togoin");
  3431 + return false;
  3432 + }
  3433 + this.setData({
  3434 + share_hidden: true,
  3435 + });
  3436 + },
  3437 +
  3438 + cancel() {
  3439 + this.setData({
  3440 + share_hidden: false,
  3441 + });
  3442 + },
  3443 +
  3444 +
  3445 + //-- 先版绘制 --
  3446 + drawPoster(context, unit, img, vpath, type) {
  3447 + // 1.灰色背景
  3448 + context.setFillStyle('#f2f1f6');
  3449 + context.rect(0, 0, 554 * unit, 899 * unit);
  3450 + context.fill();
  3451 +
  3452 + // 2.商城名称
  3453 + let shopName = this.data.sto_sele_name_1;
  3454 + context.setTextAlign('center');
  3455 + context.setFontSize(26 * unit);
  3456 + context.setFillStyle('black');
  3457 + context.fillText(shopName, 277 * unit, 60 * unit);
  3458 +
  3459 + // 3.推荐来源
  3460 + let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
  3461 + context.setTextAlign('center');
  3462 + context.setFontSize(22 * unit);
  3463 + context.setFillStyle('#96959a');
  3464 + context.fillText(fromText, 277 * unit, 105 * unit);
  3465 +
  3466 + // 4.海报背景
  3467 + context.setFillStyle('white');
  3468 + context.fillRect(37 * unit, 157 * unit, 480 * unit, 673 * unit);
  3469 +
  3470 + // 5.商品图片
  3471 + // 图片的x坐标
  3472 + let bg_x = 37 * unit
  3473 + // 图片的y坐标
  3474 + let bg_y = 157 * unit
  3475 + // 图片宽度
  3476 + let bg_w = 480 * unit
  3477 + // 图片高度
  3478 + let bg_h = 474 * unit
  3479 + // 图片圆角
  3480 + let bg_r = 4
  3481 + // 绘制海报背景图片圆角
  3482 + context.save()
  3483 + context.beginPath()
  3484 + context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI * 1.5)
  3485 + context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2)
  3486 + context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5)
  3487 + context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI)
  3488 + context.clip()
  3489 + context.drawImage(img, bg_x, bg_y, bg_w, bg_h);
  3490 + context.restore();
  3491 +
  3492 + // 6.强烈推荐
  3493 + let src = '';
  3494 + context.beginPath();
  3495 + if (type == 0) { // 普通
  3496 + src = '../../../../images/share/q_tj.png';
  3497 + context.drawImage(src, 54 * unit, 648 * unit, 85 * unit, 30 * unit);
  3498 + context.setFontSize(16 * unit)
  3499 + context.setFillStyle("white")
  3500 + context.setTextAlign('left');
  3501 + context.fillText('强烈推荐', 64 * unit, 668 * unit);
  3502 + }
  3503 +
  3504 + if (type == 1) { // 秒杀
  3505 +
  3506 + if(this.data.is_share_text==1){
  3507 + src = '../../../../images/share/miao_share.png';
  3508 + context.drawImage(src, 54 * unit, 648 * unit, 200 * unit, 36 * unit);
  3509 + }
  3510 + context.setTextAlign('left');
  3511 + }
  3512 +
  3513 + if (type == 2) { // 商家和会员团
  3514 + src = '../../../../images/share/ct_num.png';
  3515 + context.drawImage(src, 54 * unit, 648 * unit, 120 * unit, 30 * unit);
  3516 + context.setTextAlign('left');
  3517 +
  3518 + let ct_num = self.data.prom_act.ct_num;
  3519 + context.setFontSize(16 * unit)
  3520 + context.font = 'normal';
  3521 + context.setFillStyle("red")
  3522 + if (ct_num < 10) {
  3523 + context.fillText(ct_num + "人拼团", 100 * unit, 670 * unit);
  3524 + } else {
  3525 + context.fillText(ct_num + "人拼团", 96 * unit, 670 * unit);
  3526 + }
  3527 + context.setFontSize(22 * unit)
  3528 + context.fillText("已拼" + self.data.prom_act.buy_num + "份", 186 * unit, 672 * unit);
  3529 + }
  3530 +
  3531 + if (type == 3) { // 阶梯团
  3532 + let list = self.data.prom_act.ct_rylist;
  3533 + for (let i = 0; i < list.length; i++) {
  3534 + let item = list[i];
  3535 + let wi = i * 90 * unit;
  3536 + context.font = 'normal';
  3537 + context.setTextAlign('left');
  3538 + context.setFontSize(16 * unit)
  3539 + context.setFillStyle("red")
  3540 + context.fillText("¥", 50 * unit + wi, 680 * unit);
  3541 + context.setFontSize(22 * unit)
  3542 + let pri = parseFloat(item.price).toFixed(2);
  3543 + context.fillText(pri, 66 * unit + wi, 680 * unit);
  3544 +
  3545 +
  3546 + context.setFillStyle("gray")
  3547 + context.fillText("满" + item.rynum + "人", 50 * unit + wi, 716 * unit);
  3548 + }
  3549 +
  3550 +
  3551 + var wp= 52 * unit;
  3552 + var hp=755 * unit
  3553 + self.draw_pos_price(context,wp,hp,self.data.data.market_price,unit);
  3554 + }
  3555 +
  3556 +
  3557 + // 7.商品价格
  3558 + if (type != 3) {
  3559 + let price = this.data.data.money;
  3560 + if (this.data.card_field && this.data.data[this.data.card_field]) {
  3561 + price = this.data.data[this.data.card_field];
  3562 + }
  3563 + if (this.data.prom_act) price = this.data.prom_price;
  3564 + price = parseFloat(price).toFixed(2);
  3565 + context.setFontSize(32 * unit);
  3566 + context.setFillStyle('#DE1117');
  3567 + if (this.data.prom_type == 4 && this.data.prom_integral) {
  3568 + context.fillText(this.data.prom_integral + '积分+¥' + price, 54 * unit, 735 * unit);
  3569 +
  3570 + var wp= 62 * unit+ut.measureText(this.data.prom_integral + '积分+¥' + price, 32 * unit);
  3571 + var hp=735 * unit
  3572 + this.draw_pos_price(context,wp,hp,this.data.data.market_price,unit);
  3573 +
  3574 + } else {
  3575 + context.fillText('¥' + price, 54 * unit, 735 * unit);
  3576 + var wp= 62 * unit+ut.measureText('¥' + price, 32 * unit);
  3577 + var hp=735 * unit
  3578 + this.draw_pos_price(context,wp,hp,this.data.data.market_price,unit);
  3579 +
  3580 + }
  3581 +
  3582 + }
  3583 +
  3584 + // 8.商品标题
  3585 + context.setFontSize(20 * unit);
  3586 + context.setFillStyle('#898989');
  3587 + getApp().draw_Text(context, this.data.data.goods_name, 54 * unit, 800 * unit, 240 * unit, 280 * unit, unit, 1);
  3588 + // 9.小程序码
  3589 + context.drawImage(vpath, 375 * unit, 660 * unit, 120 * unit, 120 * unit);
  3590 + context.setFontSize(16 * unit);
  3591 + context.setFillStyle('#777');
  3592 + context.fillText('长按识别二维码', 378 * unit, 810 * unit);
  3593 +
  3594 + // 10.竖线
  3595 + context.beginPath();
  3596 + context.setFillStyle('#eee');
  3597 + context.rect(354 * unit, 670 * unit, 1 * unit, 130 * unit);
  3598 + context.fill();
  3599 + },
  3600 +
  3601 + //---市场价划掉---
  3602 + draw_pos_price(context,w,h,market_price,unit){
  3603 +
  3604 + if(!this.data.sys_switch) return false;
  3605 + if(!this.data.sys_switch.is_retail_price) return false;
  3606 + context.setFillStyle("gray")
  3607 + context.setFontSize(22 * unit)
  3608 + var pri0 = "¥" + market_price.toFixed(2);
  3609 + context.fillText(pri0, w, h);
  3610 +
  3611 + var c_h=h-6;
  3612 + context.setStrokeStyle('gray');
  3613 + context.setLineWidth(1 * unit);
  3614 + context.moveTo(w - 5, c_h);
  3615 + context.lineTo(w + ut.measureText(pri0, 22 * unit) + 5, c_h);
  3616 + context.stroke();
  3617 +
  3618 + },
  3619 +
  3620 +
  3621 + //-------跳转pt teamshow-------
  3622 + go_to_team_show: function () {
  3623 +
  3624 + if (this.data.is_go_to_team_show) return false;
  3625 + this.data.is_go_to_team_show = 1;
  3626 + wx.showLoading();
  3627 +
  3628 + var th = this;
  3629 + var url = "/packageA/pages/serviceCard_pd/team_success/team_success?ordersn=" + th.data.buy_order.order_sn;
  3630 + /*--
  3631 + wx.redirectTo({
  3632 + url:url,
  3633 + })--*/
  3634 + getApp().goto(url);
  3635 +
  3636 + setTimeout(()=>{
  3637 + this.data.is_go_to_team_show =0;
  3638 + },1000)
  3639 +
  3640 + },
  3641 +
  3642 +
  3643 + //---拼团倒计时---
  3644 + countDown2() {
  3645 + if (!this.data.is_timer) return false;
  3646 + var th = this;
  3647 + // 获取当前时间,同时得到活动结束时间数组
  3648 + var newTime = ut.gettimestamp();
  3649 + var List = th.data.teamgroup;
  3650 + for (var j = 0; j < List.length; j++) {
  3651 + // 对结束时间进行处理渲染到页面
  3652 + var endTime = List[j].kt_end_time;
  3653 + let obj = null;
  3654 + // 如果活动未结束,对时间进行处理
  3655 + if (endTime - newTime > 0) {
  3656 + let time = (endTime - newTime);
  3657 + // 获取天、时、分、秒
  3658 + let day = parseInt(time / (60 * 60 * 24));
  3659 + let hou = parseInt(time % (60 * 60 * 24) / 3600);
  3660 + let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
  3661 + let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
  3662 + obj = {
  3663 + day: this.timeFormat(day),
  3664 + hou: this.timeFormat(hou),
  3665 + min: this.timeFormat(min),
  3666 + sec: this.timeFormat(sec)
  3667 + }
  3668 + } else {
  3669 + //活动已结束,全部设置为'00'
  3670 + obj = {
  3671 + day: '00',
  3672 + hou: '00',
  3673 + min: '00',
  3674 + sec: '00'
  3675 + }
  3676 + }
  3677 + var txt = "timer[" + j + "]";
  3678 + th.setData({
  3679 + [txt]: obj
  3680 + });
  3681 + }
  3682 + setTimeout(th.countDown2, 1000);
  3683 + },
  3684 + //-- 跳转参加团 --
  3685 + go_cj_team: function (e) {
  3686 + var ind = e.currentTarget.dataset.ind;
  3687 + var item = this.data.teamgroup[ind];
  3688 + var goods_id = e.currentTarget.dataset.goodsid;
  3689 + var id = item.id;
  3690 + var th = this;
  3691 +
  3692 + getApp().request.get("/api/weshop/rechargeServicelist/page", {
  3693 + data: {
  3694 + prom_type: 6,
  3695 + prom_id: item.team_id,
  3696 + user_id: oo.user_id,
  3697 + store_id: os.stoid,
  3698 + pageSize: 1,
  3699 + page: 1
  3700 + },
  3701 + success: function (e) {
  3702 + if (e.data.code != 0) {
  3703 + getApp().my_warnning("读取订单失败", 0, th);
  3704 + return fasle;
  3705 + }
  3706 + //--跳转到已经购买的情况--
  3707 + if (e.data.data.pageData.length > 0) {
  3708 + var odr = e.data.data.pageData[0];
  3709 + //还未支付
  3710 + if (odr.pt_status == 0 && (odr.order_status == 1 || odr.order_status == 0)) {
  3711 + wx.showModal({
  3712 + title: "您已经购买了该商品待支付中",
  3713 + success: function (a) {
  3714 + if (a.confirm) {
  3715 + wx.navigateTo({
  3716 + url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
  3717 + });
  3718 + }
  3719 + }
  3720 + });
  3721 + } else if (odr.pt_status == 1 && odr.order_status == 1) {
  3722 +
  3723 + if (this.data.is_go_to_team_show) return false;
  3724 + this.data.is_go_to_team_show = 1;
  3725 + wx.showLoading();
  3726 +
  3727 + getApp().goto("/packageA/pages/serviceCard_pd/team_success/team_success?ordersn=" + odr.order_sn);
  3728 +
  3729 + } else {
  3730 + console.log(222, goods_id)
  3731 + wx.navigateTo({
  3732 + url: "/packageA/pages/serviceCard_pd/team_show/team_show?tg_id=" + id + "&goods_id=" + goods_id,
  3733 + });
  3734 + }
  3735 + }
  3736 + //--跳转到参团--
  3737 + else {
  3738 + console.log(1111, th.data.goods_id)
  3739 + wx.navigateTo({
  3740 + url: "/packageA/pages/serviceCard_pd/team_show/team_show?tg_id=" + id + "&goods_id=" + goods_id,
  3741 + });
  3742 + }
  3743 + }
  3744 + })
  3745 +
  3746 + },
  3747 +
  3748 + //-- 跳到团更多 --
  3749 + go_t_more: function () {
  3750 + var team_id = this.data.prom_id;
  3751 + wx.navigateTo({
  3752 + url: "/packageA/pages/serviceCard_pd/team_more/team_more?team_id=" + team_id,
  3753 + });
  3754 + },
  3755 +
  3756 + //-------跳转pt商品-------
  3757 + go_to_nopay: function () {
  3758 + var th = this;
  3759 + var url = "/packageA/pages/details_serviceCard/details_serviceCard?order_id=" + th.data.buy_order.order_id;
  3760 + getApp().goto(url);
  3761 +
  3762 + },
  3763 +
  3764 +
  3765 + //--调用更新阶梯团的接口--
  3766 + update_jiti: function (id) {
  3767 + var th = this;
  3768 + //--更新阶梯团--
  3769 + getApp().request.put("/api/weshop/teamgroup/updateTeamOrder/" + os.stoid + "/" + id, {
  3770 + success: function (ee) {
  3771 + //--等于0是要去支付尾款,接口调用失败,就要去查看参团详情--
  3772 + if (ee.data.code == 0) {
  3773 + th.setData({
  3774 + user_order_pt_state: 3,
  3775 + });
  3776 + } else if (ee.data.code == -1) {
  3777 + th.setData({
  3778 + user_order_pt_state: 2,
  3779 + });
  3780 + }
  3781 + }
  3782 + })
  3783 + },
  3784 +
  3785 + //--跳转到支付尾款界面--
  3786 + go_pay_wk: function () {
  3787 + var url = "/packageA/pages/serviceCard_pd/cart_wk/cart_wk?order_id=" + this.data.wk_order_id;
  3788 + getApp().goto(url);
  3789 + },
  3790 +
  3791 +
4327 3792 });
4328 3793  
4329 3794  
... ...
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.json
1 1 {
2   - "navigationBarTitleText": "商品详情",
  2 + "navigationBarTitleText": "卡项详情",
3 3 "enablePullDownRefresh": false,
4 4 "usingComponents": {
5 5 "nav_box": "/components/nav_box/nav_box",
6 6 "warn": "/components/long_warn/long_warn",
7   - "goods_recommend": "/components/goods_list/goods_list",
8   - "share": "/components/share/share"
  7 + "serviceCard_recommend": "/components/serviceCard_list/serviceCard_list",
  8 + "share": "/components/share/share"
9 9 }
10 10 }
11 11 \ No newline at end of file
... ...
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.wxml
... ... @@ -4,7 +4,7 @@
4 4 <wxs module="tool" src="filter.wxs"></wxs>
5 5  
6 6 <!-- 商品内容区域,普通商品,秒杀,拼团 -->
7   -<block>
  7 +<block wx:if="{{isshow}}">
8 8 <view class="container">
9 9 <view class="type-navbar">
10 10 <view class="type-box" wx:for="{{categories}}" wx:key="categories">
... ... @@ -79,9 +79,9 @@
79 79 <view class="flex fs35 xc-qtsign">¥</view>
80 80 <view class="fs50 val">{{prom_price}}</view>
81 81 </view>
82   - <view class="word-line fs20 xc-qtunit-price">
83   - 零售价¥{{filters.toFix(data.market_price,2)}}
84   - </view>
  82 + <view wx:if="{{is_retail_price}}" class="fs20 xc-qtunit-price t-l" >零售价¥{{filters.toFix(data.market_price,2)}}</view>
  83 + <view wx:else class="fs20 xc-qtunit-price t-l">¥{{filters.toFix(data.shop_price,2)}}</view>
  84 +
85 85 </view>
86 86  
87 87 <view class="abs white xc-nanber">
... ... @@ -94,16 +94,7 @@
94 94 </view>
95 95 </view>
96 96  
97   - <!-- 幸运购 -->
98   - <view class="abs white xc-nanber" wx:if="{{false}}">
99   - <text class="fs22">已成团{{prom_act.buy_num}}期</text>
100   - <view class="flex" style='margin-top:-34rpx'>
101   - <view class="xc-people-img">
102   - <image class="imgs" src="{{prom_st==1? iurl+'/miniapp/images/r_logo_red.png':iurl+'/miniapp/images/r_logo.png'}}"></image>
103   - </view>
104   - <view class="t-s fs20 xc-people-val">{{prom_act.ct_num}}人团</view>
105   - </view>
106   - </view>
  97 +
107 98  
108 99 <view class="hy-stop word-color fs26 abs" wx:if="{{prom_st==1}}">距活动结束还有</view>
109 100 <view class="hy-stop word-color-lan fs26 abs" wx:if="{{prom_st==0}}">距活动开始还有</view>
... ... @@ -215,7 +206,7 @@
215 206 <image class="stores-img" src="{{iurl}}/miniapp/images/stores.png"></image>
216 207 <view class="fs30" style="color:black;">选择门店</view>
217 208 </view>
218   - <view class="red_bb fs26">更多门店<text class="bg_jj"></text></view>
  209 + <view hidden="{{has_def && sys_switch.is_pricing_open_store}}" class="red_bb fs26">更多门店<text class="bg_jj"></text></view>
219 210 </view>
220 211  
221 212 <view wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
... ... @@ -243,42 +234,7 @@
243 234  
244 235 </view>
245 236  
246   -
247   - <view class="bdt16" wx:if="{{actList}}">
248   - <view class="cx-frame" style="position: relative; height: auto">
249   - <!-- <block> -->
250   - <view class="flex ai_c" wx:for="{{actList}}">
251   - <view class="cx-sizs fs30 pdr40" wx:if="{{item.prom_type == 1}}">秒杀{{index+1}}</view>
252   - <view class="f1">
253   - <!-- <view class="fs28 f1"> -->
254   - <!-- <view>
255   - <text class="prom_condition">
256   - <text class="fill-box">消费满</text>享优惠
257   - </text>
258   - </view> -->
259   -
260   - <!-- <view class="word f1 fs26"> -->
261   - <!-- <text class="tick lh2 pdr20" wx:if="{{item.money>0}}">减价{{item.money}}元</text>
262   - <text class="tick lh2 pdr20" wx:if="{{item.sale>0}}">打{{item.sale}}折</text>
263   - <text class="tick lh2 pdr20" wx:if="{{item.past==1}}">包邮</text>
264   - <text class="tick lh2 pdr20" wx:if="{{item.intValue>0}}">送{{item.intValue}}积分</text>
265   - <view class="tick lh2 pdr20" wx:if="{{item.couponId>0}}">送{{item.couponMoney}}元优惠券</view>
266   - <view class="tick ellipsis-1x lh2" wx:if="{{item.gift_id>0}}">送商品{{item.goods_name}}</view>
267   - <view class="tick ellipsis-1x lh2 details pdr40" wx:if="{{item.lb_id>0}}" data-id="{{item.lb_id}}" bindtap="viewLbDetails">送{{item.lbtitle}}</view> -->
268   - <view class="tick ellipsis-1x lh2 details pdr40" bindtap="viewFlash" data-promtype="{{item.prom_type}}" data-promid="{{item.act_id}}">{{item.act_name}}</view>
269   - <!-- </view> -->
270   - <!-- </view> -->
271   - </view>
272   - </view>
273   -
274   -
275   - <!-- </block> -->
276   - </view>
277   - </view>
278   -
279 237  
280   -
281   -
282 238 <!-- 保障服务 -->
283 239 <view class="bz_view flex bdt16 ai_c" wx:if="{{store_config.service_bz}}">
284 240 <image class="bzfu_img" src="{{iurl}}/miniapp/images/bzfu_w.png"></image>
... ... @@ -595,26 +551,8 @@
595 551 </view> -->
596 552  
597 553 <!-- 底部按钮 -->
598   - <view class="join-cart jc_sb ai_c">
599   -
600   - <view class="flex">
601   - <!-- <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split pdh20" open-type="contact"
602   - session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
603   - <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
604   - <view>客服</view>
605   - </button>
606   -
607   - <view wx:elif="{{sys_switch.weapp_customertype==2}}" class="custom-service cart-ico new_split pdh20" bindtap="con_weixin"
608   - style="text-align: center">
609   - <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
610   - <view>客服</view>
611   - </view>
  554 + <view class="join-cart ai_c">
612 555  
613   - <view wx:else class="custom-service cart-ico new_split pdh20" bindtap="contactService" style="text-align: center">
614   - <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
615   - <view>客服</view>
616   - </view> -->
617   -
618 556 <view class="custom-service cart-ico new_split pdh20" bindtap="openCS">
619 557 <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
620 558 <view>客服</view>
... ... @@ -633,72 +571,23 @@
633 571 <view>购物车</view>
634 572 </navigator>
635 573 </view>
636   - </view>
637 574  
638   -
639   - <view class="flex f1 btn-group">
640   -
641   - <!-- 从“秒杀”入口进入购买商品 -->
642   - <block wx:if="{{options.prom_type == 1}}">
643   - <!-- 活动正在开始,商品还没抢光 -->
644   - <block wx:if="{{prom_st==1 && !prom_r_null}}">
645   - <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn f1">加入购物车</view>
646   - <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn f1">立即抢购</view>
647   - </block>
648   -
649   - <!-- 活动还没开始,商品还没抢光 -->
650   - <block wx:if="{{prom_st == 0 && !prom_r_null}}">
651   - <!-- 秒杀预热要单独购买 -->
652   - <!-- is_shop_buy支持以原价购买 -->
653   - <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}">
654   - <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view>
655   - <view class="buy-btn cart-btn lanse f1">即将开始</view>
656   - </block>
657   - <block wx:else>
658   - <view class="buy-btn cart-btn cart-btn-lg lanse set_width f1">即将开始</view>
659   - </block>
660   - </block>
661   -
662   - <!-- 商品已被抢光 -->
663   - <block wx:if="{{prom_r_null}}">
664   - <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}">
665   - <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view>
666   - <view class="buy-btn cart-btn huise f1">已抢光</view>
667   - </block>
668   - <view wx:else class="buy-btn cart-btn cart-btn-lg huise set_width f1">已抢光</view>
669   - </block>
670   -
671   - <!-- 活动已经结束,商品还没抢光 -->
672   - <block wx:if="{{prom_st==3 && !prom_r_null}}">
673   - <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}">
674   - <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view>
675   - <view class="buy-btn cart-btn huise f1">活动已经结束</view>
676   - </block>
677   - <view wx:else class="buy-btn cart-btn cart-btn-lg huise set_width f1">活动已经结束</view>
678   - </block>
679   -
680   - </block>
681   -
682   - <!-- -----拼单------ -->
683   - <!-- <block wx:elif="{{options.prom_type==6}}">
  575 + <!-- -----拼单------ -->
  576 + <block >
684 577 <view bindtap="openSpecModel_pt" data-it="1" data-ind="1" class="join-btn cart-btn line-h">
685 578 <view class="fir-v">
686   -
687   - <block wx:if="{{card_field && sele_g[card_field]>0}}">
688   - {{filters.toFix(sele_g[card_field],2)}}
689   - </block>
690   - <block wx:else>{{filters.toFix(sele_g.shop_price,2)}}</block>
  579 + {{filters.toFix(sele_g.money,2)}}
691 580 </view>
692 581 <view>单独购买</view>
693 582 </view>
694   - <block wx:if="{{user_order_pt_state==0}}"> -->
  583 + <block wx:if="{{user_order_pt_state==0}}">
695 584 <!-- --商家团-- -->
696   - <!-- <view bindtap="openSpecModel_pt" data-it="0" wx:if="{{prom_st==1 && !prom_r_null && prom_act.kttype==1}}" class="buy-btn cart-btn line-h">
  585 + <view bindtap="openSpecModel_pt" data-it="0" wx:if="{{prom_st==1 && !prom_r_null && prom_act.kttype==1}}" class="buy-btn cart-btn line-h">
697 586 <view class="fir-v">¥{{prom_act.price}}</view>
698 587 <view>去参团</view>
699   - </view> -->
  588 + </view>
700 589 <!-- --会员团-- -->
701   - <!-- <view bindtap="openSpecModel_pt" data-it="0" wx:if="{{prom_st==1 && !prom_r_null && prom_act.kttype==2}}" class="buy-btn cart-btn line-h">
  590 + <view bindtap="openSpecModel_pt" data-it="0" wx:if="{{prom_st==1 && !prom_r_null && prom_act.kttype==2}}" class="buy-btn cart-btn line-h">
702 591  
703 592 <view class="pd_top1" wx:if="{{prom_act.tz_yhjgtype>1}}">
704 593 <view>一键开团</view>
... ... @@ -713,9 +602,9 @@
713 602 <view class="fir-v">¥{{ filters.toFix(prom_act.price,2)}}</view>
714 603 <view>一键开团</view>
715 604 </view>
716   - </view> -->
  605 + </view>
717 606 <!-- -阶梯团-- -->
718   - <!-- <view bindtap="openSpecModel_pt" data-it="0" wx:if="{{prom_st==1 && !prom_r_null && prom_act.kttype==3 && user_order_pt_state!=3 }}" class="buy-btn cart-btn line-h">
  607 + <view bindtap="openSpecModel_pt" data-it="0" wx:if="{{prom_st==1 && !prom_r_null && prom_act.kttype==3 && user_order_pt_state!=3 }}" class="buy-btn cart-btn line-h">
719 608 <view class="fir-v">¥{{filters.toFix(prom_act.yf_price,2)}}</view>
720 609 <view>支付定金</view>
721 610 </view>
... ... @@ -734,16 +623,7 @@
734 623 支付尾款
735 624 </view>
736 625 </block>
737   - </block> -->
738   -
739   -
740   - <!-- 从“我的服务”入口进入购买商品 -->
741   - <block wx:else>
742   - <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn f1">加入购物车</view>
743   - <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn f1">立即购买</view>
744 626 </block>
745   -
746   - </view>
747 627  
748 628 </view>
749 629  
... ... @@ -787,8 +667,12 @@
787 667 </block>
788 668 <view class="address-frame xc-ash">
789 669 <view class="flex-vertical-between butttem5">
790   - <view class="flex xc-ash">
791   - <view class="fs30 xc-black3 address_name">{{item.pickup_name}}</view>
  670 + <view class="flex xc-ash" style="flex-shrink:0;max-width: 62%;" >
  671 + <view class="fs30 xc-black3 address_name">{{item.pickup_name}}
  672 + <block wx:if="{{tool.is_no_dis(sele_g.storageId,item.keyid)}}">
  673 + <text class="no_store">(配送不匹配)</text>
  674 + </block>
  675 + </view>
792 676 </view>
793 677 <view>
794 678 <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">
... ... @@ -814,7 +698,11 @@
814 698 <view class="address-frame xc-ash">
815 699 <view class="flex-vertical-between ">
816 700 <view class="flex xc-ash">
817   - <view class="fs30 xc-black3 address_name">{{item.pickup_name}}</view>
  701 + <view class="fs30 xc-black3 address_name">{{item.pickup_name}}
  702 + <block wx:if="{{tool.is_no_dis(sele_g.storageId,item.keyid)}}">
  703 + <text class="no_store">(配送不匹配)</text>
  704 + </block>
  705 + </view>
818 706 </view>
819 707 <view>
820 708 <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">距离:{{item.distance>1000?filters.toFix(item.distance/1000,2)+"km":filters.toFix(item.distance,0)+"m"}}
... ... @@ -842,7 +730,11 @@
842 730 <view class="address-frame xc-ash">
843 731 <view class="flex-vertical-between ">
844 732 <view class="flex xc-ash">
845   - <view class="fs28 xc-black3 address_name">{{item.pickup_name}}</view>
  733 + <view class="fs28 xc-black3 address_name">{{item.pickup_name}}
  734 + <block wx:if="{{tool.is_no_dis(sele_g.storageId,item.keyid)}}">
  735 + <text class="no_store">(配送不匹配)</text>
  736 + </block>
  737 + </view>
846 738 </view>
847 739 <view>
848 740 <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">
... ... @@ -913,12 +805,6 @@
913 805 </view>
914 806 </view>
915 807  
916   -<!-- 弹起来,购买预热商品的普通购买 -->
917   -<view hidden="{{!openSpecModal_flash_normal}}">
918   - <include src="buy_flash_normal.wxml" />
919   -</view>
920   -
921   -
922 808 <!-- 联系客服操作菜单 -->
923 809 <view class="action {{!hiddenCS ? 'active':''}}" hidden="{{hiddenCS}}">
924 810 <view class="pd20 t-c pr">
... ... @@ -945,3 +831,11 @@
945 831 </view>
946 832  
947 833 <view class="mask2" bindtap="closeCS"></view>
  834 +
  835 +<!-- --弹起来,选择规格数量,拼单商品购买---- -->
  836 +<view hidden="{{!openSpecModal_pt}}">
  837 + <include src="buy_pt.wxml" />
  838 +</view>
  839 +
  840 +<!-- 分享控件,底部弹出 -->
  841 +<share id="share_button" bind:send="send" bind:cancel="cancel" bind:share_img="saveImageToPhotosAlbum" wx:if="{{share_hidden}}"></share>
... ...
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.wxss
... ... @@ -361,20 +361,6 @@ image {
361 361  
362 362 }
363 363  
364   -.join-cart > view {
365   - /* width: 29%; */
366   -}
367   -
368   -.join-cart .new_split {
369   - /* width: 13%; */
370   - /* text-align: center; */
371   - /* padding: 20rpx; */
372   - /* box-sizing: border-box; */
373   - /* flex-shrink: 0; */
374   - /* padding: 0;
375   - margin: 0; */
376   -}
377   -
378 364 .cart-ico {
379 365 font-size: 24rpx;
380 366 color: #333;
... ... @@ -422,10 +408,7 @@ image {
422 408 .join-btn {
423 409 background-color: #ffb03f;
424 410 height: 70rpx;
425   -/* border-radius: 55rpx 0rpx 0rpx 55rpx;
426   -margin-top: 16rpx; */
427   -
428   -
  411 + border-radius: 55rpx 0rpx 0rpx 55rpx;
429 412 }
430 413  
431 414 view.cart-btn-lg {
... ... @@ -435,8 +418,7 @@ view.cart-btn-lg {
435 418 .buy-btn {
436 419 background-color: #f23030;
437 420 height: 70rpx;
438   -/* border-radius: 0 56rpx 55rpx 0; */
439   -
  421 + border-radius: 0 56rpx 55rpx 0;
440 422 }
441 423  
442 424 .buy-btn-all{
... ... @@ -868,7 +850,7 @@ left:31rpx;}
868 850 .juzhong .xq .hs1{font-size: 28rpx; color: #ab8f9e}
869 851 .juzhong .xq .title .close{position: absolute;top: 0; right: 0; width: 45rpx; height: 45rpx;}
870 852  
871   -.pt_qd{margin-top: 40rpx; height: auto;}
  853 +.pt_qd{margin: 40rpx 0; height: auto;}
872 854 .spec-cart-btn.w100{width: 95%; margin-left: 0; height: 75rpx; line-height:75rpx;margin: auto; }
873 855  
874 856 .sto_v{color: #333;}
... ... @@ -2575,7 +2557,7 @@ line-height: 38rpx;
2575 2557 }
2576 2558 /* 门店分类列表 */
2577 2559 .sort_store_list{
2578   - height: 82%;
  2560 + max-height: 700rpx;
2579 2561 overflow: hidden;
2580 2562 overflow-y: scroll;
2581 2563 width: 95%;
... ... @@ -2969,4 +2951,18 @@ button.custom-service::after{
2969 2951 top: -1000px;
2970 2952 }
2971 2953  
  2954 +.join-cart>view {
  2955 + width: 29%;
  2956 +}
  2957 +
  2958 +.join-cart>.new_split {
  2959 + width: 13%;
  2960 + text-align: center;
  2961 + padding: 0;
  2962 + margin: 0;
  2963 +}
  2964 +
  2965 +.shop_name.max{
  2966 + max-width:370rpx; flex-shrink: 0;
  2967 +}
2972 2968  
... ...
packageA/pages/serviceCard_pd/team_more/team_more.js 0 → 100644
  1 +var t = getApp(), a = t.request, o = t.globalData.setting, os = o,
  2 + i = require("../../../../utils/util.js"), ut = i, s = require("../../../../utils/common.js");
  3 +var regeneratorRuntime = require('../../../../utils/runtime.js');
  4 +
  5 +
  6 +Page({
  7 + data: {
  8 + ylburl: "https://mshopimg.yolipai.net/",//有礼派图片地址
  9 + pt_act: null,//拼单数据
  10 + baseUrl: "/api/weshop/teamgroup/page?1=1",
  11 + resourceUrl: t.globalData.setting.resourceUrl,
  12 + currentPage: 1,
  13 + requestData: null,
  14 + store_id: 1,
  15 + team_id:0,
  16 + requestUrl: "",
  17 + teamgroup:null,
  18 + },
  19 +
  20 + onLoad: function (t) {
  21 +
  22 + wx.setNavigationBarTitle({ title: "开团列表", })
  23 +
  24 + var th=this;
  25 + //初始化加載更多
  26 + th.data.requestData=new Array();
  27 + var team_id=t.team_id;
  28 + var teamlist=null;
  29 + th.data.team_id = team_id;
  30 +
  31 + //获取活动表的ct_num
  32 + getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + team_id, {
  33 + data: {}
  34 + }).then(res => {
  35 + if (res.data.code == 0) {
  36 + teamlist = res.data.data;
  37 + var jt_team_num=teamlist.ct_rylist;
  38 + if (jt_team_num != "" && jt_team_num != null && jt_team_num!= undefined) {
  39 + var team_num_arr = JSON.parse(jt_team_num);
  40 + var max_num = 0;
  41 + team_num_arr.forEach(function (val, ind) {
  42 + if (val.rynum > max_num) max_num = val.rynum;
  43 + })
  44 + teamlist.max_num = max_num;
  45 + }
  46 +
  47 + th.setData({ pt_act: teamlist });
  48 + th.init(team_id);
  49 + }
  50 + })
  51 + },
  52 +
  53 + //加载更多的函数
  54 + async init(team_id) {
  55 +
  56 + var teamgroup_arr = [];//活動从表
  57 + var teamgroup = null,//活動从表
  58 + user = null,
  59 + ee = this, th=ee,
  60 + pt_status = 1;//已支付
  61 +
  62 + var req_data={
  63 + store_id: os.stoid, pageSize:6,page:ee.data.currentPage,
  64 + state: 2, team_id: team_id,ordernum:1
  65 + }
  66 +
  67 + if(this.data.pt_act.kttype==3 && this.data.pt_act.max_num){
  68 + req_data.max_num=this.data.pt_act.max_num;
  69 + }
  70 +
  71 +
  72 + //获取活动从表信息team_id
  73 + await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
  74 + data: req_data
  75 + }).then(res => {
  76 + if(ut.ajax_ok(res)){
  77 + teamgroup = res.data.data.pageData;
  78 + console.log(teamgroup);
  79 + ee.data.currentPage++;
  80 + }
  81 +
  82 + })
  83 +
  84 + //获取订单的总数这个接口不能用
  85 + for (i = 0; i < teamgroup.length; i++) {
  86 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
  87 + data: { store_id: os.stoid, pt_status: 1, pt_listno: teamgroup[i].listno }
  88 + }).then(res => {
  89 + if(ut.ajax_ok(res)){
  90 + var order = res.data.data.pageData;
  91 + teamgroup[i].open_num = order.length;
  92 + }
  93 + })
  94 +
  95 + if(!teamgroup[i].open_num) continue;
  96 +
  97 + await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + teamgroup[i].openvipid, {
  98 + }).then(res => {
  99 + var user = res.data.data;
  100 + teamgroup[i].user = user;
  101 + })
  102 +
  103 + teamgroup_arr.push(teamgroup[i]);
  104 + }
  105 + // //设置值
  106 + // for(var ii=0;ii<teamgroup.length;ii++){
  107 + // th.data.requestData.push(teamgroup[ii]);
  108 + // }
  109 + if(teamgroup_arr.length){
  110 + th.setData({ teamgroup: teamgroup_arr});
  111 + ee.countDown2();
  112 + }
  113 + },
  114 + //滚动到底部
  115 + onReachBottom: function () {
  116 + this.init(th.data.team_id);
  117 + },
  118 +
  119 + resetData: function () {
  120 + n.resetConfig(), this.data.teamgroup = null, this.data.currentPage = 1;
  121 + },
  122 +
  123 + //---小于10的格式化函数----
  124 + timeFormat(param) {
  125 + return param < 10 ? '0' + param : param;
  126 + },
  127 +
  128 + //----拼单倒计时函数-----
  129 + countDown2() {
  130 + var th = this;
  131 + // 获取当前时间,同时得到活动结束时间数组
  132 + var newTime = ut.gettimestamp();
  133 + var List = this.data.teamgroup;
  134 + if(!List || List.length<=0) return false;
  135 +
  136 + for (var j = 0; j < List.length; j++) {
  137 + // 对结束时间进行处理渲染到页面
  138 + var endTime = List[j].kt_end_time;
  139 + let obj = null;
  140 + // 如果活动未结束,对时间进行处理
  141 + if (endTime - newTime > 0) {
  142 + let time = (endTime - newTime);
  143 + // 获取天、时、分、秒
  144 + let day = parseInt(time / (60 * 60 * 24));
  145 + let hou = parseInt(time % (60 * 60 * 24) / 3600);
  146 + let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
  147 + let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
  148 + obj = {
  149 + day: this.timeFormat(day),
  150 + hou: this.timeFormat(hou),
  151 + min: this.timeFormat(min),
  152 + sec: this.timeFormat(sec)
  153 + }
  154 + } else {
  155 + //活动已结束,全部设置为'00'
  156 + obj = {
  157 + day: '00',
  158 + hou: '00',
  159 + min: '00',
  160 + sec: '00'
  161 + }
  162 + }
  163 + var txt = "teamgroup[" + j + "].djs";
  164 + th.setData({
  165 + [txt]: obj
  166 + });
  167 + }
  168 +
  169 + setTimeout(th.countDown2, 1000);
  170 + },
  171 +
  172 + //--跳转到加载更多--
  173 + go_team_show:function (e) {
  174 +
  175 + var th=this;
  176 + var tid=e.currentTarget.dataset.tid;
  177 + var team_id=e.currentTarget.dataset.team_id;
  178 + var oo=getApp().globalData;
  179 +
  180 + getApp().request.get("/api/weshop/rechargeServicelist/page", {
  181 + data: {
  182 + prom_id: team_id,
  183 + user_id: oo.user_id,
  184 + store_id: os.stoid,
  185 + pageSize: 1,
  186 + page: 1
  187 + },
  188 + success: function(e) {
  189 + //--跳转到已经购买的情况--
  190 + if (e.data.code == 0 && e.data.data.pageData.length > 0) {
  191 + var odr = e.data.data.pageData[0];
  192 + //还未支付
  193 + if (odr.pt_status == 0 && odr.order_status == 1) {
  194 + wx.navigateTo({
  195 + url: "/packageA/pages/details_serviceCard/details_serviceCard/details_serviceCard?order_id=" + odr.order_id,
  196 + });
  197 + }else if (odr.pt_status == 1 && odr.order_status == 1){
  198 + wx.navigateTo({
  199 + url: "/packageA/pages/serviceCard_pd/team_success/team_success?ordersn=" + odr.order_sn,
  200 + });
  201 + }
  202 + }
  203 + //--跳转到参团--
  204 + else if(e.data.code == 0){
  205 + wx.navigateTo({
  206 + url: "/packageA/pages/serviceCard_pd/team_show/team_show?tg_id="+tid+"&goods_id="+th.data.pt_act.goods_id,
  207 + });
  208 + }
  209 +
  210 + }
  211 + });
  212 +
  213 + }
  214 +
  215 +})
0 216 \ No newline at end of file
... ...
packageA/pages/serviceCard_pd/team_more/team_more.json 0 → 100644
  1 +{
  2 + "usingComponents": {}
  3 +}
0 4 \ No newline at end of file
... ...
packageA/pages/serviceCard_pd/team_more/team_more.wxml 0 → 100644
  1 +<!--//选项框-->
  2 +<block wx:for="{{teamgroup}}">
  3 +<view class='group' wx:if="{{item.open_num>0}}">
  4 + <view class='group-list' bindtap="go_team_show" data-tid="{{item.id}}" data-team_id="{{item.team_id}}" >
  5 + <!--//选项框头像-->
  6 + <view class='gtou' >
  7 + <image src='{{item.user.head_pic}}'></image>
  8 + </view>
  9 + <!--//等你来拼-->
  10 + <view class='gdn'>等你来拼 (^_^)</view>
  11 + <!--//还差几人,剩余时间-->
  12 + <view class='ghaicha'>
  13 + <text class='gred' wx:if="{{pt_act.max_num}}">
  14 + <text wx:if="prom_act.max_num - item.open_num>0">还差{{pt_act.max_num - item.open_num}}人享最低优惠</text>
  15 + <text wx:else>您已经享最低优惠</text>
  16 + </text>
  17 + <text class='gred' wx:else>还差{{pt_act.ct_num - item.open_num}}人成团</text>
  18 + <view>
  19 + <view class="time_show_view">
  20 + 剩余
  21 + <text wx:if="{{item.djs.day}}">{{item.djs.day}}天:</text>
  22 + <text>{{item.djs.hou}}</text>:
  23 + <text>{{item.djs.min}}</text>:
  24 + <text>{{item.djs.sec}}</text>结束
  25 + </view>
  26 + </view>
  27 +
  28 + </view>
  29 + <!--//参加团-->
  30 + <view class='cjt'>
  31 + <navigator>去参团 ></navigator>
  32 + </view>
  33 + <view class="clear"></view>
  34 + </view>
  35 +</view>
  36 +</block>
0 37 \ No newline at end of file
... ...
packageA/pages/serviceCard_pd/team_more/team_more.wxss 0 → 100644
  1 +/* pages/team/team_more/team_more.wxss */
  2 +
  3 +/* pages/team/test.wxss */
  4 +
  5 +page {
  6 + background-color: white;
  7 +}
  8 +
  9 +.top {
  10 + background-color: white;
  11 + width: 100%;
  12 + height: 100rpx;
  13 + font-size: 32rpx;
  14 + border-bottom: 2rpx #e5e5e5 solid;
  15 + padding-left: 4rpx;
  16 + padding-right: 4rpx;
  17 +}
  18 +
  19 +.group {
  20 + width: 100%;
  21 + margin-top: 20rpx;
  22 + min-height: 108rpx;
  23 +}
  24 +
  25 +.group .group-list {
  26 + border: 1rpx #f48886 solid;
  27 + border-radius: 200rpx;
  28 + height: 90rpx;
  29 + width: 720rpx;
  30 + margin-left: 15rpx;
  31 + overflow: hidden;
  32 + display: flex;
  33 + position: relative;
  34 +}
  35 +
  36 +.group .group-list .gtou {
  37 + width: 80rpx;
  38 + height: 80rpx;
  39 + top: 6rpx;
  40 +}
  41 +
  42 +.group .group-list .gtou image {
  43 + width: 80rpx;
  44 + height: 80rpx;
  45 + border-radius: 200rpx;
  46 + background-color: green;
  47 +}
  48 +
  49 +.group .group-list .gdn {
  50 + font-size: 24rpx;
  51 + line-height: 48rpx;
  52 + height: 48rpx;
  53 + width: 168rpx;
  54 + color: #8f8f94;
  55 + margin-left: 15rpx;
  56 +}
  57 +
  58 +.group .group-list .ghaicha {
  59 + text-align: right;
  60 + width: 320rpx;
  61 + height: 96rpx;
  62 + font-size: 24rpx;
  63 + overflow: hidden;
  64 +}
  65 +
  66 +.group .group-list .ghaicha .gred {
  67 + height: 48rpx;
  68 + line-height: 48rpx;
  69 + color: red;
  70 + width: 300rpx;
  71 +}
  72 +
  73 +
  74 +.group .group-list .cjt {
  75 + height: 86rpx;
  76 + width: 120rpx;
  77 + position: absolute;
  78 + right: 0;
  79 + top: 0;
  80 + border-radius: 0 100rpx 100rpx 0;
  81 + line-height: 86rpx;
  82 + font-size: 24rpx;
  83 + color: #fff;
  84 + border: 2rpx solid #dd524d;
  85 + background-color: #dd524d;
  86 +}
  87 +
  88 +.gbody {
  89 + background-color: white;
  90 +}
  91 +.time_show_view{ height: 40rpx; line-height: 40rpx; color: #8f8f94; }
... ...
packageA/pages/serviceCard_pd/team_show/team_show.js
1   -var t = require("../../../../utils/util.js"),
2   - ut = t,
3   - e = require("../../../../utils/common.js"),
4   - a = require("../../../../utils/wxParse/wxParse.js"),
  1 +var ut = require("../../../../utils/util.js"),
5 2 s = getApp(),
6 3 i = s.request,
7   - rq = i,
8 4 oo = s.globalData,
9 5 o = s.globalData.setting,
10 6 os = o;
... ... @@ -95,15 +91,13 @@ Page({
95 91 },
96 92 onLoad: function(options) {
97 93 wx.setNavigationBarTitle({ title: "拼团订单",})
98   - //var postdata=getApp().globalData.to_group;
  94 +
99 95 var postdata=options;
100 96 var tg_id = postdata.tg_id, first_leader=options.first_leader,goods_id=options.goods_id;
101 97 //如果tg_id是空的话
102 98 if(tg_id==null ||goods_id==null){
103 99 var tg_id_str=decodeURIComponent(postdata.scene);
104 100 tg_id_str=tg_id_str.split("_");
105   - console.log(tg_id_str.length);
106   - //tg_id_str[0] teamgroup.id tg_id_str[1] user_id tg_id_str[2] goods_id
107 101 switch(tg_id_str.length){
108 102 case 1:
109 103 tg_id=tg_id_str[0];
... ... @@ -126,6 +120,7 @@ Page({
126 120 getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+os.stoid+"/"+first_leader,{}).then(res=>{
127 121 if(res.data.code==0){
128 122 getApp().globalData.guide_id=res.data.data.id;
  123 + getApp().globalData.guide_pick_id= res.data.data.pickup_id
129 124 }
130 125 })
131 126 }
... ... @@ -134,9 +129,12 @@ Page({
134 129  
135 130 var th=this;
136 131 getApp().getConfig2(function(e) {
137   - th.setData({ bconfig: e,});
  132 +
  133 + var json_d = JSON.parse(e.switch_list);
  134 + th.setData({ bconfig: e,sys_switch:json_d});
138 135 th.wait_for_store_config(); //获取默认的门店
139 136 })
  137 +
140 138  
141 139 },
142 140  
... ... @@ -293,37 +291,28 @@ Page({
293 291 var gd=this.data.goods;
294 292 var th=this;
295 293 var user_id=getApp().globalData.user_id;
296   - var promgoodsbuynum=0;
  294 + var promcardbuynum=0;
297 295 var goodsbuynum=0;
298   - getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  296 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
299 297 data: {
300 298 store_id: os.stoid,
301 299 user_id: user_id,
302   - goods_id: gd.goods_id,
303   - prom_type: gd.prom_type,
304   - prom_id: gd.prom_id,
  300 + card_id: gd.id,
  301 + prom_type: 6,
  302 + prom_id: gd.prom_id,
305 303 isnew:1
306 304 },
307 305 }).then(res=>{
308 306 var buy_num_data=res.data.data;
309   - if(buy_num_data.promgoodsbuynum) promgoodsbuynum=buy_num_data.promgoodsbuynum;
310   - goodsbuynum=buy_num_data.goodsbuynum;
  307 + if(buy_num_data.promcardbuynum) promcardbuynum=buy_num_data.promcardbuynum;
  308 + goodsbuynum=buy_num_data.cardbuynum;
311 309 })
312 310  
313   - //先判断限购
314   - if (num+goodsbuynum>gd.viplimited && gd.viplimited>0) {
315   - getApp().confirmBox("超出商品限购");
316   - return false;
317   - }
318   - if (num+promgoodsbuynum>th.data.teamlist.buy_limit && th.data.teamlist.buy_limit>0) {
  311 + if (num+promcardbuynum>th.data.teamlist.buy_limit && th.data.teamlist.buy_limit>0) {
319 312 getApp().confirmBox("超出活动限购");
320 313 return false;
321 314 }
322   - //判断库存
323   - if ( num>gd.store_count) {
324   - getApp().confirmBox("超出商品库存");
325   - return false;
326   - }
  315 +
327 316 var r_num=0;
328 317 await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/6/" + th.data.teamlist.id, {
329 318 1: 1
... ... @@ -344,6 +333,8 @@ Page({
344 333 minusStatus: minusStatus,
345 334 })
346 335  
  336 + return true;
  337 +
347 338 },
348 339  
349 340 /*输入框事件*/
... ... @@ -370,22 +361,22 @@ Page({
370 361 min_price = 0,
371 362 th=this,
372 363 that=th,
373   - flag=null;
  364 + flag=null,
  365 + odr=null;
374 366 await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2",{
375 367 data:{
376 368 store_id: os.stoid,
377 369 is_end: 0,
378 370 is_show: 1,
379 371 user_id: getApp().globalData.user_id,
380   - pageSize:1000
  372 + pageSize:1000,
  373 + goods_id:th.data.goods_id
381 374 }
382 375 }).then(res=>{
383 376 let pd_list=res.data.data.pageData;
384 377 if(res.data.code==0 && pd_list.length>0){
385   - flag =pd_list.some(pd=>{
386   - // if(th.data.goods_id){
387   - return pd.goods_id==th.data.goods_id;
388   - // }
  378 + flag =pd_list.find(pd=>{
  379 + return pd.goods_type==1;
389 380 })
390 381 }
391 382 })
... ... @@ -435,9 +426,10 @@ Page({
435 426 var is_ok=1;
436 427  
437 428 //要先读取订单,看自己有没有买过该团的商品
438   - await getApp().request.promiseGet("/api/weshop/order/page", {
  429 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
439 430 data: {
440   - pt_prom_id:teamgroup.team_id,
  431 + prom_id:teamgroup.team_id,
  432 + prom_type:6,
441 433 user_id: oo.user_id,
442 434 store_id: os.stoid,
443 435 pageSize: 1,
... ... @@ -453,18 +445,15 @@ Page({
453 445 }
454 446 //--跳转到已经购买的情况--
455 447 if (e.data.data.pageData.length > 0) {
456   - var odr = e.data.data.pageData[0];
  448 + odr = e.data.data.pageData[0];
457 449 //还未支付
458 450 if (odr.pt_status == 0 && odr.order_status == 1) {
459   - wx.navigateTo({
460   - url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
461   - });
462   - is_ok=0;
  451 +
  452 + getApp().goto("/packageA/pages/details_serviceCard/details_serviceCard?order_id=" + odr.order_id)
  453 + is_ok=0;
463 454 }else if (odr.pt_status == 1 && odr.order_status == 1){
464   - wx.navigateTo({
465   - url: "/pages/team/team_success/team_success?ordersn=" + odr.order_sn,
466   - });
467   - is_ok=0;
  455 + getApp().goto( "/packageA/pages/serviceCard_pd/team_success/team_success?ordersn=" + odr.order_sn);
  456 + is_ok=0;
468 457 }
469 458 }
470 459 })
... ... @@ -512,7 +501,7 @@ Page({
512 501 }
513 502  
514 503 //多少人参团头像
515   - await getApp().request.promiseGet("/api/weshop/order/pagePtList", {
  504 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/pagePtList", {
516 505 data: {
517 506 store_id: o.stoid,
518 507 pt_listno: teamgroup.listno,
... ... @@ -522,37 +511,31 @@ Page({
522 511 })
523 512  
524 513 //获取商品信息
525   - await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, {
  514 + await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + os.stoid + "/" + goods_id, {
526 515 }).then(res => {
527   - //商品地址
528   - original_img = ee.data.imageurl + res.data.data.original_img,
529   - goods = res.data.data
  516 + //商品地址
  517 + original_img = ee.data.imageurl + res.data.data.original_img,
  518 + goods = res.data.data
530 519 })
531   -
532   - //显示商品规格
533   - var gg = "";
534   - if(goods.goods_spec=="null" || goods.goods_spec==null ) goods.goods_spec="";
535   - if(goods.goods_color=="null" || goods.goods_color==null) goods.goods_color="";
536   -
537   - if (goods.goods_spec != "" && goods.goods_color != "") {
538   - gg = goods.goods_spec + "/" + goods.goods_color;
539   - } else if (goods.goods_spec != "" || goods.goods_color != "") {
540   - gg = goods.goods_spec + goods.goods_color;
541   - } else {
542   - gg = "规格1";
543   - }
544   - goods.gg = gg;
545   -
  520 +
  521 + if(!goods){
  522 + getApp().showWarning("拼单活动商品未找到");
  523 + th.go_back();
  524 + return false;
  525 + }
  526 + goods.prom_id=teamgroup.team_id;
  527 +
  528 +
546 529 //只装5个
547 530 var ordertx2 = [], sf_num = 0, ct_nun = teamlist.ct_num;
548 531 if (max_num) {
549 532 ct_nun = parseInt(max_num);
550   - if (ct_nun < ordertx.length) ct_nun = ordertx.length;
  533 + if (ordertx && ct_nun < ordertx.length) ct_nun = ordertx.length;
551 534 }
552 535  
553 536 if (ct_nun > 5) ct_nun = 5;
554 537 for (var i = 0; i < ct_nun; i++) {
555   - if (i >= ordertx.length) sf_num++
  538 + if (!ordertx || i >= ordertx.length) sf_num++
556 539 else
557 540 ordertx2.push(ordertx[i]);
558 541 }
... ... @@ -566,9 +549,7 @@ Page({
566 549  
567 550 if(th.data.is_group_end==1 || th.data.is_group_end==2 ){
568 551 getApp().confirmBox(th.data.end_text);
569   - wx.redirectTo({
570   - url: "/pages/goods/goodsInfo/goodsInfo?goods_id=" + goods.goods_id,
571   - });
  552 + getApp().goto("/packageA/pages/goodsInfo/goodsInfo?goods_id=" + goods.card_id)
572 553 return false;
573 554 }
574 555  
... ... @@ -611,22 +592,21 @@ Page({
611 592 th.data.fir_def_store={}; //赋值空对象
612 593 return false;
613 594 }
  595 +
  596 + if(getApp().globalData.is_dj_pk) th.setData({has_def:1})
614 597 //--定时器推迟一下--
615 598 setTimeout(function () {
616 599 if(!th.data.goods) return false;
617 600 var g_distr_type=th.data.goods.distr_type;
618 601 //--如果默认门店的配送方式不对,就不能被选择--
619   - if(ee.distr_type!=0 && g_distr_type!=0 && ee.distr_type!=g_distr_type ){
620   - //th.data.fir_def_store={}; //赋值空对象
621   - //return false;
622   - ee.is_no_dis=1;
623   - }
  602 + // if(ee.distr_type!=0 && g_distr_type!=0 && ee.distr_type!=g_distr_type ){
  603 + // ee.is_no_dis=1;
  604 + // }
624 605  
625 606 var appd=getApp().globalData;
626 607 var w_time = setInterval(function() {
627 608 if (that.data.is_get_local_ok == 0) return false;
628 609 clearInterval(w_time);
629   - var distance = null;
630 610 var e=JSON.parse(JSON.stringify(ee));
631 611  
632 612 //如果有开启近距离的话,同时距离优不一样了
... ... @@ -710,9 +690,8 @@ Page({
710 690 if(getCurrentPages()>1)
711 691 wx.navigateBack({delta: 1})
712 692 else
713   - wx.navigateTo({
714   - url: "/pages/index/index/index"
715   - });
  693 + getApp().goto("/pages/index/index/index");
  694 +
716 695 },
717 696 //---小于10的格式化函数----
718 697 timeFormat(param) {
... ... @@ -757,7 +736,7 @@ Page({
757 736 },
758 737  
759 738 //------去支付,购买-------
760   - go_pay:function () {
  739 + go_pay:async function () {
761 740 var th=this;
762 741 var def_pick_store=this.data.def_pick_store;
763 742 if(def_pick_store && def_pick_store.pickup_id) {
... ... @@ -773,6 +752,14 @@ Page({
773 752 getApp().confirmBox("拼团商品至少要买"+qnum+"件!");
774 753 return false;
775 754 }
  755 +
  756 +
  757 + var minusStatus = th.data.num > 1 ? 'normal' : 'disable';
  758 + //判断限购
  759 + var f=await this.check_num(th.data.num,minusStatus);
  760 + if(!f) return false;
  761 +
  762 +
776 763 //先判断团的redis数量
777 764 this.buy_check_redis(function () {
778 765 var arr=th.data.redis_arr;
... ... @@ -789,15 +776,18 @@ Page({
789 776 return false;
790 777 }
791 778  
  779 +
  780 +
792 781 //--------------此时操作的数据------------
793 782 var newd = {
794   - goods_id: th.data.goods.goods_id,
  783 + id: th.data.goods.id,
795 784 goods_num: th.data.num,
796 785 pick_id: th.data.pick_id,
  786 + keyid: th.data.def_pick_store.keyid,
797 787 user_id: oo.user_id,
798   - store_id: th.data.stoid,
799   - goods_name: th.data.goods.goods_name,
800   - goods_sn: th.data.goods.goods_sn,
  788 + store_id: os.stoid,
  789 + goods_name: th.data.goods.service_name,
  790 + goods_sn: th.data.goods.service_sn,
801 791 };
802 792  
803 793 //---是不是从收藏夹出来的---
... ... @@ -846,7 +836,7 @@ Page({
846 836  
847 837 s.set_b_now(newd);
848 838 wx.navigateTo({
849   - url: "/pages/cart/cart2_pt/cart2_pt?is_bnow=1&goods_id=" + th.data.goods.goods_id,
  839 + url: "/packageA/pages/serviceCard_pd/cart/cart?is_bnow=1&goods_id=" + th.data.goods.card_id,
850 840 });
851 841 });
852 842 },
... ... @@ -940,11 +930,16 @@ Page({
940 930 })
941 931 },
942 932  
943   - go_goodsinfo:function (e) {
944   - var gid=e.currentTarget.dataset.gid;
945   - var url="/pages/goods/goodsInfo/goodsInfo?goods_id="+gid;
946   - wx.navigateTo({ url: url, }) //跳到非tabbar页
947   - },
  933 + go_goodsinfo:function (e) {
  934 + var index=e.currentTarget.dataset.index;
  935 + var item=this.data.pageteam[index];
  936 + var gid=item.goods_id;
  937 + var url="/pages/goods/goodsInfo/goodsInfo?goods_id="+gid+"&prom_id="+item.id+"&prom_type=6";
  938 + if(item.goods_type==1){
  939 + url="/packageA/pages/serviceCard_pd/goodsInfo/goodsInfo?goods_id="+gid+"&prom_id="+item.id+"&prom_type=6";
  940 + }
  941 + getApp().goto(url); //跳到非tabbar页
  942 + },
948 943  
949 944 gohome:function(){
950 945 getApp().goto("/pages/index/index/index");
... ... @@ -960,7 +955,7 @@ Page({
960 955  
961 956 //------ 分享配置 --------
962 957 onShareAppMessage: function (e) {
963   - getApp().globalData.no_clear=1;
  958 + getApp().globalData.no_clear=1;
964 959 var curPage=this;
965 960 var pagePath = curPage.route; //当前页面url
966 961 if (pagePath.indexOf('/') != 0) {
... ... @@ -969,7 +964,7 @@ Page({
969 964 var url=pagePath;
970 965  
971 966 //--分享图片--
972   - img=th.data.iurl+th.data.teamlist.share_imgurl;
  967 + var img=this.data.iurl+this.data.teamlist.share_imgurl;
973 968 //--把会员分享出去--
974 969 if(getApp().globalData.user_id){
975 970 if(url.indexOf("?")>0)
... ... @@ -978,16 +973,22 @@ Page({
978 973 url+="?first_leader="+getApp().globalData.user_id;
979 974 }
980 975  
  976 + if(url.indexOf('goods_id')==-1){
  977 + url+="&goods_id="+this.data.goods.id;
  978 + }
  979 +
  980 + if(url.indexOf('tg_id')==-1){
  981 + url+="&tg_id="+this.data.teamgroup.id;
  982 + }
  983 +
981 984 return {
982 985 path:url,
983   - title: "商品分类",
  986 + title: "拼团",
984 987 imageUrl: img,
985 988 }
986 989 },
987 990  
988   -
989   -
990   -
  991 +
991 992  
992 993 closeSpecModal: function() {
993 994 this.setData({
... ... @@ -1005,9 +1006,25 @@ Page({
1005 1006  
1006 1007 //-- 选择门店。此时的门店选择与门店有关系 --
1007 1008 choice_store: function(ee) {
  1009 +
  1010 + //--先判断会员状态--
  1011 + var user_info = getApp().globalData.userInfo;
  1012 + if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
  1013 + wx.navigateTo({
  1014 + url: '/packageE/pages/togoin/togoin',
  1015 + })
  1016 + return false;
  1017 + }
  1018 +
1008 1019  
1009 1020 var th = this;
1010   - var bconfig = th.data.bconfig;
  1021 + var bconfig = th.data.bconfig;
  1022 +
  1023 + //如果开启了,则不在选择门店
  1024 + if(this.data.sys_switch.is_pricing_open_store && getApp().globalData.pk_store){
  1025 + return false;
  1026 + }
  1027 +
1011 1028 if(!th.data.only_pk && !th.data.def_pickpu_list){
1012 1029 getApp().confirmBox("门店库存不足", null, 25000, !1);
1013 1030 return false;
... ... @@ -1020,6 +1037,9 @@ Page({
1020 1037 getApp().confirmBox("门店库存不足", null, 25000, !1);
1021 1038 return false;
1022 1039 }
  1040 +
  1041 +
  1042 +
1023 1043  
1024 1044 if ( bconfig && bconfig.is_sort_storage) {
1025 1045 wx.getLocation({
... ... @@ -1127,25 +1147,13 @@ Page({
1127 1147 var timer_get = setInterval(function() {
1128 1148 if (th.data.is_get_local_ok == 0) return false;
1129 1149 if (!th.data.goods) return false;
1130   - var dd = null,
1131   - i = getApp().request;
  1150 + var dd = null, i = getApp().request;
1132 1151 var g_distr_type = th.data.goods.distr_type;
1133   - if (g_distr_type != 0) {
1134   - dd = {
1135   - store_id: o.stoid,
1136   - distr_type: g_distr_type,
1137   - isstop: 0,
1138   - is_pos: 1,
1139   - pageSize: 2000
1140   - }
1141   - } else {
  1152 +
1142 1153 dd = {
1143   - store_id: o.stoid,
1144   - isstop: 0,
1145   - is_pos: 1,
1146   - pageSize: 2000
  1154 + store_id: o.stoid,isstop: 0,is_pos: 1, pageSize: 2000
1147 1155 }
1148   - }
  1156 +
1149 1157 //如果有距离的话
1150 1158 if (th.data.lat != null) {
1151 1159 dd.lat = th.data.lat;
... ... @@ -1439,7 +1447,7 @@ Page({
1439 1447 if (th.data.is_show_sto_cat == 1) {
1440 1448 item = th.data.def_pickpu_list[index];
1441 1449 } else {
1442   - item = th.data.only_pk[index]; //当没有门店分类的时候
  1450 + item = th.data.only_pk?th.data.only_pk[index]:null; //当没有门店分类的时候
1443 1451 }
1444 1452  
1445 1453 } else {
... ... @@ -1481,12 +1489,14 @@ Page({
1481 1489 if (th.data.is_show_sto_cat == 1) {
1482 1490 item = th.data.def_pickpu_list[index];
1483 1491 } else {
1484   - item = th.data.only_pk[index]; //当没有门店分类的时候
  1492 + item = th.data.only_pk?th.data.only_pk[index]:null; //当没有门店分类的时候
1485 1493 }
1486 1494 } else {
1487 1495 var index = th.data.sec_pick_index;
1488 1496 item = th.data.sec_sto.s_arr[index];
1489 1497 }
  1498 +
  1499 + if(!item) return false;
1490 1500  
1491 1501  
1492 1502 var store_id = o.stoid;
... ... @@ -1544,6 +1554,12 @@ Page({
1544 1554 })
1545 1555  
1546 1556 },
  1557 +
  1558 +
  1559 + go_to:function (e) {
  1560 + var url=e.currentTarget.dataset.url;
  1561 + getApp().goto(url);
  1562 + }
1547 1563  
1548 1564  
1549 1565  
... ...
packageA/pages/serviceCard_pd/team_show/team_show.wxml
... ... @@ -3,7 +3,7 @@
3 3 <view wx:if="{{is_show}}">
4 4  
5 5 <!--图片区域-->
6   - <view class='center'>
  6 + <view class='center' bindtap="go_to" data-url="/packageA/pages/serviceCard_pd/goodsInfo/goodsInfo?goods_id={{goods.card_id}}&prom_type=6&prom_id={{teamlist.id}}">
7 7 <view class='cenleft'>
8 8 <image src='{{image}}' binderror='bind_bnerr' data-errorimg='image'></image>
9 9 </view>
... ... @@ -11,7 +11,7 @@
11 11 <view class='cenrt'>
12 12  
13 13 <view class='xc-goods-details ellipsis-2 fs28'>
14   - <span>{{goods.goods_name}}</span>
  14 + <span>{{goods.serviceName}}</span>
15 15 </view>
16 16 </view>
17 17 <view class='cenrcen flex-vertical-between'>
... ... @@ -19,7 +19,7 @@
19 19 <view class="fs40 xc-wc" style='font-size:40rpx'>
20 20 <span class="fs28" style="font-weight:500;">¥</span>{{teamlist.price}}</view>
21 21 <view class="fs22 word-line xc-wc">
22   - 零售价¥{{goods.market_price}}
  22 + 零售价¥{{goods.show_price}}
23 23 </view>
24 24 </view>
25 25 <view class="xc-wc fs24">
... ... @@ -153,11 +153,7 @@
153 153 </view>
154 154 </view>
155 155 </view>
156   - <!----//拼团玩法---->
157   - <!-- <view class='pintuan' bindtap="cpd">
158   - <view class='pintuanzhou'>拼团玩法</view>
159   - <view class='pintuanyou'>开团/参团>邀请参团>人满成团</view>
160   - </view> -->
  156 +
161 157 <!--大家都在团-->
162 158 <view class='goodslist'>
163 159 <view class='goodslisttop'>
... ... @@ -165,7 +161,7 @@
165 161 <view class='goodslisttopright'></view>
166 162 </view>
167 163 <view class="changxin">
168   - <view class='onegoods' wx:for='{{pageteam}}' wx:key="{{index}}" bindtap="go_goodsinfo" data-gid="{{item.goods_id}}">
  164 + <view class='onegoods' wx:for='{{pageteam}}' wx:key="{{index}}" bindtap="go_goodsinfo" data-index="{{index}}">
169 165 <view class='onegoodsimg'>
170 166 <image src="{{imageurl+item.share_imgurl}}"></image>
171 167 </view>
... ... @@ -187,9 +183,6 @@
187 183 <view class="pop_up" wx:if="{{yijian}}">
188 184 <view>
189 185  
190   - <!----弹起来,选择规格数量,拼单商品购买------>
191   - <!-- <view> -->
192   - <!-- <view hidden="{{!openSpecModal_pt}}"> -->
193 186 <view bindtap="closeSpecModal" class="cover-layer"></view>
194 187 <view class="spec-model">
195 188 <view class="pding">
... ... @@ -198,7 +191,7 @@
198 191 <view class="spec-goods">
199 192 <image class="wh100 spec-img xc-distance-bottom" src="{{image}}" binderror="pop_err_img" data-errorimg="data.original_img"></image>
200 193 <view class="spec-goods-info">
201   - <view class="spec-goods-name ellipsis-1">{{goods.goods_name}}商品名称</view>
  194 + <view class="spec-goods-name ellipsis-1">{{goods.service_name}}商品名称</view>
202 195 <view class="flex ai_end xc-val-money">
203 196 <view class="spec-goods-price">
204 197 <span class='t1'>¥</span><text class='t2'>{{teamlist.kttype==3?teamlist.yf_price:teamlist.price}}</text>
... ... @@ -229,7 +222,7 @@
229 222 <view class="fs28 xc-ash-9f">选择门店</view>
230 223 </view>
231 224  
232   - <view class="red-co fs28" bindtap="choice_store">更多门店<text class="right-arrow"></text></view>
  225 + <view hidden="{{has_def && sys_switch.is_pricing_open_store}}" class="red-co fs28" bindtap="choice_store">更多门店<text class="right-arrow"></text></view>
233 226  
234 227  
235 228 </view>
... ... @@ -237,17 +230,6 @@
237 230 <view class="fs24 xc-ash-9f xc-distance-top " wx:elif="{{def_pick_store && def_pick_store.fulladdress}}">地址:{{def_pick_store.fulladdress}}</view>
238 231  
239 232 </view>
240   - <!-- 商品的属性项目 -->
241   - <view>
242   - <view hidden="{{ismend==1}}" class="spec-name">商品规格</view>
243   - <block>
244   - <view hidden="{{ismend==1}}" class="flex">
245   - <view class="spec_bt act" >{{goods.gg}}
246   - </view>
247   - </view>
248   - </block>
249   - <view class="clear"></view>
250   - </view>
251 233  
252 234 <view>
253 235 <view class="b_num" hidden="{{ismend==1}}" style="margin-top: 20rpx">
... ... @@ -260,7 +242,6 @@
260 242 </view>
261 243 </view>
262 244  
263   - <!-- <view class="clear"></view> -->
264 245  
265 246 </view>
266 247 </view>
... ... @@ -271,7 +252,6 @@
271 252 </view>
272 253  
273 254 </view>
274   - <!-- </view> -->
275 255  
276 256 </view>
277 257 </view>
... ... @@ -416,83 +396,6 @@
416 396 </view>
417 397 </block>
418 398  
419   -
420   -
421   -
422   -
423   -
424   -<!-- <view class='buy-option'> -->
425   -<!--头部图片-->
426   -<!-- <view class='buy-top'>
427   - <view class='buy-image mimg'>
428   - <image src='{{image}}'></image>
429   - <view>
430   - <view>
431   - <span class='t1'>¥</span><text class='t2'>{{teamlist.kttype==3?teamlist.yf_price:teamlist.price}}</text>
432   - </view>
433   - <view class="ellipsis-2">
434   - {{goods.goods_name}}
435   - </view>
436   - </view>
437   -
438   - </view>
439   -
440   - <view class='buy-cou' bindtap='cbcou'>⊗</view>
441   - <view class='clear'></view>
442   - </view> -->
443   -
444   -<!--取货门店-->
445   -<!-- <view class='quhuo' wx:if="{{qh}}" bindtap='cqh'> -->
446   -<!--当ii==0请选择门店显示,ii==1最后名字显示-->
447   -<!-- <text>取货门店</text><view class='end_name' wx:if="{{ii==1 }}">({{end_name}})</view><view wx:if="{{ii==0 }}" class='ttxz'>(请选择门店)</view>
448   - </view> -->
449   -<!--选择门店-->
450   -<!-- <view class='xuanze1' wx:if="{{xz}}" bindtap='cxz'>
451   - <text decode='true'>&lt; 选择门店</text>
452   - </view>
453   - <view class='x-z'> -->
454   -<!--第一层-->
455   -<!-- <block wx:if="{{one}}">
456   - <view class="fir_view">
457   - <view>
458   - <view class='xuanze' bindtap='setchild' data-bindex='{{bindex}}' data-bname='{{item.name}}' wx:for-index="bindex" wx:for="{{ssl}}" wx:key>
459   - <text decode='true'>{{item.name}}</text>
460   - </view>
461   - </view>
462   - </view>
463   - </block> -->
464   -<!--选择的-->
465   -<!-- <view class='xuanze1' wx:if="{{se}}" bindtap='sel'><text decode='true'>&lt;</text> {{sele_dl_name}}</view> -->
466   -<!--第二层list-->
467   -<!-- <block wx:if="{{list}}">
468   - <scroll-view scroll-y="true" style="max-height: 460rpx">
469   - <view class='xuanze' wx:for="{{ssl_child}}" wx:key bindtap='clist'
470   - data-pick_dis="{{item.distr_type}}"
471   - data-end='{{item.pickup_name}}' data-pick_id='{{item.pickup_id}}'>
472   - <text decode='true'>{{item.pickup_name}}</text>
473   - </view>
474   - </scroll-view>
475   - </block>
476   - </view> -->
477   -
478   -<!--数量-->
479   -<!-- <view class='buy-button' wx:if="{{qh}}">
480   - <text>数量</text>
481   - <view class='stepper sum'>
482   - <text class='{{minusStatus}}' type='number' bindtap='bindMinus' class="jiajian">-</text>
483   - <input bindinput='bindManual' value='{{num}}'></input>
484   - <text bindtap='bindPlus' class="jiajian">+</text>
485   - </view>
486   - <view class='clear'></view>
487   - </view> -->
488   -
489   -<!-- <view class="clear"></view>
490   - </view> -->
491   -<!--支付-->
492   -<!-- <view class='btn' bindtap="go_pay">立即支付</view> -->
493   -<!-- </view>
494   -</view> -->
495   -
496 399 <!--mask吐司内容-->
497 400 <view class="toast_mask" wx:if="{{isShowToast}}"></view>
498 401  
... ...
packageA/pages/serviceCard_pd/team_success/team_success.js
... ... @@ -81,10 +81,15 @@ Page({
81 81 th.setData({poster:json_data})
82 82 }
83 83 }
84   - })
  84 + })
  85 +
  86 +
  87 + getApp().getConfig(function (e) {
  88 + th.setData({sto_sele_name_1: e.store_name})
  89 + })
85 90 },
86 91 onShow:function () {
87   - getApp().check_can_share();
  92 + getApp().check_can_share(this);
88 93 },
89 94  
90 95 //关闭展开列表
... ... @@ -151,7 +156,7 @@ Page({
151 156 p_status=1;
152 157  
153 158 //--如果商家团的时候,这个要改---
154   - await getApp().request.promisePost("/api/weshop/order/pay/vipAutoTuan", {
  159 + await getApp().request.promisePost("/api/weshop/rechargeServicelist/vipAutoTuan", {
155 160 data: {orderSn:order_sn,storeId:os.stoid }
156 161 })
157 162  
... ... @@ -193,7 +198,8 @@ Page({
193 198 }).then(res => {
194 199 if(res.data.code==0){
195 200 teamlist=res.data.data;
196   - this.setData({
  201 + ee.data.prom_act=teamlist;
  202 + ee.setData({
197 203 teamlist:teamlist
198 204 });
199 205 var nt =ut.gettimestamp();
... ... @@ -229,6 +235,7 @@ Page({
229 235  
230 236 //只装5个
231 237 var ordertx2=[],sf_num=0,ct_nun=teamlist.ct_num;
  238 +
232 239 if(max_num){
233 240 ct_nun=parseInt(max_num);
234 241 if (ordertx && ct_nun < ordertx.length) ct_nun = ordertx.length;
... ... @@ -241,10 +248,6 @@ Page({
241 248 ordertx2.push(ordertx[i]);
242 249 }
243 250  
244   - var sf_arr=[];
245   - for (var i=0;i<sf_num;i++){
246   - sf_arr.push(i);
247   - }
248 251  
249 252  
250 253 //获取活动从表信息team_id:305暂时
... ... @@ -258,6 +261,28 @@ Page({
258 261 }
259 262 })
260 263  
  264 + var head=[];
  265 + if(teamgroup.is_xuni_ct) {
  266 + head=teamgroup.xuni_head_id.split(",");
  267 + order.is_xuni_ct=1;
  268 +
  269 + this.setData({head:head,});
  270 + }
  271 +
  272 +
  273 +
  274 + var sf_arr=[];
  275 + for (var i=0;i<sf_num;i++){
  276 +
  277 + if(teamgroup.is_xuni_ct){
  278 + sf_arr.push(head[i]);
  279 + }else {
  280 +
  281 + sf_arr.push(i);
  282 + }
  283 + }
  284 +
  285 +
261 286  
262 287 var ct_price = 0,
263 288 num_0 = ordertx.length;
... ... @@ -284,8 +309,7 @@ Page({
284 309  
285 310 //--当是成团的时候的操作--
286 311 if(order.pt_status==2 || order.pt_status==4 || order.pt_status==5){
287   - //设置值
288   -
  312 + //-- 设置值 --
289 313 ee.setData({
290 314 ordertx2: ordertx2, ordertx: ordertx, teamlist: teamlist, teamgroup: teamgroup, min_price: min_price,
291 315 order: order, share_img: share_img,max_num:max_num,
... ... @@ -412,7 +436,7 @@ Page({
412 436  
413 437 //二微码
414 438 var path3 = os.url+ "/api/wx/open/app/user/getWeAppEwm/"+
415   - os.stoid+"?sceneValue="+scene+"&pageValue=pages/team/team_show/team_show";
  439 + os.stoid+"?sceneValue="+scene+"&pageValue=/packageA/pages/serviceCard_pd/team_show/team_show";
416 440  
417 441 console.log(path3,6000);
418 442  
... ... @@ -437,225 +461,228 @@ Page({
437 461 var share_title=th.data.teamlist.share_title;
438 462 if(!share_title)
439 463 share_title=th.data.teamlist.title;
440   - context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
441   -
442   - //-- 是自定义海报的情况下 --
443   - if(th.data.poster && parseInt(th.data.poster.style)==2){
444   - //在线上分享人的情况下
445   - if(parseInt(th.data.poster.show_headpic)){
446   - //获取坐标
447   - var x=parseFloat(th.data.poster.head_x)*2;
448   - var y=parseFloat(th.data.poster.head_y)*2;
449   - var x1=(x+90) *unit;
450   - var y1=(y+50) *unit;
451   - //--昵称---
452   - context.setFontSize(24 * unit)
453   - context.setFillStyle("black")
454   - context.fillText(app.globalData.userInfo.nickname, x1, y1);
455   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
456   - //强烈推荐 改许程
457   - var tj_path = "../../../../images/share/q_tj.png";
458   - context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit);
459   - context.setFontSize(16 * unit)
460   - context.setLineJoin('round'); //交点设置成圆角
461   - context.setFillStyle("white")
462   - context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit);
463   - }
464   -
465   - }else{
466   - //--昵称---
467   - context.setFontSize(24 * unit)
468   - context.setFillStyle("black")
469   - context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
470   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
471   - //强烈推荐
472   - var tj_path = "../../../../images/share/q_tj.png";
473   - context.drawImage(tj_path, 152 * unit + width, 54 * unit, 110 * unit, 30 * unit);
474   - context.setFontSize(18 * unit)
475   - context.setFillStyle("white")
476   - context.fillText('强烈推荐', 152 * unit + width + 20 * unit, 76 * unit);
477   - }
478   -
479 464  
480   - //---产品名称---
481   - context.setFontSize(21.3 * unit);
482   - context.setFillStyle("black");
  465 + var act_time='';
  466 + if (!th.data.share_b_img){ // 如果是普通商品,绘制新海报
  467 + th.drawPoster(context, unit, th.data.share_img_localpath, vpath, type);
  468 + } else {
483 469  
  470 + context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  471 + //-- 是自定义海报的情况下 --
  472 + if (th.data.poster && parseInt(th.data.poster.style) == 2) {
  473 + //在线上分享人的情况下
  474 + if (parseInt(th.data.poster.show_headpic)) {
  475 + //获取坐标
  476 + var x = parseFloat(th.data.poster.head_x) * 2;
  477 + var y = parseFloat(th.data.poster.head_y) * 2;
  478 + var x1 = (x + 90) * unit;
  479 + var y1 = (y + 50) * unit;
  480 + //--昵称---
  481 + context.setFontSize(24 * unit)
  482 + context.setFillStyle("black")
  483 + context.fillText(app.globalData.userInfo.nickname, x1, y1);
  484 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
  485 + //强烈推荐 改许程
  486 + var tj_path = "../../../../images/share/q_tj.png";
  487 + context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
  488 + context.setFontSize(16 * unit)
  489 + context.setLineJoin('round'); //交点设置成圆角
  490 + context.setFillStyle("white")
  491 + context.fillText('强烈推荐', x1 + width + 8 * unit, y1 - 1 * unit);
  492 + }
484 493  
  494 + } else {
  495 + //--昵称---
  496 + context.setFontSize(24 * unit)
  497 + context.setFillStyle("black")
  498 + context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
  499 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
  500 + //强烈推荐
  501 + var tj_path = "../../../../images/share/q_tj.png";
  502 + context.drawImage(tj_path, 152 * unit + width, 54 * unit, 110 * unit, 30 * unit);
  503 + context.setFontSize(18 * unit)
  504 + context.setFillStyle("white")
  505 + context.fillText('强烈推荐', 152 * unit + width + 20 * unit, 76 * unit);
  506 + }
485 507  
486 508  
487   - th.draw_Text(context,share_title,
488   - 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
489   - //------产品的价格-------
490   - context.setFontSize(24 * unit)
491   - context.setFillStyle("red")
  509 + //---产品名称---
  510 + context.setFontSize(21.3 * unit);
  511 + context.setFillStyle("black");
  512 +
  513 + th.draw_Text(context,share_title,
  514 + 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
  515 + //------产品的价格-------
  516 + context.setFontSize(24 * unit)
  517 + context.setFillStyle("red")
  518 +
  519 + var pri0 = th.data.teamlist.price;
  520 + pri0=parseFloat(pri0).toFixed(2);
  521 + var wd1=th.data.screenWidth-ut.measureText(pri0, 31 * unit)-25;
  522 + context.fillText("¥", wd1-15, 180 * unit);
  523 + context.setFontSize(31 * unit)
  524 + context.fillText(pri0, wd1, 180 * unit);
  525 +
  526 + //---市场价划掉---
  527 + context.setFillStyle("gray")
  528 + context.setFontSize(22 * unit)
  529 + pri0= "¥" + parseFloat(th.data.goods.market_price).toFixed(2);
  530 + var wd2=th.data.screenWidth-ut.measureText(pri0, 22 * unit)-25;
  531 + context.fillText(pri0, wd2, 210 * unit);
  532 +
  533 + context.setStrokeStyle('gray')
  534 + context.setLineWidth(1 * unit)
  535 + context.moveTo(wd2-5, 204 * unit)
  536 + context.lineTo(wd2+ut.measureText(pri0, 22 * unit)+5, 204 * unit)
  537 + context.stroke();
  538 + console.log(th.data.share_img_localpath);
  539 +
  540 +
  541 + //---中间大图---
  542 + context.drawImage(th.data.share_img_localpath, 68 * unit, 242 * unit, 410 * unit, 410 * unit);
  543 +
  544 + var g_ct=th.data.teamlist.ct_num-th.data.ordertx.length;
  545 + var wz= "";
  546 + if(g_ct>0) wz="还差"+g_ct+"人成团,";
  547 + else{
  548 + g_ct= th.data.max_num -th.data.ordertx.length;
  549 + if(g_ct>0){
  550 + wz="还差"+g_ct+"人享最低优惠,";
  551 + }else{
  552 + wz="已享受最优惠,";
  553 + }
  554 + }
492 555  
493   - var pri0 = th.data.teamlist.price;
494   - pri0=parseFloat(pri0).toFixed(2);
495   - var wd1=th.data.screenWidth-ut.measureText(pri0, 31 * unit)-25;
496   - context.fillText("¥", wd1-15, 180 * unit);
497   - context.setFontSize(31 * unit)
498   - context.fillText(pri0, wd1, 180 * unit);
  556 + //-------大图后面就不一样了-----------
  557 + switch (type) {
  558 + case 1://会员团和商家团的展示
  559 + //---画线---
  560 + context.setLineWidth(1 * unit)
  561 + context.moveTo(32 * unit, 670 * unit)
  562 + context.lineTo(520 * unit, 670 * unit)
  563 + context.stroke();
499 564  
500   - //---市场价划掉---
501   - context.setFillStyle("gray")
502   - context.setFontSize(22 * unit)
503   - pri0= "¥" + parseFloat(th.data.goods.market_price).toFixed(2);
504   - var wd2=th.data.screenWidth-ut.measureText(pri0, 22 * unit)-25;
505   - context.fillText(pri0, wd2, 210 * unit);
  565 + //---文字---
  566 + context.setFontSize(22 * unit)
  567 + context.setFillStyle("black")
  568 + context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
506 569  
507   - context.setStrokeStyle('gray')
508   - context.setLineWidth(1 * unit)
509   - context.moveTo(wd2-5, 204 * unit)
510   - context.lineTo(wd2+ut.measureText(pri0, 22 * unit)+5, 204 * unit)
511   - context.stroke();
512   - console.log(th.data.share_img_localpath);
  570 + //绘制成团图片
  571 + var ct_img ="../../../../images/share/ct_num.png";
  572 + context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
  573 + var ct_num = th.data.teamlist.ct_num;
  574 + context.setFontSize(14 * unit)
513 575  
  576 + context.setFillStyle("red")
  577 + if(ct_num<10){
  578 + context.fillText(ct_num+"人拼团", 92 * unit, 760 * unit);
  579 + }else{
  580 + context.fillText(ct_num+"人拼团", 86 * unit, 760 * unit);
  581 + }
  582 + context.setFontSize(22 * unit)
  583 + context.fillText("已拼"+th.data.teamlist.buy_num+"份", 166 * unit, 763 * unit);
  584 + context.setFillStyle("gray")
  585 + context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 826 * unit);
  586 + context.setFillStyle("black")
514 587  
515   - //---中间大图---
516   - context.drawImage(th.data.share_img_localpath, 68 * unit, 242 * unit, 410 * unit, 410 * unit);
  588 + context.setFontSize(22 * unit)
  589 + context.fillText("长按识别二维码,立即参团", 40 * unit, 856 * unit);
  590 + //---二维吗图---
  591 + //-- 自定义海报 --
  592 + if(th.data.poster){
  593 + var erm_x= parseFloat(th.data.poster.ewm_x)*2;
  594 + var erm_y= parseFloat(th.data.poster.ewm_y)*2;
  595 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  596 + }else{
  597 + //---二维吗图---
  598 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  599 + }
  600 + break
  601 + case 2://阶梯团的展示
  602 + //---画线---
  603 + context.setLineWidth(1 * unit)
  604 + context.moveTo(32 * unit, 670 * unit)
  605 + context.lineTo(520 * unit, 670 * unit)
  606 + context.stroke();
  607 + //---文字---
  608 + context.setFontSize(22 * unit)
  609 + context.setFillStyle("black")
  610 + context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
  611 + //---绘制中间阶梯的价格---
  612 + var list= JSON.parse(th.data.teamlist.ct_rylist);
  613 + for(var i=0; i<list.length;i++){
  614 + var item=list[i];
  615 + var wi=i*90*unit;
  616 + context.setFontSize(16 * unit)
  617 + context.setFillStyle("red")
  618 + context.fillText("¥", 40 * unit+wi, 756 * unit);
  619 + context.setFontSize(22 * unit)
  620 + var pri=parseFloat(item.price).toFixed(2);
  621 + context.fillText(pri, 56 * unit+wi, 756 * unit);
  622 + context.setFillStyle("gray")
  623 + context.fillText("满"+item.rynum+"人", 40 * unit+wi, 786 * unit);
  624 + }
517 625  
518   - var g_ct=th.data.teamlist.ct_num-th.data.ordertx.length;
519   - var wz= "";
520   - if(g_ct>0) wz="还差"+g_ct+"人成团,";
521   - else{
522   - g_ct= th.data.max_num -th.data.ordertx.length;
523   - if(g_ct>0){
524   - wz="还差"+g_ct+"人享最低优惠,";
525   - }else{
526   - wz="已享受最优惠,";
  626 + //----------------下面部分----------------
  627 + context.setFillStyle("gray")
  628 + context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 830 * unit);
  629 + context.setFillStyle("black")
  630 + context.setFontSize(22 * unit)
  631 +
  632 + context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
  633 + //---二维吗图---
  634 + //-- 自定义海报 --
  635 + if(th.data.poster){
  636 + var erm_x= parseFloat(th.data.poster.ewm_x)*2;
  637 + var erm_y= parseFloat(th.data.poster.ewm_y)*2;
  638 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  639 + }else{
  640 + //---二维吗图---
  641 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  642 + }
  643 + break
527 644 }
528   - }
529 645  
530   - //-------大图后面就不一样了-----------
531   - switch (type) {
532   - case 1://会员团和商家团的展示
533   - //---画线---
534   - context.setLineWidth(1 * unit)
535   - context.moveTo(32 * unit, 670 * unit)
536   - context.lineTo(520 * unit, 670 * unit)
537   - context.stroke();
538   -
539   - //---文字---
540   - context.setFontSize(22 * unit)
541   - context.setFillStyle("black")
542   - context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
543   -
544   - //绘制成团图片
545   - var ct_img ="../../../../images/share/ct_num.png";
546   - context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
547   - var ct_num = th.data.teamlist.ct_num;
548   - context.setFontSize(14 * unit)
549   -
550   - context.setFillStyle("red")
551   - if(ct_num<10){
552   - context.fillText(ct_num+"人拼团", 92 * unit, 760 * unit);
553   - }else{
554   - context.fillText(ct_num+"人拼团", 86 * unit, 760 * unit);
555   - }
556   - context.setFontSize(22 * unit)
557   - context.fillText("已拼"+th.data.teamlist.buy_num+"份", 166 * unit, 763 * unit);
558   - context.setFillStyle("gray")
559   - context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 826 * unit);
560   - context.setFillStyle("black")
561   -
562   - context.setFontSize(22 * unit)
563   - context.fillText("长按识别二维码,立即参团", 40 * unit, 856 * unit);
564   - //---二维吗图---
565   - //-- 自定义海报 --
566   - if(th.data.poster){
567   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
568   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
569   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
570   - }else{
571   - //---二维吗图---
572   - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
573   - }
574   - break
575   - case 2://阶梯团的展示
576   - //---画线---
577   - context.setLineWidth(1 * unit)
578   - context.moveTo(32 * unit, 670 * unit)
579   - context.lineTo(520 * unit, 670 * unit)
580   - context.stroke();
581   - //---文字---
582   - context.setFontSize(22 * unit)
583   - context.setFillStyle("black")
584   - context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
585   - //---绘制中间阶梯的价格---
586   - var list= JSON.parse(th.data.teamlist.ct_rylist);
587   - for(var i=0; i<list.length;i++){
588   - var item=list[i];
589   - var wi=i*90*unit;
590   - context.setFontSize(16 * unit)
591   - context.setFillStyle("red")
592   - context.fillText("¥", 40 * unit+wi, 756 * unit);
593   - context.setFontSize(22 * unit)
594   - var pri=parseFloat(item.price).toFixed(2);
595   - context.fillText(pri, 56 * unit+wi, 756 * unit);
596   - context.setFillStyle("gray")
597   - context.fillText("满"+item.rynum+"人", 40 * unit+wi, 786 * unit);
  646 + //--- 如果是自定义海报的时候 ---
  647 + if(th.data.poster && parseInt(th.data.poster.style)==2){
  648 +
  649 + //如果显示会员信息的话
  650 + if(parseInt(th.data.poster.show_headpic)){
  651 + //获取坐标
  652 + var x= parseFloat(th.data.poster.head_x)*2;
  653 + var y=parseFloat(th.data.poster.head_y)*2;
  654 + //---绘制圆形要放在最后----
  655 + context.save();
  656 + context.beginPath();
  657 + var h_x = x* unit;
  658 + var h_y = y * unit;
  659 + var h_r = 40 * unit;
  660 + var cx = h_x + h_r;
  661 + var cy = h_y + h_r;
  662 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  663 + context.closePath();
  664 + context.fill();
  665 + context.clip();
  666 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  667 + context.restore();
598 668 }
599 669  
600   - //----------------下面部分----------------
601   - context.setFillStyle("gray")
602   - context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 830 * unit);
603   - context.setFillStyle("black")
604   - context.setFontSize(22 * unit)
605   -
606   - context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
607   - //---二维吗图---
608   - //-- 自定义海报 --
609   - if(th.data.poster){
610   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
611   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
612   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
613   - }else{
614   - //---二维吗图---
615   - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
616   - }
617   - break
618   - }
619   -
620   - //--- 如果是自定义海报的时候 ---
621   - if(th.data.poster && parseInt(th.data.poster.style)==2){
622   -
623   - //如果显示会员信息的话
624   - if(parseInt(th.data.poster.show_headpic)){
625   - //获取坐标
626   - var x= parseFloat(th.data.poster.head_x)*2;
627   - var y=parseFloat(th.data.poster.head_y)*2;
628   - //---绘制圆形要放在最后----
629   - context.save();
630   - context.beginPath();
631   - var h_x = x* unit;
632   - var h_y = y * unit;
633   - var h_r = 40 * unit;
634   - var cx = h_x + h_r;
635   - var cy = h_y + h_r;
636   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
637   - context.closePath();
638   - context.fill();
639   - context.clip();
640   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
641   - context.restore();
642   - }
643   -
644   - }else{
645   - //---绘制圆形要放在最后----
646   - context.save();
647   - context.beginPath();
648   - var h_x = 60 * unit;
649   - var h_y = 24 * unit;
650   - var h_r = 40 * unit;
651   - var cx = h_x + h_r;
652   - var cy = h_y + h_r;
653   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
654   - context.closePath();
655   - context.fill();
656   - context.clip();
657   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
658   - context.restore();
  670 + }else{
  671 + //---绘制圆形要放在最后----
  672 + context.save();
  673 + context.beginPath();
  674 + var h_x = 60 * unit;
  675 + var h_y = 24 * unit;
  676 + var h_r = 40 * unit;
  677 + var cx = h_x + h_r;
  678 + var cy = h_y + h_r;
  679 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  680 + context.closePath();
  681 + context.fill();
  682 + context.clip();
  683 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  684 + context.restore();
  685 + }
659 686 }
660 687  
661 688 //把画板内容绘制成图片,并回调 画板图片路径
... ... @@ -804,8 +831,14 @@ Page({
804 831 tt();
805 832 },
806 833 fail: function (res) {
807   - ee.data.share_img_localpath= "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
808   - tt();
  834 + //获取默认空白图
  835 + wx.getImageInfo({
  836 + src:os.imghost+'/miniapp/images/default_g_img.gif',
  837 + success: function(res) {
  838 + ee.data.share_img_localpath = res.path; //分享的图片不能用网络的
  839 + tt();
  840 + }
  841 + })
809 842 }
810 843 });
811 844 },
... ... @@ -829,7 +862,7 @@ Page({
829 862 var th=this;
830 863 var scene=this.data.teamgroup.id;
831 864 var goods_id=this.data.teamlist.goods_id;
832   - var url="/pages/team/team_show/team_show?tg_id="+scene+"&goods_id="+goods_id;
  865 + var url="/packageA/pages/serviceCard_pd/team_show/team_show?tg_id="+scene+"&goods_id="+goods_id;
833 866 //--分享图片--
834 867 var img=th.data.iurl+th.data.teamlist.share_imgurl;
835 868 //--把会员分享出去--
... ... @@ -985,7 +1018,123 @@ Page({
985 1018 go_to:function (e) {
986 1019 var url=e.currentTarget.dataset.url;
987 1020 getApp().goto(url);
988   - }
  1021 + },
  1022 +
  1023 + //-- 先版绘制 --
  1024 + drawPoster(context, unit, img, vpath, type) {
  1025 +
  1026 + var self=this;
  1027 +
  1028 + // 1.灰色背景
  1029 + context.setFillStyle('#f2f1f6');
  1030 + context.rect(0, 0, 554 * unit, 899 * unit);
  1031 + context.fill();
  1032 +
  1033 + // 2.商城名称
  1034 + let shopName = this.data.sto_sele_name_1;
  1035 + context.setTextAlign('center');
  1036 + context.setFontSize(26 * unit);
  1037 + context.setFillStyle('black');
  1038 + context.fillText(shopName, 277 * unit, 60 * unit);
  1039 +
  1040 + // 3.推荐来源
  1041 + let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
  1042 + context.setTextAlign('center');
  1043 + context.setFontSize(22 * unit);
  1044 + context.setFillStyle('#96959a');
  1045 + context.fillText(fromText, 277 * unit, 105 * unit);
  1046 +
  1047 + // 4.海报背景
  1048 + context.setFillStyle('white');
  1049 + context.fillRect(37 * unit, 157 * unit, 480 * unit, 673 * unit);
  1050 +
  1051 + // 5.商品图片
  1052 + // 图片的x坐标
  1053 + let bg_x = 37 * unit
  1054 + // 图片的y坐标
  1055 + let bg_y = 157 * unit
  1056 + // 图片宽度
  1057 + let bg_w = 480 * unit
  1058 + // 图片高度
  1059 + let bg_h = 474 * unit
  1060 + // 图片圆角
  1061 + let bg_r = 4
  1062 + // 绘制海报背景图片圆角
  1063 + context.save()
  1064 + context.beginPath()
  1065 + context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI * 1.5)
  1066 + context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2)
  1067 + context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5)
  1068 + context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI)
  1069 + context.clip()
  1070 + context.drawImage(img, bg_x, bg_y, bg_w, bg_h);
  1071 + context.restore();
  1072 +
  1073 + // 6.强烈推荐
  1074 + let src = '';
  1075 + context.beginPath();
  1076 +
  1077 +
  1078 + if (type == 1) { // 商家和会员团
  1079 + src = '../../../../images/share/ct_num.png';
  1080 + context.drawImage(src, 54 * unit, 648 * unit, 120 * unit, 30 * unit);
  1081 + context.setTextAlign('left');
  1082 +
  1083 + let ct_num = self.data.prom_act.ct_num;
  1084 + context.setFontSize(16 * unit)
  1085 + context.font = 'normal';
  1086 + context.setFillStyle("red")
  1087 + if (ct_num < 10) {
  1088 + context.fillText(ct_num + "人拼团", 100 * unit, 670 * unit);
  1089 + } else {
  1090 + context.fillText(ct_num + "人拼团", 96 * unit, 670 * unit);
  1091 + }
  1092 + context.setFontSize(22 * unit)
  1093 + context.fillText("已拼" + self.data.prom_act.buy_num + "份", 186 * unit, 672 * unit);
  1094 + }
  1095 +
  1096 + if (type == 2) { // 阶梯团
  1097 + let list = self.data.prom_act.ct_rylist;
  1098 + for (let i = 0; i < list.length; i++) {
  1099 + let item = list[i];
  1100 + let wi = i * 90 * unit;
  1101 + context.font = 'normal';
  1102 + context.setTextAlign('left');
  1103 + context.setFontSize(16 * unit)
  1104 + context.setFillStyle("red")
  1105 + context.fillText("¥", 50 * unit + wi, 680 * unit);
  1106 + context.setFontSize(22 * unit)
  1107 + let pri = parseFloat(item.price).toFixed(2);
  1108 + context.fillText(pri, 66 * unit + wi, 680 * unit);
  1109 +
  1110 +
  1111 + context.setFillStyle("gray")
  1112 + context.fillText("满" + item.rynum + "人", 50 * unit + wi, 716 * unit);
  1113 + }
  1114 +
  1115 +
  1116 + var wp= 52 * unit;
  1117 + var hp=755 * unit
  1118 + self.draw_pos_price(context,wp,hp,self.data.data.market_price,unit);
  1119 + }
  1120 +
  1121 +
  1122 + // 8.商品标题
  1123 + context.setFontSize(20 * unit);
  1124 + context.setFillStyle('#898989');
  1125 + getApp().draw_Text(context, this.data.goods.service_name, 54 * unit, 800 * unit, 240 * unit, 280 * unit, unit, 1);
  1126 + // 9.小程序码
  1127 + context.drawImage(vpath, 375 * unit, 660 * unit, 120 * unit, 120 * unit);
  1128 + context.setFontSize(16 * unit);
  1129 + context.setFillStyle('#777');
  1130 + context.fillText('长按识别二维码', 378 * unit, 810 * unit);
  1131 +
  1132 + // 10.竖线
  1133 + context.beginPath();
  1134 + context.setFillStyle('#eee');
  1135 + context.rect(354 * unit, 670 * unit, 1 * unit, 130 * unit);
  1136 + context.fill();
  1137 + },
989 1138  
990 1139 })
991 1140  
... ...
packageA/pages/serviceCard_pd/team_success/team_success.wxml
... ... @@ -95,8 +95,10 @@
95 95 <image src='{{item.head_pic}}'></image>
96 96 <span wx:if="{{item.is_pt_tz==1}}">团长</span>
97 97 </view>
98   - <view class='d' wx:for="{{sf_arr}}" wx:if="{{p_status!=2}}">
99   - <image src='{{iurl}}/miniapp/images/shafa.png'></image>
  98 +
  99 + <view class='d' wx:for="{{sf_arr}}">
  100 + <image wx:if="{{teamgroup.is_xuni_ct}}" src='{{iurl}}/miniapp/images/anonymous/anonymous{{item}}.png'></image>
  101 + <image wx:else src='{{iurl}}/miniapp/images/shafa.png'></image>
100 102 </view>
101 103  
102 104 <view class='xc-ellipsis-img flex-vertical' wx:if="{{ordertx.length>5}}">
... ... @@ -164,8 +166,8 @@
164 166 <!----/ // // // //按钮---->
165 167  
166 168 <view wx:if="{{teamlist.kttype==3}}" class='bodybutton'>
167   - <!-- 阶梯团 -->
168   - <button wx:if="{{p_status==1}}" bindtap="clickShare" style='background-color:#fab55a; color:#fff'>
  169 + <!-- 阶梯团wx:if="{{isLogin}}" -->
  170 + <button wx:if="{{p_status==1 && isLogin}}" bindtap="clickShare" style='background-color:#fab55a; color:#fff'>
169 171 <!-- <button wx:if="{{p_status==1}}" bindtap="clickShare" bindtap='cmeng' style='background-color:#fab55a; color:#fff'> -->
170 172 邀请好友参团
171 173 </button>
... ...
packageC/pages/luckyGo/luckyGo_goodsInfo/buy_pt.wxml
... ... @@ -50,8 +50,8 @@
50 50 <view style="margin-top: 20rpx">
51 51 <view class="flex-space-between address ai_end xc-width ">
52 52  
53   - <view class="flex ai_end" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
54   - <text class="fs30 xc-black3 shop_name">{{def_pick_store.pickup_name}}</text>
  53 + <view class="flex" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
  54 + <text class="fs30 xc-black3 shop_name {{def_pick_store.distance!=null?'max':''}} ">{{def_pick_store.pickup_name}}</text>
55 55  
56 56  
57 57 <view class="distance fs24 xc-ash"wx:if="{{def_pick_store.distance!=null}}">
... ...
packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.wxml
... ... @@ -1368,7 +1368,7 @@
1368 1368 </block>
1369 1369 <view class="address-frame xc-ash">
1370 1370 <view class="flex-vertical-between butttem5">
1371   - <view class="flex xc-ash">
  1371 + <view class="flex xc-ash" style="flex-shrink:0;max-width: 62%;">
1372 1372 <view class="fs30 xc-black3 address_name">{{item.pickup_name}}</view>
1373 1373 </view>
1374 1374 <view>
... ...
packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.wxss
... ... @@ -3120,6 +3120,7 @@ button.custom-service::after{
3120 3120 overflow-y: auto;
3121 3121 }
3122 3122  
  3123 +
3123 3124 .searchbar {
3124 3125 height: 95rpx;
3125 3126 border-bottom: 2rpx solid rgb(238, 238, 238);
... ... @@ -3143,3 +3144,7 @@ button.custom-service::after{
3143 3144 border: 2rpx solid rgb(238, 238, 238);
3144 3145 padding-left: 30rpx;
3145 3146 }
  3147 +.shop_name.max{
  3148 + max-width:370rpx; flex-shrink: 0;
  3149 +}
  3150 +
... ...
pages/cart/cart/cart.js
... ... @@ -937,7 +937,7 @@ Page({
937 937 continue;
938 938 }
939 939  
940   - if (item.prom_type == 0) {
  940 + if (item.prom_type == 0 && !item.is_integral_normal && !item.is_pd_normal ) {
941 941 var prom = null;
942 942 var now = ut.gettimestamp();
943 943 await getApp().request.promiseGet(`/api/weshop/activitylist/listGoodActInfo2`, {
... ...
pages/cart/cart_wk/cart_wk.js
... ... @@ -311,6 +311,7 @@ Page({
311 311 jsarr.forEach(function (value, index) {
312 312 if (count >= value['rynum']) price = value['price'];
313 313 })
  314 +
314 315 var tail_money = (price * order_goods.goods_num - order['order_amount'] - order['user_money']).toFixed(2);
315 316  
316 317 tail_money = parseFloat(tail_money);
... ...
pages/goods/goodsInfo/buy_integral.wxml
... ... @@ -28,6 +28,7 @@
28 28  
29 29 <view class="flex" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
30 30 <text class="fs30 xc-black3 shop_name bold {{def_pick_store.distance!=null?'max':''}} ">{{def_pick_store.pickup_name}}</text>
  31 +
31 32 <view class="distance fs24 xc-ash" wx:if="{{def_pick_store.distance!=null}}">
32 33 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
33 34  
... ...
pages/goods/goodsInfo/buy_pt.wxml
... ... @@ -51,8 +51,6 @@
51 51  
52 52 <view class="flex" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
53 53 <text class="fs30 xc-black3 shop_name {{def_pick_store.distance!=null?'max':''}} ">{{def_pick_store.pickup_name}}</text>
54   -
55   -
56 54 <view class="distance fs24 xc-ash" wx:if="{{def_pick_store.distance!=null}}">
57 55 距离:{{def_pick_store.distance>1000?filters.toFix(def_pick_store.distance/1000,2)+"km":filters.toFix(def_pick_store.distance,0)+"m"}}
58 56  
... ...
pages/goods/goodsInfo/goodsInfo.wxml
... ... @@ -130,7 +130,6 @@
130 130 <view class="flex fs35 xc-qtsign">¥</view>
131 131 <view class="fs50 val">{{prom_price}}</view>
132 132 </view>
133   -
134 133 <view wx:if="{{is_retail_price}}" class="word-line fs20 xc-qtunit-price no_line_c" style="color:#fff !important ">零售价:¥{{filters.toFix(data.market_price,2)}}</view>
135 134 <view wx:else class="word-line no_line_x fs20 xc-qtunit-price" style="color:#fff !important ">¥{{filters.toFix(data.shop_price,2)}}</view>
136 135 </view>
... ...
pages/goods/goodsInfo/goodsInfo.wxss
... ... @@ -3135,8 +3135,8 @@ xc-ensure-div {
3135 3135 }
3136 3136  
3137 3137 .xc-qt-price .xc-qtunit-price {
3138   - margin-left: 6rpx;
3139   - margin-top: -4rpx;
  3138 + /*margin-left: 6rpx;*/
  3139 + /*margin-top: -4rpx;*/
3140 3140 }
3141 3141  
3142 3142 .xc-nanber {
... ...
pages/index/index/index.js
... ... @@ -316,7 +316,7 @@ Page({
316 316 }
317 317  
318 318 //--正再拼团中的处理--
319   - var url = "/api/weshop/order/pageTuan?pt_status=2&is_pt=1&store_id=" + os.stoid + "&pageSize=6&page=1"
  319 + var url = "/api/weshop/order/pageTuanNew?pt_status=2&is_pt=1&store_id=" + os.stoid + "&pageSize=6&page=1"
320 320 await getApp().request.promiseGet(url, {}).then(res => {
321 321 if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
322 322 th.data.pt_timer_arr = res.data.data.pageData;
... ...
pages/team/team_ping/team_ping.js
... ... @@ -92,8 +92,7 @@ Page({
92 92  
93 93  
94 94 //获取订单表的信息根据活动user_id,pt_prom_id>0 AND pay_time>0
95   -
96   - await getApp().request.promiseGet("/api/weshop/order/pageTuan?"+where, {
  95 + await getApp().request.promiseGet("/api/weshop/order/pageTuanNew?"+where, {
97 96 data: { is_pt:1,store_id: os.stoid, user_id: user_id, pageSize: 6, page: this.data.currentPage,}
98 97 }).then(res => {
99 98 order = res.data.data.pageData;
... ... @@ -102,82 +101,130 @@ Page({
102 101  
103 102  
104 103 wx.showLoading({ title: "加载中"});
105   - for (i = 0; i < order.length; i++) {
106   - //获取订单从表信息
107   - await getApp().request.promiseGet("/api/weshop/ordergoods/pageGoods", {
108   - data: { store_id: os.stoid, order_id: order[i].order_id }
109   - }).then(res => {
110   - order_goods = res.data.data.pageData;
111   - order[i].order_goods = order_goods;
112   - order[i].gimage = ee.data.imageurl + order_goods[0]?.original_img;
113   - })
  104 + if(order && order.length){
  105 + for (i = 0; i < order.length; i++) {
114 106  
115   -
116   - //获取订单表信息根据上面查询的订单号order[i].pt_listno
117   - await getApp().request.promiseGet("/api/weshop/order/pagePtList", {
118   - data: { store_id: os.stoid, pt_listno: order[i].pt_listno,pageSize:60,page:1}
119   - }).then(res => {
120   - //console.log("ordertx");
121   - ordertx = res.data.data.pageData;
122   - //console.log(ordertx);
123   - order[i].tx=ordertx;
124   - })
  107 + //获取teamgroup中的值
  108 + await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
  109 + data: { store_id: os.stoid, listno: order[i].pt_listno,pageSize:1,page:1}
  110 + }).then(res => {
  111 + team_g = res.data.data.pageData[0]
  112 + })
125 113  
126   - //获取teamgroup中的值
127   - await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
128   - data: { store_id: os.stoid, listno: order[i].pt_listno,pageSize:1,page:1}
129   - }).then(res => {
130   - team_g = res.data.data.pageData[0]
131   -
132   - })
133 114  
134   - //获取预存使用金额
135   - await getApp().request.promiseGet("/api/weshop/orderMore/get/" + os.stoid + "/" + order[i].order_sn, {
136   - }).then(res => {
137   - if (res.data.code == 0 && res.data.data) {
138   - // data[ind].use_commission = res.data.data.use_commission;
139   - order[i].pre_cut = res.data.data.pre_cut; //是否使用预存,如果是使用预存不能单品退,只能整单退
140   - order[i].pre_json = res.data.data.pre_json; //是否使用预存,如果是使用预存不能单品退,只能整单退
  115 + switch (team_g.goods_type){
  116 + case 0:
  117 + //获取订单从表信息
  118 + await getApp().request.promiseGet("/api/weshop/ordergoods/pageGoods", {
  119 + data: { store_id: os.stoid, order_id: order[i].order_id }
  120 + }).then(res => {
  121 + order_goods = res.data.data.pageData;
  122 + order[i].order_goods = order_goods;
  123 + order[i].gimage = ee.data.imageurl + order_goods[0]?.original_img;
  124 + })
  125 +
  126 + //获取订单表信息根据上面查询的订单号order[i].pt_listno
  127 + await getApp().request.promiseGet("/api/weshop/order/pagePtList", {
  128 + data: { store_id: os.stoid, pt_listno: order[i].pt_listno,pageSize:60,page:1}
  129 + }).then(res => {
  130 + //console.log("ordertx");
  131 + ordertx = res.data.data.pageData;
  132 + //console.log(ordertx);
  133 + order[i].tx=ordertx;
  134 + })
  135 + //获取预存使用金额
  136 + await getApp().request.promiseGet("/api/weshop/orderMore/get/" + os.stoid + "/" + order[i].order_sn, {
  137 + }).then(res => {
  138 + if (res.data.code == 0 && res.data.data) {
  139 + // data[ind].use_commission = res.data.data.use_commission;
  140 + order[i].pre_cut = res.data.data.pre_cut; //是否使用预存,如果是使用预存不能单品退,只能整单退
  141 + order[i].pre_json = res.data.data.pre_json; //是否使用预存,如果是使用预存不能单品退,只能整单退
  142 + }
  143 + })
  144 + break;
  145 +
  146 + case 1:
  147 +
  148 + order[i].goods_type=1;
  149 + order[i].pre_cut=0;
  150 +
  151 + //获取order信息根据订单编号order_sn
  152 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
  153 + data: { store_id: os.stoid, order_id: order[i].order_id,}
  154 + }).then(res => {
  155 + order_goods = res.data.data.pageData;
  156 + order_goods[0].goods_num=order_goods[0].qty;
  157 + order_goods[0].goods_price=order_goods[0].price;
  158 + order[i].order_goods = order_goods;
  159 + })
  160 +
  161 +
  162 + //pt_tail_money 在从表
  163 + order[i].pt_tail_money=order_goods[0].pt_tail_money;
  164 +
  165 + //-- 获取商品信息 --
  166 + await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + os.stoid + "/" + order_goods[0].card_id, {
  167 + }).then(res => {
  168 + //-- 商品地址 --
  169 + order[i].gimage = ee.data.imageurl + res.data.data.imgUrl
  170 + order[i].order_goods[0].goods_name= res.data.data.serviceName;
  171 + })
  172 +
  173 + //-- 多少人参团头像 --
  174 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/pagePtList", {
  175 + data: {
  176 + store_id: o.stoid,
  177 + pt_listno: team_g.listno,
  178 + }
  179 + }).then(res => {
  180 + ordertx = res.data.data.pageData;
  181 + order[i].tx=ordertx;
  182 + })
  183 +
  184 + break;
141 185 }
142   - })
143   -
144 186  
145   - if (order[i].is_zsorder== 4) {
146   - var num = 0;
147   - var jt_data = JSON.parse(order[i].ct_rylist);
148   - for (var m in jt_data) {
149   - if (jt_data[m].rynum > num) num = jt_data[m].rynum;
  187 +
  188 + if (order[i].is_zsorder== 4) {
  189 + var num = 0;
  190 + var jt_data = JSON.parse(order[i].ct_rylist);
  191 + for (var m in jt_data) {
  192 + if (jt_data[m].rynum > num) num = jt_data[m].rynum;
  193 + }
  194 + order[i].max_ct_num = num;
150 195 }
151   - order[i].max_ct_num = num;
152   - }
153 196  
154   - var head=[];
155   - if(team_g.is_xuni_ct) {
  197 + var head=[];
  198 + if(team_g.is_xuni_ct) {
156 199 head=team_g.xuni_head_id.split(",");
157 200 order[i].is_xuni_ct=1;
158   - }
  201 + }
  202 +
  203 + var sf_num = order[i].ct_num;
  204 + if (order[i].ct_num>=3){ sf_num=3;}
  205 + sf_num=sf_num-ordertx.length;
  206 + if(sf_num>0) {
  207 + var arr = [];
  208 + for(var j=0;j<sf_num;j++){
  209 + if(team_g.is_xuni_ct){
  210 + arr.push(head[j]);
  211 + }else{
  212 + arr.push(j);
  213 + }
159 214  
160   - var sf_num = order[i].ct_num;
161   - if (order[i].ct_num>=3){ sf_num=3;}
162   - sf_num=sf_num-ordertx.length;
163   - if(sf_num>0) {
164   - var arr = [];
165   - for(var j=0;j<sf_num;j++){
166   - if(team_g.is_xuni_ct){
167   - arr.push(head[j]);
168   - }else{
169   - arr.push(j);
170 215 }
171   -
  216 + order[i].sf_num=arr;
172 217 }
173   - order[i].sf_num=arr;
174   - }
175 218  
  219 + }
  220 + //设置值
  221 + for (var ii = 0; ii < order.length;ii++){
  222 + this.data.requestData.push(order[ii]);
  223 + }
176 224 }
177   - //设置值
178   - for (var ii = 0; ii < order.length;ii++){
179   - this.data.requestData.push(order[ii]);
180   - }
  225 +
  226 +
  227 +
181 228  
182 229 wx.hideLoading();
183 230 ee.setData({ order: this.data.requestData, ordertx: ordertx, isgo:1});
... ... @@ -195,9 +242,13 @@ Page({
195 242 //----跳转到拼单success展示-----
196 243 go_team_success:function(e) {
197 244 var order_sn=e.currentTarget.dataset.ordsn;
198   - wx.navigateTo({
199   - url: "/pages/team/team_success/team_success?ordersn=" + order_sn,
200   - });
  245 + var goods_type=e.currentTarget.dataset.goods_type;
  246 + var url="/pages/team/team_success/team_success?ordersn=" + order_sn;
  247 + if(goods_type==1){
  248 + url="/packageA/pages/serviceCard_pd/team_success/team_success?ordersn=" + order_sn;
  249 + }
  250 + getApp().goto(url);
  251 +
201 252 },
202 253  
203 254 onHide:function(){
... ...
pages/team/team_ping/team_ping.wxml
... ... @@ -11,7 +11,7 @@
11 11 <!--单号显示-->
12 12 <view class='wu' wx:if="{{order.length>0}}">
13 13 <view class='pd' wx:for="{{order}}" wx:key>
14   - <view class='pd-list' bindtap="go_team_success" data-ordsn="{{item.order_sn}}">
  14 + <view class='pd-list' bindtap="go_team_success" data-ordsn="{{item.order_sn}}" data-goods_type="{{item.goods_type}}">
15 15 <!--top-->
16 16 <view class='pd-list-top'>
17 17 <!-- <image src='{{iurl}}/miniapp/images/dianpu.png'></image> -->
... ... @@ -33,7 +33,11 @@
33 33 <view class="flex">
34 34 <text class='fs24 xc-wc {{item.pt_status==1?"xc-rmbs":"xc-rmb"}}'>¥</text>
35 35 <view class='pd-jg xc-wc'>{{item.order_goods[0].goods_price}}</view>
36   - <view class="flex no_line_c word-line xc-ash {{item.pt_status==1?'xc-rmbs':'xc-rmb'}}"><text class="fs24 xc-black"></text><text class="fs24 xc-wc">¥</text><text class="fs26 xc-wc">{{item.order_goods[0].shop_price || item.order_goods[0].market_price}}</text> </view>
  36 + <view hidden="{{item.goods_type}}" class="flex no_line_c word-line xc-ash {{item.pt_status==1?'xc-rmbs':'xc-rmb'}}">
  37 + <text class="fs24 xc-black"></text>
  38 + <text class="fs24 xc-wc">¥</text>
  39 + <text class="fs26 xc-wc">{{item.order_goods[0].shop_price || item.order_goods[0].market_price}}</text>
  40 + </view>
37 41 </view>
38 42  
39 43 <view class="xc-img-frame" wx:if="{{item.pt_status==2 || item.pt_status==4 || item.pt_status==5 || item.pt_status==6}}">
... ...
pages/team/team_show/team_show.js
... ... @@ -982,6 +982,14 @@ Page({
982 982 url+="?first_leader="+getApp().globalData.user_id;
983 983 }
984 984  
  985 + if(url.indexOf('goods_id')==-1){
  986 + url+="&goods_id="+this.data.goods.goods_id;
  987 + }
  988 + if(url.indexOf('tg_id')==-1){
  989 + url+="&tg_id="+this.data.teamgroup.id;
  990 + }
  991 +
  992 +
985 993 return {
986 994 path:url,
987 995 title: "商品分类",
... ...
pages/team/team_success/team_success.js
... ... @@ -84,7 +84,11 @@ Page({
84 84 th.setData({poster:json_data})
85 85 }
86 86 }
87   - })
  87 + })
  88 +
  89 + getApp().getConfig(function (e) {
  90 + th.setData({sto_sele_name_1: e.store_name})
  91 + })
88 92 },
89 93 onShow:function () {
90 94 getApp().check_can_share(this);
... ... @@ -462,223 +466,227 @@ Page({
462 466 var share_title=th.data.teamlist.share_title;
463 467 if(!share_title)
464 468 share_title=th.data.teamlist.title;
465   - context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
466   -
467   - //-- 是自定义海报的情况下 --
468   - if(th.data.poster && parseInt(th.data.poster.style)==2){
469   - //在线上分享人的情况下
470   - if(parseInt(th.data.poster.show_headpic)){
471   - //获取坐标
472   - var x=parseFloat(th.data.poster.head_x)*2;
473   - var y=parseFloat(th.data.poster.head_y)*2;
474   - var x1=(x+90) *unit;
475   - var y1=(y+50) *unit;
476   - //--昵称---
477   - context.setFontSize(24 * unit)
478   - context.setFillStyle("black")
479   - context.fillText(app.globalData.userInfo.nickname, x1, y1);
480   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
481   - //强烈推荐 改许程
482   - var tj_path = "../../../images/share/q_tj.png";
483   - context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit);
484   - context.setFontSize(16 * unit)
485   - context.setLineJoin('round'); //交点设置成圆角
486   - context.setFillStyle("white")
487   - context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit);
488   - }
489   -
490   - }else{
491   - //--昵称---
492   - context.setFontSize(24 * unit)
493   - context.setFillStyle("black")
494   - context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
495   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
496   - //强烈推荐
497   - var tj_path = "../../../images/share/q_tj.png";
498   - context.drawImage(tj_path, 152 * unit + width, 54 * unit, 110 * unit, 30 * unit);
499   - context.setFontSize(18 * unit)
500   - context.setFillStyle("white")
501   - context.fillText('强烈推荐', 152 * unit + width + 20 * unit, 76 * unit);
502   - }
503   -
504   -
505   - //---产品名称---
506   - context.setFontSize(21.3 * unit);
507   - context.setFillStyle("black");
508   -
509   -
510   - getApp().draw_Text(context,share_title,
511   - 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
512   - //------产品的价格-------
513   - context.setFontSize(24 * unit)
514   - context.setFillStyle("red")
515   -
516   - var pri0 = th.data.teamlist.price;
517   - pri0=parseFloat(pri0).toFixed(2);
518   - var wd1=th.data.screenWidth-ut.measureText(pri0, 31 * unit)-25;
519   - context.fillText("¥", wd1-15, 180 * unit);
520   - context.setFontSize(31 * unit)
521   - context.fillText(pri0, wd1, 180 * unit);
522   -
523   - //---市场价划掉---
524   - context.setFillStyle("gray")
525   - context.setFontSize(22 * unit)
526   - pri0= "¥" + parseFloat(th.data.goods.market_price).toFixed(2);
527   - var wd2=th.data.screenWidth-ut.measureText(pri0, 22 * unit)-25;
528   - context.fillText(pri0, wd2, 210 * unit);
529   -
530   - context.setStrokeStyle('gray')
531   - context.setLineWidth(1 * unit)
532   - context.moveTo(wd2-5, 204 * unit)
533   - context.lineTo(wd2+ut.measureText(pri0, 22 * unit)+5, 204 * unit)
534   - context.stroke();
535   - console.log(th.data.share_img_localpath);
536   -
537   -
538   - //---中间大图---
539   - context.drawImage(th.data.share_img_localpath, 68 * unit, 242 * unit, 410 * unit, 410 * unit);
540   -
541   - var g_ct=th.data.teamlist.ct_num-th.data.ordertx.length;
542   - var wz= "";
543   - if(g_ct>0) wz="还差"+g_ct+"人成团,";
544   - else{
545   - g_ct= th.data.max_num -th.data.ordertx.length;
546   - if(g_ct>0){
547   - wz="还差"+g_ct+"人享最低优惠,";
  469 +
  470 + if (!th.data.share_b_img){ // 如果是普通商品,绘制新海报
  471 + th.drawPoster(context, unit, th.data.share_img_localpath, vpath, type);
  472 + } else {
  473 + context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  474 + //-- 是自定义海报的情况下 --
  475 + if(th.data.poster && parseInt(th.data.poster.style)==2){
  476 + //在线上分享人的情况下
  477 + if(parseInt(th.data.poster.show_headpic)){
  478 + //获取坐标
  479 + var x=parseFloat(th.data.poster.head_x)*2;
  480 + var y=parseFloat(th.data.poster.head_y)*2;
  481 + var x1=(x+90) *unit;
  482 + var y1=(y+50) *unit;
  483 + //--昵称---
  484 + context.setFontSize(24 * unit)
  485 + context.setFillStyle("black")
  486 + context.fillText(app.globalData.userInfo.nickname, x1, y1);
  487 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
  488 + //强烈推荐 改许程
  489 + var tj_path = "../../../images/share/q_tj.png";
  490 + context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit);
  491 + context.setFontSize(16 * unit)
  492 + context.setLineJoin('round'); //交点设置成圆角
  493 + context.setFillStyle("white")
  494 + context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit);
  495 + }
  496 +
548 497 }else{
549   - wz="已享受最优惠,";
  498 + //--昵称---
  499 + context.setFontSize(24 * unit)
  500 + context.setFillStyle("black")
  501 + context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
  502 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
  503 + //强烈推荐
  504 + var tj_path = "../../../images/share/q_tj.png";
  505 + context.drawImage(tj_path, 152 * unit + width, 54 * unit, 110 * unit, 30 * unit);
  506 + context.setFontSize(18 * unit)
  507 + context.setFillStyle("white")
  508 + context.fillText('强烈推荐', 152 * unit + width + 20 * unit, 76 * unit);
550 509 }
551   - }
552 510  
553   - //-------大图后面就不一样了-----------
554   - switch (type) {
555   - case 1://会员团和商家团的展示
556   - //---画线---
557   - context.setLineWidth(1 * unit)
558   - context.moveTo(32 * unit, 670 * unit)
559   - context.lineTo(520 * unit, 670 * unit)
560   - context.stroke();
561   -
562   - //---文字---
563   - context.setFontSize(22 * unit)
564   - context.setFillStyle("black")
565   - context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
566   -
567   - //绘制成团图片
568   - var ct_img ="../../../images/share/ct_num.png";
569   - context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
570   - var ct_num = th.data.teamlist.ct_num;
571   - context.setFontSize(14 * unit)
572   -
573   - context.setFillStyle("red")
574   - if(ct_num<10){
575   - context.fillText(ct_num+"人拼团", 92 * unit, 760 * unit);
  511 +
  512 + //---产品名称---
  513 + context.setFontSize(21.3 * unit);
  514 + context.setFillStyle("black");
  515 +
  516 +
  517 + getApp().draw_Text(context,share_title,
  518 + 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
  519 + //------产品的价格-------
  520 + context.setFontSize(24 * unit)
  521 + context.setFillStyle("red")
  522 +
  523 + var pri0 = th.data.teamlist.price;
  524 + pri0=parseFloat(pri0).toFixed(2);
  525 + var wd1=th.data.screenWidth-ut.measureText(pri0, 31 * unit)-25;
  526 + context.fillText("¥", wd1-15, 180 * unit);
  527 + context.setFontSize(31 * unit)
  528 + context.fillText(pri0, wd1, 180 * unit);
  529 +
  530 + //---市场价划掉---
  531 + context.setFillStyle("gray")
  532 + context.setFontSize(22 * unit)
  533 + pri0= "¥" + parseFloat(th.data.goods.market_price).toFixed(2);
  534 + var wd2=th.data.screenWidth-ut.measureText(pri0, 22 * unit)-25;
  535 + context.fillText(pri0, wd2, 210 * unit);
  536 +
  537 + context.setStrokeStyle('gray')
  538 + context.setLineWidth(1 * unit)
  539 + context.moveTo(wd2-5, 204 * unit)
  540 + context.lineTo(wd2+ut.measureText(pri0, 22 * unit)+5, 204 * unit)
  541 + context.stroke();
  542 + console.log(th.data.share_img_localpath);
  543 +
  544 +
  545 + //---中间大图---
  546 + context.drawImage(th.data.share_img_localpath, 68 * unit, 242 * unit, 410 * unit, 410 * unit);
  547 +
  548 + var g_ct=th.data.teamlist.ct_num-th.data.ordertx.length;
  549 + var wz= "";
  550 + if(g_ct>0) wz="还差"+g_ct+"人成团,";
  551 + else{
  552 + g_ct= th.data.max_num -th.data.ordertx.length;
  553 + if(g_ct>0){
  554 + wz="还差"+g_ct+"人享最低优惠,";
576 555 }else{
577   - context.fillText(ct_num+"人拼团", 86 * unit, 760 * unit);
  556 + wz="已享受最优惠,";
578 557 }
579   - context.setFontSize(22 * unit)
580   - context.fillText("已拼"+th.data.teamlist.buy_num+"份", 166 * unit, 763 * unit);
581   - context.setFillStyle("gray")
582   - context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 826 * unit);
583   - context.setFillStyle("black")
584   -
585   - context.setFontSize(22 * unit)
586   - context.fillText("长按识别二维码,立即参团", 40 * unit, 856 * unit);
587   - //---二维吗图---
588   - //-- 自定义海报 --
589   - if(th.data.poster){
590   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
591   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
592   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
593   - }else{
594   - //---二维吗图---
595   - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
596   - }
597   - break
598   - case 2://阶梯团的展示
599   - //---画线---
600   - context.setLineWidth(1 * unit)
601   - context.moveTo(32 * unit, 670 * unit)
602   - context.lineTo(520 * unit, 670 * unit)
603   - context.stroke();
604   - //---文字---
605   - context.setFontSize(22 * unit)
606   - context.setFillStyle("black")
607   - context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
608   - //---绘制中间阶梯的价格---
609   - var list= JSON.parse(th.data.teamlist.ct_rylist);
610   - for(var i=0; i<list.length;i++){
611   - var item=list[i];
612   - var wi=i*90*unit;
613   - context.setFontSize(16 * unit)
  558 + }
  559 +
  560 + //-------大图后面就不一样了-----------
  561 + switch (type) {
  562 + case 1://会员团和商家团的展示
  563 + //---画线---
  564 + context.setLineWidth(1 * unit)
  565 + context.moveTo(32 * unit, 670 * unit)
  566 + context.lineTo(520 * unit, 670 * unit)
  567 + context.stroke();
  568 +
  569 + //---文字---
  570 + context.setFontSize(22 * unit)
  571 + context.setFillStyle("black")
  572 + context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
  573 +
  574 + //绘制成团图片
  575 + var ct_img ="../../../images/share/ct_num.png";
  576 + context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
  577 + var ct_num = th.data.teamlist.ct_num;
  578 + context.setFontSize(14 * unit)
  579 +
614 580 context.setFillStyle("red")
615   - context.fillText("¥", 40 * unit+wi, 756 * unit);
  581 + if(ct_num<10){
  582 + context.fillText(ct_num+"人拼团", 92 * unit, 760 * unit);
  583 + }else{
  584 + context.fillText(ct_num+"人拼团", 86 * unit, 760 * unit);
  585 + }
616 586 context.setFontSize(22 * unit)
617   - var pri=parseFloat(item.price).toFixed(2);
618   - context.fillText(pri, 56 * unit+wi, 756 * unit);
  587 + context.fillText("已拼"+th.data.teamlist.buy_num+"份", 166 * unit, 763 * unit);
619 588 context.setFillStyle("gray")
620   - context.fillText("满"+item.rynum+"人", 40 * unit+wi, 786 * unit);
621   - }
  589 + context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 826 * unit);
  590 + context.setFillStyle("black")
622 591  
623   - //----------------下面部分----------------
624   - context.setFillStyle("gray")
625   - context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 830 * unit);
626   - context.setFillStyle("black")
627   - context.setFontSize(22 * unit)
628   -
629   - context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
630   - //---二维吗图---
631   - //-- 自定义海报 --
632   - if(th.data.poster){
633   - var erm_x= parseFloat(th.data.poster.ewm_x)*2;
634   - var erm_y= parseFloat(th.data.poster.ewm_y)*2;
635   - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
636   - }else{
637   - //---二维吗图---
638   - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
639   - }
640   - break
641   - }
  592 + context.setFontSize(22 * unit)
  593 + context.fillText("长按识别二维码,立即参团", 40 * unit, 856 * unit);
  594 + //---二维吗图---
  595 + //-- 自定义海报 --
  596 + if(th.data.poster){
  597 + var erm_x= parseFloat(th.data.poster.ewm_x)*2;
  598 + var erm_y= parseFloat(th.data.poster.ewm_y)*2;
  599 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  600 + }else{
  601 + //---二维吗图---
  602 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  603 + }
  604 + break
  605 + case 2://阶梯团的展示
  606 + //---画线---
  607 + context.setLineWidth(1 * unit)
  608 + context.moveTo(32 * unit, 670 * unit)
  609 + context.lineTo(520 * unit, 670 * unit)
  610 + context.stroke();
  611 + //---文字---
  612 + context.setFontSize(22 * unit)
  613 + context.setFillStyle("black")
  614 + context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
  615 + //---绘制中间阶梯的价格---
  616 + var list= JSON.parse(th.data.teamlist.ct_rylist);
  617 + for(var i=0; i<list.length;i++){
  618 + var item=list[i];
  619 + var wi=i*90*unit;
  620 + context.setFontSize(16 * unit)
  621 + context.setFillStyle("red")
  622 + context.fillText("¥", 40 * unit+wi, 756 * unit);
  623 + context.setFontSize(22 * unit)
  624 + var pri=parseFloat(item.price).toFixed(2);
  625 + context.fillText(pri, 56 * unit+wi, 756 * unit);
  626 + context.setFillStyle("gray")
  627 + context.fillText("满"+item.rynum+"人", 40 * unit+wi, 786 * unit);
  628 + }
  629 +
  630 + //----------------下面部分----------------
  631 + context.setFillStyle("gray")
  632 + context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 830 * unit);
  633 + context.setFillStyle("black")
  634 + context.setFontSize(22 * unit)
  635 +
  636 + context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
  637 + //---二维吗图---
  638 + //-- 自定义海报 --
  639 + if(th.data.poster){
  640 + var erm_x= parseFloat(th.data.poster.ewm_x)*2;
  641 + var erm_y= parseFloat(th.data.poster.ewm_y)*2;
  642 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  643 + }else{
  644 + //---二维吗图---
  645 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  646 + }
  647 + break
  648 + }
  649 +
  650 + //--- 如果是自定义海报的时候 ---
  651 + if(th.data.poster && parseInt(th.data.poster.style)==2){
  652 +
  653 + //如果显示会员信息的话
  654 + if(parseInt(th.data.poster.show_headpic)){
  655 + //获取坐标
  656 + var x= parseFloat(th.data.poster.head_x)*2;
  657 + var y=parseFloat(th.data.poster.head_y)*2;
  658 + //---绘制圆形要放在最后----
  659 + context.save();
  660 + context.beginPath();
  661 + var h_x = x* unit;
  662 + var h_y = y * unit;
  663 + var h_r = 40 * unit;
  664 + var cx = h_x + h_r;
  665 + var cy = h_y + h_r;
  666 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  667 + context.closePath();
  668 + context.fill();
  669 + context.clip();
  670 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  671 + context.restore();
  672 + }
642 673  
643   - //--- 如果是自定义海报的时候 ---
644   - if(th.data.poster && parseInt(th.data.poster.style)==2){
645   -
646   - //如果显示会员信息的话
647   - if(parseInt(th.data.poster.show_headpic)){
648   - //获取坐标
649   - var x= parseFloat(th.data.poster.head_x)*2;
650   - var y=parseFloat(th.data.poster.head_y)*2;
651   - //---绘制圆形要放在最后----
652   - context.save();
653   - context.beginPath();
654   - var h_x = x* unit;
655   - var h_y = y * unit;
656   - var h_r = 40 * unit;
657   - var cx = h_x + h_r;
658   - var cy = h_y + h_r;
659   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
660   - context.closePath();
661   - context.fill();
662   - context.clip();
663   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
664   - context.restore();
665   - }
666   -
667   - }else{
668   - //---绘制圆形要放在最后----
669   - context.save();
670   - context.beginPath();
671   - var h_x = 60 * unit;
672   - var h_y = 24 * unit;
673   - var h_r = 40 * unit;
674   - var cx = h_x + h_r;
675   - var cy = h_y + h_r;
676   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
677   - context.closePath();
678   - context.fill();
679   - context.clip();
680   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
681   - context.restore();
  674 + }else{
  675 + //---绘制圆形要放在最后----
  676 + context.save();
  677 + context.beginPath();
  678 + var h_x = 60 * unit;
  679 + var h_y = 24 * unit;
  680 + var h_r = 40 * unit;
  681 + var cx = h_x + h_r;
  682 + var cy = h_y + h_r;
  683 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  684 + context.closePath();
  685 + context.fill();
  686 + context.clip();
  687 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  688 + context.restore();
  689 + }
682 690 }
683 691  
684 692 //把画板内容绘制成图片,并回调 画板图片路径
... ... @@ -885,6 +893,122 @@ Page({
885 893  
886 894 },
887 895  
  896 + //-- 先版绘制 --
  897 + drawPoster(context, unit, img, vpath, type) {
  898 +
  899 + var self=this;
  900 + self.data.prom_act=this.data.teamlist;
  901 +
  902 + // 1.灰色背景
  903 + context.setFillStyle('#f2f1f6');
  904 + context.rect(0, 0, 554 * unit, 899 * unit);
  905 + context.fill();
  906 +
  907 + // 2.商城名称
  908 + let shopName = this.data.sto_sele_name_1;
  909 + context.setTextAlign('center');
  910 + context.setFontSize(26 * unit);
  911 + context.setFillStyle('black');
  912 + context.fillText(shopName, 277 * unit, 60 * unit);
  913 +
  914 + // 3.推荐来源
  915 + let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
  916 + context.setTextAlign('center');
  917 + context.setFontSize(22 * unit);
  918 + context.setFillStyle('#96959a');
  919 + context.fillText(fromText, 277 * unit, 105 * unit);
  920 +
  921 + // 4.海报背景
  922 + context.setFillStyle('white');
  923 + context.fillRect(37 * unit, 157 * unit, 480 * unit, 673 * unit);
  924 +
  925 + // 5.商品图片
  926 + // 图片的x坐标
  927 + let bg_x = 37 * unit
  928 + // 图片的y坐标
  929 + let bg_y = 157 * unit
  930 + // 图片宽度
  931 + let bg_w = 480 * unit
  932 + // 图片高度
  933 + let bg_h = 474 * unit
  934 + // 图片圆角
  935 + let bg_r = 4
  936 + // 绘制海报背景图片圆角
  937 + context.save()
  938 + context.beginPath()
  939 + context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI * 1.5)
  940 + context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2)
  941 + context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5)
  942 + context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI)
  943 + context.clip()
  944 + context.drawImage(img, bg_x, bg_y, bg_w, bg_h);
  945 + context.restore();
  946 +
  947 + // 6.强烈推荐
  948 + let src = '';
  949 + context.beginPath();
  950 +
  951 +
  952 + if (type == 1) { // 商家和会员团
  953 + src = '../../../images/share/ct_num.png';
  954 + context.drawImage(src, 54 * unit, 648 * unit, 120 * unit, 30 * unit);
  955 + context.setTextAlign('left');
  956 +
  957 + let ct_num = self.data.prom_act.ct_num;
  958 + context.setFontSize(16 * unit)
  959 + context.font = 'normal';
  960 + context.setFillStyle("red")
  961 + if (ct_num < 10) {
  962 + context.fillText(ct_num + "人拼团", 100 * unit, 670 * unit);
  963 + } else {
  964 + context.fillText(ct_num + "人拼团", 96 * unit, 670 * unit);
  965 + }
  966 + context.setFontSize(22 * unit)
  967 + context.fillText("已拼" + self.data.prom_act.buy_num + "份", 186 * unit, 672 * unit);
  968 + }
  969 +
  970 + if (type == 2) { // 阶梯团
  971 + let list = self.data.prom_act.ct_rylist;
  972 + for (let i = 0; i < list.length; i++) {
  973 + let item = list[i];
  974 + let wi = i * 90 * unit;
  975 + context.font = 'normal';
  976 + context.setTextAlign('left');
  977 + context.setFontSize(16 * unit)
  978 + context.setFillStyle("red")
  979 + context.fillText("¥", 50 * unit + wi, 680 * unit);
  980 + context.setFontSize(22 * unit)
  981 + let pri = parseFloat(item.price).toFixed(2);
  982 + context.fillText(pri, 66 * unit + wi, 680 * unit);
  983 +
  984 +
  985 + context.setFillStyle("gray")
  986 + context.fillText("满" + item.rynum + "人", 50 * unit + wi, 716 * unit);
  987 + }
  988 +
  989 +
  990 + var wp= 52 * unit;
  991 + var hp=755 * unit
  992 + self.draw_pos_price(context,wp,hp,self.data.data.market_price,unit);
  993 + }
  994 +
  995 +
  996 + // 8.商品标题
  997 + context.setFontSize(20 * unit);
  998 + context.setFillStyle('#898989');
  999 + getApp().draw_Text(context, this.data.goods.goods_name, 54 * unit, 800 * unit, 240 * unit, 280 * unit, unit, 1);
  1000 + // 9.小程序码
  1001 + context.drawImage(vpath, 375 * unit, 660 * unit, 120 * unit, 120 * unit);
  1002 + context.setFontSize(16 * unit);
  1003 + context.setFillStyle('#777');
  1004 + context.fillText('长按识别二维码', 378 * unit, 810 * unit);
  1005 +
  1006 + // 10.竖线
  1007 + context.beginPath();
  1008 + context.setFillStyle('#eee');
  1009 + context.rect(354 * unit, 670 * unit, 1 * unit, 130 * unit);
  1010 + context.fill();
  1011 + },
888 1012  
889 1013  
890 1014  
... ...
pages/user/order_list/order_list.js
... ... @@ -1447,7 +1447,9 @@ Page({
1447 1447 success: function (t) {
1448 1448 th.setData({ paying: 0 });
1449 1449 if (t.data.code == 0) {
1450   - th.onload();
  1450 + //th.data.orderList.splice(o_index, 1);
  1451 + //th.setData({ orderList: th.data.orderList });
  1452 + th.onShow();
1451 1453 } else {
1452 1454 getApp().confirmBox(t.data.msg + "请您取消该订单");
1453 1455 }
... ... @@ -1467,8 +1469,23 @@ Page({
1467 1469 t.pay(e.order_sn, function () {
1468 1470 th.setData({ paying: 0 });
1469 1471 wx.showToast({ title: '支付成功' })
1470   - th.data.orderList.splice(o_index, 1);
1471   - th.setData({ orderList: th.data.orderList });
  1472 + //th.data.orderList.splice(o_index, 1);
  1473 + //th.setData({ orderList: th.data.orderList });
  1474 +
  1475 + //商家团支付成功后,要让他的团能够建立或者参与
  1476 + if(e.is_zsorder==2){
  1477 + //--如果商家团的时候---
  1478 + getApp().request.promisePost("/api/weshop/order/pay/vipAutoTuan", {
  1479 + data: {orderSn:e.order_sn,storeId:os.stoid }
  1480 + })
  1481 + }
  1482 +
  1483 + setTimeout(()=>{
  1484 + th.setData({is_get:0})
  1485 + th.onShow();
  1486 + },500)
  1487 +
  1488 +
1472 1489 }, function () {
1473 1490 th.setData({ paying: 0 });
1474 1491 }, os.stoid, 1);
... ... @@ -2374,7 +2391,17 @@ Page({
2374 2391 };
2375 2392 if (currentIndex == 2) { // 卡项订单
2376 2393 list = th.data.cardList;
2377   - list = list.concat(data);
  2394 + var new_data= data.map((item,index)=>{
  2395 + if(item.list && item.list.length){
  2396 + item.pt_status=item.list[0].pt_status;
  2397 + item.pt_tail_money=item.list[0].pt_tail_money;
  2398 + item.prom_id=item.list[0].prom_id;
  2399 + item.prom_type=item.list[0].prom_type;
  2400 + }
  2401 + return item;
  2402 + })
  2403 +
  2404 + list = list.concat(new_data);
2378 2405 th.setData({ cardList: list });
2379 2406 console.log('currentCard', list);
2380 2407 };
... ... @@ -2699,6 +2726,11 @@ Page({
2699 2726  
2700 2727 // 卡项订单 - 立即支付
2701 2728 pay: async function (e) {
  2729 + let th=this;
  2730 +
  2731 + if(th.data.ser_paying) return false;
  2732 + th.data.ser_paying=1;
  2733 +
2702 2734 let index = e.currentTarget.dataset.index;
2703 2735 let item = this.data.cardList[index];
2704 2736 let order_sn = item.order_sn;
... ... @@ -2706,14 +2738,11 @@ Page({
2706 2738 let store_id = app.globalData.setting.stoid;
2707 2739 let user_id = oo.user_id;
2708 2740 let flag = true;
2709   -
2710   - let th=this;
2711   -
2712   -
2713 2741 // 如果是普通购买或单独购买,不用判断
2714 2742 // 如果是秒杀购买:1、判断活动是否变化;2、是否超出限购
2715   -
2716 2743 let list = item.list;
  2744 + var pt_act=null; //-- 拼团活动的优化 --
  2745 +
2717 2746 for (const it of list) {
2718 2747 if (it.prom_type == 1) {
2719 2748 let act_details = null;
... ... @@ -2723,9 +2752,8 @@ Page({
2723 2752  
2724 2753  
2725 2754 await getApp().request.promiseGet('/api/ms/flash_sale/getNew/' + store_id + '/' + user_id + '/' + it.prom_id, {}).then(res => {
2726   - console.log('11111111====>>>');
  2755 +
2727 2756 if (res.data.code == 0) {
2728   - console.log('当前的秒杀活动信息:', res.data.data);
2729 2757 act_details = res.data.data;
2730 2758 if (act_details.is_end == 1) {
2731 2759 wx.showModal({
... ... @@ -2745,108 +2773,129 @@ Page({
2745 2773 flag = false;
2746 2774 return false;
2747 2775 };
2748   - };
2749   - });
2750 2776  
2751   - await getApp().request.promiseGet('/api/weshop/activitylist/getActLen/' + store_id + '/' + it.prom_type + '/' + it.prom_id, {
2752   - 1: 1
2753   - }).then(res => {
2754   - console.log('222222222====>>>');
2755   - if (res.data.code == 0) {
2756   - // 当前可以购买的数量
2757   - console.log('redis当前可以购买的数量:', res.data.data);
2758   - redis_num = res.data.data;
2759   - // if(redis_num <=0) {
2760   - // wx.showModal({
2761   - // title: '提示',
2762   - // content: '活动库存不足,无法支付,请取消订单!',
2763   - // showCancel: false,
2764   - // });
2765   - // // flag = false;
2766   - // return true;
2767   - // };
2768   - };
2769   - });
2770 2777  
2771   - await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
2772   - data: {
2773   - store_id: store_id,
2774   - user_id: user_id,
2775   - card_id: it.card_id,
2776   - prom_type: it.prom_type,
2777   - prom_id: it.prom_id,
  2778 + var t_now = ut.gettimestamp();
  2779 + if (act_details.is_end == 1 || act_details.start_time > t_now || act_details.end_time < t_now) {
  2780 + wx.showModal({
  2781 + title: '提示',
  2782 + content: '活动发生了变化,无法支付,请取消订单,重新购买!',
  2783 + showCancel: false,
  2784 + });
  2785 + flag = false;
  2786 + return false;
  2787 + }
  2788 +
2778 2789 }
2779   - }).then(res => {
2780   - console.log('333333333====>>>');
2781   - if (res.data.code == 0) {
2782   - console.log('已经购买的数量:', res.data.data);
2783   - promcardbuynum = res.data.data.promcardbuynum;
  2790 + });
2784 2791  
  2792 + if(act_details.buy_limit>0 && flag){
  2793 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
  2794 + data: {
  2795 + store_id: store_id,
  2796 + user_id: user_id,
  2797 + card_id: it.card_id,
  2798 + prom_type: it.prom_type,
  2799 + prom_id: it.prom_id,
  2800 + ispay:1
  2801 + }
  2802 + }).then(res => {
  2803 + if (res.data.code == 0) {
  2804 + promcardbuynum = res.data.data.promcardbuynum;
  2805 + let canBuyNum = act_details.buy_limit - promcardbuynum; // 自己还可购买的数量c
  2806 +
  2807 + if (canBuyNum < qty) {
  2808 + wx.showModal({
  2809 + title: '提示',
  2810 + content: '您已超出活动限购数量,无法支付,请取消订单!',
  2811 + showCancel: false,
  2812 + });
  2813 + flag = false;
  2814 + }
  2815 + }
  2816 + })
  2817 + }
2785 2818  
2786   - let limited = act_details.buy_limit; // 限购数量a
2787   - let buyedNum = promcardbuynum; // 自己已经购买的数量b
2788   - let canBuyNum = limited - buyedNum; // 自己还可购买的数量c
  2819 + };
2789 2820  
  2821 + if (it.prom_type == 6) {
  2822 + let act_details = null;
  2823 + let redis_num = 0;
  2824 + let promcardbuynum = 0;
  2825 + let qty = it.qty;
2790 2826  
2791   - if (canBuyNum <= 0) {
  2827 + await getApp().request.promiseGet("/api/weshop/teamlist/get/" + store_id + "/" + it.prom_id, {}).then(res => {
  2828 +
  2829 + if (res.data.code == 0) {
  2830 +
  2831 + act_details = res.data.data;
  2832 +
  2833 + if (act_details.is_end == 1) {
2792 2834 wx.showModal({
2793 2835 title: '提示',
2794   - content: '您已超出活动限购数量,无法支付,请取消订单!',
  2836 + content: '活动已结束,无法支付,请取消订单!',
2795 2837 showCancel: false,
2796 2838 });
2797 2839 flag = false;
2798 2840 return false;
2799   - };
2800   -
2801   - if (limited > redis_num) {
2802   - if (canBuyNum <= redis_num) {
2803   - if (qty > canBuyNum) {
2804   - wx.showModal({
2805   - title: '提示',
2806   - content: '您已超出活动限购数量,无法支付,请取消订单!',
2807   - showCancel: false,
2808   - });
2809   - flag = false;
2810   - return false;
2811   - };
2812   -
2813   - };
2814   -
2815   - if (canBuyNum > redis_num) {
2816   - if (qty > redis_num) {
2817   - wx.showModal({
2818   - title: '提示',
2819   - content: '活动库存不足,无法支付,请取消订单!',
2820   - showCancel: false,
2821   - });
2822   - flag = false;
2823   - return false;
2824   - };
  2841 + }
2825 2842  
2826   - };
2827   - };
  2843 + if (act_details.id != it.prom_id) {
  2844 + wx.showModal({
  2845 + title: '提示',
  2846 + content: '活动发生了变化,无法支付,请取消订单,重新购买!',
  2847 + showCancel: false,
  2848 + });
  2849 + flag = false;
  2850 + return false;
  2851 + }
2828 2852  
2829   - if (limited <= redis_num) {
2830   - if (qty > canBuyNum) {
2831   - wx.showModal({
2832   - title: '提示',
2833   - content: '您已超出活动限购数量,无法支付,请取消订单!',
2834   - showCancel: false,
2835   - });
2836   - flag = false;
2837   - return false;
2838   - };
2839   - };
2840   - };
  2853 + var t_now = ut.gettimestamp();
  2854 + if (act_details.is_end == 1 || act_details.start_time > t_now || act_details.end_time < t_now) {
  2855 + wx.showModal({
  2856 + title: '提示',
  2857 + content: '活动发生了变化,无法支付,请取消订单,重新购买!',
  2858 + showCancel: false,
  2859 + });
  2860 + flag = false;
  2861 + return false;
  2862 + }
  2863 + }
2841 2864 });
2842 2865  
2843   - };
2844   -
2845   - };
  2866 + if(act_details.buy_limit>0 && flag){
  2867 + await getApp().request.promiseGet("/api/weshop/rechargeServicelist/getUserBuyGoodsNum", {
  2868 + data: {
  2869 + store_id: store_id,
  2870 + user_id: user_id,
  2871 + card_id: it.card_id,
  2872 + prom_type: it.prom_type,
  2873 + prom_id: it.prom_id,
  2874 + ispay:1
  2875 + }
  2876 + }).then(res => {
  2877 + if (res.data.code == 0) {
  2878 + console.log('已经购买的数量:', res.data.data);
  2879 + promcardbuynum = res.data.data.promcardbuynum;
  2880 + }
  2881 + })
  2882 + let limited = act_details.buy_limit; // 限购数量a
  2883 + let canBuyNum = limited - promcardbuynum; // 自己还可购买的数量c
  2884 +
  2885 + if (canBuyNum < qty ) {
  2886 + wx.showModal({
  2887 + title: '提示',
  2888 + content: '您已超出活动限购数量,无法支付,请取消订单!',
  2889 + showCancel: false,
  2890 + });
  2891 + flag = false;
  2892 + }
  2893 + }
  2894 + pt_act=act_details;
2846 2895  
2847   - if(th.data.ser_paying) return false;
2848   - th.data.ser_paying=1;
  2896 + }
2849 2897  
  2898 + }
2850 2899  
2851 2900 if (flag) {
2852 2901  
... ... @@ -2855,12 +2904,28 @@ Page({
2855 2904 parentSn: order_sn,
2856 2905 store_id: store_id
2857 2906 }, function () {
2858   - th.data.ser_paying=0;
2859   - wx.showToast({
2860   - title: '支付成功',
2861   - icon:'success',
2862   - duration: 2000
2863   - });
  2907 + th.data.ser_paying=0;
  2908 + wx.showToast({
  2909 + title: '支付成功',
  2910 + icon:'success',
  2911 + duration: 2000
  2912 + });
  2913 +
  2914 + if(pt_act.kttype==1){
  2915 +
  2916 + //--如果商家团的时候,这个要改,要用服务卡的接口---
  2917 + getApp().request.promisePost("/api/weshop/rechargeServicelist/vipAutoTuan", {
  2918 + data: {orderSn:order_sn,storeId:os.stoid }
  2919 + })
  2920 + }
  2921 +
  2922 + setTimeout(()=>{
  2923 + th.setData({is_get:0})
  2924 + th.onShow();
  2925 + },500)
  2926 +
  2927 +
  2928 +
2864 2929 }, function (e) {
2865 2930 th.data.ser_paying=0;
2866 2931 wx.showToast({
... ... @@ -2891,7 +2956,9 @@ Page({
2891 2956 // });
2892 2957 // // }
2893 2958 // });
2894   - };
  2959 + }else {
  2960 + th.data.ser_paying=0;
  2961 + }
2895 2962  
2896 2963 },
2897 2964  
... ... @@ -2958,12 +3025,7 @@ Page({
2958 3025 },
2959 3026 });
2960 3027  
2961   - // let index = e.currentTarget.dataset.index;
2962   - // let cardList = self.data.cardList;
2963   - // cardList.splice(index, 1);
2964   - // self.setData({
2965   - // cardList,
2966   - // });
  3028 +
2967 3029  
2968 3030 //self.request_list(self.data.currentRequestData);
2969 3031 },
... ... @@ -2994,7 +3056,7 @@ Page({
2994 3056  
2995 3057  
2996 3058 if (action == "buy") {
2997   - //--------------此时操作的数据------------
  3059 + //-------------- 此时操作的数据 ------------
2998 3060 var newd = {
2999 3061 id: th.data.data.id,
3000 3062 goods_num: th.data.goodsInputNum,
... ...
pages/user/order_list/order_list.wxml
... ... @@ -322,19 +322,44 @@
322 322 <!--商品编号 -->
323 323 <text selectable='true'>订单编号:{{item.order_sn}}</text>
324 324 <!-- 订单状态 -->
325   - <view class="flex-center c-r">
326   - <view wx:if="{{item.order_status == 0}}">待支付</view>
327   - <view wx:if="{{item.order_status == 1}}" class="flex-center">待评价 <view class="lin"></view>
328   - <image src="{{iurl}}miniapp/images/trash.png" bindtap="deleteSerOrderData" data-index="{{index}}" data-orderid="{{item.order_id}}" data-ordersn="{{item.order_sn}}" ></image>
329   - </view>
330   - <view wx:if="{{item.order_status == 2}}" class="flex-center">已评价<view class="lin"></view>
331   - <image src="{{iurl}}miniapp/images/trash.png" bindtap="deleteSerOrderData" data-index="{{index}}" data-orderid="{{item.order_id}}" data-ordersn="{{item.order_sn}}" ></image>
332   - </view>
333   - <view wx:if="{{item.order_status == 3}}" class="c-a9" class="flex-center">已取消<view class="lin"></view>
334   - <image src="{{iurl}}miniapp/images/trash.png" bindtap="deleteSerOrderData" data-index="{{index}}" data-orderid="{{item.order_id}}" data-ordersn="{{item.order_sn}}" ></image>
335   - </view>
336   - <view wx:if="{{item.order_status == 5}}">已作废</view>
337   - </view>
  325 + <view class="flex-center c-r">
  326 + <view wx:if="{{item.pay_status == 0 && item.order_status<2 }}">
  327 + <block wx:if="{{item.prom_type==6}}">
  328 + <block wx:if="{{item.pt_status==0}}" >未支付</block>
  329 + <block wx:if="{{item.pt_status==1}}" >组团中</block>
  330 +
  331 + </block>
  332 + <block wx:else>
  333 + 待支付
  334 + </block>
  335 + </view>
  336 + <view wx:if="{{item.order_status<2}}">
  337 + <block wx:if="{{item.pt_status==2 && item.pt_tail_money>0}}">待支付尾款</block>
  338 + </view>
  339 +
  340 + <view wx:if="{{item.order_status == 1 && item.pay_status==1}}" class="flex-center">待评价
  341 + <view class="lin"></view>
  342 + <image src="{{iurl}}miniapp/images/trash.png" bindtap="deleteSerOrderData"
  343 + data-index="{{index}}" data-orderid="{{item.order_id}}" data-ordersn="{{item.order_sn}}">
  344 +
  345 + </image>
  346 + </view>
  347 + <view wx:if="{{item.order_status == 2}}" class="flex-center">已评价
  348 + <view class="lin"></view>
  349 + <image src="{{iurl}}miniapp/images/trash.png" bindtap="deleteSerOrderData" data-index="{{index}}"
  350 + data-orderid="{{item.order_id}}" data-ordersn="{{item.order_sn}}"></image>
  351 + </view>
  352 +
  353 +
  354 + <!-- 要判断支付尾款失败 -->
  355 + <view wx:if="{{item.order_status == 3 && item.pt_status!=6}}" class="c-a9" class="flex-center">已取消
  356 + <view class="lin"></view>
  357 + <image src="{{iurl}}miniapp/images/trash.png" bindtap="deleteSerOrderData" data-index="{{index}}"
  358 + data-orderid="{{item.order_id}}" data-ordersn="{{item.order_sn}}"></image>
  359 + </view>
  360 + <view wx:if="{{item.order_status == 5}}">已作废</view>
  361 + <view wx:if="{{item.pt_status==6}}"><text style="font-size: 26rpx;">支付尾款失败</text></view>
  362 + </view>
338 363 </view>
339 364  
340 365 <!-- 商品详情集合 -->
... ... @@ -345,7 +370,8 @@
345 370 <!-- 商品图片 -->
346 371 <navigator class="rel">
347 372 <image src="{{resourceUrl+goods.img_url}}" binderror="bind_bnerr" lazy-load="{{true}}" data-errorimg="orderList[{{index}}].list[{{pinx}}].img_url"></image>
348   - <!-- <view class="abs flex-center fs26">服务卡</view> -->
  373 + <view class="abs flex-center fs26" wx:if="{{goods.prom_type==1}}">秒杀</view>
  374 + <view class="abs flex-center fs26" wx:if="{{goods.prom_type==6}}">团购</view>
349 375 </navigator>
350 376 <!-- 商品内容 -->
351 377 <view class="Commodity_content">
... ... @@ -389,7 +415,7 @@
389 415 <view class="commodity_money flex baseline">
390 416 <view>合计<text wx:if="{{item.discount!=underdefine && item.discount!=null && item.discount!=0}}" style="color:#d60021;">(改)</text>:</view>
391 417 <view class="fs24 c-r">¥</view>
392   - <view class="c-r">{{filters.toFix(item.account,2)}}
  418 + <view class="c-r">{{filters.toFix(item.account+item.pt_tail_money,2)}}
393 419 </view>
394 420  
395 421 </view>
... ... @@ -407,18 +433,24 @@
407 433 <navigator class="commodity_To_evaluate flex-level View_evaluation" url="/packageA/pages/details_serviceCard/details_serviceCard?order_id={{item.order_id}}">订单详情</navigator>
408 434  
409 435  
410   - <block wx:if="{{item.order_status==1}}">
  436 + <block wx:if="{{item.order_status==1 && item.pay_status==1}}">
411 437 <navigator wx:if="{{item.list.length > 1}}" class="order-btn white bg-orange"
412 438 url="/packageB/pages/user/comment/comment?card=1&status=0&order_id={{item.list[index].order_id}}">评价</navigator>
413 439 <navigator wx:else class="order-btn white bg-orange"
414 440 url="/packageB/pages/user/add_comment/add_comment?card=1&goods_id={{item.list[0].card_id}}&order_id={{item.list[0].order_id}}&price={{item.list[0].price}}">评价</navigator>
415 441 </block>
416 442  
417   - <navigator class="commodity_To_evaluate flex-level comment_go" bindtap="pay" data-index="{{index}}" wx:if="{{item.order_status==0}}">立即支付</navigator>
418   -
  443 + <navigator class="commodity_To_evaluate flex-level comment_go"
  444 + bindtap="pay" data-index="{{index}}" wx:if="{{item.prom_type!=6 && item.pay_status==0 && item.order_status<2}}">立即支付</navigator>
419 445  
  446 + <navigator class="commodity_To_evaluate flex-level comment_go"
  447 + bindtap="pay" data-index="{{index}}" wx:if="{{item.prom_type==6 && item.pt_status==0 && item.order_status<2}}">立即支付</navigator>
420 448  
421   - </view>
  449 + <navigator class="commodity_To_evaluate flex-level comment_go" url="/packageA/pages/serviceCard_pd/cart_wk/cart_wk?order_id={{item.order_id}}"
  450 + data-idx="{{index}}" wx:if="{{item.order_status<2 && item.pt_status==2 && item.pt_tail_money>0}}">支付尾款</navigator>
  451 +
  452 +
  453 + </view>
422 454 </view>
423 455 </view>
424 456 </view>
... ... @@ -467,7 +499,7 @@
467 499 </view>
468 500  
469 501 <!-- 无订单 -->
470   -<view class="empty_order" wx:if="{{((!orderList||orderList.length==0) && is_get && currentIndex == 0) || (list2.length==0 && currentIndex == 1) || (cardList.length == 0 && currentIndex == 2)}}">
  502 +<view class="empty_order" wx:if="{{((!orderList||orderList.length==0) && is_get && currentIndex == 0) || (list2.length==0 && currentIndex == 1) || (cardList.length == 0 && currentIndex == 2 && is_get)}}">
471 503 <view class="flex-level">
472 504 <image src="{{iurl}}miniapp/images/order/empty_order.png"></image>
473 505 </view>
... ...