Commit 6bf1e62c631d9afd1728e923f7977d47511f4155

Authored by 后端研发-苏明海
2 parents 4d5697f3 80e4af63

Merge branch 'dev' into 'test'

Dev

See merge request !650
Showing 108 changed files with 5271 additions and 987 deletions
@@ -40,7 +40,7 @@ App({ @@ -40,7 +40,7 @@ App({
40 ], 40 ],
41 41
42 globalData: { 42 globalData: {
43 - cartGoodsNum:0, //购物车总数量 43 + cartGoodsNum:0, //购物车总数量
44 isTabBar :false, 44 isTabBar :false,
45 isIpx: false, //适配IPhoneX 45 isIpx: false, //适配IPhoneX
46 url:"", 46 url:"",
@@ -165,8 +165,9 @@ App({ @@ -165,8 +165,9 @@ App({
165 } 165 }
166 } 166 }
167 }) 167 })
168 -  
169 - 168 +
  169 + //获取一下门店的基本信息
  170 + this.getConfig();
170 }, 171 },
171 172
172 //---初始化第三方---- 173 //---初始化第三方----
@@ -216,7 +217,7 @@ App({ @@ -216,7 +217,7 @@ App({
216 return false; 217 return false;
217 } 218 }
218 if(this.globalData.config==undefined) this.globalData.config=null; 219 if(this.globalData.config==undefined) this.globalData.config=null;
219 - this.globalData.config ? "function" == typeof t && t(this.globalData.config) : e.request.get("/api/weshop/store/get/" + e.globalData.setting.stoid, { 220 + this.globalData.config ? "function" == typeof t && t(this.globalData.config) : e.requestGet("/api/weshop/store/get/" + e.globalData.setting.stoid, {
220 success: function(o) { 221 success: function(o) {
221 console.log('getConfig'); 222 console.log('getConfig');
222 if(o.data.code==0){ 223 if(o.data.code==0){
@@ -523,6 +524,7 @@ App({ @@ -523,6 +524,7 @@ App({
523 //-------获取购物车数量---------- 524 //-------获取购物车数量----------
524 requestCardNum: function(th) { 525 requestCardNum: function(th) {
525 if(!this.globalData.user_id) return false; 526 if(!this.globalData.user_id) return false;
  527 + var that=this;
526 this.request.get("/api/weshop/cart/page", { 528 this.request.get("/api/weshop/cart/page", {
527 isShoeLoading:false, 529 isShoeLoading:false,
528 data: { 530 data: {
@@ -538,14 +540,30 @@ App({ @@ -538,14 +540,30 @@ App({
538 num += e.data.data.pageData[i].goods_num; 540 num += e.data.data.pageData[i].goods_num;
539 } 541 }
540 } 542 }
541 - getApp().globalData.cartGoodsNum=num; 543 +
542 /*--- 544 /*---
543 wx.setTabBarBadge({ //tabbar右上角添加文本 545 wx.setTabBarBadge({ //tabbar右上角添加文本
544 index: 2, ////tabbar下标 546 index: 2, ////tabbar下标
545 text: '' + num //显示的内容 547 text: '' + num //显示的内容
546 });--*/ 548 });--*/
547 - th.getTabBar().setData({cartGoodsNum:num});  
548 - th.data.up_dating = 0 549 +
  550 + //-- 读取服务卡的数量 --
  551 + that.promiseGet("/api/weshop/cartService/page",{
  552 + data:{
  553 + store_id: that.globalData.setting.stoid,
  554 + user_id: that.globalData.user_id,
  555 + }
  556 + }).then(res=>{
  557 +
  558 + for (var i = 0; i < res.data.data.pageData.length; i++) {
  559 + num += res.data.data.pageData[i].goods_num;
  560 + }
  561 +
  562 + that.globalData.cartGoodsNum=num;
  563 + th.data.up_dating = 0
  564 + th.getTabBar().setData({cartGoodsNum:num});
  565 + })
  566 +
549 } 567 }
550 }); 568 });
551 }, 569 },
@@ -660,6 +678,27 @@ App({ @@ -660,6 +678,27 @@ App({
660 }) 678 })
661 }) 679 })
662 }, 680 },
  681 +
  682 +
  683 + //---promise的使用get----
  684 + requestGet:function(url,data){
  685 + if(url.indexOf("http")==-1) url=this.globalData.setting.url +url;
  686 + data.isShowLoading && wx.showLoading();
  687 + wx.request({
  688 + url,
  689 + method: 'GET',
  690 + header: {"content-type": "application/x-www-form-urlencoded" },
  691 + data:data.data,
  692 + success(res) {
  693 + data.isShowLoading && wx.hideLoading();
  694 + data.success(res);
  695 + },
  696 + fail(err) {
  697 + data.isShowLoading && wx.hideLoading();
  698 + if(data.fail) data.fail(err);
  699 + }
  700 + })
  701 + },
663 702
664 703
665 // 判断是否登录 704 // 判断是否登录
app.json
@@ -19,8 +19,7 @@ @@ -19,8 +19,7 @@
19 "pages/user/coupon/coupon", 19 "pages/user/coupon/coupon",
20 "pages/user/checkcoupon/checkcoupon", 20 "pages/user/checkcoupon/checkcoupon",
21 "pages/user/add_address/add_address", 21 "pages/user/add_address/add_address",
22 - "pages/user/withdrawals_list/withdrawals_list",  
23 - "pages/user/add_comment/add_comment", 22 + "pages/user/withdrawals_list/withdrawals_list",
24 "pages/user/return_goods_info/return_goods_info", 23 "pages/user/return_goods_info/return_goods_info",
25 "pages/user/return_goods/return_goods", 24 "pages/user/return_goods/return_goods",
26 "pages/user/withdrawals/withdrawals", 25 "pages/user/withdrawals/withdrawals",
@@ -50,8 +49,7 @@ @@ -50,8 +49,7 @@
50 "pages/user/integral/msg/msg", 49 "pages/user/integral/msg/msg",
51 "pages/user/userqy/userqy", 50 "pages/user/userqy/userqy",
52 "pages/user/user_spsy/user_spsy", 51 "pages/user/user_spsy/user_spsy",
53 - "pages/user/user_fw/user_fw",  
54 - "pages/user/user_coupon/user_coupon", 52 + "pages/user/user_fw/user_fw",
55 "pages/user/grow_value/grow_value", 53 "pages/user/grow_value/grow_value",
56 "pages/payment/pay_success/pay_success", 54 "pages/payment/pay_success/pay_success",
57 "pages/user/plus/plus", 55 "pages/user/plus/plus",
@@ -66,10 +64,8 @@ @@ -66,10 +64,8 @@
66 "pages/user/my_service/tment_eval", 64 "pages/user/my_service/tment_eval",
67 "pages/user/my_service/tment_order_list", 65 "pages/user/my_service/tment_order_list",
68 "pages/user/my_service/beauty_deta", 66 "pages/user/my_service/beauty_deta",
69 - "pages/user/labels/labels",  
70 - "pages/user/view_comment/view_comment",  
71 - "pages/giftpack/birthdaygift/birthdaygift",  
72 - "pages/user/comment/comment", 67 + "pages/user/labels/labels",
  68 + "pages/giftpack/birthdaygift/birthdaygift",
73 "pages/giftpack/evaluategift/evaluategift", 69 "pages/giftpack/evaluategift/evaluategift",
74 "pages/giftpack/newvipgift/newvipgift", 70 "pages/giftpack/newvipgift/newvipgift",
75 "pages/giftpack/payment/payment", 71 "pages/giftpack/payment/payment",
@@ -88,7 +84,6 @@ @@ -88,7 +84,6 @@
88 "pages/cart/cart2_inte/cart2_inte", 84 "pages/cart/cart2_inte/cart2_inte",
89 "pages/giftpack/festival/festival", 85 "pages/giftpack/festival/festival",
90 "pages/team/team_more/team_more", 86 "pages/team/team_more/team_more",
91 - "pages/user/collect_list/collect_list",  
92 "pages/user/deposit/deposit", 87 "pages/user/deposit/deposit",
93 "pages/user/deposit/prepaid/msg/msg", 88 "pages/user/deposit/prepaid/msg/msg",
94 "pages/user/deposit/prepaid/prepaid", 89 "pages/user/deposit/prepaid/prepaid",
@@ -96,7 +91,7 @@ @@ -96,7 +91,7 @@
96 ], 91 ],
97 "plugins": { 92 "plugins": {
98 "live-player-plugin": { 93 "live-player-plugin": {
99 - "version": "1.2.5", 94 + "version": "1.3.0",
100 "provider": "wx2b03c6e691cd7370" 95 "provider": "wx2b03c6e691cd7370"
101 } 96 }
102 }, 97 },
@@ -109,42 +104,62 @@ @@ -109,42 +104,62 @@
109 "pages/quan_pro/quan_pro", 104 "pages/quan_pro/quan_pro",
110 "pages/liveStream/liveStream", 105 "pages/liveStream/liveStream",
111 "pages/liveStreamDetails/liveStreamDetails", 106 "pages/liveStreamDetails/liveStreamDetails",
112 - "pages/addCustomer/addCustomer",  
113 - "pages/goods_share/goods_share",  
114 - "pages/activity_share/activity_share",  
115 - "pages/live_share/live_share",  
116 - "pages/quan/quan",  
117 - "pages/chongzhi/chongzhi",  
118 - "pages/chongzhiDetails/chongzhiDetails",  
119 - "pages/jfbuy/jfbuy",  
120 - "pages/hongBao/hongBao",  
121 - "pages/hongBaoDetails/hongBaoDetails",  
122 - "pages/service_record/service_record",  
123 - "pages/checkin/checkin",  
124 - "pages/distribution/myteam/myteam",  
125 - "pages/distribution/order/order",  
126 - "pages/distribution/commision/commision",  
127 - "pages/distribution/rank/rank",  
128 - "pages/distribution/card/card",  
129 - "pages/distribution/goods/goods",  
130 - "pages/distribution/shop/shop",  
131 - "pages/distribution/rookie/rookie",  
132 - "pages/service_share/service_share",  
133 - "pages/cardList/cardList",  
134 - "pages/goodsInfo/goodsInfo",  
135 - "pages/my_service/appment_main",  
136 - "pages/my_service/i_service",  
137 - "pages/my_service/cosmetology_list",  
138 - "pages/my_service/hist_service",  
139 - "pages/my_service/tment_details",  
140 - "pages/my_service/tment_eval",  
141 - "pages/my_service/tment_order_list",  
142 - "pages/my_service/beauty_deta",  
143 - "pages/profile/profile",  
144 - "pages/parseHtml/parseHtml" 107 + "pages/addCustomer/addCustomer",
  108 + "pages/goods_share/goods_share",
  109 + "pages/activity_share/activity_share",
  110 + "pages/live_share/live_share",
  111 + "pages/quan/quan",
  112 + "pages/chongzhi/chongzhi",
  113 + "pages/chongzhiDetails/chongzhiDetails",
  114 + "pages/jfbuy/jfbuy",
  115 + "pages/hongBao/hongBao",
  116 + "pages/hongBaoDetails/hongBaoDetails",
  117 + "pages/service_record/service_record",
  118 + "pages/checkin/checkin",
  119 + "pages/distribution/myteam/myteam",
  120 + "pages/distribution/order/order",
  121 + "pages/distribution/commision/commision",
  122 + "pages/distribution/rank/rank",
  123 + "pages/distribution/card/card",
  124 + "pages/distribution/goods/goods",
  125 + "pages/distribution/shop/shop",
  126 + "pages/distribution/rookie/rookie",
  127 + "pages/service_share/service_share",
  128 + "pages/cardList/cardList",
  129 + "pages/goodsInfo/goodsInfo",
  130 + "pages/my_service/appment_main",
  131 + "pages/my_service/i_service",
  132 + "pages/my_service/cosmetology_list",
  133 + "pages/my_service/hist_service",
  134 + "pages/my_service/tment_details",
  135 + "pages/my_service/tment_eval",
  136 + "pages/my_service/tment_order_list",
  137 + "pages/my_service/beauty_deta",
  138 + "pages/my_service2/appment_main",
  139 + "pages/profile/profile",
  140 + "pages/parseHtml/parseHtml",
  141 + "pages/myGift/myGift",
  142 + "pages/myGiftDetails/myGiftDetails",
  143 + "pages/cart2_ser/cart2_ser",
  144 + "pages/libao_payment/payment"
145 ] 145 ]
146 146
147 - }], 147 + },
  148 + {
  149 + "root": "packageB/",
  150 + "name":"pack2",
  151 + "pages": [
  152 + "pages/user/collect_list/collect_list",
  153 + "pages/user/comment/comment",
  154 + "pages/user/view_comment/view_comment",
  155 + "pages/user/add_comment/add_comment",
  156 + "pages/user/user_coupon/user_coupon",
  157 + "pages/user/buyDetails/buyDetails"
  158 + ]
  159 +
  160 +}
  161 +
  162 +],
148 "permission": { 163 "permission": {
149 "scope.userLocation": { 164 "scope.userLocation": {
150 "desc": "获取你的位置信息" 165 "desc": "获取你的位置信息"
app.wxss
@@ -50,6 +50,11 @@ @@ -50,6 +50,11 @@
50 .pdr40 { 50 .pdr40 {
51 padding-right: 40rpx; 51 padding-right: 40rpx;
52 } 52 }
  53 +
  54 +.pdr80 {
  55 + padding-right: 80rpx;
  56 +}
  57 +
53 .pdh10 { 58 .pdh10 {
54 padding-left: 10rpx; 59 padding-left: 10rpx;
55 padding-right: 10rpx; 60 padding-right: 10rpx;
@@ -58,9 +63,13 @@ @@ -58,9 +63,13 @@
58 padding-left: 20rpx; 63 padding-left: 20rpx;
59 padding-right: 20rpx; 64 padding-right: 20rpx;
60 } 65 }
  66 +.pdv10 {
  67 + padding-top: 10rpx;
  68 + padding-bottom: 10rpx;
  69 +}
61 .pdv20 { 70 .pdv20 {
62 - padding-top: 30rpx;  
63 - padding-bottom: 30rpx; 71 + padding-top: 20rpx;
  72 + padding-bottom: 20rpx;
64 } 73 }
65 .pdv30 { 74 .pdv30 {
66 padding-top: 30rpx; 75 padding-top: 30rpx;
@@ -132,6 +141,10 @@ @@ -132,6 +141,10 @@
132 background-color: #f0f0f0; 141 background-color: #f0f0f0;
133 } 142 }
134 143
  144 +.bg-f8 {
  145 + background-color: #f8f8f8;
  146 +}
  147 +
135 .pr { 148 .pr {
136 position: relative; 149 position: relative;
137 } 150 }
@@ -140,6 +153,14 @@ @@ -140,6 +153,14 @@
140 font-weight: bold; 153 font-weight: bold;
141 } 154 }
142 155
  156 +.mgl10 {
  157 + margin-left: 10rpx;
  158 +}
  159 +
  160 +.mgb10 {
  161 + margin-bottom: 10rpx;
  162 +}
  163 +
143 .mgl20 { 164 .mgl20 {
144 margin-left: 20rpx; 165 margin-left: 20rpx;
145 } 166 }
@@ -604,7 +625,7 @@ background: #ffe3e2; @@ -604,7 +625,7 @@ background: #ffe3e2;
604 font-size: 38rpx; 625 font-size: 38rpx;
605 } 626 }
606 .fs40 { 627 .fs40 {
607 - font-size: 40rpx; 628 + font-size: 40rpx !important;
608 } 629 }
609 .ai_c { 630 .ai_c {
610 align-items: center; 631 align-items: center;
@@ -635,6 +656,10 @@ background: #ffe3e2; @@ -635,6 +656,10 @@ background: #ffe3e2;
635 line-height: 1; 656 line-height: 1;
636 } 657 }
637 658
  659 +.lh {
  660 + line-height: 1.4;
  661 +}
  662 +
638 663
639 664
640 665
@@ -645,13 +670,10 @@ background: #ffe3e2; @@ -645,13 +670,10 @@ background: #ffe3e2;
645 670
646 /* 图标字体(ty) */ 671 /* 图标字体(ty) */
647 @font-face { 672 @font-face {
648 - font-family: 'iconfont'; /* project id 2054717 */  
649 - src: url('//at.alicdn.com/t/font_2054717_uapbrzlc8k.eot');  
650 - src: url('//at.alicdn.com/t/font_2054717_uapbrzlc8k.eot?#iefix') format('embedded-opentype'),  
651 - url('//at.alicdn.com/t/font_2054717_uapbrzlc8k.woff2') format('woff2'),  
652 - url('//at.alicdn.com/t/font_2054717_uapbrzlc8k.woff') format('woff'),  
653 - url('//at.alicdn.com/t/font_2054717_uapbrzlc8k.ttf') format('truetype'),  
654 - url('//at.alicdn.com/t/font_2054717_uapbrzlc8k.svg#iconfont') format('svg'); 673 + font-family: 'iconfont'; /* Project id 2054717 */
  674 + src: url('//at.alicdn.com/t/font_2054717_f0lv6m3iryg.woff2?t=1621240949872') format('woff2'),
  675 + url('//at.alicdn.com/t/font_2054717_f0lv6m3iryg.woff?t=1621240949872') format('woff'),
  676 + url('//at.alicdn.com/t/font_2054717_f0lv6m3iryg.ttf?t=1621240949872') format('truetype');
655 } 677 }
656 678
657 .iconfont { 679 .iconfont {
@@ -662,6 +684,14 @@ background: #ffe3e2; @@ -662,6 +684,14 @@ background: #ffe3e2;
662 -moz-osx-font-smoothing: grayscale; 684 -moz-osx-font-smoothing: grayscale;
663 } 685 }
664 686
  687 +.icon-sandian:before {
  688 + content: "\e665";
  689 +}
  690 +
  691 +.icon-meirong:before {
  692 + content: "\e60e";
  693 +}
  694 +
665 .icon-yuanquan:before { 695 .icon-yuanquan:before {
666 content: "\e60d"; 696 content: "\e60d";
667 } 697 }
components/diy_goodsGroup/diy_goodsGroup.js
@@ -101,16 +101,13 @@ Component({ @@ -101,16 +101,13 @@ Component({
101 } 101 }
102 102
103 this.data.requestData = new Array(); 103 this.data.requestData = new Array();
104 - if(nav_item && nav_item.data)  
105 - {  
106 - this.data.g_id = nav_item.data;  
107 - var arr = [];  
108 - for (var i = 0; i < this.data.g_id.length; i += this.data.goodscount) {  
109 - arr.push(this.data.g_id.slice(i, i + this.data.goodscount));  
110 - }  
111 - this.data.firist_type_data = arr;  
112 - } 104 + this.data.g_id = nav_item.data;
  105 + var arr = [];
113 106
  107 + for (var i = 0; i < this.data.g_id.length; i += this.data.goodscount) {
  108 + arr.push(this.data.g_id.slice(i, i + this.data.goodscount));
  109 + }
  110 + this.data.firist_type_data = arr;
114 this.init(this.data.classstyle_id, this.data.wgroup); 111 this.init(this.data.classstyle_id, this.data.wgroup);
115 }, 112 },
116 detached: function() { 113 detached: function() {
@@ -130,11 +127,12 @@ Component({ @@ -130,11 +127,12 @@ Component({
130 // 这里是一个自定义方法 127 // 这里是一个自定义方法
131 init:async function (classstyle_id, wgroup) { 128 init:async function (classstyle_id, wgroup) {
132 129
133 - this.setData({classstyle_id:classstyle_id}) 130 + this.setData({classstyle_id:classstyle_id})
  131 +
134 var th = this; 132 var th = this;
135 var g_id = this.data.g_id; 133 var g_id = this.data.g_id;
136 - var len=this.data.firist_type_data?this.data.firist_type_data.length:0;  
137 - if (classstyle_id == 1 && this.data.firist_type_data) { 134 + var len=this.data.firist_type_data.length;
  135 + if (classstyle_id == 1) {
138 //---手动选择的时候--- 136 //---手动选择的时候---
139 g_id = this.data.firist_type_data[th.data.firist_type_curr]; 137 g_id = this.data.firist_type_data[th.data.firist_type_curr];
140 th.data.firist_type_curr++; 138 th.data.firist_type_curr++;
components/diy_goodsGroup/diy_goodsGroup.wxml
@@ -624,11 +624,12 @@ @@ -624,11 +624,12 @@
624 <view class="sp"> 624 <view class="sp">
625 <swiper-item class="s_it" wx:for="{{goods_array}}"> 625 <swiper-item class="s_it" wx:for="{{goods_array}}">
626 <block wx:for="{{item}}" wx:for-item="aitem" wx:for-index="aind"> 626 <block wx:for="{{item}}" wx:for-item="aitem" wx:for-index="aind">
627 - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}" >  
628 - <view class='one'> 627 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}" style="width: 32%" >
  628 + <view class='one' style="margin-left: 10rpx">
629 <view class='sp_top'> 629 <view class='sp_top'>
630 - <view class='s_img' style="position: relative;">  
631 - <image src="{{aitem.goods_img}}" data-errorimg="goods_array[{{index}}][{{aind}}].goods_img" binderror="bind_bnerr3" lazy-load="true"></image> 630 + <view class='s_img' style="position: relative; width: 100%">
  631 + <image src="{{aitem.goods_img}}" data-errorimg="goods_array[{{index}}][{{aind}}].goods_img"
  632 + binderror="bind_bnerr3" lazy-load="true" style="width: 100%"></image>
632 633
633 <block wx:if="{{object.goodicon==3}}"> 634 <block wx:if="{{object.goodicon==3}}">
634 <image class='{{g_filter.get_class(object.column,object.position)}}' 635 <image class='{{g_filter.get_class(object.column,object.position)}}'
components/diy_goodsGroup/diy_goodsGroup.wxss
@@ -304,7 +304,7 @@ @@ -304,7 +304,7 @@
304 .zs_wz1_2l { 304 .zs_wz1_2l {
305 overflow: hidden; 305 overflow: hidden;
306 text-overflow: ellipsis; 306 text-overflow: ellipsis;
307 - font-size: 30rpx; 307 + font-size: 28rpx;
308 white-space: nowrap; 308 white-space: nowrap;
309 height: 40rpx; 309 height: 40rpx;
310 line-height: 40rpx; 310 line-height: 40rpx;
@@ -343,7 +343,7 @@ @@ -343,7 +343,7 @@
343 .zs_wz5_2l { 343 .zs_wz5_2l {
344 overflow: hidden; 344 overflow: hidden;
345 text-overflow: ellipsis; 345 text-overflow: ellipsis;
346 - font-size: 30rpx; 346 + font-size: 24rpx;
347 white-space: nowrap; 347 white-space: nowrap;
348 margin-top: 10rpx; 348 margin-top: 10rpx;
349 } 349 }
@@ -428,8 +428,9 @@ @@ -428,8 +428,9 @@
428 428
429 .zs_wz1_3l { 429 .zs_wz1_3l {
430 margin-bottom: 10rpx; 430 margin-bottom: 10rpx;
431 - font-size: 30rpx;  
432 - height: 80rpx; 431 + font-size: 28rpx;
  432 + height: 70rpx;
  433 + line-height: 35rpx;
433 width: 220rpx; 434 width: 220rpx;
434 overflow: hidden; 435 overflow: hidden;
435 text-overflow: ellipsis; 436 text-overflow: ellipsis;
@@ -440,7 +441,7 @@ @@ -440,7 +441,7 @@
440 441
441 .zs_wz2_3l { 442 .zs_wz2_3l {
442 margin-bottom: 10rpx; 443 margin-bottom: 10rpx;
443 - font-size: 30rpx; 444 + font-size: 26rpx;
444 height: 70rpx; 445 height: 70rpx;
445 line-height: 30rpx 446 line-height: 30rpx
446 } 447 }
@@ -464,7 +465,7 @@ @@ -464,7 +465,7 @@
464 .zs_wz5_3l { 465 .zs_wz5_3l {
465 overflow: hidden; 466 overflow: hidden;
466 text-overflow: ellipsis; 467 text-overflow: ellipsis;
467 - font-size: 30rpx; 468 + font-size: 24rpx;
468 white-space: nowrap; 469 white-space: nowrap;
469 } 470 }
470 471
@@ -524,10 +525,15 @@ @@ -524,10 +525,15 @@
524 font-size: 24rpx; 525 font-size: 24rpx;
525 } 526 }
526 527
  528 +.fs24 {
  529 + font-size: 22rpx;
  530 +}
527 .fs35 { 531 .fs35 {
528 - font-size: 35rpx; 532 + font-size: 30rpx;
529 } 533 }
530 534
  535 +.fs28{ font-size: 28rpx;}
  536 +
531 .xc-wc { 537 .xc-wc {
532 align-items: center; 538 align-items: center;
533 margin-top: -3rpx; 539 margin-top: -3rpx;
pages/user/user_coupon/filter.wxs renamed to components/full_screen/filter.wxs
1 var format = function (text) { 1 var format = function (text) {
  2 +
2 if (!text) { 3 if (!text) {
3 return 4 return
4 } 5 }
components/full_screen/full_screen.js 0 → 100644
  1 +// components/userqy_pop_up/userqy_pop_up.js
  2 +var o = getApp().globalData.setting
  3 +Component({
  4 + /**
  5 + * 页面的初始数据
  6 + */
  7 + data: {
  8 + control: 1,
  9 + is_full_screen_show:0, //全屏显示
  10 + sec_show:3, //倒计时的秒数
  11 + full_ad:null, //全屏广告
  12 + url:o.imghost,
  13 + full_screen:0,
  14 + is_full_screen_men:1,
  15 + hidden:0,
  16 + },
  17 +
  18 + pageLifetimes:{
  19 + hide: function() {
  20 + // 页面被隐藏
  21 + clearInterval(this.data.full_screen);
  22 + },
  23 + },
  24 +
  25 + ready: function () {},
  26 + properties: {},
  27 + methods: {
  28 + close_full_screen(){
  29 + this.setData({is_full_screen_show:0,sec_show:0});
  30 + },
  31 + //-- 跳转到满屏广告的链接 --
  32 + go_full_ad(){
  33 + if(!this.data.full_ad) return false;
  34 + if(!this.data.full_ad.ad_weapplink) return false;
  35 + getApp().goto(this.data.full_ad.ad_weapplink);
  36 + },
  37 + get_the_full_screen(){
  38 + if(this.data.full_ad) {
  39 + return false;
  40 + }
  41 + var th=this;
  42 + //获取全屏的广告
  43 + getApp().request.promiseGet("/api/weshop/ad/page?pid=1001&store_id=" + o.stoid,{
  44 + data: { enabled: 1 }
  45 + }).then(res=>{
  46 + //判断是不是有全屏广告
  47 + if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){
  48 + th.setData({
  49 + is_full_screen_show:1,
  50 + full_ad:res.data.data.pageData[0],
  51 + })
  52 + //--定时关闭--
  53 + th.data.full_screen=setInterval(function(){
  54 + if(!th.data.sec_show) {
  55 + clearInterval(th.data.full_screen);
  56 + th.close_full_screen();
  57 + return false;
  58 + }
  59 + th.data.sec_show--;
  60 + th.setData({sec_show:th.data.sec_show});
  61 + },1000)
  62 +
  63 + }
  64 + })
  65 + }
  66 + },
  67 +
  68 +})
0 \ No newline at end of file 69 \ No newline at end of file
components/full_screen/full_screen.json 0 → 100644
  1 +{
  2 + "component": true,
  3 + "usingComponents": {}
  4 +}
0 \ No newline at end of file 5 \ No newline at end of file
components/full_screen/full_screen.wxml 0 → 100644
  1 +<!-- 全屏控制 -->
  2 +<view wx:if="{{is_full_screen_show}}" class="full_screen" bindtap="go_full_ad" style="background-image: url('{{url+full_ad.ad_code}}');">
  3 + <view catchtap="close_full_screen" class="skip_box">跳过 <text>{{sec_show}}</text></view>
  4 +</view>
  5 +
  6 +
  7 +
components/full_screen/full_screen.wxss 0 → 100644
  1 +.full_screen{
  2 + position: fixed;left: 0;top: 0;
  3 + z-index: 1000000000000;
  4 + background-color: rgba(0,0,0,0.4);
  5 + width: 100%;
  6 + height: 100%;
  7 + background-position: center;
  8 + background-size: 100% 100%;
  9 + background-repeat: no-repeat;
  10 +}
  11 +.skip_box{
  12 + float: right; margin-top: 10rpx; margin-right: 10rpx;
  13 + background-color: gainsboro; width: 120rpx;
  14 + height: 48rpx; font-size: 28rpx; line-height: 48rpx;
  15 + text-align: center; border-radius: 20rpx;
  16 + }
0 \ No newline at end of file 17 \ No newline at end of file
components/qr_code/qr_code.wxss
@@ -57,10 +57,11 @@ left: 0rpx; @@ -57,10 +57,11 @@ left: 0rpx;
57 .barcode { 57 .barcode {
58 height:150rpx; 58 height:150rpx;
59 width: 620rpx; 59 width: 620rpx;
60 -  
61 text-align:center; 60 text-align:center;
62 position:absolute; 61 position:absolute;
63 - left: 30rpx 62 + left: 30rpx;
  63 + top: -6rpx;
  64 +
64 } 65 }
65 canvas{ 66 canvas{
66 width:100%; 67 width:100%;
@@ -83,6 +84,7 @@ display:flex; @@ -83,6 +84,7 @@ display:flex;
83 flex-direction:column; 84 flex-direction:column;
84 position: absolute; 85 position: absolute;
85 left: 75rpx; 86 left: 75rpx;
  87 +top: 5rpx;
86 88
87 } 89 }
88 .qrcode{ 90 .qrcode{
packageA/pages/cardList/cardList.wxml
@@ -10,13 +10,13 @@ @@ -10,13 +10,13 @@
10 <view class="flex bg-white "> 10 <view class="flex bg-white ">
11 <view> 11 <view>
12 <image class="image" src="{{imghost}}{{item.imgUrl && item.imgUrl!=''?item.imgUrl:'/miniapp/images/default_g_img.gif'}}" 12 <image class="image" src="{{imghost}}{{item.imgUrl && item.imgUrl!=''?item.imgUrl:'/miniapp/images/default_g_img.gif'}}"
13 - lazy-load="true" binderror="bind_bnerr" data-errorimg="list.pageData[{{index}}].imgUrl" 13 + lazy-load="true" binderror="bind_bnerr" data-errorimg="list.pageData[{{index}}].imgUrl"
14 /> 14 />
15 </view> 15 </view>
16 <view class="flex fdc space-bt f1 pdl20"> 16 <view class="flex fdc space-bt f1 pdl20">
17 <view> 17 <view>
18 <view class="pdv20 fs28"><text class="ellipsis-2">{{item.serviceName}}</text></view> 18 <view class="pdv20 fs28"><text class="ellipsis-2">{{item.serviceName}}</text></view>
19 - <view class="fs24 c7b">有效天数:{{item.validDays?item.validDays:'不限'}}</view> 19 + <view class="fs24 c7b">有效天数:{{item.validDays?item.validDays:0}}</view>
20 </view> 20 </view>
21 <view class="flex space-bt ali-c"> 21 <view class="flex space-bt ali-c">
22 <view class="price">{{item.money}}</view> 22 <view class="price">{{item.money}}</view>
@@ -36,7 +36,7 @@ @@ -36,7 +36,7 @@
36 style="margin-bottom: 20rpx;"> 36 style="margin-bottom: 20rpx;">
37 <view style="width: 100%;"> 37 <view style="width: 100%;">
38 <image style="width: 100%;" lazy-load="true" binderror="bind_bnerr" data-errorimg="list.pageData[{{index}}].imgUrl" 38 <image style="width: 100%;" lazy-load="true" binderror="bind_bnerr" data-errorimg="list.pageData[{{index}}].imgUrl"
39 - src="{{imghost}}{{item.imgUrl && item.imgUrl!=''?item.imgUrl:'/miniapp/images/default_g_img.gif'}}" mode="{{object.column=='1'?'widthFix':'aspectFit'}}"/></view> 39 + src="{{imghost}}{{item.imgUrl && item.imgUrl!=''?item.imgUrl:'/miniapp/images/default_g_img.gif'}}" mode="aspectFill"/></view>
40 <view class="flex fdc space-bt f1 pdl20"> 40 <view class="flex fdc space-bt f1 pdl20">
41 <view> 41 <view>
42 <view class="pdv20 fs28"><text class="ellipsis-2">{{item.serviceName}}</text></view> 42 <view class="pdv20 fs28"><text class="ellipsis-2">{{item.serviceName}}</text></view>
@@ -58,11 +58,9 @@ @@ -58,11 +58,9 @@
58 58
59 <block wx:else> 59 <block wx:else>
60 <view class="page"> 60 <view class="page">
61 - <block wx:if="{{banner}}">  
62 - <swiper class="swiper" autoplay indicator-dots circular easing-function="easeOutCubic">  
63 - <swiper-item wx:for="{{banner}}"><image src="{{item.ad_code ? item.ad_code : (imghost + default_img)}}" class="swiper-img"/></swiper-item>  
64 - </swiper>  
65 - </block> 61 + <swiper class="swiper" autoplay indicator-dots circular easing-function="easeOutCubic">
  62 + <swiper-item wx:for="{{banner}}"><image src="{{item.ad_code ? item.ad_code : (imghost + default_img)}}" class="swiper-img"/></swiper-item>
  63 + </swiper>
66 <scroll-view class="scroll-view" scroll-y> 64 <scroll-view class="scroll-view" scroll-y>
67 <view class="bg-white"> 65 <view class="bg-white">
68 <view class="flex pd20" wx:for="{{list.pageData}}" bindtap="go_goods" data-gid="{{item.id}}"> 66 <view class="flex pd20" wx:for="{{list.pageData}}" bindtap="go_goods" data-gid="{{item.id}}">
packageA/pages/cart2_ser/cart2_ser.js
@@ -38,8 +38,8 @@ Page({ @@ -38,8 +38,8 @@ Page({
38 bn_pickname: "", //选择的门店名称 38 bn_pickname: "", //选择的门店名称
39 39
40 /*------------------------*/ 40 /*------------------------*/
41 - //判断页面是返回回来的还是 首次进入的  
42 yuer:0, 41 yuer:0,
  42 + is_cart:0, //是不是购物车进来的购买
43 }, 43 },
44 onLoad: function(t) { 44 onLoad: function(t) {
45 wx.setNavigationBarTitle({ 45 wx.setNavigationBarTitle({
@@ -48,7 +48,11 @@ Page({ @@ -48,7 +48,11 @@ Page({
48 48
49 var appD=getApp().globalData.service_now; 49 var appD=getApp().globalData.service_now;
50 this.data.postdata=appD; 50 this.data.postdata=appD;
51 - this.data.param=t; 51 + this.data.param=t;
  52 + if(t.is_cart){
  53 + this.setData({is_cart:1});
  54 + }
  55 +
52 var th=this; 56 var th=this;
53 57
54 getApp().promiseGet("/api/wx/weappSendlist/page", { 58 getApp().promiseGet("/api/wx/weappSendlist/page", {
@@ -71,7 +75,6 @@ Page({ @@ -71,7 +75,6 @@ Page({
71 to.auth.get_u(func); 75 to.auth.get_u(func);
72 }, 76 },
73 77
74 -  
75 //----------------展示页面,是再获取用户信息之后-------------- 78 //----------------展示页面,是再获取用户信息之后--------------
76 show_page:function(){ 79 show_page:function(){
77 var th=this; 80 var th=this;
@@ -84,7 +87,15 @@ Page({ @@ -84,7 +87,15 @@ Page({
84 getApp().globalData.userInfo = e.data.data; 87 getApp().globalData.userInfo = e.data.data;
85 th.setData({userinfo:e.data.data}); 88 th.setData({userinfo:e.data.data});
86 //获取立即购买的商品信息 89 //获取立即购买的商品信息
87 - th.get_buy_goods(); 90 + if(th.data.is_cart){
  91 + //读取门店
  92 + to.get_allsto(function (e) {
  93 + th.setData({ allsto: e });
  94 + th.get_cart();
  95 + })
  96 + }else{
  97 + th.get_buy_goods();
  98 + }
88 99
89 //获取提现金额 100 //获取提现金额
90 getApp().request.get("/api/weshop/withdrawals/summoney", { 101 getApp().request.get("/api/weshop/withdrawals/summoney", {
@@ -101,6 +112,75 @@ Page({ @@ -101,6 +112,75 @@ Page({
101 }); 112 });
102 }, 113 },
103 114
  115 + //-----获取购物车,入口--------
  116 + get_cart: function () {
  117 + var th = this,app=getApp();
  118 + a.get("/api/weshop/cartService/page", {
  119 + data: {
  120 + user_id: to.globalData.user_id, selected:1,
  121 + store_id: oo.stoid, pageSize: 600 },
  122 + success:async function (su) {
  123 + //按门店分类的数组
  124 + var arr = new Array();
  125 + var carr = su.data.data.pageData;
  126 + th.data.cartlist_y = carr; //存储原始购物车列表
  127 +
  128 + //---是不是购买等级卡成功的返回---等级卡显示的判断---
  129 + var is_card_back=getApp().globalData.is_card_back;
  130 +
  131 +
  132 + //在分组的时候,就不要再调用接口,await
  133 + for (var i = 0; i < carr.length; i++) {
  134 + var good=null;
  135 + var item = carr[i];
  136 + await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + oo.stoid + "/" + item.service_id, {}).then(res => {
  137 + good = res.data.data;
  138 + })
  139 +
  140 + item.img_url = oo.imghost + good.imgUrl;
  141 + item.erpItemID=good.erpItemID;
  142 +
  143 + /*----接口要弄出来的,先顶着-----*/
  144 + var pcid = item.pick_id;
  145 + var find = 0;
  146 + //----如果有就加进去,没有就新增一个----
  147 + //-----------循环查找门店-------------
  148 + if (arr.length > 0) {
  149 + for (var j = 0; j < arr.length; j++) {
  150 + if (arr[j].pickup_id == pcid) {
  151 + arr[j].goods.push(item);
  152 + find = 1;break;
  153 + }
  154 + }
  155 + }
  156 + //------如果没有找到-----
  157 + if (find == 0) {
  158 + var pikname = '',sto=null;
  159 + //----找到门店名称-----
  160 + for (var k = 0; k < th.data.allsto.length; k++) {
  161 + if (pcid == th.data.allsto[k].pickup_id) {
  162 + pikname = th.data.allsto[k].pickup_name; sto = th.data.allsto[k]; break;
  163 + }
  164 + }
  165 + var narr = new Array(); narr.push(item);
  166 + var ie = {
  167 + pickup_id: pcid, pname: pikname, goods: narr,keyid:sto.keyid,
  168 + goods_price: 0, shipping_price: 0, user_money: 0, total_amount: 0, order_amount: 0};
  169 + arr.push(ie);
  170 +
  171 + }
  172 + }
  173 +
  174 + //深拷贝
  175 + th.data.old_cartlist= JSON.parse(JSON.stringify(arr));
  176 + th.setData({
  177 + cartlist: arr,
  178 + });
  179 + th.calculatePrice();
  180 + }
  181 + });
  182 + },
  183 +
104 //-----获取立即购买的商品信息---- 184 //-----获取立即购买的商品信息----
105 get_buy_goods: function (){ 185 get_buy_goods: function (){
106 var th=this,a=getApp().request; 186 var th=this,a=getApp().request;
@@ -147,7 +227,117 @@ Page({ @@ -147,7 +227,117 @@ Page({
147 invoiceToggle: !this.data.invoiceToggle 227 invoiceToggle: !this.data.invoiceToggle
148 }); 228 });
149 }, 229 },
150 - 230 +
  231 +
  232 + //-------------------计算购物车订单价格-------------------
  233 + calculatePrice: function() {
  234 + var th = this;
  235 + to.getConfig2(async function(ee){
  236 + wx.showLoading({
  237 + title:"处理中."
  238 + })
  239 + var all_price=0; //所有的商品总价
  240 + var all_shipping_m= 0; //所有的物流总价
  241 + var all_total_m = 0; //所有的订单应付总价
  242 + var all_order_m = 0; //所有的订单应付总价
  243 + var all_user_m=0; //所有的订单用户使用金额
  244 + var all_coupon_price_m=0; //所有的订单用户使用优惠券价格
  245 + var all_cutprice=0; //所有的优惠减件
  246 + var all_order_prom=0; //所有的订单优惠
  247 +
  248 + var umoney = th.data.userinfo.user_money - th.data.txmon - (th.data.userinfo.frozen_money?th.data.userinfo.frozen_money:0);
  249 + var freight_free = ee.freight_free; //全场满多少包邮
  250 + var no_ex_id=ee.no_ex_id;
  251 + var no_ex_good=null;
  252 + var by_qc={};
  253 + var c_arr=JSON.parse(JSON.stringify(th.data.old_cartlist));
  254 +
  255 + //---循环购物车---
  256 + for(var i in c_arr){
  257 +
  258 + var cart_item=c_arr[i]; //就是每一单的意思
  259 + var pickid=cart_item.pickup_id;
  260 + var o_price=0;
  261 + var o_shipping_price=0,goods_weight=-1, goods_piece=-1;
  262 + var item=c_arr[i].goods; //就是每一单的从表的意思
  263 +
  264 + //---如果有选择优惠券的情况下---
  265 + var quan_price=0;
  266 + var coupon_price=0;
  267 + var quan_no= null;
  268 +
  269 + //--------循环计算总价-----------
  270 + for(var j=0;j<item.length;j++){
  271 + o_price += item[j].money * item[j].goods_num;
  272 + }
  273 + var f_o_price=o_price;
  274 + cart_item.goods_price = f_o_price.toFixed(2); //商品总费用,用f_o_price来计算
  275 + //计算物流费用
  276 + cart_item.shipping_price = 0;
  277 +
  278 + //总价计算,总价不包含运费
  279 + cart_item.order_amount= (o_price -quan_price).toFixed(2);
  280 + cart_item.total_amount= f_o_price.toFixed(2);
  281 +
  282 + var order_prom_amount=0; var order_prom_id=0; var o_condition=cart_item.order_amount;
  283 + var order_m=0;
  284 + cart_item.order_prom_amount=0;
  285 + coupon_price=quan_price;
  286 +
  287 +
  288 + cart_item.total_amount= parseFloat(cart_item.total_amount)+parseFloat(cart_item.shipping_price); //总金额
  289 + cart_item.order_amount=parseFloat(cart_item.order_amount)+parseFloat(cart_item.shipping_price); //总金额
  290 + cart_item.total_amount= cart_item.total_amount.toFixed(2);
  291 + cart_item.order_amount=cart_item.order_amount.toFixed(2);
  292 +
  293 + //搭配购在使用余额
  294 + if(th.data.bn_use_money==1 && th.data.is_b_now==1){
  295 +
  296 + if (umoney > cart_item.order_amount) {
  297 + cart_item.user_money = cart_item.order_amount;
  298 + umoney = umoney - cart_item.order_amount;
  299 + }else {
  300 + cart_item.user_money = umoney;
  301 + umoney=0;
  302 + }
  303 +
  304 + }else{
  305 + //--------------如果使用余额,购物车购买---------------------
  306 + if (th.data.js_use_money == 1) {
  307 + if (umoney > cart_item.order_amount) {
  308 + cart_item.user_money = cart_item.order_amount;
  309 + umoney = umoney - cart_item.order_amount;
  310 + }else {
  311 + cart_item.user_money = umoney;
  312 + umoney=0;
  313 + }
  314 + }else{
  315 + cart_item.user_money=0;
  316 + }
  317 + }
  318 + all_price += parseFloat(f_o_price);
  319 + all_total_m += parseFloat(cart_item.total_amount);
  320 + all_shipping_m += parseFloat(cart_item.shipping_price);
  321 + all_order_m += parseFloat(cart_item.order_amount);
  322 + }
  323 +
  324 +
  325 + all_total_m = parseFloat(all_total_m).toFixed(2);
  326 + all_order_m = parseFloat(all_order_m).toFixed(2);
  327 + all_price = parseFloat(all_price).toFixed(2);
  328 + all_total_m = parseFloat(all_total_m).toFixed(2);
  329 +
  330 + var atxt = "formData.total_amount";
  331 + var atxt1 = "formData.order_amount";
  332 + var atxt2 = "formData.all_price";
  333 +
  334 + th.setData({ [atxt]: all_total_m, [atxt1]: all_order_m,
  335 + [atxt2]: all_price,show_submit:1
  336 + })
  337 + th.data.order_prom_list_cart=c_arr;
  338 + wx.hideLoading();
  339 + });
  340 + },
151 341
152 //---------计算立即购买---------- 342 //---------计算立即购买----------
153 calculatePrice2: function () { 343 calculatePrice2: function () {
@@ -186,38 +376,73 @@ Page({ @@ -186,38 +376,73 @@ Page({
186 if(this.data.is_summit_ing==1) return false; //--提交中退出-- 376 if(this.data.is_summit_ing==1) return false; //--提交中退出--
187 this.data.is_summit_ing=1; 377 this.data.is_summit_ing=1;
188 var th=this,pdata=new Array(); 378 var th=this,pdata=new Array();
189 - var ff=true; 379 +
190 var item={ 380 var item={
191 - 'user_id': to.globalData.user_id,  
192 - 'account': th.data.formData.order_amount, //使用余额  
193 - 'store_id':oo.stoid, //商家  
194 - 'list':new Array(),  
195 - };  
196 - var gg = getApp().globalData.service_now;  
197 - var goods={  
198 - 'card_id': th.data.bn_goods.id,  
199 - 'itemid': th.data.bn_goods.erpItemID,  
200 - 'qty': gg.goods_num,  
201 - 'price': th.data.formData.order_amount,  
202 - 'pickup_id':gg.pick_id,  
203 - 'pickup_keyid':gg.keyid,  
204 - };  
205 -  
206 - //--导购分享过来的id--  
207 - if(gg.guide_id){  
208 - goods.guide_id=gg.guide_id;  
209 - goods.guide_type=gg.guide_type;  
210 - //调用接口判断是不是会员  
211 - await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/"+oo.stoid+"/"+gg.guide_id,{}).then(res=>{  
212 - if(res.data.code==0){  
213 - goods.guide_name=res.data.data.salesman;  
214 - goods.guide_sn=res.data.data.salesman_no;  
215 - }  
216 - }) 381 + 'user_id': to.globalData.user_id,
  382 + 'account': th.data.formData.order_amount, //使用余额
  383 + 'store_id':oo.stoid, //商家
  384 + 'list':new Array(),
  385 + };
  386 +
  387 + //判断是不是购物车购买还是立即购买
  388 + if(this.data.is_cart){
  389 + var list= th.data.cartlist;
  390 + for(var i in list){
  391 + var gglist = list[i].goods;
  392 + for(var j in gglist){
  393 + var gg=gglist[j];
  394 + var goods={
  395 + 'card_id': gg.service_id,
  396 + 'itemid': gg.erpItemID,
  397 + 'qty': gg.goods_num,
  398 + 'price': gg.money,
  399 + 'pickup_id':gg.pick_id,
  400 + 'pickup_keyid':list[i].keyid,
  401 + };
  402 + //--导购分享过来的id--
  403 + if(gg.guide_id){
  404 + goods.guide_id=gg.guide_id;
  405 + goods.guide_type=gg.guide_type;
  406 + //调用接口判断是不是会员
  407 + await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/"+oo.stoid+"/"+gg.guide_id,{}).then(res=>{
  408 + if(res.data.code==0){
  409 + goods.guide_name=res.data.data.salesman;
  410 + goods.guide_sn=res.data.data.salesman_no;
  411 + }
  412 + })
  413 + }
  414 + item.list.push(goods);
  415 + }
  416 + }
  417 + }else{
  418 +
  419 + var gg = getApp().globalData.service_now;
  420 + var goods={
  421 + 'card_id': th.data.bn_goods.id,
  422 + 'itemid': th.data.bn_goods.erpItemID,
  423 + 'qty': gg.goods_num,
  424 + 'price': th.data.formData.order_amount,
  425 + 'pickup_id':gg.pick_id,
  426 + 'pickup_keyid':gg.keyid,
  427 + };
  428 +
  429 + //--导购分享过来的id--
  430 + if(gg.guide_id){
  431 + goods.guide_id=gg.guide_id;
  432 + goods.guide_type=gg.guide_type;
  433 + //调用接口判断是不是会员
  434 + await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/"+oo.stoid+"/"+gg.guide_id,{}).then(res=>{
  435 + if(res.data.code==0){
  436 + goods.guide_name=res.data.data.salesman;
  437 + goods.guide_sn=res.data.data.salesman_no;
  438 + }
  439 + })
  440 + }
  441 + item.list.push(goods);
217 } 442 }
218 - item.list.push(goods); 443 +
  444 +
219 pdata=item; 445 pdata=item;
220 -  
221 var str = JSON.stringify(pdata); 446 var str = JSON.stringify(pdata);
222 console.log("支付数据"); 447 console.log("支付数据");
223 console.log(str); 448 console.log(str);
@@ -236,7 +461,13 @@ Page({ @@ -236,7 +461,13 @@ Page({
236 if (res.statusCode == 200) { 461 if (res.statusCode == 200) {
237 var data=res.data; 462 var data=res.data;
238 if(data.code==0){ 463 if(data.code==0){
239 - 464 + if(th.data.is_cart){
  465 + var list = th.data.cartlist_y;
  466 + for (var i = 0; i < list.length; i++) {
  467 + //删除购物车
  468 + a.delete("/api/weshop/cartService/del/" + oo.stoid + "/" + list[i].id, {});
  469 + }
  470 + }
240 var order_amount = pdata.account; 471 var order_amount = pdata.account;
241 //要进行判断,如果是用微信支付,就要跳转到支付界面 472 //要进行判断,如果是用微信支付,就要跳转到支付界面
242 if (order_amount > 0) { 473 if (order_amount > 0) {
@@ -254,7 +485,7 @@ Page({ @@ -254,7 +485,7 @@ Page({
254 getApp().showWarning("购买成功"); 485 getApp().showWarning("购买成功");
255 setTimeout(function () { 486 setTimeout(function () {
256 wx.reLaunch({ 487 wx.reLaunch({
257 - url: "/packageA/pages/cardList/cardList", 488 + url: "/pages/user/my_service/i_service",
258 }) 489 })
259 },1000) 490 },1000)
260 }, function () { 491 }, function () {
packageA/pages/cart2_ser/cart2_ser.wxml
1 <wxs module="filters" src="../../../utils/filter.wxs"></wxs> 1 <wxs module="filters" src="../../../utils/filter.wxs"></wxs>
2 <form bindsubmit="submitForm"> 2 <form bindsubmit="submitForm">
3 <view class="container"> 3 <view class="container">
4 - 4 +
  5 + <!---------------------购物车进来,有可能多单---------------------->
  6 + <block wx:if="{{is_cart}}">
  7 + <view wx:for="{{cartlist}}" wx:for-index="pidx">
  8 + <view class="use-item bfff bdr_t-14 mgt20">
  9 + <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'></image>
  10 + <!-- <view>门店:{{item.pname}}</view> -->
  11 + <view>{{item.pname}}</view>
  12 + </view>
  13 + <view class="order-detail" wx:for="{{item.goods}}" wx:for-index="idx" wx:for-item="items">
  14 + <!----商品图片----->
  15 + <view class="goods-img" style="position: relative">
  16 + <image wx:if="{{items.is_gift}}" src="{{imgUrl}}/miniapp/images/giveaway.png" class="gift_image"></image>
  17 + <image class="wh100 bdr14" src="{{items.img_url}}" binderror='cart_set_err' data-err='cartlist[{{pidx}}].goods[{{idx}}].img_url'></image>
  18 + </view>
  19 + <!----商品名称规格---->
  20 + <navigator class="order-cont" url="/packageA/pages/goodsInfo/goodsInfo?goods_id={{items.service_id}}">
  21 + <view class="goods-name ellipsis-2">{{items.service_name}}</view>
  22 + <!-----商品名称规格------>
  23 + <view class="order-num flex-space-between">
  24 + <view class="co-red">¥<text class="fs36">{{filters.toFix(items.money,2)}}</text></view>
  25 + <view class="goods-num">x{{items.goods_num}}</view>
  26 + </view>
  27 + </navigator>
  28 + </view>
  29 + </view>
  30 + </block>
  31 +
5 <!------立即购买--------> 32 <!------立即购买-------->
6 - <block> 33 + <block wx:else>
7 <view class="use-item bfff bdr_t-14 mgt20"> 34 <view class="use-item bfff bdr_t-14 mgt20">
8 <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'> </image> <view>{{bn_pickname}}</view></view> 35 <image class="dp" src='{{imgUrl}}/miniapp/images/goodscategory/new_store.png'> </image> <view>{{bn_pickname}}</view></view>
9 <view class="order-detail"> 36 <view class="order-detail">
@@ -24,14 +51,12 @@ @@ -24,14 +51,12 @@
24 </view> 51 </view>
25 </navigator> 52 </navigator>
26 </view> 53 </view>
27 - </block>  
28 - <!--  
29 - <view class="coupon-mes flex-vertical">  
30 - <view>留言</view>  
31 - <view class="leave-word">  
32 - <input placeholder-class="fs28" placeholder='给商家留言,最多100字'bindinput="keyUpChangeNum" disabled="{{disabled}}" class="word-box" maxlength="100" name="user_note"></input>  
33 - </view>  
34 - </view>--> 54 + </block>
  55 +
  56 +
  57 +
  58 +
  59 +
35 60
36 <view class="information bdr14"> 61 <view class="information bdr14">
37 <view class="item"> 62 <view class="item">
packageA/pages/goodsInfo/goodsInfo.js
@@ -400,8 +400,9 @@ Page({ @@ -400,8 +400,9 @@ Page({
400 'data.goods_id': t.data.data.id, 400 'data.goods_id': t.data.data.id,
401 'data.id': t.data.data.id, 401 'data.id': t.data.data.id,
402 'data.sales_sum': t.data.data.sales_sum, 402 'data.sales_sum': t.data.data.sales_sum,
403 - 'data.storageId':t.data.data.storageId  
404 - }); 403 + 'data.storageId':t.data.data.storageId,
  404 + 'data.service_sn':t.data.data.serviceSn,
  405 + });
405 406
406 407
407 //-----商品详情--- 408 //-----商品详情---
@@ -522,9 +523,77 @@ Page({ @@ -522,9 +523,77 @@ Page({
522 newd['pick_name'] = th.data.sto_sele_name; 523 newd['pick_name'] = th.data.sto_sele_name;
523 newd['guide_id'] = getApp().globalData.guide_id; 524 newd['guide_id'] = getApp().globalData.guide_id;
524 newd['guide_type']=0; 525 newd['guide_type']=0;
525 -  
526 th.buyNow(newd); 526 th.buyNow(newd);
527 - } 527 + }else{
  528 +
  529 + var newd = {
  530 + service_id: th.data.data.id,
  531 + service_sn:th.data.data.service_sn,
  532 + service_name:th.data.data.goods_name,
  533 + goods_num: th.data.goodsInputNum,
  534 + pick_id: th.data.sto_sele_id,
  535 + user_id:oo.user_id,
  536 + store_id:os.stoid,
  537 + money:th.data.data.shop_price
  538 + };
  539 + if(getApp().globalData.guide_id){
  540 + newd['guide_id'] = getApp().globalData.guide_id;
  541 + newd['guide_type']=0;
  542 + }
  543 +
  544 + //----先看会员在购物车中是否加入了该商品-----
  545 + getApp().request.get("/api/weshop/cartService/page", {
  546 + data: {
  547 + store_id: os.stoid,
  548 + user_id: oo.user_id,
  549 + service_id: th.data.data.id,
  550 + pick_id: th.data.sto_sele_id,
  551 + },
  552 + success: function(re) {
  553 +
  554 + //-------如果购物车中有相关的数据---------
  555 + if (re.data.data.total > 0) {
  556 + var item = re.data.data.pageData[0];
  557 + var updata = {
  558 + id: item.id,
  559 + goods_num: th.data.goodsInputNum + item.goods_num,
  560 + money: th.data.data.shop_price,
  561 + store_id: os.stoid,
  562 + };
  563 +
  564 + if (getApp().globalData.guide_id) {
  565 + updata['guide_id'] = getApp().globalData.guide_id;
  566 + updata['guide_type'] = 1;
  567 + }
  568 + getApp().request.put("/api/weshop/cartService/update", {
  569 + data: updata,
  570 + success: function(t) {
  571 + getApp().my_warnning('加入购物车成功', 1, th, 450);
  572 + var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
  573 + th.setData({
  574 + cartGoodsNum: c_num
  575 + });
  576 + th.closeSpecModal();
  577 + }
  578 + });
  579 + } else {
  580 +
  581 + getApp().request.post("/api/weshop/cartService/save", {
  582 + data: newd,
  583 + success: function(t) {
  584 + getApp().my_warnning('加入购物车成功', 1, th, 450);
  585 + var c_num = th.data.cartGoodsNum + th.data.goodsInputNum;
  586 + th.setData({
  587 + cartGoodsNum: c_num
  588 + });
  589 + th.closeSpecModal();
  590 + }
  591 + });
  592 + }
  593 + }
  594 + });
  595 +
  596 + }
528 597
529 598
530 }, 599 },
@@ -682,9 +751,26 @@ Page({ @@ -682,9 +751,26 @@ Page({
682 for (var i = 0; i < e.data.data.pageData.length; i++) { 751 for (var i = 0; i < e.data.data.pageData.length; i++) {
683 num += e.data.data.pageData[i].goods_num; 752 num += e.data.data.pageData[i].goods_num;
684 } 753 }
  754 +
  755 + /*--
685 t.setData({ 756 t.setData({
686 cartGoodsNum: num 757 cartGoodsNum: num
687 - }); 758 + });--*/
  759 +
  760 + //-- 读取服务卡的数量 --
  761 + getApp().promiseGet("/api/weshop/cartService/page",{
  762 + data:{
  763 + store_id: s.globalData.setting.stoid,
  764 + user_id: s.globalData.user_id,
  765 + }
  766 + }).then(res=>{
  767 + for (var i = 0; i < res.data.data.pageData.length; i++) {
  768 + num += res.data.data.pageData[i].goods_num;
  769 + }
  770 + t.setData({cartGoodsNum:num});
  771 + })
  772 +
  773 +
688 } 774 }
689 }); 775 });
690 }, 776 },
packageA/pages/goodsInfo/goodsInfo.wxml
@@ -76,7 +76,7 @@ @@ -76,7 +76,7 @@
76 <block wx:else> 76 <block wx:else>
77 <view class="no_store" wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(未找到门店)</view> 77 <view class="no_store" wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(未找到门店)</view>
78 <block wx:else> 78 <block wx:else>
79 - <view class="no_store" wx:if="{{def_pick_store && def_pick_store.is_no_dis}}">(该门店无此项目)</view> 79 + <view class="no_store" wx:if="{{def_pick_store && def_pick_store.is_no_dis}}">(配送不匹配)</view>
80 </block> 80 </block>
81 </block> 81 </block>
82 82
@@ -160,8 +160,8 @@ @@ -160,8 +160,8 @@
160 </view> 160 </view>
161 161
162 <block> 162 <block>
163 - <!-- <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn">加入购物车</view> -->  
164 - <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn" style="width: 64%; border-radius: 56rpx;">立即购买</view> 163 + <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn">加入购物车</view>
  164 + <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn">立即购买</view>
165 </block> 165 </block>
166 166
167 </view> 167 </view>
@@ -211,7 +211,7 @@ @@ -211,7 +211,7 @@
211 <block wx:else> 211 <block wx:else>
212 <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view> 212 <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view>
213 <block wx:else> 213 <block wx:else>
214 - <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(该门店无此项目)</view> 214 + <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view>
215 <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}">(库存不足)</view> 215 <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}">(库存不足)</view>
216 </block> 216 </block>
217 </block> 217 </block>
@@ -234,7 +234,7 @@ @@ -234,7 +234,7 @@
234 234
235 <view class="spec-cart-btns"> 235 <view class="spec-cart-btns">
236 <view wx:if="{{def_pick_store && def_pick_store.is_no_dis}}" class="spec-cart-btn fs32" data-action="add" 236 <view wx:if="{{def_pick_store && def_pick_store.is_no_dis}}" class="spec-cart-btn fs32" data-action="add"
237 - style="background-color: #dcdcdc;color: #999;">该门店无此项目</view> 237 + style="background-color: #dcdcdc;color: #999;">配送不匹配</view>
238 <block wx:else> 238 <block wx:else>
239 239
240 <!-- 根本就找不到门店 --> 240 <!-- 根本就找不到门店 -->
packageA/pages/hongBao/hongBao.js
@@ -34,9 +34,15 @@ Page({ @@ -34,9 +34,15 @@ Page({
34 .then(function(data) { 34 .then(function(data) {
35 self.data.hongBaoData = data.data.data; 35 self.data.hongBaoData = data.data.data;
36 self.countDown(); 36 self.countDown();
37 - self.setData({  
38 - storeName: app.globalData.config.store_name  
39 - }); 37 + setTimeout(function (){
  38 + if(app.globalData.config && app.globalData.config.store_name){
  39 + self.setData({
  40 + storeName: app.globalData.config.store_name
  41 + });
  42 + }
  43 +
  44 + },1000)
  45 +
40 }); 46 });
41 47
42 }); 48 });
packageA/pages/libao_payment/payment.js 0 → 100644
  1 +var e = getApp();
  2 +var regeneratorRuntime = require('../../../utils/runtime.js');
  3 +Page({
  4 + /**
  5 + * 页面的初始数据
  6 + */
  7 + data: {
  8 + url: e.globalData.setting.imghost,
  9 + resourceUrl: e.globalData.setting.resourceUrl,
  10 + iurl: e.globalData.setting.imghost,
  11 + type:0
  12 + },
  13 +
  14 + /**
  15 + * 生命周期函数--监听页面加载
  16 + */
  17 + onLoad: function (options) {
  18 + wx.setNavigationBarTitle({
  19 + title: '支付成功',
  20 + });
  21 + this.setData({type:options.type});
  22 +
  23 + },
  24 +
  25 + goto: function () {
  26 + var url = '/pages/index/index/index';
  27 + getApp().goto(url)
  28 + },
  29 +})
0 \ No newline at end of file 30 \ No newline at end of file
packageA/pages/libao_payment/payment.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "支付成功",
  3 + "usingComponents": {}
  4 +}
0 \ No newline at end of file 5 \ No newline at end of file
packageA/pages/libao_payment/payment.wxml 0 → 100644
  1 +<wxs module="filters" src="../../../utils/filter.wxs"></wxs>
  2 +<view>
  3 + <!-- 支付成功提示 -->
  4 + <view class="payradio">
  5 + <!-- 提示框 -->
  6 + <view class="Success_box flex-center">
  7 + <view>
  8 + <view class="flex-center">
  9 + <image src="{{url}}miniapp/images/pay/paysuccess.png"></image>
  10 + </view>
  11 +
  12 + <view class="show_title" wx:if="{{type==1}}">积分兑换成功,点击我的礼包查看!</view>
  13 + <view class="show_title" wx:if="{{type==2}}">购买成功,点击我的礼包查看!</view>
  14 + </view>
  15 + </view>
  16 + </view>
  17 +
  18 + <!-- 跳转链接 -->
  19 + <view>
  20 + <!-- 链接 -->
  21 + <view class="fs32">
  22 + <view class="flex-center">
  23 + <navigator class="pay_order flex-center" url="/packageA/pages/myGift/myGift?index=1">
  24 + <view>我的礼包</view>
  25 + </navigator>
  26 + </view>
  27 + <view class="flex-center">
  28 + <navigator class="pay_home flex-center" bindtap="goto">
  29 + <view>回到首页</view>
  30 + </navigator>
  31 + </view>
  32 + </view>
  33 + </view>
  34 +</view>
0 \ No newline at end of file 35 \ No newline at end of file
packageA/pages/libao_payment/payment.wxss 0 → 100644
  1 +page {
  2 + border-top: 2rpx solid rgb(245, 245, 245);
  3 +}
  4 +.line {
  5 + border-top: 2rpx solid rgb(245, 245, 245);
  6 + width: 700rpx;
  7 +}
  8 +
  9 +.payradio .Success_box {
  10 + padding-top: 45rpx;
  11 + padding-bottom: 45rpx;
  12 +}
  13 +
  14 +.payradio .Success_box .Success_box_title {
  15 + margin-top: 45rpx;
  16 + color: rgb(8, 8, 8);
  17 +}
  18 +
  19 +.payradio image {
  20 + width: 140rpx;
  21 + height: 140rpx;
  22 + display: flex;
  23 +}
  24 +
  25 +.payitem_max {
  26 + padding: 0rpx 55rpx;
  27 + color: rgb(104, 104, 104);
  28 + padding-bottom: 30rpx;
  29 +}
  30 +
  31 +.payitem_max .payitem {
  32 + margin-top: 30rpx;
  33 +}
  34 +
  35 +.payitem_max .payitem .pay_nam {
  36 + width: 200rpx;
  37 +}
  38 +
  39 +.payitem_max .payitem view {
  40 + margin-right: 50rpx;
  41 +}
  42 +.pay_order {
  43 + margin-top: 15rpx;
  44 + color: rgb(104, 104, 104);
  45 + width: 560rpx;
  46 + height: 62rpx;
  47 + border-radius: 30rpx;
  48 + border: 3rpx solid rgb(209, 209, 209);
  49 +}
  50 +
  51 +.pay_home {
  52 + margin-top: 35rpx;
  53 + color: rgb(255, 255, 255);
  54 + width: 566rpx;
  55 + height: 68rpx;
  56 + border-radius: 30rpx;
  57 + background-color: rgb(219, 27, 52);
  58 +}
  59 +.address{
  60 + width: 470rpx;
  61 +}
  62 +
  63 +.show_title{ margin-top: 90rpx; font-size: 34rpx;}
0 \ No newline at end of file 64 \ No newline at end of file
packageA/pages/myGift/myGift.js 0 → 100644
  1 +// packageA//pages/myGift/myGift.js
  2 +const app = getApp();
  3 +let self = null;
  4 +var os = app.globalData.setting;
  5 +
  6 +Page({
  7 +
  8 + /**
  9 + * 页面的初始数据
  10 + */
  11 + data: {
  12 + tabArr: ['礼包列表', '我的礼包'],
  13 + currentIndex: 0,
  14 +
  15 + list: null,
  16 + isLoading: false, // 检测是否已经发送请求,防止重复发送请求
  17 + noMore: false, // 检测是否有更多数据,true为没有更多数据,false为还有数据
  18 + pageNum: 1, // 当前页数
  19 + },
  20 +
  21 + clickTab(e) {
  22 + let index = e.target.dataset.index;
  23 + let url = '';
  24 + let data = {
  25 + store_id: app.globalData.setting.stoid,
  26 + user_id: app.globalData.user_id,
  27 + };
  28 +
  29 + this.setData({
  30 + list: null,
  31 + pageNum: 1,
  32 + noMore: false,
  33 + currentIndex: index,
  34 + });
  35 +
  36 + if(index == 0) {
  37 + url = '/api/weshop/libao/libaoForm/page';
  38 + } else if(index == 1) {
  39 + url = '/api/weshop/libao/libaoFormvip/page';
  40 + };
  41 +
  42 + this.getData(true, url, data);
  43 + },
  44 +
  45 + /**
  46 + * 生命周期函数--监听页面加载
  47 + */
  48 + onLoad: function (options) {
  49 + self = this;
  50 + if(options.index){
  51 + this.setData({currentIndex:1}); //查看我的礼包
  52 + }
  53 + app.isLogin().then(function(data) {//进入页面前已经授权登录成功
  54 + self.setData({
  55 + userInfo: data,
  56 + });
  57 + });
  58 + },
  59 +
  60 + /**
  61 + * 生命周期函数--监听页面初次渲染完成
  62 + */
  63 + onReady: function () {},
  64 +
  65 + /**
  66 + * 生命周期函数--监听页面显示
  67 + */
  68 + onShow: function () {
  69 + if(app.globalData.userInfo) {
  70 + if(!this.data.isLogin) {
  71 + this.setData({
  72 + userInfo: app.globalData.userInfo,
  73 + imghost: app.globalData.setting.imghost,
  74 + isLogin: true,
  75 + });
  76 +
  77 + var index=this.data.currentIndex;
  78 + let url = '';
  79 + let data = {
  80 + store_id: app.globalData.setting.stoid,
  81 + user_id: app.globalData.user_id,
  82 + };
  83 + this.setData({
  84 + list: null,
  85 + pageNum: 1,
  86 + noMore: false,
  87 + });
  88 +
  89 + if(index == 0) {
  90 + url = '/api/weshop/libao/libaoForm/page';
  91 + } else if(index == 1) {
  92 + url = '/api/weshop/libao/libaoFormvip/page';
  93 + };
  94 +
  95 + this.getData(true, url, data);
  96 + };
  97 + };
  98 + },
  99 +
  100 + /**
  101 + * 生命周期函数--监听页面隐藏
  102 + */
  103 + onHide: function () {
  104 +
  105 + },
  106 +
  107 + /**
  108 + * 生命周期函数--监听页面卸载
  109 + */
  110 + onUnload: function () {
  111 +
  112 + },
  113 +
  114 + /**
  115 + * 页面相关事件处理函数--监听用户下拉动作
  116 + */
  117 + onPullDownRefresh: function () {
  118 +
  119 + },
  120 +
  121 + /**
  122 + * 页面上拉触底事件的处理函数
  123 + */
  124 + onReachBottom: function () {
  125 + this.scrollToLower('/api/weshop/libao/libaoFormvip/page', {
  126 + store_id: app.globalData.setting.stoid,
  127 + user_id: app.globalData.user_id,
  128 + });
  129 + },
  130 +
  131 + /**
  132 + * 用户点击右上角分享
  133 + */
  134 + onShareAppMessage: function () {
  135 +
  136 + },
  137 +
  138 + /**
  139 + * 请求数据
  140 + */
  141 + getData: function(isInit, url, data) {
  142 + app.request.promiseGet(url, {
  143 + data: data,
  144 + isShowLoading: true,
  145 + })
  146 + .then(function(res) {
  147 + if(res.data.code == 0) {
  148 +
  149 + self.setData({
  150 + isLoading: false
  151 + });
  152 +
  153 + if(isInit) {// 第一次加载
  154 + self.setData({
  155 + list: res.data.data
  156 + });
  157 + } else {
  158 + self.setData({
  159 + 'list.pageData': self.data.list.pageData.concat(res.data.data.pageData)
  160 + });
  161 + };
  162 +
  163 + if((res.data.data.pageData.length == 0) || (res.data.data.pageSize * res.data.data.page >= res.data.data.total)) {
  164 + self.setData({
  165 + noMore: true
  166 + });
  167 + };
  168 +
  169 + } else {
  170 + self.setData({
  171 + 'list.pageData': []
  172 + });
  173 + };
  174 +
  175 + })
  176 + .catch(function(err) {
  177 + console.log('出错拉!!!!',err);
  178 + self.setData({
  179 + 'list.pageData': []
  180 + });
  181 + });
  182 + },
  183 +
  184 +
  185 + /**
  186 + * 上拉加载
  187 + */
  188 + scrollToLower(url, requestData) {
  189 + // 数据总量
  190 + let total = this.data.list.total;
  191 + // 单页最大数据量
  192 + let pageSize = this.data.list.pageSize;
  193 + // 如果数据总量不为0且小于或等于单页最大数据量,说明数据已全部加载,显示‘没有更多了’
  194 + if((total != 0)&&(total <= pageSize)) {
  195 + this.setData({
  196 + noMore: true
  197 + });
  198 + };
  199 +
  200 + if(!this.data.isLoading && !this.data.noMore) {
  201 + this.setData({
  202 + isLoading: true,
  203 + pageNum: this.data.pageNum + 1
  204 + });
  205 + requestData.page = this.data.pageNum;
  206 + this.getData(false, url, requestData);
  207 + };
  208 + },
  209 +
  210 + /**
  211 + * 点击跳转
  212 + */
  213 + goto(e) {
  214 + let url = '';
  215 + if(e.target.dataset.url) {
  216 + url = e.target.dataset.url;
  217 + } else {
  218 + url = e.currentTarget.dataset.url;
  219 + }
  220 + app.goto(url);
  221 + },
  222 +
  223 +
  224 + //-- 礼包购买 --
  225 + GetBuyPrice: function(e) {
  226 + var th = this,that=th;
  227 + var index=e.currentTarget.dataset.index;
  228 + var item=that.data.list.pageData[index];
  229 +
  230 + var id = item.id; //活动id
  231 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  232 + var user=getApp().globalData.userInfo;
  233 +
  234 + my_confirm.open(
  235 + "是否确定购买该礼包",
  236 + "取消",
  237 + "确定",
  238 + function() {
  239 + my_confirm.open_cancel(0);
  240 + },
  241 + function() {
  242 + my_confirm.open_cancel(0);
  243 + var json = {
  244 + "lbid": id, //活动Id
  245 + "paytype": 2, //1=积分兑换 2=购买
  246 + "store_id": os.stoid, //商家Id
  247 + "user_id": user.user_id, //用户ID
  248 + };
  249 + var url = "/api/weshop/libao/libaoFormvip/libaoOrder";
  250 + getApp().request.post(url,
  251 + {
  252 + data:json,
  253 + success:function(res) {
  254 + if (res.data.code == 0 && res.data.data) {
  255 + res = res.data.data;
  256 + wx.requestPayment({
  257 + timeStamp: String(res.timeStamp),
  258 + nonceStr: res.nonceStr,
  259 + package: res.packageValue,
  260 + signType: res.signType,
  261 + paySign: res.paySign,
  262 + success: function(res) {
  263 + getApp().my_warnning("支付成功", 1, th);
  264 + },
  265 + fail: function(res) {
  266 + getApp().my_warnning("取消支付", 0, th);
  267 + }
  268 + });
  269 + } else {
  270 + getApp().my_warnning(res.data.msg, 0, th);
  271 + }
  272 + }
  273 + })
  274 + })
  275 + },
  276 +
  277 + //-- 积分兑换 --
  278 + GetBuyIntegral: function(e) {
  279 + var th = this,that=th;
  280 + var index=e.currentTarget.dataset.index;
  281 + var item=that.data.list.pageData[index];
  282 +
  283 + var id = item.id; //活动id
  284 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  285 + var user=getApp().globalData.userInfo;
  286 + my_confirm.open(
  287 + "是否确定兑换该礼包",
  288 + "取消",
  289 + "确定",
  290 + function() {
  291 + my_confirm.open_cancel(0);
  292 + },
  293 + function() {
  294 + my_confirm.open_cancel(0);
  295 + var json = {
  296 + "lbid": id, //活动Id
  297 + "paytype": 1, //1=积分兑换 2=购买
  298 + "store_id": os.stoid, //商家Id
  299 + "user_id": user.user_id, //用户ID
  300 + };
  301 + var url = "/api/weshop/libao/libaoFormvip/libaoOrder";
  302 + getApp().request.post(url,{
  303 + data:json,
  304 + success:function(res) {
  305 + if (res.data.code == 0) {
  306 + getApp().my_warnning("兑换成功!", 1, th);
  307 + } else {
  308 + getApp().my_warnning(res.data.msg, 0, th);
  309 + }
  310 + },
  311 + })
  312 +
  313 + })
  314 + },
  315 +
  316 +})
0 \ No newline at end of file 317 \ No newline at end of file
packageA/pages/myGift/myGift.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "我的礼包",
  3 + "enablePullDownRefresh": false,
  4 + "usingComponents": {
  5 + "warn": "/components/long_warn/long_warn",
  6 + "nav_b": "/components/nav_b/nav_b",
  7 + "my_confirm": "/components/my_confirm/my_confirm",
  8 + "nodata": "/components/nodata/nodata"
  9 + }
  10 +}
0 \ No newline at end of file 11 \ No newline at end of file
packageA/pages/myGift/myGift.wxml 0 → 100644
  1 +<wxs module="filter" src="../../../utils/filter.wxs"></wxs>
  2 +<view>
  3 + <view class="tab-title" bindtap="clickTab">
  4 + <view class="tab-title-item {{currentIndex == index ? 'active':''}}" wx:for="{{tabArr}}" data-index="{{index}}">{{item}}</view>
  5 + </view>
  6 + <view class="tab-content">
  7 + <block wx:if="{{currentIndex == 0}}">
  8 + <view class="tab-item" wx:for="{{list.pageData}}">
  9 + <view bindtap="goto" data-url="{{'/packageA/pages/myGiftDetails/myGiftDetails?index=0&id=' + item.id}}">
  10 + <!-- 图片 -->
  11 + <view class="img-container"><image src="{{imghost + (item.lburl ? item.lburl:'miniapp/images/default_g_img.gif')}}" class="img" mode="widthFix"/></view>
  12 + <view class="desc-container">
  13 + <!-- 标题 -->
  14 + <view class="mgb10 ellipsis-2 lh taj">{{item.lbtitle}}</view>
  15 + <!-- 价格 -->
  16 + <view class="flex jc_sb ai-center pdb10">
  17 + <view class="flex ai-center">
  18 + <view class="c-red fs28"><text class="rmb">{{item.lbprice}}</text>/{{item.lbintegral}}积分</view>
  19 + <view class="fs22 c-a4 line-through mgl10">零售价{{item.oldprice}}</view>
  20 + </view>
  21 + <view class="fs24 c-a4">已售{{item.salenum}}件</view>
  22 + </view>
  23 + <!-- 时间 -->
  24 + <view class="date">活动截止日期 {{filter.format_time(item.expdate)}}</view>
  25 + <!-- 按钮 -->
  26 + </view>
  27 + </view>
  28 + <view class="btn-container pd20">
  29 + <view bindtap="GetBuyIntegral" data-index="{{index}}" class="btn red">立即兑换</view>
  30 + <view bindtap="GetBuyPrice" data-index="{{index}}" class="btn pink">立即购买</view>
  31 + </view>
  32 + </view>
  33 + </block>
  34 +
  35 + <block wx:else>
  36 + <view class="tab-item flex pd20" wx:for="{{list.pageData}}" bindtap="goto" data-url="{{'/packageA/pages/myGiftDetails/myGiftDetails?index=1&id=' + item.lbvipid}}">
  37 + <view class="img-container2"><image src="{{imghost + (item.lburl ? item.lburl:'miniapp/images/default_g_img.gif')}}" class="img" mode="widthFix" data-index="{{index}}"/></view>
  38 + <view class="flex fdc jc_sb">
  39 + <view>
  40 + <!-- 标题 -->
  41 + <view class="mgb10 ellipsis-2 lh taj">{{item.lbtitle}}</view>
  42 + <!-- 时间 -->
  43 + <view class="date pdb20">活动截止日期 {{filter.format_time(item.endtime)}}</view>
  44 + </view>
  45 + <!-- 说明 -->
  46 + <view class="c-red fs24">*请到线下门店兑换</view>
  47 + </view>
  48 + </view>
  49 + </block>
  50 +
  51 + <nodata nodataContainer="t-c" wx:if="{{list.pageData.length == 0}}"></nodata>
  52 + <view class="noMore" hidden="{{!noMore}}" wx:if="{{list.pageData.length !== 0}}">—— 已经到底了 ——</view>
  53 + </view>
  54 +</view>
  55 +
  56 +<!-- 引入提示组件 -->
  57 +<warn id="warn"></warn>
  58 +<my_confirm id="my_confirm"></my_confirm>
packageA/pages/myGift/myGift.wxss 0 → 100644
  1 +@charset "utf-8";
  2 +
  3 +.c-a4 {
  4 + color: #a4a4a4;
  5 +}
  6 +
  7 +.c-red {
  8 + color: #FF6768;
  9 +}
  10 +
  11 +.h88 {
  12 + height: 88rpx;
  13 +}
  14 +
  15 +
  16 +page {
  17 + background-color: #f0f0f0;
  18 +}
  19 +
  20 +.tab-title {
  21 + display: flex;
  22 + position: sticky;
  23 + background-color: white;
  24 + top: 0;
  25 + font-size: 30rpx;
  26 + z-index: 999;
  27 +}
  28 +
  29 +.tab-title::after {
  30 + position: absolute;
  31 + content: '';
  32 + width: 2rpx;
  33 + height: 40%;
  34 + background-color: #f0f0f0;
  35 + top: 0;
  36 + bottom: 0;
  37 + left: 0;
  38 + right: 0;
  39 + margin: auto;
  40 +}
  41 +
  42 +.tab-title-item {
  43 + flex: 1;
  44 + text-align: center;
  45 + padding-top: 20rpx;
  46 + padding-bottom: 20rpx;
  47 + position: relative;
  48 +}
  49 +
  50 +.tab-title-item.active {
  51 + color: #FF6768;
  52 + font-weight: bold;
  53 +
  54 +}
  55 +
  56 +.tab-title-item::after {
  57 + position: absolute;
  58 + content: '';
  59 + left: 100%;
  60 + bottom: 0;
  61 + width: 0;
  62 + border-bottom: 2rpx solid #FF6768;
  63 + /* height: 3rpx; */
  64 + transition: 0.2s all linear;
  65 +}
  66 +
  67 +.tab-title-item.active::after {
  68 + /* left: 100%; */
  69 + width: 100%;
  70 + left: 0;
  71 + /* background-color: #FF6768; */
  72 + /* transition-delay: 0.1s; */
  73 +}
  74 +
  75 +.tab-title-item.active ~ .tab-title-item::after {
  76 + /* width: 100%; */
  77 + left: 0;
  78 +}
  79 +
  80 +.tab-content {
  81 + padding-top: 20rpx;
  82 + padding-left: 20rpx;
  83 + padding-right: 20rpx;
  84 +}
  85 +
  86 +.tab-item {
  87 + background-color: white;
  88 + border-radius: 10rpx;
  89 + overflow: hidden;
  90 +}
  91 +
  92 +.tab-item ~ .tab-item {
  93 + margin-top: 20rpx;
  94 +}
  95 +
  96 +.img-container {
  97 + background-color: #dedede;
  98 + /* height: 300rpx; */
  99 +}
  100 +
  101 +.img-container2 {
  102 + width: 200rpx;
  103 + height: 200rpx;
  104 + background-color: #dedede;
  105 + margin-right: 20rpx;
  106 + flex-shrink: 0;
  107 + display: flex;
  108 + align-items: center;
  109 + position: relative;
  110 +}
  111 +
  112 +.img-container2.error::before {
  113 + font-family: iconfont;
  114 + position: absolute;
  115 + content: '\e8c1';
  116 +}
  117 +
  118 +.img {
  119 + display: block;
  120 + width: 100%;
  121 + height: 100%;
  122 +}
  123 +
  124 +.desc-container {
  125 + padding: 20rpx;
  126 +}
  127 +
  128 +
  129 +
  130 +.rmb::before {
  131 + content: '¥';
  132 +}
  133 +
  134 +.date {
  135 + color: #a4a4a4;
  136 + font-size: 24rpx;
  137 +}
  138 +
  139 +.btn-container {
  140 + display: flex;
  141 + justify-content: space-around;
  142 + font-size: 26rpx;
  143 +}
  144 +
  145 +.btn {
  146 + padding: 20rpx;
  147 + flex: 1;
  148 + text-align: center;
  149 +}
  150 +
  151 +.btn.red {
  152 + background-color: #FF6768;
  153 + color: white;
  154 +}
  155 +
  156 +.btn.pink {
  157 + background-color: #FACAD6;
  158 + color: #FF6768;
  159 +}
  160 +
  161 +.noMore {
  162 + padding: 20rpx;
  163 + color: #bbb;
  164 + text-align: center;
  165 + font-size: 22rpx;
  166 +}
0 \ No newline at end of file 167 \ No newline at end of file
packageA/pages/myGiftDetails/myGiftDetails.js 0 → 100644
  1 +// packageA//pages/myGiftDetails/myGiftDetails.js
  2 +const app = getApp();
  3 +let self = null;
  4 +var os = app.globalData.setting;
  5 +
  6 +Page({
  7 +
  8 + /**
  9 + * 页面的初始数据
  10 + */
  11 + data: {
  12 + qr_code_object: {
  13 + val: "12121",
  14 + content: "请将二维码展示给核销员,服务更快捷!"
  15 + },
  16 + },
  17 +
  18 + /**
  19 + * 生命周期函数--监听页面加载
  20 + */
  21 + onLoad: function (options) {
  22 + self = this;
  23 + this.setData({
  24 + id: options.id,
  25 + index: options.index,
  26 + })
  27 +
  28 + // console.log('options', options);
  29 + app.isLogin().then(function(data) {//进入页面前已经授权登录成功
  30 + self.setData({
  31 + userInfo: data,
  32 + });
  33 + });
  34 + },
  35 +
  36 + /**
  37 + * 生命周期函数--监听页面初次渲染完成
  38 + */
  39 + onReady: function () {
  40 +
  41 + },
  42 +
  43 + /**
  44 + * 生命周期函数--监听页面显示
  45 + */
  46 + onShow: function () {
  47 + if(app.globalData.userInfo) {
  48 + if(!this.data.isLogin) {
  49 + this.setData({
  50 + userInfo: app.globalData.userInfo,
  51 + imghost: app.globalData.setting.imghost,
  52 + isLogin: true,
  53 + });
  54 +
  55 + let url = '';
  56 + // let data = {
  57 + // store_id: app.globalData.setting.stoid,
  58 + // user_id: app.globalData.user_id,
  59 + // };
  60 +
  61 + if(this.data.index == 0) {
  62 + // data.lbid = this.data.id;
  63 + // 请求数据
  64 + app.request.promiseGet('/api/weshop/libao/libaoForm/page', {
  65 + data: {
  66 + store_id: app.globalData.setting.stoid,
  67 + id: this.data.id,
  68 + },
  69 + isShowLoading: true,
  70 + }).then(function(res) {
  71 + self.setData({
  72 + details: res.data.data.pageData[0],
  73 + });
  74 + });
  75 +
  76 + app.request.promiseGet('/api/weshop/libao/libaoList/page', {
  77 + data: {
  78 + store_id: app.globalData.setting.stoid,
  79 + lbid: this.data.id,
  80 + },
  81 + isShowLoading: true,
  82 + }).then(function(res) {
  83 + self.setData({
  84 + list: res.data.data.pageData,
  85 + });
  86 + });
  87 + } else if(this.data.index == 1) {
  88 + app.request.promiseGet('/api/weshop/libao/libaoFormvip/page', {
  89 + data: {
  90 + store_id: app.globalData.setting.stoid,
  91 + user_id: app.globalData.user_id,
  92 + id: this.data.id,
  93 + },
  94 + isShowLoading: true,
  95 + }).then(function(res) {
  96 + // console.log('res3-->', res);
  97 + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
  98 + self.setData({
  99 + details: res.data.data.pageData[0],
  100 + });
  101 + }
  102 + });
  103 +
  104 + app.request.promiseGet('/api/weshop/libao/libaoListvip/page', {
  105 + data: {
  106 + store_id: app.globalData.setting.stoid,
  107 + lbvipid: this.data.id,
  108 + },
  109 + isShowLoading: true,
  110 + }).then(function(res) {
  111 + // console.log('res4-->', res);
  112 + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0) {
  113 + var list_arr=res.data.data.pageData;
  114 + for(var i in list_arr){
  115 + list_arr[i].alsonum= list_arr[i]['goods_num'] - list_arr[i]['usenum'];//剩余次数
  116 + }
  117 + self.setData({
  118 + list: res.data.data.pageData,
  119 + });
  120 + }
  121 + });
  122 + };
  123 +
  124 +
  125 + };
  126 + };
  127 + },
  128 +
  129 + /**
  130 + * 用户点击右上角分享
  131 + */
  132 + onShareAppMessage: function () {
  133 +
  134 + },
  135 +
  136 + //-- 礼包购买 --
  137 + GetBuyPrice: function(e) {
  138 + var th = this,that=th;
  139 + var item=th.data.details;
  140 + var id = item.id; //活动id
  141 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  142 + var user=getApp().globalData.userInfo;
  143 +
  144 + my_confirm.open(
  145 + "是否确定购买该礼包",
  146 + "取消",
  147 + "确定",
  148 + function() {
  149 + my_confirm.open_cancel(0);
  150 + },
  151 + function() {
  152 + my_confirm.open_cancel(0);
  153 + var json = {
  154 + "lbid": id, //活动Id
  155 + "paytype": 2, //1=积分兑换 2=购买
  156 + "store_id": os.stoid, //商家Id
  157 + "user_id": user.user_id, //用户ID
  158 + };
  159 + var url = "/api/weshop/libao/libaoFormvip/libaoOrder";
  160 + getApp().request.post(url,
  161 + {
  162 + data:json,
  163 + success:function(res) {
  164 + if (res.data.code == 0 && res.data.data) {
  165 + res = res.data.data;
  166 + wx.requestPayment({
  167 + timeStamp: String(res.timeStamp),
  168 + nonceStr: res.nonceStr,
  169 + package: res.packageValue,
  170 + signType: res.signType,
  171 + paySign: res.paySign,
  172 + success: function(res) {
  173 + getApp().my_warnning("支付成功", 1, th);
  174 + setTimeout(function (){
  175 + getApp().goto("/packageA/pages/libao_payment/payment?type=2");
  176 + },1000)
  177 + },
  178 + fail: function(res) {
  179 + getApp().my_warnning("取消支付", 0, th);
  180 + }
  181 + });
  182 + } else {
  183 + getApp().my_warnning(res.data.msg, 0, th);
  184 + }
  185 + }
  186 + })
  187 + })
  188 + },
  189 +
  190 + //-- 积分兑换 --
  191 + GetBuyIntegral: function(e) {
  192 + var th = this,that=th;
  193 + var item=th.data.details;
  194 +
  195 + var id = item.id; //活动id
  196 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  197 + var user=getApp().globalData.userInfo;
  198 + my_confirm.open(
  199 + "是否确定兑换该礼包",
  200 + "取消",
  201 + "确定",
  202 + function() {
  203 + my_confirm.open_cancel(0);
  204 + },
  205 + function() {
  206 + my_confirm.open_cancel(0);
  207 + var json = {
  208 + "lbid": id, //活动Id
  209 + "paytype": 1, //1=积分兑换 2=购买
  210 + "store_id": os.stoid, //商家Id
  211 + "user_id": user.user_id, //用户ID
  212 + };
  213 + var url = "/api/weshop/libao/libaoFormvip/libaoOrder";
  214 + getApp().request.post(url,{
  215 + data:json,
  216 + success:function(res) {
  217 + if (res.data.code == 0) {
  218 + getApp().my_warnning("兑换成功!", 1, th);
  219 + setTimeout(function (){
  220 + getApp().goto("/packageA/pages/libao_payment/payment?type=1");
  221 + },1000)
  222 + } else {
  223 + getApp().my_warnning(res.data.msg, 0, th);
  224 + }
  225 + },
  226 + })
  227 +
  228 + })
  229 + },
  230 +
  231 + //显示二维码,进行核销
  232 + show_hxm:function (e){
  233 + var th=this;
  234 + var type=e.currentTarget.dataset.type;
  235 + var data={};
  236 + data.store_id=os.stoid;
  237 + data.user_id=getApp().globalData.user_id;
  238 +
  239 + if(type && parseInt(type)==1){
  240 + data.id=this.data.id;
  241 + data.type=1;
  242 + }else{
  243 + var index=e.currentTarget.dataset.index;
  244 + var item=this.data.list[index];
  245 + data.id=item.id;
  246 + data.type=2;
  247 + }
  248 +
  249 + //获取二维码
  250 + getApp().request.get("/api/weshop/libao/libaoListvip/getLibaoCode",{
  251 + data:data,
  252 + success:function (res){
  253 + if(res.data.code==0){
  254 + th.data.qr_code_object.val=res.data.data;
  255 + var qc_com = th.selectComponent("#qrcode"); //组件的id
  256 + qc_com.open(th.data.qr_code_object)
  257 + }else{
  258 + wx.showToast({
  259 + title: res.data.msg,
  260 + icon: 'none',
  261 + duration: 2000
  262 + })
  263 +
  264 +
  265 +
  266 + }
  267 + }
  268 + })
  269 +
  270 + }
  271 +
  272 +
  273 +})
0 \ No newline at end of file 274 \ No newline at end of file
packageA/pages/myGiftDetails/myGiftDetails.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "礼包详情",
  3 + "enablePullDownRefresh": false,
  4 + "usingComponents": {
  5 + "warn": "/components/long_warn/long_warn",
  6 + "nav_b": "/components/nav_b/nav_b",
  7 + "my_confirm": "/components/my_confirm/my_confirm",
  8 + "qrcode":"/components/qr_code/qr_code"
  9 + }
  10 +}
0 \ No newline at end of file 11 \ No newline at end of file
packageA/pages/myGiftDetails/myGiftDetails.wxml 0 → 100644
  1 +<wxs module="filter" src="../../../utils/filter.wxs"></wxs>
  2 +<view class="pdb80">
  3 + <!-- 图片 -->
  4 + <view><image src="{{imghost + (details.lburl ? details.lburl:'miniapp/images/default_g_img.gif')}}" class="img" mode="widthFix"/></view>
  5 + <!-- 描述-->
  6 + <view class="desc-container">
  7 + <!-- 标题 -->
  8 + <view class="mgb10 ellipsis-2 lh taj">{{details.lbtitle}}</view>
  9 + <!-- 价格 -->
  10 + <view class="flex jc_sb ai-center pdb10">
  11 + <view class="flex ai-center">
  12 + <view class="c-red fs36"><text class="rmb">{{details.lbprice}}</text>/{{details.lbintegral}}积分</view>
  13 + <view class="fs22 c-a4 line-through mgl10">零售价{{details.oldprice}}</view>
  14 + </view>
  15 + <view class="fs24 c-a4">已售{{details.salenum}}件</view>
  16 + </view>
  17 + <!-- 时间 -->
  18 + <view class="date">活动截止日期 {{details.expdate ? filter.format_time(details.expdate):filter.format_time(details.endtime)}}</view>
  19 + </view>
  20 + <!-- 单品 -->
  21 + <view class="goods-container">
  22 + <view class="pd20 bold bdb">可到线下门店兑换以下单品</view>
  23 + <view wx:if="{{index==1 && details.codetype==1}}" class="">
  24 + <view class="flex pd20 jc_sb">
  25 + <view style="width: 35%">单品名称</view>
  26 + <view style="width: 25%;text-align: center">总数量</view>
  27 + <view style="width: 25%;text-align: center">剩余数量</view>
  28 + <view style="width: 15%;"></view>
  29 + </view>
  30 + <view class="flex pd20 jc_sb" wx:for="{{list}}">
  31 + <view style="width: 35%">{{item.goods_name}}</view>
  32 + <view style="width: 25%;text-align:center" class="c-a4">x{{item.goods_num}}</view>
  33 + <view style="width: 25%;text-align:center" class="c-a4">x{{item.alsonum}}</view>
  34 + <view bindtap="show_hxm" data-index="{{index}}" style="width: 15%;text-align: center" wx:if="{{item.alsonum>0}}" >
  35 + <text class="ling_btn">使用</text>
  36 + </view>
  37 + <view style="width: 15%;text-align: center" wx:else >
  38 + <text class="ling_btn c_a">已领</text>
  39 + </view>
  40 + </view>
  41 + </view>
  42 +
  43 +
  44 + <view wx:else class="">
  45 + <view class="flex pd20 jc_sb">
  46 + <view>单品名称</view>
  47 + <view>数量</view>
  48 + </view>
  49 + <view class="flex pd20 jc_sb" wx:for="{{list}}">
  50 + <view>{{item.goods_name}}</view>
  51 + <view class="c-a4">x{{item.goods_num}}</view>
  52 + </view>
  53 + </view>
  54 + </view>
  55 +
  56 + <!-- 按钮 -->
  57 + <view class="btn-container">
  58 + <block wx:if="{{index == 0}}">
  59 + <view bindtap="GetBuyIntegral" class="btn red">立即兑换</view>
  60 + <view bindtap="GetBuyPrice" class="btn pink">立即购买</view>
  61 + </block>
  62 + <view wx:else bindtap="show_hxm" data-type="1" class="btn red">立即使用</view>
  63 + </view>
  64 +</view>
  65 +
  66 +<!-- 引入提示组件 -->
  67 +<warn id="warn"></warn>
  68 +<my_confirm id="my_confirm"></my_confirm>
  69 +<qrcode id="qrcode" ></qrcode>
  70 +
packageA/pages/myGiftDetails/myGiftDetails.wxss 0 → 100644
  1 +@charset "utf-8";
  2 +
  3 +.c-a4 {
  4 + color: #a4a4a4;
  5 +}
  6 +
  7 +.c-red {
  8 + color: #FF6768;
  9 +}
  10 +
  11 +page {
  12 + background-color: #f0f0f0;
  13 +}
  14 +
  15 +.pdb80 {
  16 + padding-bottom: 80rpx;
  17 +}
  18 +
  19 +.img-container {
  20 + background-color: #dedede;
  21 +}
  22 +
  23 +.img {
  24 + display: block;
  25 + width: 100%;
  26 +}
  27 +
  28 +
  29 +.desc-container {
  30 + padding: 20rpx;
  31 + background-color: white;
  32 +}
  33 +
  34 +
  35 +.rmb::before {
  36 + content: '¥';
  37 +}
  38 +
  39 +
  40 +.date {
  41 + color: #a4a4a4;
  42 + font-size: 24rpx;
  43 +}
  44 +
  45 +
  46 +.goods-container {
  47 + margin-top: 20rpx;
  48 + background-color: white;
  49 + font-size: 28rpx;
  50 +}
  51 +
  52 +
  53 +
  54 +
  55 +
  56 +
  57 +.btn-container {
  58 + position: fixed;
  59 + width: 100%;
  60 + bottom: 0;
  61 + display: flex;
  62 + font-size: 30rpx;
  63 +}
  64 +
  65 +.btn {
  66 + padding: 20rpx;
  67 + flex: 1;
  68 + text-align: center;
  69 +}
  70 +
  71 +.btn.red {
  72 + background-color: #FF6768;
  73 + color: white;
  74 +}
  75 +
  76 +.btn.pink {
  77 + background-color: #FACAD6;
  78 + color: #FF6768;
  79 +}
  80 +
  81 +.ling_btn{ background: #c0283a; color: #fff; width: 100rpx; height: 50rpx;
  82 + display: inline-block; line-height: 50rpx; border-radius: 10rpx}
  83 +
  84 +.ling_btn.c_a{ background: darkgrey}
0 \ No newline at end of file 85 \ No newline at end of file
packageA/pages/my_service/i_service.js
@@ -50,11 +50,8 @@ Page({ @@ -50,11 +50,8 @@ Page({
50 */ 50 */
51 onShow: function() { 51 onShow: function() {
52 var th = this; 52 var th = this;
53 - setTimeout(function (){  
54 - var my_confirm = th.selectComponent("#my_confirm"); //组件的id  
55 - my_confirm.open_cancel(0);  
56 - },1000);  
57 - 53 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  54 + my_confirm.open_cancel(0);
58 }, 55 },
59 56
60 onReachBottom: function() { 57 onReachBottom: function() {
packageA/pages/my_service2/appment_main.js 0 → 100644
  1 +var e = getApp(),
  2 + a = e.globalData.setting,
  3 + os = a,
  4 + t = e.request,
  5 + d = e.globalData;
  6 +Page({
  7 +
  8 + /**
  9 + * 页面的初始数据
  10 + */
  11 + data: {
  12 + inurl: a.url, //接口网址
  13 + iurl: a.imghost, //服务器网址
  14 + store: 0, //是否显示服务门店列表
  15 + beautician: 0, //是否显示美容师列表
  16 + beautician_name: "", //选中的美容师名称
  17 + beauticianID: "", //美容师id
  18 + bea_index: "", //美容师列表下标
  19 + placeholder: "填写备注", //备注为空的placeholder
  20 + store_list: [], //门店列表
  21 + beautician_list: [], //美容师列表
  22 + store_name: "", //选择的服务门店
  23 + fir_pick_index: 0, //选择的门店下标
  24 + curpage: 1, //当前分页数
  25 + pageSize: 8, //页大小
  26 + total: 0,
  27 + ismore: 0, //是否加载完毕
  28 + itemId: "", //服务id
  29 + project_id: "", //项目id
  30 + isScroll: true, //scroll-y是否可以滑动
  31 + key_word: "", //是否按门店文字查询
  32 + is_service_read: 0, //是否调用过门店接口
  33 + is_search: 0, //是否通过key_word调用接口
  34 + is_success: 0, //是否提交成功
  35 + remarks: "", //备注
  36 + storageId: "", //线下门店id
  37 + url: "/packageA/pages/my_service/appment_main", //本页面地址路径用于选择时间页面跳转回来
  38 + buyType: "", //项目类型
  39 + time: "", //选择预约时间
  40 + tment_count: "", //可预约人数
  41 + lat: "", //纬度坐标
  42 + lon: "", //经度坐标
  43 + is_gps: 1, //是否开启gps
  44 + validay: "", //服务项目有效期
  45 + is_sub: 0, //判断是否重复提交
  46 + is_textea: 1, //备注是否是可输入
  47 +
  48 + // 拖拽参数
  49 + writePosition: [], //默认定位参数
  50 + writesize: [0, 0],// X Y 定位
  51 + window: [0, 0], //屏幕尺寸
  52 + write: [0, 0], //定位参数
  53 + scrolltop: 0,//据顶部距离
  54 + v:{},
  55 +
  56 + project: ['项目1', '项目2', '项目3', '项目4', '项目5', '项目6', '项目7'],
  57 + md: [{name:'美导1',time:'08:30-22:00'},{name:'美导2',time:'09:30-18:00'},],
  58 + timeList: [],
  59 + deltaX: 0,
  60 + col_arr:[],
  61 + },
  62 + //控制备注输入
  63 + check_text: function() {
  64 + var th = this;
  65 + var is_textea = th.data.is_textea;
  66 + th.setData({
  67 + is_textea: 1,
  68 + beautician: 0
  69 + })
  70 + },
  71 + onclickstore: function() {
  72 + var th = this;
  73 + var store = th.data.store;
  74 + if (store) {
  75 + th.setData({
  76 + store: 0,
  77 + is_textea: 1
  78 + })
  79 + } else {
  80 + th.setData({
  81 + beautician: 0,
  82 + store: 1,
  83 + is_textea: 0
  84 + })
  85 + if (th.data.store_list.length < 1) {
  86 + wx.showLoading({
  87 + title: '加载中',
  88 + })
  89 + th.query_store();
  90 + }
  91 + }
  92 + },
  93 + //输入的备注
  94 + input_remarks: function(e) {
  95 + var remarks = e.detail.value;
  96 + this.setData({
  97 + remarks: remarks
  98 + })
  99 + },
  100 + //提交成功及发送模版代码
  101 + success: function() {
  102 + var th = this;
  103 + var store = th.data.store_name; //门店名称
  104 + var bea_name = th.data.beautician_name; //美容师名称
  105 + var time = th.data.time; //预约时间
  106 + var is_sub = th.data.is_sub; //是否重复提交
  107 + var url = th.data.inurl + "/api/weshop/marketing/reservation/reservation/insert"; //接口路径
  108 + var serviceId = th.data.itemId; //服务id
  109 + var beauticianID = th.data.beauticianID; //美容师id
  110 + var buyType = th.data.buyType; //服务项目类型
  111 + var storeId = a.stoid; //商家id
  112 + var storageId = th.data.storageId; //门店id
  113 + var userId = th.data.options.userid; //用户id
  114 + var remarks = th.data.remarks; //用户备注
  115 + var project_id = th.data.project_id; //项目id
  116 + var validay = th.data.validay;
  117 + var json = {
  118 + "arrangeTime": time + ":00",
  119 + "beauticianId": beauticianID,
  120 + "buyType": buyType,
  121 + "effectiveDay": "",
  122 + "number": "",
  123 + "projectId": project_id,
  124 + "remark": remarks,
  125 + "serviceId": serviceId,
  126 + "states": 0,
  127 + "storageId": storageId,
  128 + "storeId": storeId,
  129 + "userId": userId,
  130 + "validay": validay,
  131 + "isxz": 1
  132 +
  133 + }
  134 + var data = JSON.stringify(json);
  135 + wx.request({
  136 + url: url,
  137 + data: json,
  138 + method: 'post',
  139 + header: {
  140 + 'content-type': 'application/json'
  141 + }, // 设置请求的 header
  142 + success: function(res) {
  143 + th.setData({
  144 + is_sub: 0
  145 + })
  146 + wx.hideLoading();
  147 + if (res.data.code == 0) {
  148 + getApp().my_warnning("预约成功", 1, th);
  149 + // var store_name = th.data.store_name; //预约门店
  150 + var number = res.data.data.Number;
  151 + // var temp_url = "/api/wx/open/app/user/sendSubscribeMsg"; //模版接口
  152 + //var userinfo = getApp().globalData.userInfo;
  153 + //var name = d.userInfo.nickname;
  154 + // var json = {
  155 + // // "formId": formid,
  156 + // "keyWord": [{
  157 + // "keyword": res.data.data.ServiceName
  158 + // },
  159 + // {
  160 + // "keyword": time.substring(0, 16)
  161 + // }, {
  162 + // "keyword": res.data.data.BeauticianName
  163 + // }, {
  164 + // "keyword": res.data.data.StorageName
  165 + // }, {
  166 + // "keyword": res.data.data.Address
  167 + // }
  168 + // ],
  169 + // "page": "/packageA/pages/my_service/tment_details?number=" + number+"&userid="+th.data.options.userid,
  170 + // "storeId": a.stoid,
  171 + // "typeId": "1011",
  172 + // "userId": th.data.options.userid
  173 + // };
  174 + // var data = JSON.stringify(json);
  175 + // //调用发送预约成功模版接口
  176 + // wx.request({
  177 + // url: th.data.inurl + temp_url,
  178 + // data: data,
  179 + // method: 'post',
  180 + // header: {
  181 + // 'content-type': 'application/json'
  182 + // }, // 设置请求的 header
  183 + // success: function(data) {}
  184 + // })
  185 +
  186 + wx.redirectTo({
  187 + url: "/packageA/pages/my_service/tment_details?number=" + number+"&userid="+th.data.options.userid,
  188 + });
  189 +
  190 + } else {
  191 + getApp().my_warnning(res.data.msg, 0, th);
  192 + th.settime();
  193 + }
  194 + }
  195 + })
  196 +
  197 + },
  198 + //定时显示texteat
  199 + settime: function() {
  200 + var th = this;
  201 + setTimeout(function() {
  202 + th.setData({
  203 + is_textea: 1
  204 + })
  205 + }, 2000);
  206 + },
  207 + //提交预约
  208 + sub_success: function(e) {
  209 + var th = this;
  210 + var temp_url = th.data.inurl + "/api/wx/weappSendlist/page";
  211 + var template_id = "";
  212 + if (th.data.is_sub == 1) {
  213 + return false;
  214 + }
  215 + var store = th.data.store_name; //门店名称
  216 + var bea_name = th.data.beautician_name; //美容师名称
  217 + var time = th.data.time; //预约时间
  218 + var is_sub = th.data.is_sub; //是否重复提交
  219 + th.setData({
  220 + is_textea: 0,
  221 + is_sub: 1
  222 + })
  223 + //提交预约前的判断
  224 + if (store == "") {
  225 + getApp().my_warnning("请选择服务门店", 0, th);
  226 + th.setData({
  227 + is_sub: 0
  228 + })
  229 + th.settime();
  230 + return false;
  231 + } else if (bea_name == "") {
  232 + getApp().my_warnning("请选择美容师", 0, th);
  233 + th.setData({
  234 + is_sub: 0
  235 + })
  236 + th.settime();
  237 + return false;
  238 + } else if (time == undefined || time == '') {
  239 + getApp().my_warnning("请选择预约时间", 0, th);
  240 + th.setData({
  241 + is_sub: 0
  242 + })
  243 + th.settime();
  244 + return false;
  245 + } else {
  246 + var version ="";
  247 + //判断微信版本是否达到预约成功订阅的要求
  248 + wx.getSystemInfo({
  249 + success(res) {
  250 + version = res.version;
  251 + }
  252 + })
  253 + wx.showLoading({
  254 + title: '加载中',
  255 + })
  256 +
  257 + th.success();
  258 + // if (th.ver(version, '7.0.4') >= 0) {
  259 + // //获取模版id
  260 + // getApp().request.promiseGet(temp_url, {
  261 + // data: {
  262 + // store_id: a.stoid,
  263 + // typeid: "1011"
  264 + // }
  265 + // }).then(res => {
  266 + // if (res.data.code == 0 && res.data.data.pageData.length > 0) {
  267 + // template_id = res.data.data.pageData[0].template_id;
  268 + // // //授权订阅
  269 + // wx.requestSubscribeMessage({
  270 + // tmplIds: [template_id],
  271 + // success(res) {
  272 + // th.success();
  273 + // },
  274 + // fail(res) {
  275 + // th.success();
  276 + // }
  277 + // })
  278 + // } else {
  279 + // th.success();
  280 + // }
  281 + // })
  282 + // } else {
  283 + // // 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示
  284 + // wx.showModal({
  285 + // title: '提示',
  286 + // content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
  287 + // })
  288 + // th.setData({
  289 + // is_sub: 0
  290 + // })
  291 + // }
  292 +
  293 + }
  294 + },
  295 + //版本判断
  296 + ver:function(v1,v2){
  297 + v1 = v1.split('.')
  298 + v2 = v2.split('.')
  299 + var num1 = "" ;
  300 + var num2 = "";
  301 + var len = Math.max(v1.length, v2.length)
  302 +
  303 + while (v1.length < len) {
  304 + v1.push('0')
  305 + }
  306 + while (v2.length < len) {
  307 + v2.push('0')
  308 + }
  309 +
  310 + for (let i = 0; i < len; i++) {
  311 + num1 = parseInt(v1[i])
  312 + num2 = parseInt(v2[i])
  313 +
  314 + if (num1 > num2) {
  315 + return 1
  316 + } else if (num1 < num2) {
  317 + return -1
  318 + }
  319 + }
  320 + return 0
  321 + },
  322 + goto: function(e) {
  323 + var th = this;
  324 + th.setData({
  325 + beautician: 0,
  326 + is_textea: 0
  327 + })
  328 + if (th.data.store_name == "") {
  329 + getApp().my_warnning("请选择服务门店", 0, th);
  330 + th.settime();
  331 + } else if (th.data.beautician_name == "") {
  332 + getApp().my_warnning("请选择美容师", 0, th);
  333 + th.settime();
  334 + } else {
  335 + th.setData({
  336 + is_textea: 1
  337 + })
  338 + var url = e.currentTarget.dataset.url;
  339 + getApp().goto(url);
  340 + }
  341 + },
  342 + //点击选择门店
  343 + choose_for_store: function(e) {
  344 + var th = this;
  345 + var index_c = e.currentTarget.dataset.ind;
  346 + var fir_pick_index = th.data.fir_pick_index;
  347 + //判断是否点击选中的门店,防止重复点击重复设置选中下标
  348 + if (index_c == fir_pick_index) {
  349 + return false;
  350 + } else {
  351 + th.setData({
  352 + fir_pick_index: index_c,
  353 + beautician_name: "",
  354 + time: "",
  355 + tment_count: ""
  356 + })
  357 + }
  358 + },
  359 + //确认选择门店
  360 + choice_store: function() {
  361 + var th = this;
  362 + var index = th.data.fir_pick_index;
  363 + var store_name = th.data.store_list[index].StorageName;
  364 + var Id = th.data.store_list[index].Id;
  365 + th.setData({
  366 + store: 0,
  367 + store_name: store_name,
  368 + storageId: Id,
  369 + is_textea: 1
  370 + })
  371 + },
  372 + onReachBottom: function() {
  373 + var th = this;
  374 + if (this.data.total <= th.data.pageSize) return;
  375 + if (this.data.ismore) return;
  376 +
  377 + wx.showLoading({
  378 + title: '加载中...',
  379 + })
  380 + th.query_store();
  381 + },
  382 + //分页查询门店信息
  383 + query_store: function() {
  384 + var th = this;
  385 + th.setData({
  386 + is_textea: 0
  387 + })
  388 + var itemId = th.data.itemId; //服务id
  389 + var url = "/api/weshop/marketing/reservation/storage/pagenew";
  390 + var key_word = th.data.key_word;
  391 + key_word = key_word.replace(/\s+/g, "");
  392 + getApp().request.promiseGet(url, {
  393 + data: {
  394 + userId: th.data.options.userid,
  395 + storeId: a.stoid,
  396 + serviceId: itemId,
  397 + latitude: th.data.lat,
  398 + longitude: th.data.lon,
  399 + page: th.data.curpage,
  400 + pageSize: th.data.pageSize,
  401 + keyWord: key_word
  402 + }
  403 + }).then(res => {
  404 + wx.hideLoading();
  405 + if (res.data.code == 0) {
  406 + th.data.curpage++;
  407 + var arr1 = th.data.store_list;
  408 + var arr2 = res.data.data.pageData;
  409 + var arr3 = [...arr1, ...arr2];
  410 + var ismore = 0;
  411 + if (arr3.length == res.data.data.total) ismore = 1
  412 + th.setData({
  413 + store_list: arr3,
  414 + total: res.data.data.total,
  415 + ismore: ismore,
  416 + is_service_read: 1,
  417 + }), wx.stopPullDownRefresh(); //停止下拉刷新
  418 + if (key_word != "" && res.data.data.pageData.length < 1) {
  419 + th.setData({
  420 + is_search: 1
  421 + })
  422 + }
  423 + } else {
  424 + getApp().my_warnning(res.data.msg, 0, th);
  425 + th.settime();
  426 + }
  427 + })
  428 + },
  429 + //查询
  430 + query_beautician: function() {
  431 + var th = this;
  432 + th.setData({
  433 + is_textea: 0
  434 + });
  435 +
  436 + if (th.data.store_name == "") {
  437 + getApp().my_warnning("请选择服务门店", 0, th);
  438 + th.settime();
  439 + } else {
  440 + wx.showLoading({
  441 + title: '加载中',
  442 + })
  443 + var itemid = th.data.itemId; //正式使用的项目id
  444 + var storageId = th.data.storageId; //正式使用的线下门店id
  445 + var url = "/api/weshop/marketing/reservation/staff/pagenew"; //接口地址
  446 +
  447 + getApp().request.promiseGet(url, {
  448 + data: {
  449 + storeId: a.stoid,
  450 + userId: th.data.options.userid,
  451 + serviceId: itemid,
  452 + storageId: storageId
  453 + }
  454 + }).then(res => {
  455 + wx.hideLoading();
  456 + if (res.data.code == 0) {
  457 + th.setData({
  458 + beautician_list: res.data.data
  459 + })
  460 + if (res.data.data.length < 1) {
  461 + getApp().my_warnning("暂无美容师", 0, th);
  462 + th.settime();
  463 + } else {
  464 + if (th.data.beautician == 0) {
  465 + th.setData({
  466 + beautician: 1,
  467 + })
  468 + } else {
  469 + th.setData({
  470 + beautician: 0,
  471 + })
  472 + }
  473 + }
  474 + } else {
  475 + getApp().my_warnning(res.data.msg, 0, th);
  476 + th.settime();
  477 + }
  478 + })
  479 + }
  480 + },
  481 +
  482 + choice_beautician: function(e) {
  483 + var th = this;
  484 + var bea_index = e.currentTarget.dataset.baaindex;
  485 + var bea_name = th.data.beautician_list[bea_index].StaffName;
  486 + var BeauticianID = th.data.beautician_list[bea_index].staffid;
  487 + var StorageId=th.data.beautician_list[bea_index].StorageId
  488 +
  489 + th.setData({
  490 + beautician_name: bea_name,
  491 + beautician: 0,
  492 + bea_index: bea_index,
  493 + beauticianID: BeauticianID,
  494 + time: "",
  495 + tment_count: "",
  496 + is_textea: 1,
  497 + StorageId:StorageId
  498 + })
  499 +
  500 + },
  501 + //获取搜索门店输入的值
  502 + input_store: function(e) {
  503 + this.setData({
  504 + key_word: e.detail.value
  505 + })
  506 + },
  507 + //搜索门店
  508 + search_store: function() {
  509 + var th = this;
  510 + var key_word = th.data.key_word;
  511 + var store_list = th.data.store_list;
  512 + th.setData({
  513 + curpage: 1,
  514 + is_search: 0,
  515 + store_list: []
  516 + })
  517 + wx.showLoading({
  518 + title: '加载中',
  519 + })
  520 + th.query_store();
  521 + },
  522 + //美容师预约跳转页面
  523 + nav_bea: function() {
  524 + var th = this;
  525 + th.setData({
  526 + beautician: 0
  527 + })
  528 + var storageId = th.data.storageId; //线下门店id
  529 + var itemId = th.data.itemId; //服务id
  530 + var project_id = th.data.project_id;
  531 + if (storageId == "") {
  532 + getApp().my_warnning("请选择服务门店", 0, th);
  533 + th.settime();
  534 + } else {
  535 + th.setData({
  536 + is_textea: 1
  537 + })
  538 + console.log('optionsxxx===>', this.data.options);
  539 + // console.log('1-->', "/pages/user/my_service/cosmetology_list?userid=" + th.data.options.userid + 'storageId=' + storageId + '&' + 'itemId=' + itemId + '&' + "projectId=" + project_id);
  540 + wx.navigateTo({
  541 + url: "/packageA/pages/my_service/cosmetology_list?userid=" + this.data.options.userid + '&storageId=' + storageId + '&itemId=' + itemId + "&projectId=" + project_id
  542 + });
  543 +
  544 + }
  545 + },
  546 + /**
  547 + * 生命周期函数--监听页面加载
  548 + */
  549 + onLoad: function(options) {
  550 +
  551 + this.getTimeList(23, 30);
  552 + var th = this;
  553 + th.setData({
  554 + options,
  555 + itemId: options.service_id,
  556 + buyType: options.BuyType,
  557 + project_id: options.ProjectID,
  558 + validay: options.Validay
  559 + });
  560 + wx.getLocation({
  561 + type: 'gcj02',
  562 + success: function(res) {
  563 + th.data.lat = res.latitude;
  564 + th.data.lon = res.longitude;
  565 + th.data.is_get_local_ok = 1;
  566 + th.setData({
  567 + is_gps: 1
  568 + });
  569 + },
  570 + fail: function(res) {
  571 + if (res.errCode == 2) {
  572 + th.setData({
  573 + is_gps: 0
  574 + });
  575 + if (th.data.is_gps == 0) {
  576 + getApp().confirmBox("请开启GPS定位", null, 25000, !1);
  577 + th.settime();
  578 + }
  579 + } else {
  580 + th.setData({
  581 + is_gps: "3"
  582 + });
  583 + }
  584 +
  585 + th.data.is_get_local_ok = 1;
  586 + }
  587 + });
  588 +
  589 + // 获取当前默认导购信息及归属门店信息
  590 + if(options.firstleader) {
  591 + getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+a.stoid+"/"+options.firstleader,{}).then(res=>{
  592 + if(res.data.code==0){
  593 + getApp().globalData.guide_id=res.data.data.id;
  594 +
  595 + getApp().request.promiseGet('/api/weshop/shoppingGuide/geIdStaffInfo', {
  596 + data: {
  597 + store_id: a.stoid,
  598 + guide_id: e.globalData.guide_id,
  599 + UserCode: th.data.options.usercode,
  600 + }
  601 + }).then(res => {
  602 + console.log('res==>', a.stoid, e.globalData.guide_id, th.data.options.usercode);
  603 + if(res.data.data.Tech) {
  604 +
  605 + var data={
  606 + store_name: res.data.data.StorageName,
  607 + beautician_name: res.data.data.StaffName,
  608 + beauticianID: res.data.data.StaffId,
  609 + StorageId: res.data.data.StorageId,
  610 + }
  611 + th.check_firleader(data);
  612 + }
  613 + });
  614 +
  615 +
  616 + };
  617 + });
  618 + };
  619 +
  620 +
  621 + },
  622 + //查询剩下可预约人数
  623 + query_more: function() {
  624 + var th = this;
  625 + var url = "/api/weshop/marketing/reservation/can/reservation/countnew";
  626 + var beauticianID = th.data.beauticianID; //美容师id
  627 + var projectID = th.data.itemId; //服务id
  628 + var seekTime = th.data.time; //预约日期
  629 + var storageId = th.data.storageId; //门店id
  630 + var storeId = a.stoid; //商家id
  631 + getApp().request.promiseGet(url, {
  632 + data: {
  633 + beauticianId: beauticianID,
  634 + seekTime: seekTime,
  635 + serviceId: projectID,
  636 + storageId: storageId,
  637 + storeId: storeId
  638 + }
  639 + }).then(res => {
  640 + if (res.data.code == 0) {
  641 + var tment_count = res.data.data.CanReservation;
  642 + th.setData({
  643 + tment_count: tment_count
  644 + })
  645 + } else {
  646 + getApp().my_warnning(res.data.msg, 0, th);
  647 + th.settime();
  648 + }
  649 + })
  650 +
  651 + },
  652 + /**
  653 + * 生命周期函数--监听页面显示
  654 + */
  655 + onShow: function() {
  656 + var th = this;
  657 + var seekTime = th.data.time; //预约日期
  658 + if (seekTime != "") {
  659 + th.query_more();
  660 + }
  661 + th.setData({
  662 + time: th.data.time.substring(0, 16),
  663 + is_textea: 1
  664 + })
  665 + th.query_project();
  666 +
  667 + th.queryMultipleNodes();
  668 + },
  669 + //获取单个服务项目信息
  670 + query_project: function() {
  671 + var th = this;
  672 + var url = "/api/weshop/marketing/reservation/sm/page"; //获取服务项目接口
  673 + var project_id = th.data.project_id; //服务项目id
  674 + getApp().request.promiseGet(url, {
  675 + data: {
  676 + storeId: a.stoid,
  677 + userId: th.data.options.userid,
  678 + projectId: project_id
  679 + }
  680 + }).then(res => {
  681 + if (res.data.code == 0) {
  682 + th.setData({
  683 + validay: res.data.data.pageData[0].Validay
  684 + })
  685 + } else {
  686 + getApp().my_warnning(res.data.msg, 0, th);
  687 + th.settime();
  688 + }
  689 + })
  690 + },
  691 + //关闭导航
  692 + // close: function() {
  693 + // var th = this;
  694 + // var nav_b = th.selectComponent("#nav_b"); //组件的id
  695 + // nav_b.close_box();
  696 + // }
  697 +
  698 + //判断分享的导购是不是有门店,是不是该门店下又该会员
  699 + check_firleader(data){
  700 + var th=this;
  701 + var itemId = this.data.itemId; //服务id
  702 + var url = "/api/weshop/marketing/reservation/storage/pagenew";
  703 + var key_word = data.store_name;
  704 + key_word = key_word.replace(/\s+/g, "");
  705 + getApp().request.promiseGet(url, {
  706 + data: {
  707 + userId: th.data.options.userid,
  708 + storeId: os.stoid,
  709 + serviceId: itemId,
  710 + latitude: th.data.lat,
  711 + longitude: th.data.lon,
  712 + page: 1,
  713 + pageSize: 1000,
  714 + keyWord: key_word
  715 + }
  716 + }).then(res => {
  717 + //-- 如果是门店的话 --
  718 + if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
  719 + var store_data=null;
  720 + for(var i in res.data.data.pageData){
  721 + var it=res.data.data.pageData[i];
  722 + if(it.Id==data.StorageId){
  723 + store_data={
  724 + store_name: data.store_name,
  725 + StorageId: data.StorageId,
  726 + };
  727 + break;
  728 + }
  729 + }
  730 + if(!store_data) return false;
  731 + th.setData(store_data)
  732 +
  733 + }else{
  734 + return false;
  735 + }
  736 +
  737 + //导购接口地址
  738 + var url = "/api/weshop/marketing/reservation/staff/pagenew";
  739 + return getApp().request.promiseGet(url, {
  740 + isShowLoading:1,
  741 + data: {
  742 + storeId: os.stoid,
  743 + userId: th.data.options.userid,
  744 + serviceId: itemId,
  745 + storageId: data.StorageId
  746 + }
  747 + })
  748 + }).then(res=>{
  749 + if (res && res.data && res.data.code == 0) {
  750 + var beautician_list=res.data.data;
  751 + for(var i in beautician_list){
  752 + var item=beautician_list[i];
  753 + if(item.staffid==data.beauticianID){
  754 + th.setData({
  755 + beautician_name:data.beautician_name,
  756 + beauticianID:data.beauticianID,
  757 + })
  758 + break;
  759 + }
  760 + }
  761 +
  762 + }
  763 + })
  764 + },
  765 +
  766 +
  767 + //开始拖拽
  768 + touchmove: function (e) {
  769 + if(!this.data.copy_btn) return false;
  770 + var that = this;
  771 + var position = [e.touches[0].pageX + this.data.deltaX-15, e.touches[0].pageY-15];
  772 + that.setData({
  773 + write: position
  774 + });
  775 + },
  776 + touchend:function(e){
  777 + var that = this,th=that;
  778 + if(!that.data.copy_btn) return false;
  779 + var position =th.data.write;
  780 + var arr=th.data.col_arr;
  781 + for(var i=0;i<this.data.md.length;i++){//i是列
  782 + var item=this.data.md[i];
  783 + var nd=new Date();
  784 + var d_str=nd.getFullYear()+"-"+(nd.getMonth()+1)+"-"+nd.getDate()+" ";
  785 + var d_arr=item.time.split("-");
  786 + var t1=new Date(d_str+d_arr[0])
  787 + var t2=d_arr.length>1?new Date(d_str+d_arr[1]):0;
  788 +
  789 + for(var j=0; j<this.data.timeArr.length;j++){//j是行
  790 + if(arr.indexOf(j)!=-1) continue;
  791 + var tn=new Date(d_str+this.data.timeArr[j]);
  792 + //小于开始时间
  793 + if(tn<t1) continue;
  794 + //大于结束时间
  795 + if(tn>t2 && t2>0) continue;
  796 + //如果坐标在网格内
  797 + if( position[0]>th.data.f_x+i*th.data.f_width && position[0]<th.data.f_x+ (i+1)*th.data.f_width &&
  798 + position[1]>th.data.f_y +j*th.data.f_hei && position[1]<th.data.f_y+(j+1)*th.data.f_hei){
  799 +
  800 + var txt="v["+i+"]["+j+"]";
  801 + arr.push(j);
  802 + th.setData({
  803 + [txt]: th.data.projectName,
  804 + col_arr:arr
  805 + });
  806 + break;
  807 + }
  808 +
  809 + }
  810 + }
  811 + th.setData({copy_btn:0})
  812 + },
  813 +
  814 +
  815 + close_this:function (e){
  816 + var txt=e.currentTarget.dataset.txt;
  817 + var sindex=parseInt(e.currentTarget.dataset.sindex);
  818 + var arr=this.data.col_arr;
  819 + var ind=arr.indexOf(sindex);
  820 + arr.splice(ind,1)
  821 + this.setData({[txt]:null,col_arr:arr})
  822 + },
  823 +
  824 + onPageScroll(e) {
  825 + // console.log('滚动距离', e);
  826 + this.data.scrolltop = e.scrollTop;
  827 + },
  828 +
  829 +
  830 + //声明节点查询的方法
  831 + queryMultipleNodes: function() {
  832 + var th=this;
  833 + const query = wx.createSelectorQuery() // 创建节点查询器 query
  834 + query.select('.content_view').boundingClientRect() // 这段代码的意思是选择Id=productServe的节点,获取节点位置信息的查询请求
  835 + query.selectViewport().scrollOffset() // 这段代码的意思是获取页面滑动位置的查询请求
  836 + query.exec(res => {
  837 + console.log(res);
  838 + th.data.f_x=res[0].left;
  839 + th.data.f_y=res[0].top;
  840 + th.data.f_hei=res[0].height;
  841 + th.data.f_width=res[0].width;
  842 +
  843 + })
  844 + },
  845 +
  846 + getcopy(e) {
  847 + var that=this;
  848 + console.log('e', e);
  849 + var x=e.currentTarget.dataset.offsetLeft;
  850 + var y=e.currentTarget.dataset.offsetTop;
  851 + var position = [x, y];
  852 + that.setData({
  853 + write: position,copy_btn:1
  854 + });
  855 +
  856 + },
  857 +
  858 + getName(e) {
  859 + // console.log('e1', e);
  860 + let name = e.currentTarget.dataset.name;
  861 + this.setData({
  862 + projectName: name,
  863 + });
  864 + },
  865 +
  866 +
  867 + // 生成时间段
  868 + getTimeList(hours,step) {
  869 + var minutes=60;
  870 + var timeArr = [];
  871 + hours = hours;
  872 + step = step;
  873 +
  874 + for(var i = 8; i < hours; i++){
  875 + var str = '';
  876 + if(i < 10) {
  877 + str = 0 + '' + i;
  878 + } else {
  879 + str = '' + i;
  880 + };
  881 +
  882 + for(var j = 0; j < minutes; j++) {
  883 + if(j % step == 0){
  884 + var s = j < 10 ? ':' + 0 + '' + j : ':' + j;
  885 + s = str + s;
  886 + timeArr.push(s);
  887 + };
  888 + };
  889 + };
  890 +
  891 + // console.log('timeArr', timeArr);
  892 + this.setData({
  893 + timeArr,
  894 + });
  895 +
  896 + },
  897 +
  898 +
  899 +
  900 + scroll(e) {
  901 + // console.log('e', e.detail.deltaX);
  902 + let deltaX = e.detail.deltaX;
  903 + // if(deltaX < 0) {
  904 + // deltaX = -deltaX;
  905 + // };
  906 + this.data.deltaX = -deltaX;
  907 + },
  908 +
  909 +
  910 +
  911 +
  912 +})
0 \ No newline at end of file 913 \ No newline at end of file
packageA/pages/my_service2/appment_main.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "预约服务",
  3 + "enablePullDownRefresh": false,
  4 + "usingComponents": {
  5 + "warn": "/components/long_warn/long_warn",
  6 + "nav_b": "/components/nav_b/nav_b"
  7 + }
  8 +}
0 \ No newline at end of file 9 \ No newline at end of file
packageA/pages/my_service2/appment_main.wxml 0 → 100644
  1 +<wxs module="filters" src="../../../utils/filter.wxs"></wxs>
  2 +<wxs module="fil" src="g_filter.wxs"></wxs>
  3 +
  4 +<!-- <view class="btn-container">
  5 + <navigator class="btn" url="/pages/user/my_service/tment_order_list">
  6 + <view>我的预约</view>
  7 + </navigator>
  8 + <form report-submit='true' bindtap="sub_success">
  9 + <button form-type="submit" class="btn">
  10 + <view>提交预约</view>
  11 + </button>
  12 + </form>
  13 + </view> -->
  14 +
  15 +<view class="card" bindlongtap="getcopy">
  16 + <view class="t-c c-c7">
  17 + <text class="iconfont icon-sandian"></text>
  18 + </view>
  19 + <block wx:for="{{project}}">
  20 + <view class="t-c pd20" hover-class="hover" bindtouchmove="touchmove" bindtouchend="touchend" catch:touchmove data-name="{{item}}" bindlongtap="getName">
  21 + <text class="iconfont icon-meirong fs40"></text>
  22 + <view class="fs24">{{item}}</view>
  23 + </view>
  24 + </block>
  25 +</view>
  26 +
  27 +<image class="main" src="{{iurl}}/miniapp/images/yyservice/main.png"></image>
  28 +
  29 +<view class="pdb100">
  30 + <!-- 选择门店 -->
  31 + <view class="flex-vertical pdv20 jc-center">
  32 + <!-- 门店 -->
  33 + <view class="flex-vertical-between head fs30">
  34 + <view>门</view>
  35 + <view>店</view>
  36 + </view>
  37 +
  38 + <!-- 选择门店 -->
  39 + <view class="flex-vertical-between fs26 select" bindtap="onclickstore">
  40 + <view class="{{store_name==''?'color':''}} value ellipsis-1">{{store_name==""?'选择服务门店':store_name}}</view>
  41 + <view class="angle">∟</view>
  42 + </view>
  43 + </view>
  44 + <view class="table flex fs26" style="width: 100%;height: 100%;">
  45 + <view class="left t-c">
  46 + <view class="td pr" style="width: 120rpx">
  47 + <view class="time-box" bindtap="pickTime"><view class="time">时间</view></view>
  48 + <view class="md-box"><view class="md">美导</view></view>
  49 + </view>
  50 + <view class="td" style="width: 120rpx" wx:for="{{timeArr}}">{{item}}</view>
  51 + </view>
  52 + <scroll-view scroll-x class="right" bindscroll="scroll">
  53 + <view class="flex t-c">
  54 + <!-- <view>
  55 + <view class="td bg-pink">张三</view>
  56 + <view class="td" wx:for="{{timeArr.length}}"></view>
  57 + </view> -->
  58 + <view wx:for="{{md}}">
  59 + <view class="td bg-pink">{{item.name}}</view>
  60 + <!-- <view class="td content_view {{v[0][0]?'121':''}}">{{v[0][0]}}</view> -->
  61 + <block wx:for="{{timeArr.length}}" wx:for-item="subitem" wx:for-index="subindex">
  62 + <view class="td content_view {{v[index][subindex] && v[index][subindex]? 'active':''}} {{filters.in_arr(subindex,col_arr) || fil.is_no_time(item,subindex,timeArr) ?'notactive':''}}">
  63 + {{v[index][subindex]?v[index][subindex]:''}}
  64 + <text wx:if="{{v[index][subindex]}}" catchtap="close_this" data-txt="v[{{index}}][{{subindex}}]" data-sindex="{{subindex}}" class="close_this">×</text>
  65 + </view>
  66 + </block>
  67 + </view>
  68 + </view>
  69 + </scroll-view>
  70 +
  71 +
  72 +
  73 +
  74 +
  75 + <!-- 选择美容师 -->
  76 + <!-- <view class="flex-vertical mabot"> -->
  77 + <!-- 门店 -->
  78 + <!-- <view class="flex-vertical-between head fs30">
  79 + <view>美</view>
  80 + <view>容</view>
  81 + <view>师</view>
  82 + </view> -->
  83 +
  84 + <!-- 选择美容师 -->
  85 + <!-- <view class="rel fs26"> -->
  86 + <!-- <view class="flex-vertical-between Cosmetology" bindtap="query_beautician">
  87 + <view class="{{beautician_name==''?'color':''}} value ellipsis-1">{{beautician_name==''?'选择美容师':beautician_name}}</view>
  88 + <view class="angle">∟</view>
  89 + </view> -->
  90 + <!-- 美容师下拉列表 -->
  91 + <!-- <view class="beauticians abs" wx:if="{{beautician}}"> -->
  92 + <!-- 到时候要做判断如果是index==循环的最后一个则把下边线去掉:(beaclone去掉的css) -->
  93 + <!-- <view class="beautician flex-vertical fs26" wx:for="{{beautician_list}}" bindtap="choice_beautician" data-baaindex="{{key}}" wx:for-index="key">
  94 + <view class="StaffName ellipsis-1">{{item.StaffName}}</view>
  95 + </view>
  96 + <view>
  97 + </view>
  98 + </view> -->
  99 + <!-- </view> -->
  100 + <!-- <view class="flex-center users" bindtap="nav_bea">
  101 + <image class="user" src="{{iurl}}/miniapp/images/yyservice/user.png"></image>
  102 + </view> -->
  103 + <!-- </view> -->
  104 +
  105 + <!-- 选择时间 -->
  106 + <!-- <view class="flex-vertical mabot"> -->
  107 + <!-- 门店 -->
  108 + <!-- <view class="head fs30">
  109 + <view>预约时间</view>
  110 + </view> -->
  111 +
  112 + <!-- 选择时间 -->
  113 + <!-- <view class="flex-vertical-between fs26 select" data-url="/packageA/pages/my_service/beauty_deta?url={{url}}&StorageId={{StorageId}}&BeauticianID={{beauticianID}}&itemId={{itemId}}&modify=0&projectId={{project_id}}" bindtap="goto">
  114 + <view class="{{time==''?'color':''}}">{{time==""?'选择时间':time}}</view>
  115 + <view class="angle angler">∟</view>
  116 + </view> -->
  117 + <!-- </view> -->
  118 +
  119 + <!-- 备注 -->
  120 + <!-- <view class="flex Remarks"> -->
  121 + <!-- 门店 -->
  122 + <!-- <view class="flex-space-between head fs30">
  123 + <view>备</view>
  124 + <view>注</view>
  125 + </view>
  126 + <view class="flex fs26">
  127 + <block wx:if="{{is_textea==1}}">
  128 + <textarea class="textarea" placeholder="{{remarks==''?'填写备注':remarks}}" placeholder-class="fs26 color" value="{{remarks}}" bindinput="input_remarks" maxlength="100">
  129 + </textarea>
  130 + </block>
  131 + <block wx:else>
  132 + <view class="textarea {{remarks==''?'color':''}}" bindtap="check_text">{{remarks==''?'填写备注':remarks}}
  133 + </view>
  134 + </block>
  135 + </view> -->
  136 + <!-- </view>
  137 + <view wx:if="{{tment_count!=''}}" class="notes flex-level-right fs24 color">
  138 + <view>注:剩余可预约人数{{tment_count}}人</view>
  139 + </view> -->
  140 +
  141 +
  142 + </view>
  143 +</view>
  144 +
  145 +<view class="btn-box fs32">
  146 + <navigator class="appment flex-center" url="/pages/user/my_service/tment_order_list">
  147 + <view>我的预约</view>
  148 + </navigator>
  149 + <form report-submit='true' bindtap="sub_success">
  150 + <button form-type="submit" class="sub_appment flex-center">帮你预约</button>
  151 + </form>
  152 +</view>
  153 +
  154 +
  155 +<!-- 门店列表显示 -->
  156 +<view wx:if="{{store}}" class="storeList fixed">
  157 + <view class="choice flex-vertical-between fs32 storeListpadd">
  158 + <view>选择服务门店</view>
  159 + <icon bindtap="onclickstore" color="black" size="22" type="cancel"></icon>
  160 + </view>
  161 + <view class="searchbar flex-vertical-between storeListpadd">
  162 + <input class="inputstore fs28" placeholder="{{key_word==''?'输入要搜索的门店':key_word}}" placeholder-class="fs28" maxlength="16" bindinput="input_store" bindconfirm="search_store" />
  163 + <view class="search flex-center" bindtap="search_store">
  164 + <view class="fs28">搜索</view>
  165 + </view>
  166 + </view>
  167 + <!-- 选择门店 -->
  168 + <scroll-view class="stores" scroll-y="{{isScroll}}" enable-back-to-top="true" bindscrolltolower="onReachBottom">
  169 + <view class="store flex-vertical" wx:for="{{store_list}}" bindtap="choose_for_store" data-ind="{{index}}">
  170 + <block wx:if="{{index==fir_pick_index}}">
  171 + <icon class="icon" type="success" color="red" size="20"></icon>
  172 + </block>
  173 + <block wx:else>
  174 + <view class="circular"></view>
  175 + </block>
  176 + <view class="store_name_dis">
  177 + <view class="name_dis flex-vertical-between">
  178 + <view class="store_name fs28 ellipsis-1">{{item.StorageName}}</view>
  179 + <view wx:if="{{item.Distance!=1000000}}" class="store_dis flex fs22">
  180 + <view class="ellipsis-1">距您:{{item.Distance}}km</view>
  181 + </view>
  182 + </view>
  183 + <view class="store_address fs24 ellipsis-2">{{item.Address}}</view>
  184 + </view>
  185 + </view>
  186 + <!-- 通过搜索的时候没有找到的提示语 -->
  187 + <view wx:if="{{store_list.length<1 && is_search==1}}" class="flex-center fs28 notstore">
  188 + <view>没有找到{{key_word}}门店</view>
  189 + </view>
  190 +
  191 + <!-- 数据加载完毕 -->
  192 + <view wx:if="{{ismore && store_list.length>1}}" class="flex-center fs28 notstore">
  193 + <view>数据加载完毕</view>
  194 + </view>
  195 + </scroll-view>
  196 + <!-- sub -->
  197 + <view class="flex-center fs32" bindtap="choice_store">
  198 + <view class="determine flex-center">
  199 + <view>确定</view>
  200 + </view>
  201 + </view>
  202 +</view>
  203 +<!-- 蒙尘 -->
  204 +<view wx:if="{{store}}" class="disgraceful" bindtap="onclickstore"></view>
  205 +<warn id="warn"></warn>
  206 +
  207 +<!-- 制作一个圆球导航 -->
  208 +<!-- <nav_b id="nav_b"></nav_b> -->
  209 +
  210 +<view class="copy" wx:if="{{copy_btn}}" style="position:absolute;left:{{write[0]}}px;top:{{write[1]}}px;">
  211 + <text class="iconfont icon-meirong fs40"></text>
  212 + <view class="fs24">{{projectName}}</view>
  213 +</view>
0 \ No newline at end of file 214 \ No newline at end of file
packageA/pages/my_service2/appment_main.wxss 0 → 100644
  1 +page,
  2 +.area {
  3 + width: 100%;
  4 + height: 100%;
  5 +}
  6 +
  7 +
  8 +
  9 +
  10 +/* .container {
  11 + border-top: 7rpx solid rgb(245, 245, 245);
  12 + justify-content: baseline;
  13 +} */
  14 +
  15 +.main {
  16 + width: 100%;
  17 + height: 305rpx;
  18 +}
  19 +
  20 +.angle {
  21 + transform: rotate(-45deg);
  22 + margin-right: 15rpx;
  23 + margin-bottom: 10rpx;
  24 + font-size: 26rpx;
  25 + color: rgb(142, 142, 142);
  26 +}
  27 +.StaffName{
  28 + max-width: 350rpx;
  29 +}
  30 +.angler {
  31 + transform: rotate(227deg);
  32 + margin-bottom: 0rpx;
  33 +}
  34 +
  35 +.users {
  36 + background-color: rgb(255, 255, 255);
  37 +}
  38 +
  39 +.user {
  40 + width: 40rpx;
  41 + height: 40rpx;
  42 + margin-left: 15rpx;
  43 +}
  44 +
  45 +.Fram {
  46 + padding: 0rpx 60rpx;
  47 + margin-top: 60rpx;
  48 + background-color: rgb(255, 255, 255);
  49 +}
  50 +
  51 +.subSuccess {
  52 + position: fixed;
  53 + z-index: 3;
  54 + top: 420rpx;
  55 + left: 110rpx;
  56 + width: 540rpx;
  57 + height: 315rpx;
  58 + background-color: rgb(155, 155, 155);
  59 + text-align: center;
  60 + border-radius: 20rpx;
  61 + color: rgb(255, 255, 255);
  62 + font-weight: bold;
  63 +}
  64 +
  65 +.Success {
  66 + width: 110rpx;
  67 + height: 110rpx;
  68 + margin-top: 70rpx;
  69 + margin-bottom: 30rpx;
  70 +}
  71 +
  72 +.appment, .sub_appment {
  73 + width: 270rpx;
  74 + height: 60rpx;
  75 + line-height: 55rpx;
  76 + border-radius: 40rpx;
  77 +}
  78 +
  79 +button {
  80 + height: 100%;
  81 + background-color: rgb(214, 1, 33);
  82 +}
  83 +
  84 +.appment {
  85 + background-color: rgb(238, 238, 238);
  86 +}
  87 +
  88 +.sub_appment {
  89 + background-color: rgb(214, 1, 33);
  90 + color: rgb(255, 255, 255);
  91 +}
  92 +
  93 +.head {
  94 + width: 122rpx;
  95 + margin-right: 40rpx;
  96 + height: 50rpx;
  97 + line-height: 50rpx;
  98 +}
  99 +
  100 +.textarea {
  101 + width: 420rpx;
  102 + background-color: rgb(238, 238, 238);
  103 + border-radius: 6rpx;
  104 + height: 130rpx;
  105 + padding-left: 40rpx;
  106 + padding-right: 15rpx;
  107 + padding-top: 15rpx;
  108 + padding-bottom: 15rpx;
  109 +}
  110 +
  111 +.mabot {
  112 + margin-bottom: 35rpx;
  113 +}
  114 +
  115 +.select {
  116 + width: 420rpx;
  117 + height: 55rpx;
  118 + line-height: 55rpx;
  119 + background-color: rgb(238, 238, 238);
  120 + border-radius: 6rpx;
  121 + padding-left: 40rpx;
  122 + padding-right: 15rpx;
  123 +}
  124 +
  125 +.Cosmetology {
  126 + padding-left: 40rpx;
  127 + padding-right: 15rpx;
  128 + width: 365rpx;
  129 + background-color: rgb(238, 238, 238);
  130 + height: 50rpx;
  131 + line-height: 50rpx;
  132 + border-radius: 6rpx;
  133 +}
  134 +
  135 +.beauticians {
  136 + width: 407rpx;
  137 + z-index: 3;
  138 + top: 45rpx;
  139 + left: -1rpx;
  140 + padding: 0rpx 5rpx;
  141 + border: 2rpx solid rgb(238, 238, 238);
  142 + background-color: rgb(255, 255, 255);
  143 + padding-bottom: 5rpx;
  144 + height: 279rpx;
  145 + overflow-x: scroll;
  146 + overflow-y: scroll;
  147 +}
  148 +
  149 +.beautician {
  150 + height: 70rpx;
  151 + border-bottom: 2rpx solid rgb(238, 238, 238);
  152 + padding-left: 25rpx;
  153 +}
  154 +
  155 +.beaclone {
  156 + border-bottom: 0rpx;
  157 +}
  158 +
  159 +.notes {
  160 + margin-top: 15rpx;
  161 + margin-bottom: 60rpx;
  162 + margin-right: 8rpx;
  163 +}
  164 +
  165 +.color {
  166 + color: rgb(172, 172, 172);
  167 +}
  168 +
  169 +.submitMax {
  170 + margin-top: 50rpx;
  171 + padding: 0rpx 15rpx;
  172 +}
  173 +
  174 +.Remarks {
  175 + margin-top: 15rpx;
  176 +}
  177 +
  178 +/* 蒙尘 */
  179 +
  180 +.disgraceful {
  181 + position: fixed;
  182 + z-index: 4;
  183 + width: 100%;
  184 + height: 100%;
  185 + top: 0rpx;
  186 + left: 0rpx;
  187 + background-color: rgba(0, 0, 0, 0.4);
  188 +}
  189 +
  190 +.storeList {
  191 + z-index: 5;
  192 + left: 0rpx;
  193 + border-top-left-radius: 25rpx;
  194 + border-top-right-radius: 25rpx;
  195 + background-color: rgb(255, 255, 255);
  196 + width: 100%;
  197 + padding: 45rpx 0rpx;
  198 +}
  199 +
  200 +.storeListpadd {
  201 + padding: 0rpx 31rpx;
  202 +}
  203 +
  204 +.choice {
  205 + margin-bottom: 5rpx;
  206 +}
  207 +
  208 +.inputstore {
  209 + width: 510rpx;
  210 + height: 43rpx;
  211 + line-height: 43rpx;
  212 + border-radius: 30rpx;
  213 + border: 2rpx solid rgb(238, 238, 238);
  214 + padding-left: 30rpx;
  215 +}
  216 +
  217 +.searchbar {
  218 + height: 95rpx;
  219 + border-bottom: 2rpx solid rgb(238, 238, 238);
  220 +}
  221 +
  222 +.search {
  223 + width: 125rpx;
  224 + height: 45rpx;
  225 + line-height: 45rpx;
  226 + background-color: rgb(219, 27, 52);
  227 + border-radius: 30rpx;
  228 + color: rgb(255, 255, 255);
  229 +}
  230 +
  231 +.stores {
  232 + height: 500rpx;
  233 + overflow-y: scroll;
  234 +}
  235 +
  236 +.store {
  237 + margin: 0rpx 16rpx;
  238 + padding-right: 15rpx;
  239 + border-bottom: 2rpx solid rgb(238, 238, 238);
  240 + padding: 20rpx 0rpx;
  241 +}
  242 +
  243 +.icon {
  244 + padding: 0rpx 15rpx;
  245 +}
  246 +
  247 +.circular {
  248 + width: 37rpx;
  249 + height: 37rpx;
  250 + border-radius: 50%;
  251 + border: 2rpx solid rgb(52, 52, 52);
  252 + margin: 0rpx 15rpx;
  253 +}
  254 +
  255 +.store_name_dis {
  256 + width: 90%;
  257 +}
  258 +
  259 +.name_dis {
  260 + margin-bottom: 5rpx;
  261 +}
  262 +
  263 +.store_name {
  264 + max-width: 420rpx;
  265 +}
  266 +
  267 +.store_dis {
  268 + height: 30rpx;
  269 + line-height: 30rpx;
  270 + padding: 5rpx 15rpx;
  271 + background-color: rgb(227, 227, 227);
  272 + border-radius: 25rpx;
  273 + margin-right: 20rpx;
  274 + color: rgb(159, 159, 159);
  275 + max-width: 200rpx;
  276 +}
  277 +
  278 +.store_address {
  279 + color: rgb(159, 159, 159);
  280 +}
  281 +
  282 +.determine {
  283 + background-color: rgb(196, 24, 26);
  284 + width: 500rpx;
  285 + border-radius: 35rpx;
  286 + height: 60rpx;
  287 + color: rgb(255, 255, 255);
  288 + margin: 20rpx 0rpx;
  289 +}
  290 +
  291 +.value {
  292 + max-width: 300rpx;
  293 +}
  294 +
  295 +.notstore {
  296 + height: 80rpx;
  297 + color: rgb(159, 159, 159);
  298 +}
  299 +
  300 +
  301 +.table {
  302 + background-color: white;
  303 + /* border-top: 2rpx solid rgba(218, 217, 217, 1);
  304 + border-left: 2rpx solid rgba(218, 217, 217, 1); */
  305 +}
  306 +.blue {
  307 + background: rgba(241, 252, 255, 1);
  308 +}
  309 +.bg-pink {
  310 + background-color: #FFDEF0;
  311 +}
  312 +.td {
  313 + width: 140rpx;
  314 + height: 120rpx;
  315 + display: flex;
  316 + align-items: center;
  317 + justify-content: center;
  318 + border-right: 2rpx solid rgba(218, 217, 217, 1);
  319 + border-bottom: 2rpx solid rgba(218, 217, 217, 1);
  320 + position: relative;
  321 +}
  322 +
  323 +.td.active {
  324 + background-color: #FFE5F5 !important;
  325 +}
  326 +.td.notactive {
  327 + background-color: #f0f0f0;
  328 +}
  329 +
  330 +.left {
  331 + box-shadow: 4px 0px 6px #e7e9eb;
  332 +}
  333 +
  334 +.right {
  335 + width: calc(100% - 102rpx);
  336 + /* padding-right: 102rpx; */
  337 + box-sizing: border-box;
  338 +}
  339 +
  340 +.card {
  341 + position: fixed;
  342 + width: 110rpx;
  343 + top: 50%;
  344 + right: 0;
  345 + /* min-height: 400rpx; */
  346 + max-height: 700rpx;
  347 + overflow-y: auto;
  348 + transform: translateY(-50%);
  349 + background-color: white;
  350 + border-radius: 10rpx;
  351 + box-shadow: -2px 0px 6px #aaa;
  352 + z-index: 1000;
  353 +}
  354 +
  355 +.icon-meirong {
  356 + color: pink;
  357 +}
  358 +
  359 +
  360 +
  361 +.time-box {
  362 + width: 0;
  363 + height: 0;
  364 + border-width: 50rpx;
  365 + border-style: solid;
  366 + border-color: transparent transparent white white;
  367 + position: absolute;
  368 + left: 0;
  369 + bottom: 0;
  370 +}
  371 +.time {
  372 + position: absolute;
  373 + bottom: -22px;
  374 + width: 53rpx;
  375 + z-index: 999;
  376 + left: -22px;
  377 + font-size: 12px;
  378 +}
  379 +
  380 +.md-box {
  381 + width: 0;
  382 + height: 0;
  383 + border-width: 62rpx;
  384 + border-style: solid;
  385 + border-color: #FFDEF0 #FFDEF0 transparent transparent;
  386 + position: absolute;
  387 + right: 0;
  388 + top: 0;
  389 +}
  390 +.md {
  391 + position: absolute;
  392 + top: -30rpx;
  393 + width: 53rpx;
  394 + z-index: 999;
  395 + right: -52rpx;
  396 + font-size: 24rpxpx;
  397 +}
  398 +
  399 +.hover {
  400 + background-color: #e0e0e0;
  401 +}
  402 +
  403 +.copy {
  404 + padding: 10rpx;
  405 + text-align: center;
  406 + background-color: #f0f0f0;
  407 + z-index: 9999;
  408 +}
  409 +
  410 +.btn-container {
  411 + position: absolute;
  412 + width: 100%;
  413 + display: flex;
  414 + justify-content: space-between;
  415 + padding: 20rpx;
  416 + box-sizing: border-box;
  417 +}
  418 +
  419 +.btn {
  420 + color: white;
  421 + background-color: transparent;
  422 + line-height: 1;
  423 + font-size: 26rpx;
  424 +}
  425 +.close_this{ position: absolute; width: 40rpx; display: flex;right: 0; top: 0; border-radius: 50%;
  426 + justify-content: center;align-items: center;
  427 + height: 40rpx; border: 1rpx solid #adadad; }
  428 +
  429 +
  430 +.btn-box {
  431 + background-color: white;
  432 + position: fixed;
  433 + bottom: 0;
  434 + width: 100%;
  435 + display: flex;
  436 + justify-content: space-around;
  437 + padding: 20rpx 0;
  438 + box-shadow: 1px 0px 6px #aaa;
  439 +}
  440 +
  441 +.pdb100 {
  442 + padding-bottom: 100rpx;
  443 +}
  444 +
  445 +
packageA/pages/my_service2/g_filter.wxs 0 → 100644
  1 +var g_filters = {
  2 + is_no_time:function(item,subindex,timeArr){
  3 + var t_time=timeArr[subindex];
  4 + var time_arr=item.time.split("-");
  5 +
  6 + var t_date=getDate();
  7 + var t_date_str=t_date.getFullYear()+"-"+(t_date.getMonth() + 1)+"-"+t_date.getDate()+" "
  8 +
  9 + var this_time =t_date_str+t_time.substring(0, 19);
  10 + var reg = getRegExp("-", "g");
  11 + this_time = this_time.replace(reg, '/');
  12 + var t1 = getDate(this_time);
  13 +
  14 + var fmt1 =t_date_str+time_arr[0].substring(0, 19);
  15 + var reg = getRegExp("-", "g");
  16 + var fmt2 = fmt1.replace(reg, '/');
  17 + var t2 = getDate(fmt2);
  18 +
  19 + if(t1<t2) return true;
  20 + if(time_arr.length>1){
  21 + var ft1 =t_date_str+time_arr[1].substring(0, 19);
  22 + var reg = getRegExp("-", "g");
  23 + var ft2 = ft1.replace(reg, '/');
  24 + var t3 = getDate(ft2);
  25 + if(t1>t3) return true;
  26 + }
  27 + return false;
  28 + },
  29 +
  30 +}
  31 +module.exports = {
  32 + is_no_time: g_filters.is_no_time,
  33 +
  34 +}
0 \ No newline at end of file 35 \ No newline at end of file
packageA/pages/profile/profile.js
@@ -93,21 +93,16 @@ Page({ @@ -93,21 +93,16 @@ Page({
93 }).then(res => { 93 }).then(res => {
94 if (res.data.code == 0) { 94 if (res.data.code == 0) {
95 var data = res.data.data; 95 var data = res.data.data;
96 - var VipLabel = th.data.VipLabel; //通过id标签找到已选择的标签  
97 - if(VipLabel){  
98 - var dateList = data.VipLabel.split(",");  
99 - var arr=[];  
100 - for (var i in dateList) {  
101 - if (dateList[i] != "") {  
102 - arr.push(dateList[i]);  
103 - }  
104 - }  
105 - th.setData({  
106 - check_label: arr  
107 - }) 96 + var VipLabel = th.data.check_label; //通过id标签找到已选择的标签
  97 + var dateList = data.VipLabel.split(",");
  98 + for (var i in dateList) {
  99 + if (dateList[i] != "") {
  100 + VipLabel.push(dateList[i]);
  101 + }
108 } 102 }
109 -  
110 - 103 + th.setData({
  104 + check_label: VipLabel
  105 + })
111 } else { 106 } else {
112 getApp().my_warnning("系统繁忙,请稍后再试", 0, th); 107 getApp().my_warnning("系统繁忙,请稍后再试", 0, th);
113 } 108 }
@@ -536,6 +531,10 @@ Page({ @@ -536,6 +531,10 @@ Page({
536 if(!user) return false; 531 if(!user) return false;
537 532
538 //-- 赋予默认值 -- 533 //-- 赋予默认值 --
  534 + if(user['idcard']) this.data.id=user['idcard'];
  535 + if(user['vipname']) this.data.name=user['vipname'];
  536 + if(user['address']) this.data.address=user['address'];
  537 +
539 app.request.get(url1, { 538 app.request.get(url1, {
540 success: function(res) { 539 success: function(res) {
541 console.log('x-->', res.data.code, res.data.data.reg_type, res.data.data.reg_info); 540 console.log('x-->', res.data.code, res.data.data.reg_type, res.data.data.reg_info);
@@ -568,13 +567,18 @@ Page({ @@ -568,13 +567,18 @@ Page({
568 if(res.data.code == 0) { 567 if(res.data.code == 0) {
569 console.log('url3', res.data.data.birthday); 568 console.log('url3', res.data.data.birthday);
570 let data = res.data.data; 569 let data = res.data.data;
571 - if(data['idcard']) self.data.id=data['idcard'];  
572 - if(data['vipname']) self.data.name=data['vipname'];  
573 - if(data['address']) self.data.address=data['address'];  
574 - 570 +
575 if(data.birthday){ 571 if(data.birthday){
576 data.birthday= ut.formar_no_full(data.birthday); 572 data.birthday= ut.formar_no_full(data.birthday);
577 } 573 }
  574 +
  575 + if(user['sex'] && !data.sex){
  576 + data.sex=user['sex'];
  577 + }
  578 + if(user['birthday'] && !data.birthday){
  579 + data.birthday= ut.formar_no_full(user['birthday']);
  580 + }
  581 +
578 if(!data.pickup_name){ 582 if(!data.pickup_name){
579 data.pickup_name=""; 583 data.pickup_name="";
580 } 584 }
@@ -582,21 +586,44 @@ Page({ @@ -582,21 +586,44 @@ Page({
582 data.pickup_id=0; 586 data.pickup_id=0;
583 } 587 }
584 //-- 获取门店 -- 588 //-- 获取门店 --
585 - self.setData({  
586 - isGender: data.sex,  
587 - isLunar: data.islunar,  
588 - datet: data.birthday,  
589 - stoname: data.pickup_name,  
590 - sto_sele_id: data.pickup_id,  
591 - vip_user:data  
592 - });  
593 - 589 + if(user['pickup_id'] && !data.pickup_id){
  590 + getApp().promiseGet("/api/weshop/pickup/get/"+r.stoid+"/"+user['pickup_id']).then(res=>{
  591 + if(res.data.code==0 && res.data.data){
  592 + data.pickup_name=res.data.data.pickup_name;
  593 + data.pickup_id=res.data.data.pickup_id;
  594 +
  595 + self.setData({
  596 + isGender: data.sex,
  597 + isLunar: data.islunar,
  598 + datet: data.birthday,
  599 + stoname: data.pickup_name,
  600 + sto_sele_id: data.pickup_id,
  601 + });
  602 + }
  603 + else{
  604 + self.setData({
  605 + isGender: data.sex,
  606 + isLunar: data.islunar,
  607 + datet: data.birthday,
  608 + stoname: data.pickup_name,
  609 + sto_sele_id: data.pickup_id,
  610 + });
  611 + }
  612 + })
  613 + }else{
  614 + self.setData({
  615 + isGender: data.sex,
  616 + isLunar: data.islunar,
  617 + datet: data.birthday,
  618 + stoname: data.pickup_name,
  619 + sto_sele_id: data.pickup_id,
  620 + });
  621 + }
594 }; 622 };
595 } 623 }
596 }); 624 });
597 625
598 - if(user){  
599 - getApp().promiseGet("/api/weshop/users/getAndUpdateUser/" + r.stoid + "/" + user.user_id,{}); 626 + if(user){
600 self.setData({user:user}) 627 self.setData({user:user})
601 } 628 }
602 629
packageA/pages/profile/profile.wxml
@@ -28,9 +28,9 @@ @@ -28,9 +28,9 @@
28 <!-- 如果需要接骚人信息 --> 28 <!-- 如果需要接骚人信息 -->
29 <view class="user-name flex-vertical" data-type="nickname" wx:if="{{reg_info.introducer_state}}"> 29 <view class="user-name flex-vertical" data-type="nickname" wx:if="{{reg_info.introducer_state}}">
30 <view class="user-name-txt">推荐人:</view> 30 <view class="user-name-txt">推荐人:</view>
31 - <input bindinput="getReferee" bindblur="" value="{{vip_user['fromuser_id']?vip_user['fromuser_id']:''}}" data-name="推荐人" class="user-txt-right f1 pdl20 t-r" placeholder="请输入推荐人手机号码或卡号"/> 31 + <input bindinput="getReferee" bindblur="" value="{{user['fromuser_id']?user['fromuser_id']:''}}" data-name="推荐人" class="user-txt-right f1 pdl20 t-r" placeholder="请输入推荐人手机号码或卡号"/>
32 32
33 - <block wx:if="{{!vip_user['fromuser_id']}}"> 33 + <block wx:if="{{!user['fromuser_id']}}">
34 <view class="c-red pdl20 fs24" wx:if="{{reg_info.introducer && (reg_info.introducer_type == 0)}}">+{{reg_info.introducer}}积分</view> 34 <view class="c-red pdl20 fs24" wx:if="{{reg_info.introducer && (reg_info.introducer_type == 0)}}">+{{reg_info.introducer}}积分</view>
35 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.introducer && (reg_info.introducer_type == 1)}}">+{{reg_info.introducer}}成长值</view> 35 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.introducer && (reg_info.introducer_type == 1)}}">+{{reg_info.introducer}}成长值</view>
36 </block> 36 </block>
@@ -39,8 +39,8 @@ @@ -39,8 +39,8 @@
39 <!-- 如果需要接姓名信息 --> 39 <!-- 如果需要接姓名信息 -->
40 <view class="user-name flex-vertical" data-type="nickname" wx:if="{{reg_info.name_state}}"> 40 <view class="user-name flex-vertical" data-type="nickname" wx:if="{{reg_info.name_state}}">
41 <view class="user-name-txt">姓名:</view> 41 <view class="user-name-txt">姓名:</view>
42 - <input bindinput="getName" bindblur="" value="{{vip_user['vipname']?vip_user['vipname']:''}}" data-name="姓名" class="user-txt-right f1 pdl20 t-r" placeholder="请输入您的真实姓名"/>  
43 - <block wx:if="{{!vip_user['vipname']}}"> 42 + <input bindinput="getName" bindblur="" value="{{user['vipname']?user['vipname']:''}}" data-name="姓名" class="user-txt-right f1 pdl20 t-r" placeholder="请输入您的真实姓名"/>
  43 + <block wx:if="{{!user['vipname']}}">
44 <view class="c-red pdl20 fs24" wx:if="{{reg_info.name && (reg_info.name_val_type == 0)}}">+{{reg_info.name}}积分</view> 44 <view class="c-red pdl20 fs24" wx:if="{{reg_info.name && (reg_info.name_val_type == 0)}}">+{{reg_info.name}}积分</view>
45 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.name && (reg_info.name_val_type == 1)}}">+{{reg_info.name}}成长值</view> 45 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.name && (reg_info.name_val_type == 1)}}">+{{reg_info.name}}成长值</view>
46 </block> 46 </block>
@@ -69,7 +69,7 @@ @@ -69,7 +69,7 @@
69 </view> 69 </view>
70 </view> 70 </view>
71 71
72 - <block wx:if="{{!vip_user['sex']}}"> 72 + <block wx:if="{{!user['sex']}}">
73 <view class="c-red pdl20 fs24" wx:if="{{reg_info.sex && (reg_info.sex_state_type == 0)}}">+{{reg_info.sex}}积分</view> 73 <view class="c-red pdl20 fs24" wx:if="{{reg_info.sex && (reg_info.sex_state_type == 0)}}">+{{reg_info.sex}}积分</view>
74 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.sex && (reg_info.sex_state_type == 1)}}">+{{reg_info.sex}}成长值</view> 74 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.sex && (reg_info.sex_state_type == 1)}}">+{{reg_info.sex}}成长值</view>
75 </block> 75 </block>
@@ -92,7 +92,7 @@ @@ -92,7 +92,7 @@
92 </view> 92 </view>
93 </view> 93 </view>
94 94
95 - <block wx:if="{{!vip_user['birthday']}}"> 95 + <block wx:if="{{!user['birthday']}}">
96 <view class="c-red pdl20 fs24 shrink0" wx:if="{{reg_info.birthday && (reg_info.birthday_type == 0)}}">+{{reg_info.birthday}}积分</view> 96 <view class="c-red pdl20 fs24 shrink0" wx:if="{{reg_info.birthday && (reg_info.birthday_type == 0)}}">+{{reg_info.birthday}}积分</view>
97 <view class="c-red pdl20 fs24 shrink0" wx:elif="{{reg_info.birthday && (reg_info.birthday_type == 1)}}">+{{reg_info.birthday}}成长值</view> 97 <view class="c-red pdl20 fs24 shrink0" wx:elif="{{reg_info.birthday && (reg_info.birthday_type == 1)}}">+{{reg_info.birthday}}成长值</view>
98 </block> 98 </block>
@@ -101,8 +101,8 @@ @@ -101,8 +101,8 @@
101 101
102 <view class="user-name flex-vertical" data-type="nickname" wx:if="{{reg_info.idcard_state}}"> 102 <view class="user-name flex-vertical" data-type="nickname" wx:if="{{reg_info.idcard_state}}">
103 <view class="user-name-txt shrink0">身份证:</view> 103 <view class="user-name-txt shrink0">身份证:</view>
104 - <input bindinput="getId" bindblur="IdentityIDCard" value="{{vip_user.idcard}}" class="user-txt-right pdl20 f1 t-r" placeholder="请输入身份证号码"></input>  
105 - <block wx:if="{{!vip_user.idcard}}"> 104 + <input bindinput="getId" bindblur="IdentityIDCard" value="{{user.idcard}}" class="user-txt-right pdl20 f1 t-r" placeholder="请输入身份证号码"></input>
  105 + <block wx:if="{{!user.idcard}}">
106 <view class="c-red pdl20 fs24" wx:if="{{reg_info.idcard && (reg_info.idcard_type == 0)}}">+{{reg_info.idcard}}积分</view> 106 <view class="c-red pdl20 fs24" wx:if="{{reg_info.idcard && (reg_info.idcard_type == 0)}}">+{{reg_info.idcard}}积分</view>
107 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.idcard && (reg_info.idcard_type == 1)}}">+{{reg_info.idcard}}成长值</view> 107 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.idcard && (reg_info.idcard_type == 1)}}">+{{reg_info.idcard}}成长值</view>
108 </block> 108 </block>
@@ -111,8 +111,8 @@ @@ -111,8 +111,8 @@
111 111
112 <view class="user-name flex-vertical" data-type="mobile" wx:if="{{reg_info.address_state}}"> 112 <view class="user-name flex-vertical" data-type="mobile" wx:if="{{reg_info.address_state}}">
113 <view class="user-name-txt">地址:</view> 113 <view class="user-name-txt">地址:</view>
114 - <input bindinput="getAddress" bindblur="" value="{{vip_user.address?vip_user.address:''}}" data-name="姓名" class="user-txt-right f1" placeholder="请输入详细地址" style="text-align:right" />  
115 - <block wx:if="{{!vip_user.address}}"> 114 + <input bindinput="getAddress" bindblur="" value="{{user.address?user.address:''}}" data-name="姓名" class="user-txt-right f1" placeholder="请输入详细地址" style="text-align:right" />
  115 + <block wx:if="{{!user.address}}">
116 <view class="c-red pdl20 fs24" wx:if="{{reg_info.address && (reg_info.address_type == 0)}}">+{{reg_info.address}}积分</view> 116 <view class="c-red pdl20 fs24" wx:if="{{reg_info.address && (reg_info.address_type == 0)}}">+{{reg_info.address}}积分</view>
117 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.address && (reg_info.address_type == 1)}}">+{{reg_info.address}}成长值</view> 117 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.address && (reg_info.address_type == 1)}}">+{{reg_info.address}}成长值</view>
118 </block> 118 </block>
@@ -127,7 +127,7 @@ @@ -127,7 +127,7 @@
127 <view class="angle">∟</view> 127 <view class="angle">∟</view>
128 </view> 128 </view>
129 129
130 - <block wx:if="{{!vip_user.pickup_id}}"> 130 + <block wx:if="{{!user.pickup_id}}">
131 <view class="c-red pdl20 fs24" wx:if="{{reg_info.pick && (reg_info.pick_type == 0)}}">+{{reg_info.pick}}积分</view> 131 <view class="c-red pdl20 fs24" wx:if="{{reg_info.pick && (reg_info.pick_type == 0)}}">+{{reg_info.pick}}积分</view>
132 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.pick && (reg_info.pick_type == 1)}}">+{{reg_info.pick}}成长值</view> 132 <view class="c-red pdl20 fs24" wx:elif="{{reg_info.pick && (reg_info.pick_type == 1)}}">+{{reg_info.pick}}成长值</view>
133 </block> 133 </block>
packageA/pages/quan_list/quan_list.js
@@ -25,26 +25,21 @@ Page({ @@ -25,26 +25,21 @@ Page({
25 onLoad: function(t) { 25 onLoad: function(t) {
26 var th=this; 26 var th=this;
27 getApp().getConfig2(function (conf) { 27 getApp().getConfig2(function (conf) {
28 - if(conf.couponset)  
29 - conf.couponset=conf.couponset.replace(/\<img/g,'<img style="width:100%;height:auto;display:block"'); 28 + if(conf.couponset) conf.couponset=conf.couponset.replace(/\<img/g,'<img style="width:100%;height:auto;display:block"');
30 th.setData({config2:conf}); 29 th.setData({config2:conf});
31 }) 30 })
32 -  
33 - var usr=getApp().globalData.userInfo;  
34 - if(!usr){  
35 - getApp().goto("/pages/togoin/togoin");  
36 - return false;  
37 - }  
38 }, 31 },
39 //---展示--- 32 //---展示---
40 onShow: function() { 33 onShow: function() {
  34 +
  35 + console.log("onShow:1");
41 this.data.curpage=1; 36 this.data.curpage=1;
42 this.setData({dataList:null}); 37 this.setData({dataList:null});
  38 + console.log("onShow:2");
43 this.get_quan_list(); 39 this.get_quan_list();
44 //券的模拟数据 40 //券的模拟数据
45 //var data = [{ is_get:0,money:50,condition:500,id:1,name: "券名字", endtype: 0, use_start_time: 1579596090, use_end_time: 1611218490, everyone_num: 2,interval_time:1,color:"red"}]; 41 //var data = [{ is_get:0,money:50,condition:500,id:1,name: "券名字", endtype: 0, use_start_time: 1579596090, use_end_time: 1611218490, everyone_num: 2,interval_time:1,color:"red"}];
46 //th.setData({dataList: data}); 42 //th.setData({dataList: data});
47 -  
48 this.setData({getcurday:ut.gettimestamp()}); 43 this.setData({getcurday:ut.gettimestamp()});
49 }, 44 },
50 45
@@ -54,20 +49,31 @@ Page({ @@ -54,20 +49,31 @@ Page({
54 49
55 //--券的列表页面的函数-- 50 //--券的列表页面的函数--
56 get_quan_list:function(){ 51 get_quan_list:function(){
  52 + console.log("onShow:3");
57 var th=this; 53 var th=this;
58 if(th.data.loading) return false; 54 if(th.data.loading) return false;
59 th.data.loading=1; 55 th.data.loading=1;
60 var user_id=getApp().globalData.user_id; 56 var user_id=getApp().globalData.user_id;
61 - getApp().request.promiseGet("/api/weshop/prom/coupon/pageCouponList", {  
62 - data:{store_id:os.stoid,type:1,pageSize:10,page:th.data.curpage,user_id:user_id,is_share:0}  
63 - }).then(res => {  
64 - th.data.loading=0;  
65 - if(res.data.code==0){  
66 - if(!th.data.dataList) th.data.dataList=new Array();  
67 - th.data.dataList=th.data.dataList.concat(res.data.data.pageData);  
68 - th.data.curpage++;  
69 - th.setData({dataList:th.data.dataList});  
70 - } 57 + console.log("onShow:4");
  58 + var data={store_id:os.stoid,type:1,pageSize:10,page:th.data.curpage,user_id:user_id,is_share:0};
  59 + console.log(data);
  60 + getApp().request.get("/api/weshop/prom/coupon/pageCouponList", {
  61 + data:data,
  62 + success:function (res){
  63 + console.log("onShow:5");
  64 + console.log(res);
  65 + th.data.loading=0;
  66 + if(res.data.code==0){
  67 + if(!th.data.dataList) th.data.dataList=new Array();
  68 + th.data.dataList=th.data.dataList.concat(res.data.data.pageData);
  69 + th.data.curpage++;
  70 + th.setData({dataList:th.data.dataList});
  71 + }
  72 + },
  73 + fail:function (e){
  74 + console.log("onShow:6");
  75 + console.log(e);
  76 + }
71 }); 77 });
72 }, 78 },
73 79
packageA/pages/quan_list/quan_list.wxml
@@ -2,9 +2,11 @@ @@ -2,9 +2,11 @@
2 <wxs module="g_filters" src="g_filter.wxs"></wxs> 2 <wxs module="g_filters" src="g_filter.wxs"></wxs>
3 <wxs module="tool" src="filter.wxs"></wxs> 3 <wxs module="tool" src="filter.wxs"></wxs>
4 4
5 -<view class="header">  
6 - <rich-text nodes="{{config2.couponset}}" class="r_txt fs26"></rich-text>  
7 -</view> 5 +<block wx:if="{{config2.couponset}}">
  6 + <view class="header">
  7 + <rich-text nodes="{{config2.couponset}}" class="r_txt fs26"></rich-text>
  8 + </view>
  9 +</block>
8 <view class="content"> 10 <view class="content">
9 <view bindtap="go_detail" data-ind="{{index}}" class="quan_item flex fs30" wx:for="{{dataList}}"> 11 <view bindtap="go_detail" data-ind="{{index}}" class="quan_item flex fs30" wx:for="{{dataList}}">
10 <!-- 左边 --> 12 <!-- 左边 -->
packageA/pages/service_share/service_share.js
@@ -145,7 +145,7 @@ Page({ @@ -145,7 +145,7 @@ Page({
145 var item=this.data.share_good; 145 var item=this.data.share_good;
146 var price = item.money; 146 var price = item.money;
147 var title= item.serviceName; 147 var title= item.serviceName;
148 - var img=this.data.url+item.imgUrl; 148 + var img=this.data.url+item.original_img;
149 149
150 var url="/packageA/pages/goodsInfo/goodsInfo?goods_id=" + item.id; 150 var url="/packageA/pages/goodsInfo/goodsInfo?goods_id=" + item.id;
151 if(getApp().globalData.user_id){ 151 if(getApp().globalData.user_id){
@@ -777,7 +777,7 @@ Page({ @@ -777,7 +777,7 @@ Page({
777 var ee = this; 777 var ee = this;
778 //获取商品是分享图信息 778 //获取商品是分享图信息
779 wx.getImageInfo({ 779 wx.getImageInfo({
780 - src: ee.data.url+ee.data.share_good.imgUrl, 780 + src: ee.data.url+ee.data.share_good.original_img,
781 success: function(res) { 781 success: function(res) {
782 //res.path是网络图片的本地地址 782 //res.path是网络图片的本地地址
783 ee.data.share_goods_img = res.path; 783 ee.data.share_goods_img = res.path;
packageA/pages/service_share/service_share.wxml
@@ -45,7 +45,7 @@ @@ -45,7 +45,7 @@
45 </view> 45 </view>
46 <view class="details"> 46 <view class="details">
47 <view class="ellipsis-2 fs28 name">{{item.serviceName}}</view> 47 <view class="ellipsis-2 fs28 name">{{item.serviceName}}</view>
48 - <view class="fs26 pdt10">有效天数:{{item.validDays?item.validDays:'不限'}}</view> 48 + <view class="fs26 pdt10">有效天数:{{item.validDays}}</view>
49 <view class="flex ai-center pdt14 jc_sb"> 49 <view class="flex ai-center pdt14 jc_sb">
50 <view class="red fs26">¥{{item.money}}</view> 50 <view class="red fs26">¥{{item.money}}</view>
51 <view class="gray fs24">已售:<text class="red">{{item.sales_sum}}</text></view> 51 <view class="gray fs24">已售:<text class="red">{{item.sales_sum}}</text></view>
packageA/pages/user/my_service2/appment_main.js 0 → 100644
  1 +// packageA//pages/user/my_service2/appment_main.js
  2 +Page({
  3 +
  4 + /**
  5 + * 页面的初始数据
  6 + */
  7 + data: {
  8 +
  9 + },
  10 +
  11 + /**
  12 + * 生命周期函数--监听页面加载
  13 + */
  14 + onLoad: function (options) {
  15 +
  16 + },
  17 +
  18 + /**
  19 + * 生命周期函数--监听页面初次渲染完成
  20 + */
  21 + onReady: function () {
  22 +
  23 + },
  24 +
  25 + /**
  26 + * 生命周期函数--监听页面显示
  27 + */
  28 + onShow: function () {
  29 +
  30 + },
  31 +
  32 + /**
  33 + * 生命周期函数--监听页面隐藏
  34 + */
  35 + onHide: function () {
  36 +
  37 + },
  38 +
  39 + /**
  40 + * 生命周期函数--监听页面卸载
  41 + */
  42 + onUnload: function () {
  43 +
  44 + },
  45 +
  46 + /**
  47 + * 页面相关事件处理函数--监听用户下拉动作
  48 + */
  49 + onPullDownRefresh: function () {
  50 +
  51 + },
  52 +
  53 + /**
  54 + * 页面上拉触底事件的处理函数
  55 + */
  56 + onReachBottom: function () {
  57 +
  58 + },
  59 +
  60 + /**
  61 + * 用户点击右上角分享
  62 + */
  63 + onShareAppMessage: function () {
  64 +
  65 + }
  66 +})
0 \ No newline at end of file 67 \ No newline at end of file
packageA/pages/user/my_service2/appment_main.json 0 → 100644
  1 +{
  2 + "usingComponents": {}
  3 +}
0 \ No newline at end of file 4 \ No newline at end of file
packageA/pages/user/my_service2/appment_main.wxml 0 → 100644
  1 +<!--packageA//pages/user/my_service2/appment_main.wxml-->
  2 +<text>packageA//pages/user/my_service2/appment_main.wxml</text>
packageA/pages/user/my_service2/appment_main.wxss 0 → 100644
  1 +/* packageA//pages/user/my_service2/appment_main.wxss */
0 \ No newline at end of file 2 \ No newline at end of file
pages/user/add_comment/add_comment.js renamed to packageB/pages/user/add_comment/add_comment.js
1 -var t = getApp(), oo = t.globalData, a = t.globalData.setting, os = a, e = t.request, s = require("../../../utils/util.js"),  
2 - i = require("../../../utils/selectFiles.js");  
3 -var regeneratorRuntime = require('../../../utils/runtime.js'); 1 +var t = getApp(), oo = t.globalData, a = t.globalData.setting, os = a, e = t.request, s = require("../../../../utils/util.js"),
  2 + i = require("../../../../utils/selectFiles.js");
  3 +var regeneratorRuntime = require('../../../../utils/runtime.js');
4 4
5 Page({ 5 Page({
6 data: { 6 data: {
@@ -88,8 +88,8 @@ Page({ @@ -88,8 +88,8 @@ Page({
88 var a = this; 88 var a = this;
89 if (!a.data.service_rank || !a.data.goods_rank || !a.data.deliver_rank) 89 if (!a.data.service_rank || !a.data.goods_rank || !a.data.deliver_rank)
90 return getApp().my_warnning("请先打分",0,a); 90 return getApp().my_warnning("请先打分",0,a);
91 - if(a.data.content=="")  
92 - return getApp().my_warnning("请填写评价内容",0,a); 91 + // if(a.data.content=="")
  92 + // return getApp().my_warnning("请填写评价内容",0,a);
93 93
94 //this.uploadPhotos(function () { 94 //this.uploadPhotos(function () {
95 var p_data= { 95 var p_data= {
pages/user/add_comment/add_comment.json renamed to packageB/pages/user/add_comment/add_comment.json
pages/user/add_comment/add_comment.wxml renamed to packageB/pages/user/add_comment/add_comment.wxml
@@ -106,7 +106,7 @@ @@ -106,7 +106,7 @@
106 </view> 106 </view>
107 107
108 <view class="Submission flex-level "> 108 <view class="Submission flex-level ">
109 - <view class="fs30 flex-level white " bindtap="submitComment" data-url="/pages/user/view_comment/view_comment?goods_id={{goods_id}}&order_id={{order_id}}">提交评价</view> 109 + <view class="fs30 flex-level white " bindtap="submitComment" data-url="/packageB/pages/user/view_comment/view_comment?goods_id={{goods_id}}&order_id={{order_id}}">提交评价</view>
110 </view> 110 </view>
111 </view> 111 </view>
112 112
pages/user/add_comment/add_comment.wxss renamed to packageB/pages/user/add_comment/add_comment.wxss
packageB/pages/user/buyDetails/buyDetails.js 0 → 100644
  1 +const app = getApp();
  2 +let self = null;
  3 +
  4 +Page({
  5 +
  6 + /**
  7 + * 页面的初始数据
  8 + */
  9 + data: {
  10 + tabArr: ['购买', '续费'],
  11 + currentIndex: 0,
  12 +
  13 + list: null,
  14 + isLoading: false, // 检测是否已经发送请求,防止重复发送请求
  15 + noMore: false, // 检测是否有更多数据,true为没有更多数据,false为还有数据
  16 + pageNum: 1, // 当前页数
  17 + },
  18 +
  19 +
  20 + /**
  21 + * 生命周期函数--监听页面加载
  22 + */
  23 + onLoad: function (options) {
  24 + self = this;
  25 + app.isLogin().then(function(data) {//进入页面前已经授权登录成功
  26 + self.setData({
  27 + userInfo: data,
  28 + });
  29 + });
  30 + },
  31 +
  32 + /**
  33 + * 生命周期函数--监听页面初次渲染完成
  34 + */
  35 + onReady: function () {
  36 +
  37 + },
  38 +
  39 + /**
  40 + * 生命周期函数--监听页面显示
  41 + */
  42 + onShow: function () {
  43 + if(app.globalData.userInfo) {
  44 + if(!this.data.isLogin) {
  45 + this.setData({
  46 + userInfo: app.globalData.userInfo,
  47 + imghost: app.globalData.setting.imghost,
  48 + isLogin: true,
  49 + });
  50 +
  51 + // this.getData(true, '/api/weshop/plus/vip/mem/listBuyRecord', {
  52 + // storeId: app.globalData.setting.stoid,
  53 + // userId: app.globalData.user_id,
  54 + // });
  55 +
  56 +
  57 + app.request.promiseGet('/api/weshop/plus/vip/mem/listBuyRecord', {
  58 + data: {
  59 + storeId: app.globalData.setting.stoid,
  60 + userId: app.globalData.user_id,
  61 + },
  62 + isShowLoading: true,
  63 + }).then(function(res) {
  64 + self.setData({
  65 + list: res.data.data,
  66 + });
  67 + });
  68 +
  69 +
  70 +
  71 + };
  72 + };
  73 + },
  74 +
  75 + /**
  76 + * 生命周期函数--监听页面隐藏
  77 + */
  78 + onHide: function () {
  79 +
  80 + },
  81 +
  82 + /**
  83 + * 生命周期函数--监听页面卸载
  84 + */
  85 + onUnload: function () {
  86 +
  87 + },
  88 +
  89 + /**
  90 + * 页面相关事件处理函数--监听用户下拉动作
  91 + */
  92 + onPullDownRefresh: function () {
  93 +
  94 + },
  95 +
  96 + /**
  97 + * 页面上拉触底事件的处理函数
  98 + */
  99 + onReachBottom: function () {
  100 + this.scrollToLower('/api/weshop/plus/vip/mem/listBuyRecord', {
  101 + store_id: app.globalData.setting.stoid,
  102 + user_id: app.globalData.user_id,
  103 + });
  104 + },
  105 +
  106 + /**
  107 + * 用户点击右上角分享
  108 + */
  109 + onShareAppMessage: function () {
  110 +
  111 + },
  112 +
  113 +})
0 \ No newline at end of file 114 \ No newline at end of file
packageB/pages/user/buyDetails/buyDetails.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "购卡明细",
  3 + "enablePullDownRefresh": false,
  4 + "usingComponents": {
  5 + "nodata": "/components/nodata/nodata"
  6 + }
  7 +}
0 \ No newline at end of file 8 \ No newline at end of file
packageB/pages/user/buyDetails/buyDetails.wxml 0 → 100644
  1 +<wxs module="filter" src="../../../../utils/filter.wxs"></wxs>
  2 +<view class="list">
  3 + <view class="item" wx:for="{{list}}">
  4 + <view class="pd20 bdb">
  5 + <view class="fs24 c-a4">支付流水号 {{item.PayNo}}</view>
  6 + </view>
  7 + <view class="flex jc_sa t-c pd20">
  8 + <view class="w33 flex fdc">
  9 + <view class="fs24 c-a4 pdb10">PLUS卡名</view>
  10 + <view class="fs28 f1 flex ai_c jc-center"><text class="ellipsis-2">{{item.CardName}}</text></view>
  11 + </view>
  12 + <view class="w33 flex fdc">
  13 + <view class="fs24 c-a4 pdb10">有效期</view>
  14 + <view class="fs28 f1 flex ai_c jc-center">{{filter.show_default(item.EffectiveDate)}}</view>
  15 + </view>
  16 + <view class="w33 flex fdc">
  17 + <view class="fs24 c-a4 pdb10">提交时间</view>
  18 + <view class="fs28 f1 flex ai_c jc-center">{{item.BillDate}}</view>
  19 + </view>
  20 + </view>
  21 + <view class="bg-f8 pdh20 pdv10 flex jc_sb ai_c">
  22 + <text class="fs24 c-a4">类型:{{item.Buytype == 1 ? '购买':'续费'}}</text>
  23 + <text class="rmb c-red">{{item.CardFee}}</text>
  24 + </view>
  25 + </view>
  26 +
  27 +
  28 +
  29 + <nodata nodataContainer="t-c" wx:if="{{list.length == 0}}"></nodata>
  30 +</view>
  31 +
  32 +
  33 +
packageB/pages/user/buyDetails/buyDetails.wxss 0 → 100644
  1 +@charset "utf-8";
  2 +
  3 +.noMore {
  4 + padding: 20rpx;
  5 + color: #bbb;
  6 + text-align: center;
  7 + font-size: 22rpx;
  8 +}
  9 +
  10 +.c-a4 {
  11 + color: #a4a4a4;
  12 +}
  13 +
  14 +.c-red {
  15 + color: #FF6768;
  16 +}
  17 +
  18 +page {
  19 + background-color: #f0f0f0;
  20 +}
  21 +
  22 +
  23 +.list {
  24 + padding: 20rpx 20rpx 0 20rpx;
  25 +}
  26 +
  27 +.item {
  28 + background-color: white;
  29 + border-radius: 8rpx;
  30 + overflow: hidden;
  31 +}
  32 +
  33 +.item ~ .item {
  34 + margin-top: 20rpx;
  35 +}
  36 +
  37 +.rmb::before {
  38 + content: '¥';
  39 +}
0 \ No newline at end of file 40 \ No newline at end of file
pages/user/collect_list/collect_list.js renamed to packageB/pages/user/collect_list/collect_list.js
@@ -2,13 +2,13 @@ var t = function(t) { @@ -2,13 +2,13 @@ var t = function(t) {
2 return t && t.__esModule ? t : { 2 return t && t.__esModule ? t : {
3 default: t 3 default: t
4 }; 4 };
5 - }(require("../../../utils/LoadMore.js")), 5 + }(require("../../../../utils/LoadMore.js")),
6 e = getApp(), 6 e = getApp(),
7 a = e.request, 7 a = e.request,
8 o = new t.default(); 8 o = new t.default();
9 var oo = e.globalData.setting, 9 var oo = e.globalData.setting,
10 app_d = e.globalData; 10 app_d = e.globalData;
11 -var ut = require('../../../utils/util.js'); 11 +var ut = require('../../../../utils/util.js');
12 12
13 Page({ 13 Page({
14 data: { 14 data: {
@@ -29,6 +29,7 @@ Page({ @@ -29,6 +29,7 @@ Page({
29 isdelete: 0 29 isdelete: 0
30 }, 30 },
31 onLoad: function() { 31 onLoad: function() {
  32 +
32 o.init(this, "", "collects"), 33 o.init(this, "", "collects"),
33 this.requestCollectList(); 34 this.requestCollectList();
34 }, 35 },
@@ -50,8 +51,11 @@ Page({ @@ -50,8 +51,11 @@ Page({
50 is_goods: 1 51 is_goods: 1
51 }) 52 })
52 var goods_list = th.selectComponent("#goods_recommend"); //组件的id 53 var goods_list = th.selectComponent("#goods_recommend"); //组件的id
53 - goods_list.init();  
54 - setTimeout(function () { goods_list.get_list(); }, 300) 54 + if (goods_list)
  55 + {
  56 + goods_list.init();
  57 + setTimeout(function () { goods_list.get_list(); }, 300)
  58 + }
55 } 59 }
56 }); 60 });
57 }, 61 },
@@ -130,9 +134,8 @@ Page({ @@ -130,9 +134,8 @@ Page({
130 134
131 135
132 goto: function(ee) { 136 goto: function(ee) {
133 - wx.navigateTo({  
134 - url: '/pages/index/index/index',  
135 - }) 137 + getApp().goto("/pages/index/index/index");
  138 +
136 }, 139 },
137 //编辑商品显示 140 //编辑商品显示
138 editcollects: function() { 141 editcollects: function() {
pages/user/collect_list/collect_list.json renamed to packageB/pages/user/collect_list/collect_list.json
pages/user/collect_list/collect_list.wxml renamed to packageB/pages/user/collect_list/collect_list.wxml
pages/user/collect_list/collect_list.wxss renamed to packageB/pages/user/collect_list/collect_list.wxss
pages/user/comment/comment.js renamed to packageB/pages/user/comment/comment.js
1 -var ut = require("../../../utils/util.js"); 1 +var ut = require("../../../../utils/util.js");
2 var t = function(t) { 2 var t = function(t) {
3 return t && t.__esModule ? t : { 3 return t && t.__esModule ? t : {
4 default: t 4 default: t
5 }; 5 };
6 - }(require("../../../utils/LoadMore.js")), 6 + }(require("../../../../utils/LoadMore.js")),
7 e = getApp(), 7 e = getApp(),
8 rq = e.request, 8 rq = e.request,
9 a = new t.default(), 9 a = new t.default(),
10 - s = require("../../../utils/util.js"), 10 + s = require("../../../../utils/util.js"),
11 oo = e.globalData, 11 oo = e.globalData,
12 os = e.globalData.setting; 12 os = e.globalData.setting;
13 -var regeneratorRuntime = require('../../../utils/runtime.js'); 13 +var regeneratorRuntime = require('../../../../utils/runtime.js');
14 14
15 Page({ 15 Page({
16 data: { 16 data: {
@@ -117,7 +117,7 @@ Page({ @@ -117,7 +117,7 @@ Page({
117 var n = "?order_id=" + a[s].order_id; 117 var n = "?order_id=" + a[s].order_id;
118 n += "&goods_id=" + a[s].goods_id, n += "&price=" + a[s].goods_price; 118 n += "&goods_id=" + a[s].goods_id, n += "&price=" + a[s].goods_price;
119 wx.navigateTo({ 119 wx.navigateTo({
120 - url: "/pages/user/add_comment/add_comment" + n 120 + url: "/packageB/pages/user/add_comment/add_comment" + n
121 }); 121 });
122 } 122 }
123 }, 123 },
pages/user/comment/comment.json renamed to packageB/pages/user/comment/comment.json
pages/user/comment/comment.wxml renamed to packageB/pages/user/comment/comment.wxml
1 -<wxs module="filter" src="../../../utils/filter.wxs"></wxs> 1 +<wxs module="filter" src="../../../../utils/filter.wxs"></wxs>
2 <view class="container"> 2 <view class="container">
3 <view class="type-navbar padding"> 3 <view class="type-navbar padding">
4 <view class="type-box fs28 type-navbar-item {{activeStatus==item.status?'type-item-on':''}}" data-status="{{item.status}}" wx:for="{{categories}}" wx:key="{{index}}"> 4 <view class="type-box fs28 type-navbar-item {{activeStatus==item.status?'type-item-on':''}}" data-status="{{item.status}}" wx:for="{{categories}}" wx:key="{{index}}">
@@ -110,11 +110,11 @@ @@ -110,11 +110,11 @@
110 <view>查看订单</view> 110 <view>查看订单</view>
111 </navigator> 111 </navigator>
112 112
113 - <navigator wx:if="{{item.comment_id}}" class="commodity_To_evaluate flex-level comment_go" url="/pages/user/view_comment/view_comment?goods_id={{item.goods_id}}&order_id={{item.order_id}}"> 113 + <navigator wx:if="{{item.comment_id}}" class="commodity_To_evaluate flex-level comment_go" url="/packageB/pages/user/view_comment/view_comment?goods_id={{item.goods_id}}&order_id={{item.order_id}}">
114 <view>查看评价</view> 114 <view>查看评价</view>
115 </navigator> 115 </navigator>
116 116
117 - <navigator wx:if="{{!item.comment_id}}" bindtap="comment" data-recid="{{item.rec_id}}" class="commodity_To_evaluate flex-level comment_go" url="{{item.comment_id>0?'/pages/user/add_comment/add_comment?goods_id={{item.goods_id}}&order_id={{item.order_id}}':''}}"> 117 + <navigator wx:if="{{!item.comment_id}}" bindtap="comment" data-recid="{{item.rec_id}}" class="commodity_To_evaluate flex-level comment_go" url="{{item.comment_id>0?'/packageB/pages/user/add_comment/add_comment?goods_id={{item.goods_id}}&order_id={{item.order_id}}':''}}">
118 <view class="fs24">去评价</view> 118 <view class="fs24">去评价</view>
119 </navigator> 119 </navigator>
120 </view> 120 </view>
pages/user/comment/comment.wxss renamed to packageB/pages/user/comment/comment.wxss
pages/user/user_coupon/c_filter.wxs renamed to packageB/pages/user/user_coupon/c_filter.wxs
packageB/pages/user/user_coupon/filter.wxs 0 → 100644
  1 +var format = function (text) {
  2 + if (!text) {
  3 + return
  4 + }
  5 + var reg = getRegExp('\\\\n', 'g')
  6 + return text.replace(reg, '\n')
  7 +}
  8 +
  9 +module.exports = {
  10 + format: format
  11 +}
pages/user/user_coupon/user_coupon.js renamed to packageB/pages/user/user_coupon/user_coupon.js
1 -// pages/user/user_coupon/user_coupon.js  
2 var e = getApp(),os = e.globalData.setting; 1 var e = getApp(),os = e.globalData.setting;
3 -var utils = require('../../../utils/util.js');  
4 -var regeneratorRuntime = require('../../../utils/runtime.js'); 2 +var utils = require('../../../../utils/util.js');
  3 +var regeneratorRuntime = require('../../../../utils/runtime.js');
5 4
6 Page({ 5 Page({
7 /** 6 /**
pages/user/user_coupon/user_coupon.json renamed to packageB/pages/user/user_coupon/user_coupon.json
pages/user/user_coupon/user_coupon.wxml renamed to packageB/pages/user/user_coupon/user_coupon.wxml
pages/user/user_coupon/user_coupon.wxss renamed to packageB/pages/user/user_coupon/user_coupon.wxss
pages/user/view_comment/view_comment.js renamed to packageB/pages/user/view_comment/view_comment.js
1 -var i = require("../../../utils/util.js"), 1 +var i = require("../../../../utils/util.js"),
2 ut = i; 2 ut = i;
3 var e = getApp(), 3 var e = getApp(),
4 a = e.globalData.setting, 4 a = e.globalData.setting,
pages/user/view_comment/view_comment.json renamed to packageB/pages/user/view_comment/view_comment.json
pages/user/view_comment/view_comment.wxml renamed to packageB/pages/user/view_comment/view_comment.wxml
@@ -93,7 +93,7 @@ @@ -93,7 +93,7 @@
93 <!-- 是否匿名评价 --> 93 <!-- 是否匿名评价 -->
94 <view class="Whether" wx:if="{{comment.length>0}}"> 94 <view class="Whether" wx:if="{{comment.length>0}}">
95 <view class="Submission flex-level "> 95 <view class="Submission flex-level ">
96 - <view class="fs30 flex-level white " bindtap="goto" data-url="/pages/user/comment/comment">评价其他</view> 96 + <view class="fs30 flex-level white " bindtap="goto" data-url="/packageB/pages/user/comment/comment">评价其他</view>
97 </view> 97 </view>
98 <view class="flex-level" wx:if="{{is_act}}"> 98 <view class="flex-level" wx:if="{{is_act}}">
99 <view class="fs30 flex-level white receive" data-url="/pages/giftpack/evaluategift/evaluategift?actId={{actId}}&orderNumber={{order_id}}&orderGoodsId={{goods_id}}&giftBagId={{giftBagId}}" bindtap="goto">点击领取礼品</view> 99 <view class="fs30 flex-level white receive" data-url="/pages/giftpack/evaluategift/evaluategift?actId={{actId}}&orderNumber={{order_id}}&orderGoodsId={{goods_id}}&giftBagId={{giftBagId}}" bindtap="goto">点击领取礼品</view>
pages/user/view_comment/view_comment.wxss renamed to packageB/pages/user/view_comment/view_comment.wxss
pages/cart/cart/cart.js
@@ -29,6 +29,8 @@ Page({ @@ -29,6 +29,8 @@ Page({
29 card_field:"", 29 card_field:"",
30 bconf:null, 30 bconf:null,
31 btn_click:1, 31 btn_click:1,
  32 +
  33 + service_data:null,
32 }, 34 },
33 onLoad: function() { 35 onLoad: function() {
34 var a = this,ee=a; 36 var a = this,ee=a;
@@ -124,10 +126,7 @@ Page({ @@ -124,10 +126,7 @@ Page({
124 } 126 }
125 }) 127 })
126 128
127 -  
128 -  
129 -  
130 - 129 +
131 }, 130 },
132 131
133 onHide(){ 132 onHide(){
@@ -147,9 +146,11 @@ Page({ @@ -147,9 +146,11 @@ Page({
147 allsto: e 146 allsto: e
148 }); 147 });
149 th.get_cart(); 148 th.get_cart();
  149 + th.get_ser_cart();
150 }) 150 })
151 } else { 151 } else {
152 th.get_cart(); 152 th.get_cart();
  153 + th.get_ser_cart();
153 } 154 }
154 155
155 //要获取会员是不是等级会员 156 //要获取会员是不是等级会员
@@ -172,10 +173,18 @@ Page({ @@ -172,10 +173,18 @@ Page({
172 } 173 }
173 } 174 }
174 }) 175 })
175 -  
176 - 176 + if( (!this.data.requestData || this.data.requestData.length==0) && (!this.data.service_data || this.data.service_data.length==0)) {
  177 + setTimeout(function () {
  178 + var goods_list = th.selectComponent("#goods_list"); //组件的id
  179 + if(goods_list){
  180 + goods_list.init();
  181 + goods_list.get_list();
  182 + }
  183 + }, 800)
  184 + }
177 }, 185 },
178 - //-----真的获取购物车-------- 186 +
  187 + //-----真的获取购物车--------
179 get_cart: function() { 188 get_cart: function() {
180 var th = this; 189 var th = this;
181 var rd = Math.random().toString(36).substr(2, 15); 190 var rd = Math.random().toString(36).substr(2, 15);
@@ -328,13 +337,7 @@ Page({ @@ -328,13 +337,7 @@ Page({
328 } 337 }
329 } 338 }
330 339
331 - if(arr.length==0) {  
332 - setTimeout(function () {  
333 - var goods_list = th.selectComponent("#goods_list"); //组件的id  
334 - goods_list.init();  
335 - goods_list.get_list();  
336 - }, 800)  
337 - } 340 +
338 341
339 if(th.data.is_open_offline && th.data.is_open_offline>0){ 342 if(th.data.is_open_offline && th.data.is_open_offline>0){
340 //-- 此时要实时更新线下取价价格 -- 343 //-- 此时要实时更新线下取价价格 --
@@ -357,6 +360,106 @@ Page({ @@ -357,6 +360,106 @@ Page({
357 }); 360 });
358 }, 361 },
359 362
  363 + //-----真的获取购物车--------
  364 + get_ser_cart: function() {
  365 + var th = this;
  366 + var rd = Math.random().toString(36).substr(2, 15);
  367 + getApp().request.get("/api/weshop/cartService/page", {
  368 + data: {
  369 + user_id: app.globalData.user_id,
  370 + rd: rd,
  371 + store_id: oo.stoid,
  372 + pageSize: 600,
  373 + },
  374 + success:async function(su) {
  375 + //按门店分类的数组
  376 + var arr = new Array(),
  377 + carr = su.data.data.pageData;
  378 + var all_num = 0;
  379 +
  380 + if(carr && carr.length>0) {
  381 + for (var i = 0; i < carr.length; i++) {
  382 + var item = carr[i];
  383 + var good = null;
  384 +
  385 + await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + oo.stoid + "/" + item.service_id, {}).then(res => {
  386 + good = res.data.data;
  387 + })
  388 + if(!good){
  389 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  390 + getApp().request.delete(url, {
  391 + success: function (t) {
  392 + }
  393 + });
  394 + continue;
  395 + }
  396 +
  397 +
  398 + //如果商品下架了,或者商品是赠品,一开始都要清除
  399 + if (good.is_show == 0) {
  400 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  401 + getApp().request.delete(url, {
  402 + success: function (t) {
  403 + }
  404 + });
  405 + //商品已经下架
  406 + continue;
  407 + }
  408 +
  409 + all_num += item.goods_num;
  410 + item.img_url = oo.imghost + good.imgUrl;
  411 + item.selected = 0;
  412 +
  413 +
  414 + var pcid = item.pick_id;
  415 + var find = 0;
  416 + //---------循环查找门店---
  417 + if (arr.length > 0) {
  418 + for (var j = 0; j < arr.length; j++) {
  419 + if (arr[j].pid == pcid) {
  420 + arr[j].goods.push(item);
  421 + find = 1;
  422 + break;
  423 + }
  424 + }
  425 + }
  426 +
  427 + //------如果没有找到-----
  428 + if (find == 0) {
  429 + var pikname = '';
  430 + //找到门店名称
  431 + for (var k = 0; k < th.data.allsto.length; k++) {
  432 + if (pcid == th.data.allsto[k].pickup_id) {
  433 + pikname = th.data.allsto[k].pickup_name;
  434 + break;
  435 + }
  436 + }
  437 + var narr = new Array();
  438 + narr.push(item);
  439 + var ie = {
  440 + pid: pcid,
  441 + pname: pikname,
  442 + goods: narr,
  443 + selected: 0
  444 + };
  445 + arr.push(ie);
  446 + }
  447 + }
  448 + }
  449 +
  450 +
  451 + th.setData({
  452 + service_data: arr,
  453 + all_num2: all_num,
  454 + is_edit: 0
  455 + }),
  456 + th.doCheckAll(), wx.stopPullDownRefresh();
  457 +
  458 + }
  459 + });
  460 + },
  461 +
  462 +
360 //设置莫个门店的所有线下价格 463 //设置莫个门店的所有线下价格
361 async set_offline(list){ 464 async set_offline(list){
362 var th=this; 465 var th=this;
@@ -444,7 +547,6 @@ Page({ @@ -444,7 +547,6 @@ Page({
444 }; 547 };
445 th.postCardList(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); 548 th.postCardList(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
446 } 549 }
447 -  
448 }, 550 },
449 551
450 //-------------加数量--------------------- 552 //-------------加数量---------------------
@@ -464,7 +566,6 @@ Page({ @@ -464,7 +566,6 @@ Page({
464 goods_id: a.goods_id, 566 goods_id: a.goods_id,
465 store_id: oo.stoid 567 store_id: oo.stoid
466 }; 568 };
467 - isShowLoading: 0;  
468 this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); 569 this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
469 } else { 570 } else {
470 wx.showModal({ 571 wx.showModal({
@@ -500,66 +601,180 @@ Page({ @@ -500,66 +601,180 @@ Page({
500 this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems); 601 this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
501 } 602 }
502 }, 603 },
503 - //---------------全选,全选的时候要判断是否门店的匹配方式一致-------------- 604 +
  605 +
  606 + //-----------------点击输入修改商品数量---------------
  607 + valueToNum_ser: function(t) {
  608 + if(!this.data.is_load) return false;
  609 + //控制住,避免事件响应冲突,只有input有输入的时候,才刷新
  610 + if(this.data.btn_click){
  611 + return false;
  612 + }
  613 + this.data.btn_click=1;
  614 +
  615 + var a = t.currentTarget.dataset.item;
  616 + var b = t.currentTarget.dataset.pitems;
  617 + a = this.data.service_data[b].goods[a];
  618 + var e = a;
  619 + var th=this;
  620 +
  621 + if (a = isNaN(t.detail.value) || t.detail.value < 1 ? 1 : parseInt(t.detail.value)) {
  622 + var s = {
  623 + goods_num: a,
  624 + goods_id: e.goods_id,
  625 + id: e.id,
  626 + store_id: oo.stoid
  627 + };
  628 + th.postCardList_ser(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
  629 + }
  630 + },
  631 + //-------------加数量---------------------
  632 + addNum_ser: function(t) {
  633 + if(!this.data.is_load) return false;
  634 + if (this.data.up_dating == 1) return false;
  635 + this.data.up_dating = 1;
  636 +
  637 + var a = t.currentTarget.dataset.item;
  638 + var b = t.currentTarget.dataset.pitems;
  639 + a = this.data.service_data[b].goods[a];
  640 +
  641 + var e = {
  642 + goods_num: a.goods_num + 1,
  643 + id: a.id,
  644 + goods_id: a.goods_id,
  645 + store_id: oo.stoid
  646 + };
  647 + this.postCardList_ser(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
  648 +
  649 + },
  650 + //-------------减数量---------------------
  651 + subNum_ser: function(t) {
  652 + if(!this.data.is_load) return false;
  653 + if (this.data.up_dating == 1) return false;
  654 + this.data.up_dating = 1;
  655 +
  656 + var a = t.currentTarget.dataset.item;
  657 + var b = t.currentTarget.dataset.pitems;
  658 + a = this.data.service_data[b].goods[a];
  659 + this.data.btn_click=1;
  660 +
  661 + if (a.goods_num - 1 < 0){
  662 + this.data.up_dating = 0;
  663 + return false;
  664 + }
  665 +
  666 + if (1 != a.goods_num) {
  667 + var e = {
  668 + goods_num: a.goods_num - 1,
  669 + id: a.id,
  670 + goods_id: a.goods_id,
  671 + store_id: oo.stoid
  672 + };
  673 + this.postCardList_ser(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
  674 + }
  675 + },
  676 +
  677 +
  678 + //---------------全选,全选的时候要判断是否门店的匹配方式一致--------------
504 checkAll: function() { 679 checkAll: function() {
505 var e = this, 680 var e = this,
506 dda = e.data.requestData, 681 dda = e.data.requestData,
  682 + sdda = e.data.service_data,
507 tfeel = 0, 683 tfeel = 0,
508 t_num = 0, 684 t_num = 0,
509 text_arr = ""; 685 text_arr = "";
  686 +
  687 + if(e.data.requestData && e.data.requestData.length>0
  688 + && e.data.service_data && e.data.service_data.length>0){
  689 + wx.showModal({
  690 + title: '提示',
  691 + content: '服务卡项目不能和商品一起选择'
  692 + });
  693 + return false;
  694 + }
  695 +
510 this.data.btn_click=1; 696 this.data.btn_click=1;
511 697
512 - for (var i = 0; i < dda.length; i++) {  
513 - var item = dda[i].goods;  
514 - if (!e.data.checkAllToggle) {  
515 - var txt = "requestData[" + i + "].selected";  
516 - e.setData({  
517 - [txt]: 0,  
518 - });  
519 - }  
520 - var fir = 0;  
521 - for (var j = 0; j < item.length; j++) {  
522 - if(item[j].is_gift) continue;  
523 - if (fir == 0) {  
524 - fir = item[j].distr_type;  
525 - } else {  
526 - //如果同一门店有不同门店的商品,不能同一配送  
527 - if (fir != item[j].distr_type && !e.data.checkAllToggle && item[j].distr_type != 0) {  
528 - text_arr += item[j].goods_name + " ";  
529 - break; 698 + if(dda && dda.length>0){
  699 + for (var i = 0; i < dda.length; i++) {
  700 + var item = dda[i].goods;
  701 + if (!e.data.checkAllToggle) {
  702 + var txt = "requestData[" + i + "].selected";
  703 + e.setData({
  704 + [txt]: 0,
  705 + });
  706 + }
  707 + var fir = 0;
  708 + for (var j = 0; j < item.length; j++) {
  709 + if(item[j].is_gift) continue;
  710 + if (fir == 0) {
  711 + fir = item[j].distr_type;
  712 + } else {
  713 + //如果同一门店有不同门店的商品,不能同一配送
  714 + if (fir != item[j].distr_type && !e.data.checkAllToggle && item[j].distr_type != 0) {
  715 + text_arr += item[j].goods_name + " ";
  716 + break;
  717 + }
  718 + }
  719 + var txt = "requestData[" + i + "].goods[" + j + "].selected"
  720 + e.setData({
  721 + [txt]: !e.data.checkAllToggle,
  722 + })
  723 + if (!e.data.checkAllToggle) {
  724 + tfeel += item[j].goods_num * item[j].goods_price;
  725 + t_num += item[j].goods_num;
530 } 726 }
531 } 727 }
532 - var txt = "requestData[" + i + "].goods[" + j + "].selected" 728 + }
  729 +
  730 + if (text_arr != "") {
  731 + wx.showModal({
  732 + title: '提示',
  733 + content: text_arr + '不能与门店中其他商品一起结算,配送方式不一致'
  734 + });
  735 + return false;
  736 + } else {
533 e.setData({ 737 e.setData({
534 - [txt]: !e.data.checkAllToggle,  
535 - })  
536 - if (!e.data.checkAllToggle) {  
537 - tfeel += item[j].goods_num * item[j].goods_price;  
538 - t_num += item[j].goods_num; 738 + checkAllToggle: !e.data.checkAllToggle,
  739 + total_fee: tfeel.toFixed(2),
  740 + total_num: t_num,
  741 + });
  742 +
  743 + for(var i in e.data.requestData){
  744 + e.check_prom_activity(i)
539 } 745 }
540 } 746 }
541 } 747 }
542 748
543 - if (text_arr != "") {  
544 - wx.showModal({  
545 - title: '提示',  
546 - content: text_arr + '不能与门店中其他商品一起结算,配送方式不一致'  
547 - });  
548 - return false;  
549 - } else { 749 + if(sdda && sdda.length>0){
  750 + for (var i = 0; i < sdda.length; i++) {
  751 + var item = sdda[i].goods;
  752 + if (!e.data.checkAllToggle) {
  753 + var txt = "service_data[" + i + "].selected";
  754 + e.setData({
  755 + [txt]: 0,
  756 + });
  757 + }
  758 + var fir = 0;
  759 + for (var j = 0; j < item.length; j++) {
  760 + var txt = "service_data[" + i + "].goods[" + j + "].selected"
  761 + e.setData({
  762 + [txt]: !e.data.checkAllToggle,
  763 + })
  764 + if (!e.data.checkAllToggle) {
  765 + tfeel += item[j].goods_num * item[j].money;
  766 + t_num += item[j].goods_num;
  767 + }
  768 + }
  769 + }
550 e.setData({ 770 e.setData({
551 checkAllToggle: !e.data.checkAllToggle, 771 checkAllToggle: !e.data.checkAllToggle,
552 total_fee: tfeel.toFixed(2), 772 total_fee: tfeel.toFixed(2),
553 total_num: t_num, 773 total_num: t_num,
554 }); 774 });
555 -  
556 - for(var i in e.data.requestData){  
557 - e.check_prom_activity(i)  
558 - }  
559 -  
560 } 775 }
561 - },  
562 776
  777 + },
563 //------门店全选按钮,要判断是否门店的匹配方式一致--------- 778 //------门店全选按钮,要判断是否门店的匹配方式一致---------
564 check_th_all_item:async function(ele) { 779 check_th_all_item:async function(ele) {
565 var e = this, 780 var e = this,
@@ -567,10 +782,32 @@ Page({ @@ -567,10 +782,32 @@ Page({
567 item = this.data.requestData[pitems].goods, 782 item = this.data.requestData[pitems].goods,
568 sele = this.data.requestData[pitems].selected; 783 sele = this.data.requestData[pitems].selected;
569 this.data.btn_click=1; 784 this.data.btn_click=1;
  785 + var garr=e.data.service_data;
570 786
571 var isok = 1, 787 var isok = 1,
572 fir = 0, 788 fir = 0,
573 iarr = item; 789 iarr = item;
  790 +
  791 + if(!sele){
  792 + var check_is_service_selected=0;
  793 + for (var ii in garr){
  794 + for (var ij in garr[ii].goods){
  795 + if( garr[ii].goods[ij].selected){
  796 + check_is_service_selected=1;
  797 + break;
  798 + }
  799 + }
  800 + }
  801 +
  802 + if(check_is_service_selected){
  803 + wx.showModal({
  804 + title: '提示',
  805 + content: '服务卡项目不能和商品一起选择'
  806 + });
  807 + return false;
  808 + }
  809 + }
  810 +
574 if (!sele && item.length > 0) { 811 if (!sele && item.length > 0) {
575 for (var i = 0; i < iarr.length; i++) { 812 for (var i = 0; i < iarr.length; i++) {
576 if(iarr[i].is_gift==1) continue; 813 if(iarr[i].is_gift==1) continue;
@@ -612,7 +849,6 @@ Page({ @@ -612,7 +849,6 @@ Page({
612 } 849 }
613 this.doCheckAll(); 850 this.doCheckAll();
614 }, 851 },
615 -  
616 //---------------单选,也要判断门店的配送方式是否一致-------------- 852 //---------------单选,也要判断门店的配送方式是否一致--------------
617 check_th_item: async function(t) { 853 check_th_item: async function(t) {
618 var e = this, 854 var e = this,
@@ -622,13 +858,32 @@ Page({ @@ -622,13 +858,32 @@ Page({
622 var isok = 1,fir = 0; 858 var isok = 1,fir = 0;
623 var iarr = e.data.requestData[pitems].goods; 859 var iarr = e.data.requestData[pitems].goods;
624 this.data.btn_click=1; 860 this.data.btn_click=1;
625 - 861 + var garr= e.data.service_data;
  862 +
  863 + if (!a.selected) {
  864 + var check_is_service_selected = 0;
  865 + for (var ii in garr) {
  866 + for (var ij in garr[ii].goods) {
  867 + if (garr[ii].goods[ij].selected) {
  868 + check_is_service_selected = 1;
  869 + break;
  870 + }
  871 + }
  872 + }
  873 + if (check_is_service_selected) {
  874 + wx.showModal({
  875 + title: '提示',
  876 + content: '服务卡项目不能和商品一起选择'
  877 + });
  878 + return false;
  879 + }
  880 + }
626 881
627 //当数量大于1,且是选择的时候 882 //当数量大于1,且是选择的时候
628 if (iarr.length > 1 && !a.selected) { 883 if (iarr.length > 1 && !a.selected) {
  884 +
629 for (var i = 0; i < iarr.length; i++) { 885 for (var i = 0; i < iarr.length; i++) {
630 if(iarr[i].is_gift==1) continue; 886 if(iarr[i].is_gift==1) continue;
631 -  
632 //---当不是本身选择项目---- 887 //---当不是本身选择项目----
633 var sel = iarr[i].selected; 888 var sel = iarr[i].selected;
634 if (iarr[i].distr_type != 0 && (sel || iarr[i].id == a.id)) { 889 if (iarr[i].distr_type != 0 && (sel || iarr[i].id == a.id)) {
@@ -662,10 +917,93 @@ Page({ @@ -662,10 +917,93 @@ Page({
662 if(i!=pitems) await e.check_prom_activity(i); 917 if(i!=pitems) await e.check_prom_activity(i);
663 } 918 }
664 } 919 }
665 -  
666 this.doCheckAll(); 920 this.doCheckAll();
667 } 921 }
668 }, 922 },
  923 +
  924 + //------门店全选按钮,要判断是否门店的匹配方式一致---------
  925 + check_th_all_item_ser:async function(ele) {
  926 + var e = this,
  927 + pitems = ele.currentTarget.dataset.pitems,
  928 + item = this.data.service_data[pitems].goods,
  929 + sele = this.data.service_data[pitems].selected;
  930 + this.data.btn_click=1;
  931 + var garr= e.data.requestData;
  932 +
  933 + var isok = 1,
  934 + fir = 0,
  935 + iarr = item;
  936 +
  937 + if(!sele){
  938 + var check_is_goods_selected=0;
  939 + for (var ii in garr){
  940 + for (var ij in garr[ii].goods){
  941 + if( garr[ii].goods[ij].selected){
  942 + check_is_goods_selected=1;
  943 + break;
  944 + }
  945 + }
  946 + }
  947 + if(check_is_goods_selected){
  948 + wx.showModal({
  949 + title: '提示',
  950 + content: '服务卡项目不能和商品一起选择'
  951 + });
  952 + return false;
  953 + }
  954 + }
  955 +
  956 + for (var i = 0; i < item.length; i++) {
  957 + var txt = "service_data[" + pitems + "].goods[" + i + "].selected";
  958 + e.setData({
  959 + [txt]: Number(!sele),
  960 + });
  961 + }
  962 + var txt = "service_data[" + pitems + "].selected";
  963 + e.setData({
  964 + [txt]: Number(!sele),
  965 + });
  966 + this.doCheckAll();
  967 + },
  968 + //---------------单选,也要判断门店的配送方式是否一致--------------
  969 + check_th_item_ser: async function(t) {
  970 + var e = this,
  971 + item = t.currentTarget.dataset.item,
  972 + pitems = t.currentTarget.dataset.pitems;
  973 + a = this.data.service_data[pitems].goods[item];
  974 + var isok = 1,fir = 0;
  975 + var iarr = e.data.service_data[pitems].goods;
  976 + this.data.btn_click=1;
  977 +
  978 + var garr= e.data.requestData;
  979 +
  980 + if(!a.selected){
  981 + var check_is_goods_selected=0;
  982 + for (var ii in garr){
  983 + for (var ij in garr[ii].goods){
  984 + if( garr[ii].goods[ij].selected){
  985 + check_is_goods_selected=1;
  986 + break;
  987 + }
  988 + }
  989 + }
  990 +
  991 + if(check_is_goods_selected){
  992 + wx.showModal({
  993 + title: '提示',
  994 + content: '服务卡项目不能和商品一起选择'
  995 + });
  996 + return false;
  997 + }
  998 + }
  999 +
  1000 + var txt = "service_data[" + pitems + "].goods[" + item + "].selected";
  1001 + e.setData({
  1002 + [txt]: Number(!a.selected),
  1003 + });
  1004 + this.doCheckAll();
  1005 + },
  1006 +
669 //----------检查是否全选--------- 1007 //----------检查是否全选---------
670 doCheckAll: function() { 1008 doCheckAll: function() {
671 var th = this, 1009 var th = this,
@@ -673,49 +1011,80 @@ Page({ @@ -673,49 +1011,80 @@ Page({
673 t_num = 0, 1011 t_num = 0,
674 ischeck = 1, 1012 ischeck = 1,
675 car = this.data.requestData, 1013 car = this.data.requestData,
  1014 + car2 = this.data.service_data,
676 all_num = 0; 1015 all_num = 0;
677 1016
678 - for (var a = 0; a < car.length; a++) {  
679 - var c_item=car[a];  
680 - var item = car[a].goods,  
681 - is_s_sele = 1;  
682 - var offline_price=0;  
683 - var offline_num=0;  
684 - for (var c = 0; c < item.length; c++) {  
685 - if(item[c].is_gift) continue;  
686 - all_num += item[c].goods_num;  
687 - if (item[c].selected == 0) {  
688 - ischeck = 0;  
689 - is_s_sele = 0;  
690 - } else {  
691 - tfeel += item[c].goods_num * item[c].goods_price;  
692 - t_num += item[c].goods_num; 1017 + //-- 购物车 --
  1018 + if(car && car.length>0){
  1019 + for (var a = 0; a < car.length; a++) {
  1020 + var c_item=car[a];
  1021 + var item = car[a].goods,
  1022 + is_s_sele = 1;
  1023 + var offline_price=0;
  1024 + var offline_num=0;
  1025 + for (var c = 0; c < item.length; c++) {
  1026 + if(item[c].is_gift) continue;
  1027 + all_num += item[c].goods_num;
  1028 + if (item[c].selected == 0) {
  1029 + ischeck = 0;
  1030 + is_s_sele = 0;
  1031 + } else {
  1032 + tfeel += item[c].goods_num * item[c].goods_price;
  1033 + t_num += item[c].goods_num;
  1034 + }
  1035 +
  1036 + //-- 如果这个商品是线下取价的时候 --
  1037 + if(item[c].is_offline){
  1038 + offline_price+= (item[c].goods_price-item[c].offline_price)*item[c].goods_num;
  1039 + offline_num+=item[c].goods_num;
  1040 + }
  1041 +
693 } 1042 }
694 1043
695 - //-- 如果这个商品是线下取价的时候 --  
696 - if(item[c].is_offline){  
697 - offline_price+= (item[c].goods_price-item[c].offline_price)*item[c].goods_num;  
698 - offline_num+=item[c].goods_num; 1044 + var txt = "requestData[" + a + "].selected";
  1045 + th.setData({
  1046 + [txt]: Number(is_s_sele)
  1047 + });
  1048 +
  1049 + //当有线下取价的时候
  1050 + if(offline_price){
  1051 + var txt1= "requestData[" + a + "].offline_price";
  1052 + var txt2= "requestData[" + a + "].offline_num";
  1053 + th.setData({
  1054 + [txt1]: offline_price.toFixed(2),
  1055 + [txt2]: offline_num,
  1056 + });
699 } 1057 }
700 1058
701 } 1059 }
  1060 + }
702 1061
703 - var txt = "requestData[" + a + "].selected";  
704 - th.setData({  
705 - [txt]: Number(is_s_sele)  
706 - }); 1062 + //-- 服务卡 --
  1063 + if(car2 && car2.length>0){
  1064 + for (var a = 0; a < car2.length; a++) {
  1065 + var c_item=car2[a];
  1066 + var item = car2[a].goods, is_s_sele = 1;
  1067 +
  1068 + for (var c = 0; c < item.length; c++) {
  1069 + if(item[c].is_gift) continue;
  1070 + all_num += item[c].goods_num;
  1071 + if (item[c].selected == 0) {
  1072 + ischeck = 0;
  1073 + is_s_sele = 0;
  1074 + } else {
  1075 + tfeel += item[c].goods_num * item[c].money;
  1076 + t_num += item[c].goods_num;
  1077 + }
  1078 +
  1079 + }
707 1080
708 - //当有线下取价的时候  
709 - if(offline_price){  
710 - var txt1= "requestData[" + a + "].offline_price";  
711 - var txt2= "requestData[" + a + "].offline_num"; 1081 + var txt = "service_data[" + a + "].selected";
712 th.setData({ 1082 th.setData({
713 - [txt1]: offline_price.toFixed(2),  
714 - [txt2]: offline_num, 1083 + [txt]: Number(is_s_sele)
715 }); 1084 });
716 } 1085 }
717 -  
718 } 1086 }
  1087 +
719 this.setData({ 1088 this.setData({
720 checkAllToggle: ischeck, 1089 checkAllToggle: ischeck,
721 total_fee: tfeel.toFixed(2), 1090 total_fee: tfeel.toFixed(2),
@@ -904,6 +1273,20 @@ Page({ @@ -904,6 +1273,20 @@ Page({
904 }); 1273 });
905 }, 1274 },
906 1275
  1276 + //----------------------更新购物数量,加减,调用接口---------------------
  1277 + postCardList_ser: function(t, item, pitem) {
  1278 + var e = this,th=e;
  1279 + var user_id = getApp().globalData.user_id;
  1280 + var txt = "service_data[" + pitem + "].goods[" + item + "].goods_num";
  1281 + e.setData({
  1282 + [txt]: t.goods_num
  1283 + });
  1284 + e.doCheckAll();
  1285 + e.update_cart_ser(t, pitem, item);
  1286 + },
  1287 +
  1288 +
  1289 +
907 //---检验线下库存的数量--- 1290 //---检验线下库存的数量---
908 async check_down_line(t, pitem, item,erpwareid){ 1291 async check_down_line(t, pitem, item,erpwareid){
909 var ob={},th=this; 1292 var ob={},th=this;
@@ -993,6 +1376,25 @@ Page({ @@ -993,6 +1376,25 @@ Page({
993 }); 1376 });
994 }, 1377 },
995 1378
  1379 + //--更新购物车---
  1380 + update_cart_ser: function(t, pitem, item) {
  1381 + var e = this;
  1382 + getApp().request.put("/api/weshop/cartService/update", {
  1383 + data: t,
  1384 + success:async function(ee) {
  1385 + var txt = "service_data[" + pitem + "].goods[" + item + "].goods_num";
  1386 + e.setData({
  1387 + [txt]: t.goods_num,
  1388 + });
  1389 + e.doCheckAll();
  1390 + getApp().requestCardNum(e);
  1391 + }
  1392 + });
  1393 + },
  1394 +
  1395 +
  1396 +
  1397 +
996 //-------下拉刷新--------- 1398 //-------下拉刷新---------
997 onPullDownRefresh: function(t) { 1399 onPullDownRefresh: function(t) {
998 this.getCardList(); 1400 this.getCardList();
@@ -1008,259 +1410,293 @@ Page({ @@ -1008,259 +1410,293 @@ Page({
1008 }) 1410 })
1009 } 1411 }
1010 1412
1011 - var glist = ""; //用逗号隔开的  
1012 - var map = new Map(); //使用map值键进行运算  
1013 - var map_limit = new Map(); //使用map值键进行存储限购  
1014 - var g_arr = new Array(); //已选的商品列表  
1015 - var user_id = getApp().globalData.user_id;  
1016 - var th = this;  
1017 - //用于判断是不是积分购的普通购买  
1018 - var normal_arr={};  
1019 - var ab = 0; //选中  
1020 - wx.showLoading();  
1021 - for (var i = 0; i < this.data.requestData.length; i++) {  
1022 - var i_arr = this.data.requestData[i].goods;  
1023 - for (var j = 0; j < i_arr.length; j++) {  
1024 - if (i_arr[j].selected && i_arr[j].is_gift!=1) {  
1025 -  
1026 - if(i_arr[j].is_pd_normal) {  
1027 - normal_arr[i_arr[j].goods_id]=1;  
1028 - }  
1029 - //map 的key是不会重复,会覆盖,,  
1030 - var ie = {  
1031 - goods_id: i_arr[j].goods_id,  
1032 - id: i_arr[j].id,  
1033 - goods_price: i_arr[j].goods_price,  
1034 - };  
1035 - //判断是不是线下取价  
1036 - if(i_arr[j].is_offline){  
1037 - ie.is_offline=i_arr[j].is_offline;  
1038 - ie.offline_price=i_arr[j].offline_price;  
1039 - ie.pricing_type=i_arr[j].pricing_type;  
1040 - }  
1041 - g_arr.push(ie);  
1042 -  
1043 - if (map.has(i_arr[j].goods_id + "")) {  
1044 - var num11 = map.get(i_arr[j].goods_id + "");  
1045 - var num22 = parseInt(i_arr[j].goods_num) + parseInt(num11);  
1046 - map.set(i_arr[j].goods_id + "", num22);  
1047 - } else {  
1048 - map.set(i_arr[j].goods_id + "", i_arr[j].goods_num); 1413 + var garr=this.data.requestData;
  1414 + var check_is_goods_selected=0;
  1415 + if(garr) {
  1416 + for (var ii in garr) {
  1417 + for (var ij in garr[ii].goods) {
  1418 + if (garr[ii].goods[ij].selected) {
  1419 + check_is_goods_selected = 1;
  1420 + break;
1049 } 1421 }
1050 - glist += i_arr[j].goods_id + ",";  
1051 - ab = 1;  
1052 - //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存---  
1053 - if((i_arr[j].prom_type==0 || i_arr[j].prom_type==3 || i_arr[j].prom_type==5) && th.data.sales_rules==2 && i_arr[j].is_gift!=1){  
1054 - //--获取商品的线下商品ID--  
1055 - var gd=null;  
1056 - await getApp().request.promiseGet("/api/weshop/goods/get/" + oo.stoid + "/" + i_arr[j].goods_id,{}).then(res=>{  
1057 - if(res.data.code==0) gd=res.data.data;  
1058 - })  
1059 - //--判断商品是线下库存--  
1060 - var ob={}  
1061 - await th.check_down_line_next(i_arr[j],i,j,gd.erpwareid,function(rs){  
1062 - ob=rs;  
1063 - });  
1064 - if(ob.code==-1){  
1065 - t.my_warnning(gd.goods_name+"门店库存不足", 0, th);  
1066 - wx.hideLoading();  
1067 - return false; 1422 + }
  1423 + }
  1424 + }
  1425 + //-- 如果是商品的结算 --
  1426 + if(check_is_goods_selected) {
  1427 + var glist = ""; //用逗号隔开的
  1428 + var map = new Map(); //使用map值键进行运算
  1429 + var map_limit = new Map(); //使用map值键进行存储限购
  1430 + var g_arr = new Array(); //已选的商品列表
  1431 + var user_id = getApp().globalData.user_id;
  1432 + var th = this;
  1433 + //用于判断是不是积分购的普通购买
  1434 + var normal_arr = {};
  1435 + var ab = 0; //选中
  1436 + wx.showLoading();
  1437 + for (var i = 0; i < this.data.requestData.length; i++) {
  1438 + var i_arr = this.data.requestData[i].goods;
  1439 + for (var j = 0; j < i_arr.length; j++) {
  1440 + if (i_arr[j].selected && i_arr[j].is_gift != 1) {
  1441 +
  1442 + if (i_arr[j].is_pd_normal) {
  1443 + normal_arr[i_arr[j].goods_id] = 1;
1068 } 1444 }
1069 -  
1070 - var is_ok=1;  
1071 - //如果是优惠活动话,要看活动有没有过期  
1072 - if(i_arr[j].prom_type==3){  
1073 - //判断有没有活动  
1074 - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+i_arr[j].goods_id+"/1", {}).then(res => {  
1075 - if(res.data.code==0){  
1076 - if(!res.data.data.promGoodsLists){  
1077 - t.my_warnning(i_arr[j].goods_name+"优惠活动已经过期", 0, th);  
1078 - wx.hideLoading();  
1079 - is_ok=0;  
1080 - }  
1081 - }  
1082 - }) 1445 + //map 的key是不会重复,会覆盖,,
  1446 + var ie = {
  1447 + goods_id: i_arr[j].goods_id,
  1448 + id: i_arr[j].id,
  1449 + goods_price: i_arr[j].goods_price,
  1450 + };
  1451 + //判断是不是线下取价
  1452 + if (i_arr[j].is_offline) {
  1453 + ie.is_offline = i_arr[j].is_offline;
  1454 + ie.offline_price = i_arr[j].offline_price;
  1455 + ie.pricing_type = i_arr[j].pricing_type;
1083 } 1456 }
1084 - if(!is_ok){return false;}  
1085 - } 1457 + g_arr.push(ie);
  1458 +
  1459 + if (map.has(i_arr[j].goods_id + "")) {
  1460 + var num11 = map.get(i_arr[j].goods_id + "");
  1461 + var num22 = parseInt(i_arr[j].goods_num) + parseInt(num11);
  1462 + map.set(i_arr[j].goods_id + "", num22);
  1463 + } else {
  1464 + map.set(i_arr[j].goods_id + "", i_arr[j].goods_num);
  1465 + }
  1466 + glist += i_arr[j].goods_id + ",";
  1467 + ab = 1;
  1468 + //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存---
  1469 + if ((i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3 || i_arr[j].prom_type == 5) && th.data.sales_rules == 2 && i_arr[j].is_gift != 1) {
  1470 + //--获取商品的线下商品ID--
  1471 + var gd = null;
  1472 + await getApp().request.promiseGet("/api/weshop/goods/get/" + oo.stoid + "/" + i_arr[j].goods_id, {}).then(res => {
  1473 + if (res.data.code == 0) gd = res.data.data;
  1474 + })
  1475 + //--判断商品是线下库存--
  1476 + var ob = {}
  1477 + await th.check_down_line_next(i_arr[j], i, j, gd.erpwareid, function (rs) {
  1478 + ob = rs;
  1479 + });
  1480 + if (ob.code == -1) {
  1481 + t.my_warnning(gd.goods_name + "门店库存不足", 0, th);
  1482 + wx.hideLoading();
  1483 + return false;
  1484 + }
1086 1485
1087 - } else {  
1088 - if(i_arr[j].is_gift==1) continue;  
1089 - rq.put("/api/weshop/cart/update", {  
1090 - data: {  
1091 - id: i_arr[j].id,  
1092 - selected: 0,  
1093 - store_id: oo.stoid  
1094 - },  
1095 - success: function(ee) {  
1096 - console.log(ee); 1486 + var is_ok = 1;
  1487 + //如果是优惠活动话,要看活动有没有过期
  1488 + if (i_arr[j].prom_type == 3) {
  1489 + //判断有没有活动
  1490 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + i_arr[j].goods_id + "/1", {}).then(res => {
  1491 + if (res.data.code == 0) {
  1492 + if (!res.data.data.promGoodsLists) {
  1493 + t.my_warnning(i_arr[j].goods_name + "优惠活动已经过期", 0, th);
  1494 + wx.hideLoading();
  1495 + is_ok = 0;
  1496 + }
  1497 + }
  1498 + })
  1499 + }
  1500 + if (!is_ok) {
  1501 + return false;
  1502 + }
1097 } 1503 }
1098 - });  
1099 - }  
1100 - }  
1101 - }  
1102 - if (ab == 0) {  
1103 - t.my_warnning("未选择商品", 0, th);  
1104 - wx.hideLoading();  
1105 - return false;  
1106 - }  
1107 1504
1108 - glist = glist.substring(0, glist.length - 1);  
1109 - //--取一下商品的限购 以及活动的限购,redis数量--  
1110 - rq.get("/api/weshop/goods/getGoodsListNum", {  
1111 - data: {  
1112 - goodsidlist: glist,  
1113 - store_id: oo.stoid  
1114 - },  
1115 - async success(ee) {  
1116 - console.log(ee);  
1117 - if (ee.data.code == 0) {  
1118 - var ddata = ee.data.data,  
1119 - isok = 1,  
1120 - gname = "",  
1121 - err = "";  
1122 - //--组装--  
1123 - for (var ij = 0; ij < ddata.length; ij++) {  
1124 - var val = ddata[ij];  
1125 - var obj = map_limit.get(val.goods_id + "");  
1126 - if (obj) continue;  
1127 -  
1128 - var promgoodsbuynum = 0;  
1129 - var goodsbuynum = 0;  
1130 - //--要获得商品,该用户买了多少件,同步应用--  
1131 - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { 1505 + } else {
  1506 + if (i_arr[j].is_gift == 1) continue;
  1507 + rq.put("/api/weshop/cart/update", {
1132 data: { 1508 data: {
1133 - store_id: oo.stoid,  
1134 - user_id: user_id,  
1135 - goods_id: val.goods_id,  
1136 - prom_type: val.prom_type,  
1137 - prom_id: val.prom_id 1509 + id: i_arr[j].id,
  1510 + selected: 0,
  1511 + store_id: oo.stoid
1138 }, 1512 },
1139 - }).then(res => {  
1140 - var buy_num_data = res.data.data;  
1141 - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;  
1142 - goodsbuynum = buy_num_data.goodsbuynum;  
1143 - })  
1144 - var ie= {  
1145 - promgoodsbuynum: promgoodsbuynum,  
1146 - goodsbuynum: goodsbuynum  
1147 - };  
1148 - map_limit.set(val.goods_id + "", ie); 1513 + success: function (ee) {
  1514 + console.log(ee);
  1515 + }
  1516 + });
1149 } 1517 }
  1518 + }
  1519 + }
  1520 + if (ab == 0) {
  1521 + t.my_warnning("未选择商品", 0, th);
  1522 + wx.hideLoading();
  1523 + return false;
  1524 + }
1150 1525
1151 - try {  
1152 - for(var ind in ddata) {  
1153 - var val=ddata[ind];  
1154 - var num = map.get(val.goods_id + "");  
1155 - if (num <= 0) {  
1156 - isok = 0;  
1157 - gname = val.goods_name;  
1158 - throw "购买数量不能为0";  
1159 - return false;  
1160 - } 1526 + glist = glist.substring(0, glist.length - 1);
  1527 + //--取一下商品的限购 以及活动的限购,redis数量--
  1528 + rq.get("/api/weshop/goods/getGoodsListNum", {
  1529 + data: {
  1530 + goodsidlist: glist,
  1531 + store_id: oo.stoid
  1532 + },
  1533 + async success(ee) {
  1534 + console.log(ee);
  1535 + if (ee.data.code == 0) {
  1536 + var ddata = ee.data.data,
  1537 + isok = 1,
  1538 + gname = "",
  1539 + err = "";
  1540 + //--组装--
  1541 + for (var ij = 0; ij < ddata.length; ij++) {
  1542 + var val = ddata[ij];
  1543 + var obj = map_limit.get(val.goods_id + "");
  1544 + if (obj) continue;
  1545 +
  1546 + var promgoodsbuynum = 0;
  1547 + var goodsbuynum = 0;
  1548 + //--要获得商品,该用户买了多少件,同步应用--
  1549 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  1550 + data: {
  1551 + store_id: oo.stoid,
  1552 + user_id: user_id,
  1553 + goods_id: val.goods_id,
  1554 + prom_type: val.prom_type,
  1555 + prom_id: val.prom_id
  1556 + },
  1557 + }).then(res => {
  1558 + var buy_num_data = res.data.data;
  1559 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  1560 + goodsbuynum = buy_num_data.goodsbuynum;
  1561 + })
  1562 + var ie = {
  1563 + promgoodsbuynum: promgoodsbuynum,
  1564 + goodsbuynum: goodsbuynum
  1565 + };
  1566 + map_limit.set(val.goods_id + "", ie);
  1567 + }
1161 1568
1162 - if(val.prom_type==1 || val.prom_type==6){  
1163 - if (num > val.store_count) { 1569 + try {
  1570 + for (var ind in ddata) {
  1571 + var val = ddata[ind];
  1572 + var num = map.get(val.goods_id + "");
  1573 + if (num <= 0) {
1164 isok = 0; 1574 isok = 0;
1165 gname = val.goods_name; 1575 gname = val.goods_name;
1166 - throw "超出库存"; 1576 + throw "购买数量不能为0";
1167 return false; 1577 return false;
1168 } 1578 }
1169 - }  
1170 1579
1171 - if(th.data.sales_rules!=2){  
1172 - if (num > val.store_count) { 1580 + if (val.prom_type == 1 || val.prom_type == 6) {
  1581 + if (num > val.store_count) {
  1582 + isok = 0;
  1583 + gname = val.goods_name;
  1584 + throw "超出库存";
  1585 + return false;
  1586 + }
  1587 + }
  1588 +
  1589 + if (th.data.sales_rules != 2) {
  1590 + if (num > val.store_count) {
  1591 + isok = 0;
  1592 + gname = val.goods_name;
  1593 + throw "超出库存";
  1594 + return false;
  1595 + }
  1596 + }
  1597 +
  1598 + if (num > val.redisnum && val.redisnum && !normal_arr[val.goods_id]) {
1173 isok = 0; 1599 isok = 0;
1174 gname = val.goods_name; 1600 gname = val.goods_name;
1175 - throw "超出库存"; 1601 + throw "超出活动库存";
  1602 + return false;
  1603 + }
  1604 + if (num > val.goods_num - val.buy_num && val.goods_num && !normal_arr[val.goods_id]) {
  1605 + isok = 0;
  1606 + gname = val.goods_name;
  1607 + throw "超出活动库存";
1176 return false; 1608 return false;
1177 } 1609 }
1178 - }  
1179 -  
1180 - if (num > val.redisnum && val.redisnum && !normal_arr[val.goods_id]) {  
1181 - isok = 0;  
1182 - gname = val.goods_name;  
1183 - throw "超出活动库存";  
1184 - return false;  
1185 - }  
1186 - if (num > val.goods_num - val.buy_num && val.goods_num && !normal_arr[val.goods_id]) {  
1187 - isok = 0;  
1188 - gname = val.goods_name;  
1189 - throw "超出活动库存";  
1190 - return false;  
1191 - }  
1192 -  
1193 - var buyed = map_limit.get(val.goods_id + "");  
1194 - if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) {  
1195 - isok = 0;  
1196 - gname = val.goods_name;  
1197 - throw "超出商品限购";  
1198 - return false;  
1199 - }  
1200 -  
1201 - if (num + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0 && !normal_arr[val.goods_id]) {  
1202 - isok = 0;  
1203 - gname = val.goods_name;  
1204 - throw "超出活动限购";  
1205 - return false;  
1206 - }  
1207 1610
  1611 + var buyed = map_limit.get(val.goods_id + "");
  1612 + if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) {
  1613 + isok = 0;
  1614 + gname = val.goods_name;
  1615 + throw "超出商品限购";
  1616 + return false;
  1617 + }
1208 1618
1209 - var card_field=th.data.card_field;  
1210 - for (var i = 0; i < g_arr.length; i++) {  
1211 - if (g_arr[i].goods_id == val.goods_id) { 1619 + if (num + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0 && !normal_arr[val.goods_id]) {
  1620 + isok = 0;
  1621 + gname = val.goods_name;
  1622 + throw "超出活动限购";
  1623 + return false;
  1624 + }
1212 1625
1213 - //如果会员是等级会员,商品有等级价,且不是活动商品  
1214 - if(card_field && val[card_field]>0 && (val.prom_type==0 || val.prom_type==3 || val.prom_type==4 || val.prom_type==5 || normal_arr[val.goods_id]) ){  
1215 - if (g_arr[i].goods_price != val[card_field]){  
1216 - isok = 0;  
1217 - gname = val.goods_name;  
1218 - throw "商品价格已经变化";  
1219 - }  
1220 - }else{  
1221 - if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price) {  
1222 - isok = 0;  
1223 - gname = val.goods_name;  
1224 - throw "商品价格已经变化"; 1626 + var card_field = th.data.card_field;
  1627 + for (var i = 0; i < g_arr.length; i++) {
  1628 + if (g_arr[i].goods_id == val.goods_id) {
  1629 +
  1630 + //如果会员是等级会员,商品有等级价,且不是活动商品
  1631 + if (card_field && val[card_field] > 0 && (val.prom_type == 0 || val.prom_type == 3 || val.prom_type == 4 || val.prom_type == 5 || normal_arr[val.goods_id])) {
  1632 + if (g_arr[i].goods_price != val[card_field]) {
  1633 + isok = 0;
  1634 + gname = val.goods_name;
  1635 + throw "商品价格已经变化";
  1636 + }
  1637 + } else {
  1638 + if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price) {
  1639 + isok = 0;
  1640 + gname = val.goods_name;
  1641 + throw "商品价格已经变化";
  1642 + }
1225 } 1643 }
1226 - }  
1227 1644
1228 - //-- 数据的更新 --  
1229 - var data={  
1230 - id: g_arr[i].id,  
1231 - selected: 1,  
1232 - store_id: oo.stoid  
1233 - };  
1234 - //-- 如果有线下取价的时候 --  
1235 - if(g_arr[i].is_offline){  
1236 - data.pricing_type=g_arr[i].pricing_type;  
1237 - data.offline_price=g_arr[i].offline_price;  
1238 - }  
1239 - rq.put("/api/weshop/cart/update", {  
1240 - data: data,  
1241 - success: function(ee) {  
1242 - console.log(ee); 1645 + //-- 数据的更新 --
  1646 + var data = {
  1647 + id: g_arr[i].id,
  1648 + selected: 1,
  1649 + store_id: oo.stoid
  1650 + };
  1651 + //-- 如果有线下取价的时候 --
  1652 + if (g_arr[i].is_offline) {
  1653 + data.pricing_type = g_arr[i].pricing_type;
  1654 + data.offline_price = g_arr[i].offline_price;
1243 } 1655 }
1244 - }); 1656 + rq.put("/api/weshop/cart/update", {
  1657 + data: data,
  1658 + success: function (ee) {
  1659 + console.log(ee);
  1660 + }
  1661 + });
  1662 + }
1245 } 1663 }
1246 - }  
1247 1664
  1665 + }
  1666 + } catch (e) {
  1667 + err = e;
  1668 + }
  1669 + if (isok == 0) {
  1670 + t.confirmBox(gname + ":" + err);
  1671 + wx.hideLoading();
  1672 + return false;
1248 } 1673 }
1249 - } catch (e) {  
1250 - err = e;  
1251 - }  
1252 - if (isok == 0) {  
1253 - t.confirmBox(gname + ":" + err);  
1254 wx.hideLoading(); 1674 wx.hideLoading();
1255 - return false; 1675 + wx.navigateTo({
  1676 + url: "/pages/cart/cart2/cart2"
  1677 + });
  1678 + }
  1679 + }
  1680 + });
  1681 + }else{
  1682 + //-- 开始服务卡的购物车购买 --
  1683 + for (var i = 0; i < this.data.service_data.length; i++) {
  1684 + var i_arr = this.data.service_data[i].goods;
  1685 + for (var j = 0; j < i_arr.length; j++) {
  1686 + if (i_arr[j].selected) {
  1687 + await rq.promisePut("/api/weshop/cartService/update", {
  1688 + data: {
  1689 + id: i_arr[j].id,
  1690 + selected: 1,
  1691 + store_id: oo.stoid
  1692 + }
  1693 + });
1256 } 1694 }
1257 - wx.hideLoading();  
1258 - wx.navigateTo({  
1259 - url: "/pages/cart/cart2/cart2"  
1260 - });  
1261 } 1695 }
1262 } 1696 }
1263 - }); 1697 + wx.hideLoading();
  1698 + getApp().goto("/packageA/pages/cart2_ser/cart2_ser?is_cart=1");
  1699 + }
1264 }, 1700 },
1265 1701
1266 //结算到最后一个商品 1702 //结算到最后一个商品
@@ -1302,11 +1738,12 @@ Page({ @@ -1302,11 +1738,12 @@ Page({
1302 1738
1303 //--多个删除购物车商品--- 1739 //--多个删除购物车商品---
1304 check_del: function() { 1740 check_del: function() {
1305 - var glist = ""; //用逗号隔开的 1741 + var glist = "",slist=''; //用逗号隔开的
1306 var user_id = getApp().globalData.user_id; 1742 var user_id = getApp().globalData.user_id;
1307 var th = this; 1743 var th = this;
1308 1744
1309 var ab = 0; //选中 1745 var ab = 0; //选中
  1746 + var abc=0; //
1310 for (var i = 0; i < this.data.requestData.length; i++) { 1747 for (var i = 0; i < this.data.requestData.length; i++) {
1311 var i_arr = this.data.requestData[i].goods; 1748 var i_arr = this.data.requestData[i].goods;
1312 for (var j = 0; j < i_arr.length; j++) { 1749 for (var j = 0; j < i_arr.length; j++) {
@@ -1317,18 +1754,42 @@ Page({ @@ -1317,18 +1754,42 @@ Page({
1317 } 1754 }
1318 } 1755 }
1319 1756
1320 - if (ab == 0) {  
1321 - t.my_warnning("未选择商品", 0, th); 1757 + for (var ii = 0; ii < this.data.service_data.length; ii++) {
  1758 + var i_arr = this.data.service_data[ii].goods;
  1759 + for (var jj = 0; jj < i_arr.length; jj++) {
  1760 + if (i_arr[jj].selected) {
  1761 + slist += i_arr[jj].id + ",";
  1762 + abc = 1;
  1763 + }
  1764 + }
  1765 + }
  1766 +
  1767 + if (ab == 0 && abc==0) {
  1768 + t.my_warnning("未选择商品或者服务卡", 0, th);
1322 return false; 1769 return false;
1323 } 1770 }
1324 - glist = glist.substring(0, glist.length - 1);  
1325 - //要删除购物车中的商品  
1326 - var url = '/api/weshop/cart/delIds/' + oo.stoid + '/' + user_id + "/" + glist;  
1327 - getApp().request.delete(url, {  
1328 - success: function(t) {  
1329 - th.getCardList();  
1330 - }  
1331 - }); 1771 +
  1772 + if(ab){
  1773 + glist = glist.substring(0, glist.length - 1);
  1774 + //要删除购物车中的商品
  1775 + var url = '/api/weshop/cart/delIds/' + oo.stoid + '/' + user_id + "/" + glist;
  1776 + getApp().request.delete(url, {
  1777 + success: function(t) {
  1778 + th.getCardList();
  1779 + }
  1780 + });
  1781 + }
  1782 + if(abc){
  1783 + slist = slist.substring(0, slist.length - 1);
  1784 + //要删除购物车中的商品
  1785 + var url = '/api/weshop/cartService/delIds/' + oo.stoid + '/' + user_id + "/" + slist;
  1786 + getApp().request.delete(url, {
  1787 + success: function(t) {
  1788 + th.getCardList();
  1789 + }
  1790 + });
  1791 + }
  1792 +
1332 }, 1793 },
1333 //跳到首页 1794 //跳到首页
1334 goto: function(e) { 1795 goto: function(e) {
@@ -1338,7 +1799,7 @@ Page({ @@ -1338,7 +1799,7 @@ Page({
1338 1799
1339 //---加载更多是靠这个函数---- 1800 //---加载更多是靠这个函数----
1340 onReachBottom: function() { 1801 onReachBottom: function() {
1341 - if(this.data.requestData.length==0) { 1802 + if(this.data.requestData && this.data.requestData.length==0) {
1342 var goods_list = this.selectComponent("#goods_list"); //组件的id 1803 var goods_list = this.selectComponent("#goods_list"); //组件的id
1343 if (goods_list) goods_list.get_list(); 1804 if (goods_list) goods_list.get_list();
1344 } 1805 }
pages/cart/cart/cart.wxml
@@ -13,19 +13,22 @@ @@ -13,19 +13,22 @@
13 13
14 14
15 15
16 -<view class="container" wx:if="{{requestData.length>0}}"> 16 +<view class="container" wx:if="{{(requestData && requestData.length>0) || (service_data && service_data.length>0) }}">
17 <!-- 购物车商品框架 --> 17 <!-- 购物车商品框架 -->
18 <view class="login-in"> 18 <view class="login-in">
19 <!-- 编辑 --> 19 <!-- 编辑 -->
20 <view class="padding flex-vertical-between fs30 Storenum store"> 20 <view class="padding flex-vertical-between fs30 Storenum store">
21 <view class="flex"> 21 <view class="flex">
22 - <view>商品数量:</view> 22 + <view>数量:</view>
23 <view class="goods_num">{{all_num}}</view> 23 <view class="goods_num">{{all_num}}</view>
24 </view> 24 </view>
25 <view wx:if="{{is_edit==0}}" bindtap="edit_cart" data-type="1">编辑</view> 25 <view wx:if="{{is_edit==0}}" bindtap="edit_cart" data-type="1">编辑</view>
26 <view wx:else bindtap="edit_cart" data-type="0">完成</view> 26 <view wx:else bindtap="edit_cart" data-type="0">完成</view>
27 </view> 27 </view>
28 - <block wx:for="{{requestData}}" wx:key="{{index}}" wx:for-index="pidx"> 28 +
  29 + <!-- 商品的列表 -->
  30 + <block wx:if="{{requestData && requestData.length>0}}">
  31 + <block wx:for="{{requestData}}" wx:key="{{index}}" wx:for-index="pidx">
29 <!-- 门店底下的商品 --> 32 <!-- 门店底下的商品 -->
30 <view class="store"> 33 <view class="store">
31 <view class="shmd_m"> 34 <view class="shmd_m">
@@ -123,8 +126,73 @@ @@ -123,8 +126,73 @@
123 <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28"> 126 <view style="margin:10rpx 0; padding: 0 30rpx;color: #999" wx:if="{{item.offline_price}}" class="fs28">
124 当前<text class="red_c">{{item.offline_num}}</text>件商品,可使用<text class="red_c">{{item.offline_price}}</text>元店铺优惠 127 当前<text class="red_c">{{item.offline_num}}</text>件商品,可使用<text class="red_c">{{item.offline_price}}</text>元店铺优惠
125 </view> 128 </view>
126 - 129 + </block>
127 </block> 130 </block>
  131 +
  132 + <!-- 服务卡项的列表 -->
  133 + <block wx:if="{{service_data && service_data.length>0}}">
  134 + <block wx:for="{{service_data}}" wx:key="{{index}}" wx:for-index="pidx">
  135 + <!-- 门店以及门店底下的服务卡 -->
  136 + <view class="store">
  137 + <view class="shmd_m">
  138 +
  139 + <icon wx:if="{{checkAllToggle||item.selected}}" class="order-raido flex-center" bindtap="check_th_all_item_ser" data-pitems="{{pidx}}"
  140 + color="red" size="20" type="success"></icon>
  141 + <view wx:else class="icon_no_sele2" bindtap="check_th_all_item_ser" data-pitems="{{pidx}}"></view>
  142 +
  143 + <view class="flex-center">
  144 + <image src="{{iurl}}miniapp/images/stores/store.png"></image>
  145 + <view class="shmd fs30">{{item.pname}}</view>
  146 + </view>
  147 +
  148 + </view>
  149 + <view class="order-item" data-item="{{idx}}" wx:for="{{item.goods}}" wx:for-item="items" wx:for-index="idx" wx:key="{{index}}">
  150 + <block>
  151 + <view bindtap="check_th_item_ser" class="order-raido flex-vertical " data-check="{{items.selected}}" data-item="{{idx}}" data-pitems="{{pidx}}">
  152 + <!--<radio color="red" checked="{{checkAllToggle||items.selected}}"></radio>-->
  153 + <icon wx:if="{{checkAllToggle||items.selected}}" color="red" size="20" type="success"></icon>
  154 + <text wx:else class="icon_no_sele"></text>
  155 + </view>
  156 + </block>
  157 +
  158 +
  159 + <navigator class="goods-img rel" url="/packageA/pages/goodsInfo/goodsInfo?goods_id={{items.service_id}}">
  160 + <image class="wh100" src="{{items.img_url}}" binderror="bind_bnerr2" data-errorimg="service_data[{{pidx}}].goods[{{idx}}].img_url" data-url="{{items.img_url}}"></image>
  161 +
  162 + </navigator>
  163 + <view class="goods-cont">
  164 + <view class="goods-name">
  165 + <navigator class="ellipsis-2 fs30" url="/packageA/pages/goodsInfo/goodsInfo?goods_id={{items.service_id}}">{{items.service_name}}</navigator>
  166 + <block wx:if="{{items.is_gift}}">
  167 + <view>{{items.goods_num}}件</view>
  168 + </block>
  169 + </view>
  170 +
  171 + <block wx:if="{{!items.is_gift}}">
  172 + <view class="flex alend jc_sb">
  173 + <view class="goods-price co-red baseline ellipsis-1">
  174 + <view class="fs20">¥</view>
  175 + <view class="fs28">{{items.money}}</view>
  176 + </view>
  177 + <view class="count">
  178 + <view bindtap="subNum_ser" class="sub fs28" data-pitems="{{pidx}}" data-item="{{idx}}">一</view>
  179 + <input class="goodadd" bindblur="valueToNum_ser" data-pitems="{{pidx}}" data-item="{{idx}}"
  180 + bindinput="refresh_input"
  181 + type="number" value="{{items.goods_num}}"></input>
  182 + <view class="add" bindtap="addNum_ser" data-pitems="{{pidx}}" data-item="{{idx}}">+</view>
  183 + </view>
  184 + </view>
  185 + </block>
  186 +
  187 + </view>
  188 + </view>
  189 + </view>
  190 +
  191 +
  192 + </block>
  193 + </block>
  194 +
  195 +
128 </view> 196 </view>
129 <view class="pay-for flex-vertical-between"> 197 <view class="pay-for flex-vertical-between">
130 <view class="allradio flex-vertical-between"> 198 <view class="allradio flex-vertical-between">
@@ -156,7 +224,7 @@ @@ -156,7 +224,7 @@
156 </view> 224 </view>
157 225
158 <!-- 购物车为空 --> 226 <!-- 购物车为空 -->
159 -<view class="empty_order" wx:if="{{(!requestData|| requestData.length==0) && is_load}}"> 227 +<view class="empty_order" wx:if="{{(!requestData|| requestData.length==0) && (!service_data|| service_data.length==0) && is_load}}">
160 <view class="flex-level"> 228 <view class="flex-level">
161 <image src="{{iurl}}miniapp/images/stores/nocart.png"></image> 229 <image src="{{iurl}}miniapp/images/stores/nocart.png"></image>
162 </view> 230 </view>
@@ -169,7 +237,7 @@ @@ -169,7 +237,7 @@
169 </view> 237 </view>
170 238
171 <!-- 好物推荐 --> 239 <!-- 好物推荐 -->
172 -<view class="title" style="margin-top: 60rpx; margin-bottom:{{isTabBar == true ? '50px' : '0'}}" wx:if="{{(!requestData|| requestData.length==0) && is_load}}"> 240 +<view class="title" style="margin-top: 60rpx; margin-bottom:{{isTabBar == true ? '50px' : '0'}}" wx:if="{{(!requestData|| requestData.length==0) && (!service_data|| service_data.length==0) && is_load}}">
173 <!-- 标题 --> 241 <!-- 标题 -->
174 <view> 242 <view>
175 <!-- 中文名标题 --> 243 <!-- 中文名标题 -->
pages/cart/cart/cart.wxss
@@ -352,3 +352,4 @@ page { @@ -352,3 +352,4 @@ page {
352 } 352 }
353 .quan_color{ background-color: #ff5306; height: 40rpx;color: #fff; padding: 0 10rpx; border-radius: 10rpx; margin-left: 10rpx} 353 .quan_color{ background-color: #ff5306; height: 40rpx;color: #fff; padding: 0 10rpx; border-radius: 10rpx; margin-left: 10rpx}
354 .red_c{color:#ff5306} 354 .red_c{color:#ff5306}
  355 +.title_show{ margin: 10rpx 0 10px 0;padding: 0 20rpx}
pages/cart/cart2/cart2.js
@@ -222,6 +222,7 @@ Page({ @@ -222,6 +222,7 @@ Page({
222 //先获取是否有关闭使用优惠券 222 //先获取是否有关闭使用优惠券
223 getApp().getConfig2(function (ee) { 223 getApp().getConfig2(function (ee) {
224 var json_d = JSON.parse(ee.switch_list); 224 var json_d = JSON.parse(ee.switch_list);
  225 + th.data.json_d=json_d;
225 th.data.ispt_goods=json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 226 th.data.ispt_goods=json_d.ispt_goods; //是不是平摊到单品的控制参数赋值
226 th.setData({ is_close_quan: json_d.is_close_quan,sales_rules:ee.sales_rules,rank_switch:json_d.rank_switch}); 227 th.setData({ is_close_quan: json_d.is_close_quan,sales_rules:ee.sales_rules,rank_switch:json_d.rank_switch});
227 228
@@ -266,7 +267,7 @@ Page({ @@ -266,7 +267,7 @@ Page({
266 th.get_wuliu(th.get_info(th.show_page)); 267 th.get_wuliu(th.get_info(th.show_page));
267 } 268 }
268 269
269 - }) 270 + },1);
270 271
271 //值在这里换 272 //值在这里换
272 getApp().globalData.plus_buy_back=0; 273 getApp().globalData.plus_buy_back=0;
@@ -442,7 +443,10 @@ Page({ @@ -442,7 +443,10 @@ Page({
442 } 443 }
443 var e_t=0 444 var e_t=0
444 switch (arr[j].distr_t) { 445 switch (arr[j].distr_t) {
445 - case 0: e_t = 1; break; 446 + case 0:
  447 + e_t = 1;
  448 + if(th.data.json_d.pickupway && th.data.json_d.pickupway==1) e_t=0;
  449 + break;
446 case 1: e_t = 1; break; 450 case 1: e_t = 1; break;
447 case 2: e_t = 0; break; 451 case 2: e_t = 0; break;
448 } 452 }
@@ -472,7 +476,11 @@ Page({ @@ -472,7 +476,11 @@ Page({
472 dis_t = item.distr_type ; 476 dis_t = item.distr_type ;
473 } 477 }
474 switch (dis_t) { 478 switch (dis_t) {
475 - case 0: e_t = 1; break; 479 + case 0:
  480 + e_t = 1;
  481 + //-- 系统后台有设置要默认的 --
  482 + if(th.data.json_d.pickupway && th.data.json_d.pickupway==1) e_t=0;
  483 + break;
476 case 1: e_t = 1; break; 484 case 1: e_t = 1; break;
477 case 2: e_t = 0; break; 485 case 2: e_t = 0; break;
478 } 486 }
@@ -571,8 +579,13 @@ Page({ @@ -571,8 +579,13 @@ Page({
571 }else{ 579 }else{
572 distr_t = t.data.data.distr_type; 580 distr_t = t.data.data.distr_type;
573 } 581 }
  582 +
574 switch (distr_t){ 583 switch (distr_t){
575 - case 0: et=1; break; 584 + case 0:
  585 + et=1;
  586 + //-- 系统后台有设置要默认的 --
  587 + if(th.data.json_d.pickupway && th.data.json_d.pickupway==1) et=0;
  588 + break;
576 case 1: et = 1; break; 589 case 1: et = 1; break;
577 case 2: et = 0; break; 590 case 2: et = 0; break;
578 } 591 }
@@ -3023,7 +3036,7 @@ Page({ @@ -3023,7 +3036,7 @@ Page({
3023 arr[ind].check_quan_price_list=check_quan_price_list; 3036 arr[ind].check_quan_price_list=check_quan_price_list;
3024 3037
3025 //是否关闭使用优惠券 3038 //是否关闭使用优惠券
3026 - if (th.data.is_close_quan != 1 && !is_xz_yh && check_quan_ware_list && check_quan_ware_list!="") { 3039 + if (th.data.is_close_quan != 1 && !is_xz_yh) {
3027 //--调用接口,获取优惠券的列表,3秒钟内控制接口请求-- 3040 //--调用接口,获取优惠券的列表,3秒钟内控制接口请求--
3028 var url="/api/weshop/couponList/getUseCouponList"; 3041 var url="/api/weshop/couponList/getUseCouponList";
3029 await app.request.promiseGet(url,{ data:{storeId:oo.stoid,userId:app.globalData.user_id,BuySum:ckeck_quan_price,WareIds:check_quan_ware_list,pageSize:100}}).then(res=>{ 3042 await app.request.promiseGet(url,{ data:{storeId:oo.stoid,userId:app.globalData.user_id,BuySum:ckeck_quan_price,WareIds:check_quan_ware_list,pageSize:100}}).then(res=>{
@@ -3059,7 +3072,7 @@ Page({ @@ -3059,7 +3072,7 @@ Page({
3059 th.data.ckeck_quan_price=good.offline_price; //如果有线下取价,就用线下价 3072 th.data.ckeck_quan_price=good.offline_price; //如果有线下取价,就用线下价
3060 } 3073 }
3061 //--如果商家后台没有限制使用优惠券,同时商品的优惠活动没有限制使用优惠券-- 3074 //--如果商家后台没有限制使用优惠券,同时商品的优惠活动没有限制使用优惠券--
3062 - if(th.data.is_close_quan != 1 && th.data.bn_goods.is_xz_yh!=1 && th.data.check_quan_ware_list && th.data.check_quan_ware_list!='') 3075 + if(th.data.is_close_quan != 1 && th.data.bn_goods.is_xz_yh!=1)
3063 { 3076 {
3064 var url0 = "/api/weshop/users/frozenQuan/listFrozenQuan/" + app.globalData.user_id; 3077 var url0 = "/api/weshop/users/frozenQuan/listFrozenQuan/" + app.globalData.user_id;
3065 var url="/api/weshop/couponList/getUseCouponList"; 3078 var url="/api/weshop/couponList/getUseCouponList";
pages/cart/cart2_inte/cart2_inte.js
@@ -92,6 +92,7 @@ Page({ @@ -92,6 +92,7 @@ Page({
92 //先获取是否有关闭使用优惠券 92 //先获取是否有关闭使用优惠券
93 getApp().getConfig2(function (ee) { 93 getApp().getConfig2(function (ee) {
94 var json_d = JSON.parse(ee.switch_list); 94 var json_d = JSON.parse(ee.switch_list);
  95 + th.data.json_d=json_d;
95 th.data.ispt_goods=json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 96 th.data.ispt_goods=json_d.ispt_goods; //是不是平摊到单品的控制参数赋值
96 th.setData({ is_close_quan: json_d.is_close_quan,sales_rules:ee.sales_rules,rank_switch:json_d.rank_switch}); 97 th.setData({ is_close_quan: json_d.is_close_quan,sales_rules:ee.sales_rules,rank_switch:json_d.rank_switch});
97 98
@@ -135,7 +136,7 @@ Page({ @@ -135,7 +136,7 @@ Page({
135 //-----先获取物流,再获取用户信息,再展示页面----- 136 //-----先获取物流,再获取用户信息,再展示页面-----
136 th.get_wuliu(th.get_info(th.show_page)); 137 th.get_wuliu(th.get_info(th.show_page));
137 } 138 }
138 - }) 139 + },1);
139 140
140 141
141 }, 142 },
@@ -302,7 +303,11 @@ Page({ @@ -302,7 +303,11 @@ Page({
302 distr_t = t.data.data.distr_type; 303 distr_t = t.data.data.distr_type;
303 } 304 }
304 switch (distr_t){ 305 switch (distr_t){
305 - case 0: et=1; break; 306 + case 0:
  307 + et=1;
  308 + //-- 系统后台有设置要默认的 --
  309 + if(th.data.json_d.pickupway && th.data.json_d.pickupway==1) et=0;
  310 + break;
306 case 1: et = 1; break; 311 case 1: et = 1; break;
307 case 2: et = 0; break; 312 case 2: et = 0; break;
308 } 313 }
pages/cart/cart2_pt/cart2_pt.js
@@ -177,6 +177,8 @@ Page({ @@ -177,6 +177,8 @@ Page({
177 switch (distr_t) { 177 switch (distr_t) {
178 case 0: 178 case 0:
179 et = 1; 179 et = 1;
  180 + //-- 系统后台有设置要默认的 --
  181 + if(th.data.json_d.pickupway && th.data.json_d.pickupway==1) et=0;
180 break; 182 break;
181 case 1: 183 case 1:
182 et = 1; 184 et = 1;
@@ -302,6 +304,7 @@ Page({ @@ -302,6 +304,7 @@ Page({
302 //先获取是否有关闭使用优惠券 304 //先获取是否有关闭使用优惠券
303 getApp().getConfig2(function (ee) { 305 getApp().getConfig2(function (ee) {
304 var json_d = JSON.parse(ee.switch_list); 306 var json_d = JSON.parse(ee.switch_list);
  307 + th.data.json_d=json_d;
305 th.data.ispt_goods=json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 308 th.data.ispt_goods=json_d.ispt_goods; //是不是平摊到单品的控制参数赋值
306 th.setData({ is_close_quan: json_d.is_close_quan,sales_rules:ee.sales_rules,rank_switch:json_d.rank_switch}); 309 th.setData({ is_close_quan: json_d.is_close_quan,sales_rules:ee.sales_rules,rank_switch:json_d.rank_switch});
307 310
@@ -345,7 +348,7 @@ Page({ @@ -345,7 +348,7 @@ Page({
345 //-----先获取物流,再获取用户信息,再展示页面----- 348 //-----先获取物流,再获取用户信息,再展示页面-----
346 th.get_wuliu(th.get_info(th.show_page)); 349 th.get_wuliu(th.get_info(th.show_page));
347 } 350 }
348 - }) 351 + },1)
349 352
350 353
351 }, 354 },
pages/cart/cart_wk/cart_wk.js
@@ -54,7 +54,12 @@ Page({ @@ -54,7 +54,12 @@ Page({
54 var th = this; 54 var th = this;
55 this.data.order_id = options.order_id; 55 this.data.order_id = options.order_id;
56 //--初始化-- 56 //--初始化--
57 - this.get_wuliu(th.get_info(th.show_page)); 57 + getApp().getConfig2(function (e){
  58 + var json_d = JSON.parse(e.switch_list);
  59 + th.data.json_d=json_d;
  60 + th.get_wuliu(th.get_info(th.show_page));
  61 + },1)
  62 +
58 }, 63 },
59 /** 64 /**
60 * 生命周期函数--监听页面显示 65 * 生命周期函数--监听页面显示
@@ -240,9 +245,12 @@ Page({ @@ -240,9 +245,12 @@ Page({
240 switch (distr_type) { 245 switch (distr_type) {
241 case 0: 246 case 0:
242 exp_type = 1; 247 exp_type = 1;
  248 + //-- 系统后台有设置要默认的 --
  249 + if(th.data.json_d.pickupway && th.data.json_d.pickupway==1) exp_type=0;
243 break; //自选 250 break; //自选
244 case 1: 251 case 1:
245 exp_type = 1; 252 exp_type = 1;
  253 +
246 break //自提 254 break //自提
247 case 2: 255 case 2:
248 exp_type = 0; 256 exp_type = 0;
pages/giftpack/buygiftpack/giftpackbuy.js
@@ -30,13 +30,8 @@ Page({ @@ -30,13 +30,8 @@ Page({
30 onLoad: function(options) { 30 onLoad: function(options) {
31 31
32 var th = this; 32 var th = this;
33 - setTimeout(function (){  
34 - var my_confirm = th.selectComponent("#my_confirm"); //组件的id  
35 - my_confirm.open_cancel(0);  
36 - },1000)  
37 -  
38 -  
39 - 33 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  34 + my_confirm.open_cancel(0);
40 th.setData({ 35 th.setData({
41 getStorageID: a.stoid, 36 getStorageID: a.stoid,
42 getUserID: d.user_id 37 getUserID: d.user_id
@@ -163,7 +158,7 @@ Page({ @@ -163,7 +158,7 @@ Page({
163 var json = { 158 var json = {
164 "actId": '', //活动Id 159 "actId": '', //活动Id
165 "actType": '', //活动类型 1:新人礼、2:评价有礼、3:节日营销、4:生日营销 160 "actType": '', //活动类型 1:新人礼、2:评价有礼、3:节日营销、4:生日营销
166 - "buyType": '1', //1=积分兑换 2=余额购买 161 + "buyType": '1', //1=积分兑换 2=余额购买 3=免费领取
167 "giftBagId": id, //礼包Id 162 "giftBagId": id, //礼包Id
168 "storeId": that.getStorageID, //商家Id 163 "storeId": that.getStorageID, //商家Id
169 "userId": that.getUserID, //用户ID 164 "userId": that.getUserID, //用户ID
@@ -174,8 +169,7 @@ Page({ @@ -174,8 +169,7 @@ Page({
174 if(getApp().globalData.guide_id){ 169 if(getApp().globalData.guide_id){
175 json.guide_id=getApp().globalData.guide_id; 170 json.guide_id=getApp().globalData.guide_id;
176 } 171 }
177 -  
178 - 172 +
179 var data = JSON.stringify(json); 173 var data = JSON.stringify(json);
180 var url = that.url + "/api/weshop/marketing/buy/receive/gift/record/insert"; 174 var url = that.url + "/api/weshop/marketing/buy/receive/gift/record/insert";
181 getApp().request.json_post(url, json, 175 getApp().request.json_post(url, json,
@@ -186,15 +180,53 @@ Page({ @@ -186,15 +180,53 @@ Page({
186 getApp().my_warnning(res.data.msg, 0, th); 180 getApp().my_warnning(res.data.msg, 0, th);
187 } 181 }
188 }, 182 },
189 - function(res) {  
190 -  
191 - }  
192 -  
193 - ) 183 + function(res) {})
194 184
195 }) 185 })
196 186
197 }, 187 },
  188 + //免费领取
  189 + GetFree:function (e){
  190 + var that = this.data;
  191 + var th = this;
  192 + var id = e.currentTarget.dataset.id; //活动id
  193 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  194 + my_confirm.open(
  195 + "是否确定领取该礼包",
  196 + "取消",
  197 + "确定",
  198 + function() {
  199 + my_confirm.open_cancel(0);
  200 + },
  201 + function() {
  202 + my_confirm.open_cancel(0);
  203 + var json = {
  204 + "actId": '', //活动Id
  205 + "actType": '', //活动类型 1:新人礼、2:评价有礼、3:节日营销、4:生日营销
  206 + "buyType": '3', //1=积分兑换 2=余额购买 3=免费领取
  207 + "giftBagId": id, //礼包Id
  208 + "storeId": that.getStorageID, //商家Id
  209 + "userId": that.getUserID, //用户ID
  210 + "buyFrom": 2
  211 + };
  212 + //-- 分享导购要记录 --
  213 + if(getApp().globalData.guide_id){
  214 + json.guide_id=getApp().globalData.guide_id;
  215 + }
  216 + var data = JSON.stringify(json);
  217 + var url = that.url + "/api/weshop/marketing/buy/receive/gift/record/insert";
  218 + getApp().request.json_post(url, json,
  219 + function(res) {
  220 + if (res.data.code == 0) {
  221 + getApp().my_warnning("领取成功!", 1, th);
  222 + } else {
  223 + getApp().my_warnning(res.data.msg, 0, th);
  224 + }
  225 + },
  226 + function(res) {})
  227 + })
  228 + },
  229 +
198 getList: function(e) { 230 getList: function(e) {
199 var th = this; 231 var th = this;
200 getApp().request.get('/api/weshop/marketing/giftbag/page', { 232 getApp().request.get('/api/weshop/marketing/giftbag/page', {
pages/giftpack/buygiftpack/giftpackbuy.wxml
@@ -84,6 +84,12 @@ @@ -84,6 +84,12 @@
84 </view> 84 </view>
85 </block> 85 </block>
86 </block> 86 </block>
  87 + <block wx:if="{{!items.payMoney && !items.payIntegral}}">
  88 + <view class="flex" bindtap="GetFree" data-id="{{items.lbId}}">
  89 + <button class="box_button_dui box_button_buy">免费领取</button>
  90 + </view>
  91 + </block>
  92 +
87 </view> 93 </view>
88 </view> 94 </view>
89 </view> 95 </view>
pages/giftpack/giftpacklist/giftpacklist.js
@@ -202,6 +202,7 @@ Page({ @@ -202,6 +202,7 @@ Page({
202 202
203 203
204 }, 204 },
  205 +
205 GetMyGiftList: function() { 206 GetMyGiftList: function() {
206 var _this = this; 207 var _this = this;
207 var th = this; 208 var th = this;
@@ -419,6 +420,61 @@ Page({ @@ -419,6 +420,61 @@ Page({
419 } 420 }
420 }, 421 },
421 422
  423 + //免费领取
  424 + GetFree: function(e) {
  425 + var that = this.data;
  426 + var th = this;
  427 +
  428 + //如果还没有开始的话
  429 + if(th.data.isStart!=1){
  430 + getApp().my_warnning("活动还没有开始", 0, th);
  431 + return false;
  432 + }
  433 + // var id = e.currentTarget.dataset.id;//活动id
  434 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  435 + my_confirm.open(
  436 + "是否确定领取该礼包",
  437 + "取消",
  438 + "确定",
  439 + function() {
  440 + my_confirm.open_cancel(0);
  441 + },
  442 + function() {
  443 + my_confirm.open_cancel(0);
  444 + var json = {
  445 + "actId": '', //活动Id
  446 + "actType": '', //活动类型 1:新人礼、2:评价有礼、3:节日营销、4:生日营销
  447 + "buyType": '3', //1=积分兑换 2=余额购买
  448 + "giftBagId": that.getGiftID, //礼包Id
  449 + "storeId": a.stoid, //商家ID
  450 + "userId": d.user_id, //用户ID
  451 + "buyFrom":2
  452 + };
  453 +
  454 + //-- 分享导购要记录 --
  455 + if(getApp().globalData.guide_id){
  456 + json.guide_id=getApp().globalData.guide_id;
  457 + }
  458 +
  459 +
  460 + var data = JSON.stringify(json);
  461 + var url = that.url + "/api/weshop/marketing/buy/receive/gift/record/insert";
  462 + getApp().request.json_post(url, json,
  463 + function(res) {
  464 + if (res.data.code == 0) {
  465 + getApp().my_warnning("领取成功!", 1, th);
  466 + } else {
  467 + getApp().my_warnning(res.data.msg, 0, th);
  468 + }
  469 + },
  470 + function(res) {}
  471 +
  472 + )
  473 + })
  474 +
  475 +
  476 + },
  477 +
422 478
423 479
424 }); 480 });
425 \ No newline at end of file 481 \ No newline at end of file
pages/giftpack/giftpacklist/giftpacklist.wxml
@@ -117,12 +117,10 @@ @@ -117,12 +117,10 @@
117 <block wx:if="{{isBuy==1 && giftTitle}}"> 117 <block wx:if="{{isBuy==1 && giftTitle}}">
118 <block wx:if="{{isStart==1}}"> 118 <block wx:if="{{isStart==1}}">
119 <view class="foot_button data-v-3a5b7e36"> 119 <view class="foot_button data-v-3a5b7e36">
120 - <block wx:if="{{giftPrice>0&&giftIntegral>0}}"> 120 + <block wx:if="{{giftPrice>0 && giftIntegral>0}}">
121 <view class="foot_button_left data-v-3a5b7e36 " data-money="{{giftPrice}}" data-id="{{lbId}}" bindtap="GetBuyPrice"> 121 <view class="foot_button_left data-v-3a5b7e36 " data-money="{{giftPrice}}" data-id="{{lbId}}" bindtap="GetBuyPrice">
122 <text class="data-v-3a5b7e36 ">立即购买</text> 122 <text class="data-v-3a5b7e36 ">立即购买</text>
123 </view> 123 </view>
124 - </block>  
125 - <block wx:if="{{giftPrice>0 && giftIntegral>0}}">  
126 <view class="foot_button_right data-v-3a5b7e36 " bindtap="GetBuyIntegral" data-id="{{lbId}}"> 124 <view class="foot_button_right data-v-3a5b7e36 " bindtap="GetBuyIntegral" data-id="{{lbId}}">
127 <text class="data-v-3a5b7e36">立即兑换</text> 125 <text class="data-v-3a5b7e36">立即兑换</text>
128 </view> 126 </view>
@@ -137,6 +135,14 @@ @@ -137,6 +135,14 @@
137 <text class="data-v-3a5b7e36">立即兑换</text> 135 <text class="data-v-3a5b7e36">立即兑换</text>
138 </view> 136 </view>
139 </block> 137 </block>
  138 +
  139 + <block wx:if="{{giftPrice<=0 && giftIntegral<=0}}">
  140 + <view class="foot_button_intalge data-v-3a5b7e36 " bindtap="GetFree" data-id="{{lbId}}">
  141 + <text class="data-v-3a5b7e36">免费领取</text>
  142 + </view>
  143 + </block>
  144 +
  145 +
140 </view> 146 </view>
141 </block> 147 </block>
142 <block wx:else> 148 <block wx:else>
pages/goods/goodsInfo/goodsInfo.js
@@ -63,7 +63,7 @@ Page({ @@ -63,7 +63,7 @@ Page({
63 name: "详情", 63 name: "详情",
64 id: 1 64 id: 1
65 }, { 65 }, {
66 - name: "评", 66 + name: "评",
67 id: 2 67 id: 2
68 }], 68 }],
69 activeCategoryId2: 0, 69 activeCategoryId2: 0,
@@ -1439,6 +1439,7 @@ Page({ @@ -1439,6 +1439,7 @@ Page({
1439 } 1439 }
1440 } 1440 }
1441 }); 1441 });
  1442 +
1442 } 1443 }
1443 //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d); 1444 //else "exchange" == t.currentTarget.dataset.action ? this.exchange(d) : this.buyNow(d);
1444 else { 1445 else {
@@ -1719,18 +1720,63 @@ Page({ @@ -1719,18 +1720,63 @@ Page({
1719 } 1720 }
1720 1721
1721 var ind = t.currentTarget.dataset.ind; 1722 var ind = t.currentTarget.dataset.ind;
1722 - this.setData({  
1723 - openSpecModal: !0,  
1724 - openSpecModal_ind: ind,  
1725 - });  
1726 -  
1727 - var is_open=th.data.config  
1728 -  
1729 -  
1730 - this.get_off_price();  
1731 1723
  1724 + //回调。判断是不是优惠促销
  1725 + th.check_is_prom_goods(function (){
  1726 + th.setData({
  1727 + openSpecModal: !0,
  1728 + openSpecModal_ind: ind,
  1729 + });
  1730 + //var is_open=th.data.config
  1731 + th.get_off_price();
  1732 + })
  1733 + },
  1734 +
  1735 + //判断是不是优惠促销
  1736 + check_is_prom_goods:function(callback){
  1737 + var th=this;
  1738 + var usr=getApp().globalData.userInfo;
  1739 + if(this.data.sele_g.prom_type!=0 && this.data.sele_g.prom_type!=3){
  1740 + callback();
  1741 + }else{
  1742 + //-- 判断有没有优惠活动 --
  1743 + getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+th.data.sele_g.goods_id+"/0", {}).then(res => {
  1744 + if(res.data.code==0){
  1745 + var r_data=res.data.data;
  1746 + th.data.prom_goods=r_data.promGoodsLists;
  1747 + if(!th.data.prom_goods){
  1748 + callback();
  1749 + return false;
  1750 + }
  1751 +
  1752 + ///api/weshop/order/getWPayOrder?store_id=1&user_id=5682366&prom_id=1&goods_id=1
  1753 + getApp().promiseGet("/api/weshop/order/getWPayOrder",{
  1754 + data:{store_id:os.stoid,user_id:usr.user_id,goods_id:th.data.sele_g.goods_id,prom_id:th.data.prom_goods[0].prom_id}
  1755 + }).then(res=>{
  1756 + if(res.data.code==0){
  1757 + wx.showToast({
  1758 + title: "您已经购买了该商品待支付中",
  1759 + icon: 'none',
  1760 + duration: 2000
  1761 + })
  1762 + setTimeout(function (){
  1763 + getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
  1764 + },1000)
  1765 + }
  1766 + //未找到相关记录
  1767 + else{
  1768 + callback();
  1769 + }
  1770 + })
  1771 + }
  1772 +
  1773 + })
  1774 +
  1775 + }
1732 }, 1776 },
1733 1777
  1778 +
  1779 +
1734 //----获取线下价格------- 1780 //----获取线下价格-------
1735 get_off_price(){ 1781 get_off_price(){
1736 var th=this; 1782 var th=this;
@@ -1881,9 +1927,19 @@ Page({ @@ -1881,9 +1927,19 @@ Page({
1881 for (var i = 0; i < e.data.data.pageData.length; i++) { 1927 for (var i = 0; i < e.data.data.pageData.length; i++) {
1882 num += e.data.data.pageData[i].goods_num; 1928 num += e.data.data.pageData[i].goods_num;
1883 } 1929 }
1884 - t.setData({  
1885 - cartGoodsNum: num  
1886 - }); 1930 +
  1931 + //-- 读取服务卡的数量 --
  1932 + getApp().promiseGet("/api/weshop/cartService/page",{
  1933 + data:{
  1934 + store_id: s.globalData.setting.stoid,
  1935 + user_id: s.globalData.user_id,
  1936 + }
  1937 + }).then(res=>{
  1938 + for (var i = 0; i < res.data.data.pageData.length; i++) {
  1939 + num += res.data.data.pageData[i].goods_num;
  1940 + }
  1941 + t.setData({cartGoodsNum:num});
  1942 + })
1887 } 1943 }
1888 }); 1944 });
1889 }, 1945 },
@@ -1945,9 +2001,12 @@ Page({ @@ -1945,9 +2001,12 @@ Page({
1945 } 2001 }
1946 var title= th.data.data.goods_name; 2002 var title= th.data.data.goods_name;
1947 var img=th.data.data.original_img; 2003 var img=th.data.data.original_img;
1948 - if(th.data.prom_type==6){ 2004 + if(th.data.prom_type==6 || th.data.prom_type==1){
  2005 +
1949 title=th.data.prom_act.share_title; 2006 title=th.data.prom_act.share_title;
1950 - img=th.data.iurl+th.data.prom_act.share_imgurl; 2007 + if(!title) title=th.data.prom_act.title;
  2008 + if(th.data.prom_act.share_imgurl)
  2009 + img=th.data.iurl+th.data.prom_act.share_imgurl;
1951 } 2010 }
1952 2011
1953 2012
@@ -3038,7 +3097,8 @@ Page({ @@ -3038,7 +3097,8 @@ Page({
3038 pageSize: 3, 3097 pageSize: 3,
3039 page: 1, 3098 page: 1,
3040 state: 2, 3099 state: 2,
3041 - team_id: prom_id 3100 + team_id: prom_id,
  3101 + ordernum:1
3042 } 3102 }
3043 }).then(res => { 3103 }).then(res => {
3044 teamgroup = res.data.data.pageData; 3104 teamgroup = res.data.data.pageData;
@@ -3917,14 +3977,19 @@ Page({ @@ -3917,14 +3977,19 @@ Page({
3917 context.setFillStyle("white"); 3977 context.setFillStyle("white");
3918 context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit); 3978 context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
3919 } 3979 }
3920 -  
3921 - 3980 +
  3981 + var share_title=th.data.data.goods_name;
  3982 + if(th.data.prom_type==1 || th.data.prom_type==4){
  3983 + share_title=th.data.prom_act.share_title;
  3984 + if(!share_title) share_title=th.data.prom_act.title;
  3985 + }
  3986 +
3922 //---产品名称--- 3987 //---产品名称---
3923 //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 3988 //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
3924 if(type!=4){ 3989 if(type!=4){
3925 context.setFillStyle("black"); 3990 context.setFillStyle("black");
3926 context.setFontSize(21.3 * unit) 3991 context.setFontSize(21.3 * unit)
3927 - th.draw_Text(context, th.data.data.goods_name, 3992 + th.draw_Text(context, share_title,
3928 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit); 3993 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
3929 //------产品的价格------- 3994 //------产品的价格-------
3930 context.setFontSize(23 * unit) 3995 context.setFontSize(23 * unit)
@@ -4385,18 +4450,23 @@ Page({ @@ -4385,18 +4450,23 @@ Page({
4385 tt(); 4450 tt();
4386 return false; 4451 return false;
4387 } 4452 }
  4453 +
  4454 + var img_url=ee.data.data.original_img;
  4455 + if((this.data.prom_type==1 && this.data.prom_type==6) || this.data.prom_act.share_imgurl){
  4456 + img_url=this.data.iurl+this.data.prom_act.share_imgurl;
  4457 + }
  4458 +
4388 //获取商品是分享图信息 4459 //获取商品是分享图信息
4389 wx.getImageInfo({ 4460 wx.getImageInfo({
4390 - src: ee.data.data.original_img, 4461 + src: img_url,
4391 success: function(res) { 4462 success: function(res) {
4392 - //res.path是网络图片的本地地址  
4393 - ee.data.share_goods_img = res.path;  
4394 - tt(); 4463 + //res.path是网络图片的本地地址
  4464 + ee.data.share_goods_img = res.path;
  4465 + tt();
4395 }, 4466 },
4396 fail: function(res) { 4467 fail: function(res) {
4397 -  
4398 - ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的  
4399 - tt(); 4468 + ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
  4469 + tt();
4400 } 4470 }
4401 }); 4471 });
4402 }, 4472 },
@@ -4916,13 +4986,16 @@ Page({ @@ -4916,13 +4986,16 @@ Page({
4916 var arr = [1219, 2089, 3031]; 4986 var arr = [1219, 2089, 3031];
4917 var new_arr = new Array(); 4987 var new_arr = new Array();
4918 var card_name_map=new Map(); 4988 var card_name_map=new Map();
4919 - for (var i = 0; i < plusCard.length; i++) {  
4920 - if((user.card_field==null || user.card_field=="") && plusCard[i].IsStopBuy==true) continue; 4989 +
  4990 + var list=[];
  4991 + for (var i = 0; i < plusCard.length; i++) {
  4992 + if((!user || user.card_field==null || user.card_field=="") && plusCard[i].IsStopBuy==true) continue;
4921 var name="card"+plusCard[i].CorrPrice.toLowerCase(); 4993 var name="card"+plusCard[i].CorrPrice.toLowerCase();
4922 card_name_map.set(name,plusCard[i].CardName); 4994 card_name_map.set(name,plusCard[i].CardName);
  4995 + list.push(plusCard[i]);
4923 } 4996 }
4924 -  
4925 - var ob={"card_list":plusCard,"name_map":card_name_map}; 4997 +
  4998 + var ob={"card_list":list,"name_map":card_name_map};
4926 func(ob); 4999 func(ob);
4927 }) 5000 })
4928 }, 5001 },
pages/goods/goodsInfo/goodsInfo.wxml
@@ -298,7 +298,7 @@ @@ -298,7 +298,7 @@
298 298
299 <!-- 不是秒杀 --> 299 <!-- 不是秒杀 -->
300 <!-- 等级卡的价格,不是等级卡会员,且商品又有设置等级级价,商家后台有开通升级卡同能 --> 300 <!-- 等级卡的价格,不是等级卡会员,且商品又有设置等级级价,商家后台有开通升级卡同能 -->
301 - <view class="flex ai_and" wx:if="{{!card_field && g_filters.is_has_rank(rank_switch,data) && prom_type!=1 }}"> 301 + <view class="flex ai_and" wx:if="{{!card_field && g_filters.is_has_rank(rank_switch,data) && prom_type!=1 && card_list && card_list.length>0}}">
302 302
303 <view class="flex ai-center grade-card-frame card-frame" > 303 <view class="flex ai-center grade-card-frame card-frame" >
304 <image class="img" src="{{iurl}}/miniapp/images/userinfo/userinfo/privilege_t.png"></image> 304 <image class="img" src="{{iurl}}/miniapp/images/userinfo/userinfo/privilege_t.png"></image>
@@ -315,7 +315,7 @@ @@ -315,7 +315,7 @@
315 <block wx:if="{{g_filters.is_has_rank(rank_switch,data)}}"> 315 <block wx:if="{{g_filters.is_has_rank(rank_switch,data)}}">
316 316
317 <!-- 不是秒杀,且会员不是等级会员 --> 317 <!-- 不是秒杀,且会员不是等级会员 -->
318 - <view wx:if="{{!card_field && prom_type!=1 }}"> 318 + <view wx:if="{{!card_field && prom_type!=1 && card_list && card_list.length>0}}">
319 <view class="beauty-makeup-frame flex ai-center"> 319 <view class="beauty-makeup-frame flex ai-center">
320 <view class="left flex ai-center"> 320 <view class="left flex ai-center">
321 <view class="flex ai-center grade-card-frame card-frame advert-card"> 321 <view class="flex ai-center grade-card-frame card-frame advert-card">
@@ -578,7 +578,7 @@ @@ -578,7 +578,7 @@
578 </view> 578 </view>
579 </view> 579 </view>
580 <view class="xc_comment-font pj_word_size ellipsis-2"> 580 <view class="xc_comment-font pj_word_size ellipsis-2">
581 - {{item.content?item.content:''}} 581 + {{item.content?item.content:'此用户没有填写评价。'}}
582 </view> 582 </view>
583 <view class="xc_comment-val"> 583 <view class="xc_comment-val">
584 <view class="xc_comment-time">{{item.add_time}}</view> 584 <view class="xc_comment-time">{{item.add_time}}</view>
@@ -795,7 +795,7 @@ @@ -795,7 +795,7 @@
795 </view> 795 </view>
796 <view class="xc-pirces"> 796 <view class="xc-pirces">
797 <view class="middle-font {{item.seeMore==true?'ellipsis-3':''}}" > 797 <view class="middle-font {{item.seeMore==true?'ellipsis-3':''}}" >
798 - {{item.content?item.content:''}} 798 + {{item.content?item.content:'此用户没有填写评价。'}}
799 </view> 799 </view>
800 </view> 800 </view>
801 <view wx:if='{{item.seeMore}}' data-index='{{cIdx}}' class="s_btn fs30 red-co" catchtap='toggleHandler'>全部显示</view> 801 <view wx:if='{{item.seeMore}}' data-index='{{cIdx}}' class="s_btn fs30 red-co" catchtap='toggleHandler'>全部显示</view>
pages/index/index/index.js
@@ -90,7 +90,13 @@ Page({ @@ -90,7 +90,13 @@ Page({
90 var th = this; 90 var th = this;
91 var first_leader=tt.first_leader; 91 var first_leader=tt.first_leader;
92 if(!first_leader && tt.scene){ 92 if(!first_leader && tt.scene){
93 - first_leader= decodeURIComponent(tt.scene); 93 + var first_leader_str= decodeURIComponent(tt.scene);
  94 + var f_arr=first_leader_str.split("_");
  95 + first_leader=f_arr[0] && parseFloat(f_arr[0])>0?f_arr[0]:null;
  96 + //注册门店
  97 + if(f_arr[1] && parseFloat(f_arr[1])>0){
  98 + getApp().globalData.store_number=f_arr[1];
  99 + }
94 } 100 }
95 101
96 getApp().getConfig(function(e){ 102 getApp().getConfig(function(e){
@@ -107,8 +113,7 @@ Page({ @@ -107,8 +113,7 @@ Page({
107 }); 113 });
108 114
109 115
110 - var th = this;  
111 - 116 + var th = this;
112 getApp().getConfig2(function(config2){ 117 getApp().getConfig2(function(config2){
113 if(config2 && config2.is_overdue==1){ 118 if(config2 && config2.is_overdue==1){
114 getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=5",{}).then(res=>{ 119 getApp().promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=5",{}).then(res=>{
@@ -346,14 +351,10 @@ Page({ @@ -346,14 +351,10 @@ Page({
346 //当隐藏的时候就关闭计时器 351 //当隐藏的时候就关闭计时器
347 onHide: function() { 352 onHide: function() {
348 this.data.is_timer = 0; 353 this.data.is_timer = 0;
349 - clearInterval(this.data.pt_timer);  
350 - clearInterval(this.data.w_holiday_pop);  
351 - clearInterval(this.data.full_screen);  
352 - 354 + if(this.data.pt_timer) clearInterval(this.data.pt_timer);
  355 + if(this.data.w_holiday_pop) clearInterval(this.data.w_holiday_pop);
  356 + if(this.data.full_screen) clearInterval(this.data.full_screen);
353 this.data.w_holiday_pop=0; 357 this.data.w_holiday_pop=0;
354 - for(var i = 1; i < 100; i++) {  
355 - clearInterval(i);  
356 - }  
357 358
358 }, 359 },
359 360
pages/index/index/index.json
@@ -18,6 +18,7 @@ @@ -18,6 +18,7 @@
18 "mvideo": "/components/diy_video/diy_video", 18 "mvideo": "/components/diy_video/diy_video",
19 "service": "/components/diy_service/diy_service", 19 "service": "/components/diy_service/diy_service",
20 "scan": "/components/diy_scan/diy_scan", 20 "scan": "/components/diy_scan/diy_scan",
  21 + "full_screen": "/components/full_screen/full_screen",
21 "store_select": "/components/diy_store_select/diy_store_select" 22 "store_select": "/components/diy_store_select/diy_store_select"
22 }, 23 },
23 "enablePullDownRefresh": false 24 "enablePullDownRefresh": false
pages/team/team_more/team_more.js
@@ -62,7 +62,7 @@ Page({ @@ -62,7 +62,7 @@ Page({
62 //获取活动从表信息team_id 62 //获取活动从表信息team_id
63 await getApp().request.promiseGet("/api/weshop/teamgroup/page", { 63 await getApp().request.promiseGet("/api/weshop/teamgroup/page", {
64 data: { store_id: os.stoid, pageSize:6,page:ee.data.currentPage, 64 data: { store_id: os.stoid, pageSize:6,page:ee.data.currentPage,
65 - state: 2, team_id: team_id } 65 + state: 2, team_id: team_id,ordernum:1 }
66 }).then(res => { 66 }).then(res => {
67 teamgroup = res.data.data.pageData; 67 teamgroup = res.data.data.pageData;
68 console.log(teamgroup); 68 console.log(teamgroup);
pages/togoin/togoin.js
@@ -172,6 +172,11 @@ Page({ @@ -172,6 +172,11 @@ Page({
172 dd.guide_id=getApp().globalData.guide_id; 172 dd.guide_id=getApp().globalData.guide_id;
173 } 173 }
174 174
  175 + //门店的扫描识别码
  176 + if(getApp().globalData.store_number){
  177 + dd.SunCode=encodeURIComponent(getApp().globalData.store_number.trim());
  178 + }
  179 +
175 console.log("-----会员注册的信息-------"); 180 console.log("-----会员注册的信息-------");
176 console.log(dd); 181 console.log(dd);
177 app.request.get("/api/weshop/users/thirdLogin", { 182 app.request.get("/api/weshop/users/thirdLogin", {
@@ -183,51 +188,28 @@ Page({ @@ -183,51 +188,28 @@ Page({
183 } else { 188 } else {
184 return app.showWarning("授权登入失败!"+e.data.msg); 189 return app.showWarning("授权登入失败!"+e.data.msg);
185 } 190 }
186 - 191 +
  192 +
187 var need_go=0; 193 var need_go=0;
188 - var tuser=e.data.data; 194 + var t_user=e.data.data;
  195 +
189 wx.setStorageSync("userinfo",e.data.data); 196 wx.setStorageSync("userinfo",e.data.data);
190 wx.setStorageSync("isAuth", !0), app.globalData.userInfo = e.data.data, app.globalData.userInfo.head_pic = t.getFullUrl(a.globalData.userInfo.head_pic); 197 wx.setStorageSync("isAuth", !0), app.globalData.userInfo = e.data.data, app.globalData.userInfo.head_pic = t.getFullUrl(a.globalData.userInfo.head_pic);
191 - //获取一下线下的真实资料  
192 - let url3 = '/api/weshop/users/getERPUser/';  
193 - url3 += os.stoid + "/" +tuser.user_id;  
194 - getApp().promiseGet(url3,{}).then(res=>{  
195 -  
196 - if(res.data.code == 0) {  
197 - let t_user = res.data.data;  
198 - //如果有需要完善的信息没有完善,就需要跳转  
199 - if (!t_user['vipname'] && th.data.name_need_go) {  
200 - need_go = 1;  
201 - }  
202 - if (!t_user['birthday'] && th.data.birth_need_go) {  
203 - need_go = 1;  
204 - }  
205 - if (!t_user['idcard'] && th.data.idcard_need_go) {  
206 - need_go = 1;  
207 - }  
208 - if (!t_user['address'] && th.data.address_need_go) {  
209 - need_go = 1;  
210 - }  
211 - if (!t_user['pickup_id'] && th.data.pick_need_go) {  
212 - need_go = 1;  
213 - }  
214 - if (!t_user['sex'] && th.data.sex_need_go) {  
215 - need_go = 1;  
216 - }  
217 - if (!t_user['fromuser_id'] && th.data.introducer_need_go) {  
218 - need_go = 1;  
219 - }  
220 -  
221 - if (need_go) {  
222 - getApp().goto("/packageA/pages/profile/profile");  
223 - } else {  
224 - wx.navigateBack({delta: 1})  
225 - }  
226 - }  
227 - })  
228 -  
229 198
230 - 199 + //如果有需要完善的信息没有完善,就需要跳转
  200 + if(!t_user['vipname'] && th.data.name_need_go){ need_go=1;}
  201 + if(!t_user['birthday'] && th.data.birth_need_go){ need_go=1;}
  202 + if(!t_user['idcard'] && th.data.idcard_need_go){ need_go=1;}
  203 + if(!t_user['address'] && th.data.address_need_go){ need_go=1;}
  204 + if(!t_user['pickup_id'] && th.data.pick_need_go){ need_go=1;}
  205 + if(!t_user['sex'] && th.data.sex_need_go){ need_go=1;}
  206 + if(!t_user['fromuser_id'] && th.data.introducer_need_go){ need_go=1;}
  207 +
  208 + if(need_go){
  209 + getApp().goto("/packageA/pages/profile/profile");
  210 + }else{
  211 + wx.navigateBack({ delta: 1})
  212 + }
231 213
232 }, 214 },
233 failStatus: function (t) { 215 failStatus: function (t) {
pages/togoin/togoin.wxml
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 <block wx:if="{{canIUseGetUserProfile}}"> 19 <block wx:if="{{canIUseGetUserProfile}}">
20 <button hidden="{{user}}" class="getPhoneNumber" bindtap="bindGetUserInfo"> 20 <button hidden="{{user}}" class="getPhoneNumber" bindtap="bindGetUserInfo">
21 <view class="flex flex-center ali-c"> 21 <view class="flex flex-center ali-c">
22 - <image class="we_chat" src="/images/we_chat.png"></image> 22 + <image class="we_chat" src="{{imghots}}/miniapp/images/we_chat.png"></image>
23 <view>微信账号快捷登录</view> 23 <view>微信账号快捷登录</view>
24 </view> 24 </view>
25 </button> 25 </button>
@@ -29,7 +29,7 @@ @@ -29,7 +29,7 @@
29 <!-- 授权获取基础信息 --> 29 <!-- 授权获取基础信息 -->
30 <button hidden="{{user}}" class="getPhoneNumber" open-type="getUserInfo" bindgetuserinfo="bindUserInfo"> 30 <button hidden="{{user}}" class="getPhoneNumber" open-type="getUserInfo" bindgetuserinfo="bindUserInfo">
31 <view class="flex flex-center ali-c"> 31 <view class="flex flex-center ali-c">
32 - <image class="we_chat" src="/images/we_chat.png"></image> 32 + <image class="we_chat" src="{{imghots}}/miniapp/images/we_chat.png"></image>
33 <view>微信账号快捷登录</view> 33 <view>微信账号快捷登录</view>
34 </view> 34 </view>
35 </button> 35 </button>
pages/user/cardinfo/cardinfo.js
@@ -876,7 +876,21 @@ Page({ @@ -876,7 +876,21 @@ Page({
876 //显示弹出框 876 //显示弹出框
877 show_change:function () { this.setData({is_show_change_pop:1}); }, 877 show_change:function () { this.setData({is_show_change_pop:1}); },
878 //关闭弹出框 878 //关闭弹出框
879 - close_card_change_pop:function () { this.setData({is_show_change_pop:0}); } 879 + close_card_change_pop:function () { this.setData({is_show_change_pop:0}); },
  880 +
  881 +
  882 + /**
  883 + * 点击跳转
  884 + */
  885 + goto(e) {
  886 + let url = '';
  887 + if(e.target.dataset.url) {
  888 + url = e.target.dataset.url;
  889 + } else {
  890 + url = e.currentTarget.dataset.url;
  891 + }
  892 + t.goto(url);
  893 + },
880 894
881 895
882 896
pages/user/cardinfo/cardinfo.wxml
@@ -28,6 +28,7 @@ @@ -28,6 +28,7 @@
28 <!-- 要判断是不是最高级的卡 --> 28 <!-- 要判断是不是最高级的卡 -->
29 <view wx:if="{{cardid!=big_card.CardId}}" bindtap="show_change" class="renew fs28" style="background:{{user_card.CardColor}}">卡类升级</view> 29 <view wx:if="{{cardid!=big_card.CardId}}" bindtap="show_change" class="renew fs28" style="background:{{user_card.CardColor}}">卡类升级</view>
30 </block> 30 </block>
  31 + <view bindtap="goto" class="renew fs28" style="background:{{user_card.CardColor}}" data-url="/packageB/pages/user/buyDetails/buyDetails">购卡明细</view>
31 </view> 32 </view>
32 33
33 34
pages/user/index/index.js
@@ -95,6 +95,15 @@ Page({ @@ -95,6 +95,15 @@ Page({
95 * 生命周期函数--监听页面显示 95 * 生命周期函数--监听页面显示
96 */ 96 */
97 onShow: function() { 97 onShow: function() {
  98 + var th=this;
  99 + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + os.stoid, {}).then(res => {
  100 + if(res.data.code==0){
  101 + var plusCard = res.data.data;
  102 + for (var i = 0; i < plusCard.length; i++) {
  103 + if(!plusCard[i].IsStopBuy) { th.setData({show_buy_plus:1}); break; }
  104 + }
  105 + }
  106 + })
98 107
99 if (typeof this.getTabBar === 'function' && this.getTabBar()) { 108 if (typeof this.getTabBar === 'function' && this.getTabBar()) {
100 var index=getApp().getPageIndex(this); 109 var index=getApp().getPageIndex(this);
@@ -595,7 +604,7 @@ Page({ @@ -595,7 +604,7 @@ Page({
595 604
596 switch (no) { 605 switch (no) {
597 case "01": 606 case "01":
598 - getApp().goto("/pages/user/user_coupon/user_coupon?img=" + 607 + getApp().goto("/packageB/pages/user/user_coupon/user_coupon?img=" +
599 url + "&gradeId=" + th.data.gradeId + "&FormId=" + item.Id); 608 url + "&gradeId=" + th.data.gradeId + "&FormId=" + item.Id);
600 break; 609 break;
601 case "02": 610 case "02":
pages/user/index/index.wxml
@@ -66,7 +66,7 @@ @@ -66,7 +66,7 @@
66 </image> 66 </image>
67 67
68 </view> 68 </view>
69 - <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==2}}"> 69 + <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==2 && show_buy_plus}}">
70 <view class="xc-add-member flex-center-around "> 70 <view class="xc-add-member flex-center-around ">
71 <view class="flex jc-center ai-center"> 71 <view class="flex jc-center ai-center">
72 <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image> 72 <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image>
@@ -78,7 +78,7 @@ @@ -78,7 +78,7 @@
78 </view> 78 </view>
79 </view> 79 </view>
80 80
81 - <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==3}}"> 81 + <view class="xc-add-member-frame flex-level rel addplus" wx:if="{{is_dengji==3 && show_buy_plus}}">
82 <view class="xc-add-member flex-center-around "> 82 <view class="xc-add-member flex-center-around ">
83 <view class="flex jc-center ai-center"> 83 <view class="flex jc-center ai-center">
84 <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image> 84 <image class="xc-icon" src="{{iurl}}/miniapp/images/user/user_vip.png"></image>
pages/user/labels/labels.js
@@ -117,7 +117,7 @@ Page({ @@ -117,7 +117,7 @@ Page({
117 }) 117 })
118 th.query_checklabels(); 118 th.query_checklabels();
119 } else { 119 } else {
120 - getApp().my_warnning("系统未设置兴趣标签集合", 0, th); 120 + getApp().my_warnning("系统繁忙,请稍后再试", 0, th);
121 th.setData({ 121 th.setData({
122 isread: 1 122 isread: 1
123 }) 123 })
@@ -136,7 +136,7 @@ Page({ @@ -136,7 +136,7 @@ Page({
136 storeId: a.stoid 136 storeId: a.stoid
137 } 137 }
138 }).then(res => { 138 }).then(res => {
139 - if (res.data.code == 0 && res.data.data && res.data.data.VipLabelId) { 139 + if (res.data.code == 0) {
140 var data = res.data.data; 140 var data = res.data.data;
141 var arr = []; 141 var arr = [];
142 var VipLabelId = []; //通过id标签找到已选择的标签 142 var VipLabelId = []; //通过id标签找到已选择的标签
@@ -165,7 +165,7 @@ Page({ @@ -165,7 +165,7 @@ Page({
165 interest_lables: interest_lables 165 interest_lables: interest_lables
166 }) 166 })
167 } else { 167 } else {
168 - //getApp().my_warnning("系统繁忙,请稍后再试", 0, th); 168 + getApp().my_warnning("系统繁忙,请稍后再试", 0, th);
169 return false; 169 return false;
170 } 170 }
171 }) 171 })
pages/user/my_service/appment_main.js
@@ -560,6 +560,9 @@ Page({ @@ -560,6 +560,9 @@ Page({
560 th.data.is_get_local_ok = 1; 560 th.data.is_get_local_ok = 1;
561 } 561 }
562 }) 562 })
  563 + //获取上一次的预约
  564 + this.get_fir_service();
  565 +
563 }, 566 },
564 //查询剩下可预约人数 567 //查询剩下可预约人数
565 query_more: function() { 568 query_more: function() {
@@ -633,5 +636,98 @@ Page({ @@ -633,5 +636,98 @@ Page({
633 var th = this; 636 var th = this;
634 var nav_b = th.selectComponent("#nav_b"); //组件的id 637 var nav_b = th.selectComponent("#nav_b"); //组件的id
635 nav_b.close_box(); 638 nav_b.close_box();
  639 + },
  640 +
  641 + //判断分享的导购是不是有门店,是不是该门店下又该会员
  642 + check_firleader(data){
  643 + var th=this;
  644 + var itemId = this.data.itemId; //服务id
  645 + var url = "/api/weshop/marketing/reservation/storage/pagenew";
  646 + var key_word = data.store_name;
  647 + key_word = key_word.replace(/\s+/g, "");
  648 + var usr=getApp().globalData.userInfo;
  649 + getApp().request.promiseGet(url, {
  650 + data: {
  651 + userId: usr.user_id,
  652 + storeId: os.stoid,
  653 + serviceId: itemId,
  654 + page: 1,
  655 + pageSize: 1000,
  656 + keyWord: key_word
  657 + }
  658 + }).then(res => {
  659 + //-- 如果是门店的话 --
  660 + if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
  661 + var store_data=null;
  662 + for(var i in res.data.data.pageData){
  663 + var it=res.data.data.pageData[i];
  664 + if(it.Id==data.StorageId){
  665 + store_data={
  666 + store_name: data.store_name,
  667 + storageId: data.StorageId,
  668 + };
  669 + break;
  670 + }
  671 + }
  672 + if(!store_data) return false;
  673 + th.setData(store_data)
  674 +
  675 + }else{
  676 + return false;
  677 + }
  678 +
  679 + //导购接口地址
  680 + var url = "/api/weshop/marketing/reservation/staff/pagenew";
  681 + return getApp().request.promiseGet(url, {
  682 + isShowLoading:1,
  683 + data: {
  684 + storeId: os.stoid,
  685 + userId: usr.user_id,
  686 + serviceId: itemId,
  687 + storageId: data.StorageId
  688 + }
  689 + })
  690 + }).then(res=>{
  691 + if (res && res.data && res.data.code == 0) {
  692 + var beautician_list=res.data.data;
  693 + for(var i in beautician_list){
  694 + var item=beautician_list[i];
  695 + if(item.staffid==data.beauticianID){
  696 + th.setData({
  697 + beautician_name:data.beautician_name,
  698 + beauticianID:data.beauticianID,
  699 + })
  700 + break;
  701 + }
  702 + }
  703 +
  704 + }
  705 + })
  706 + },
  707 +
  708 + //获取上一次预约的信息
  709 + get_fir_service:function (){
  710 + var th=this;
  711 + var usr=getApp().globalData.userInfo;
  712 + if(!usr) return false;
  713 +
  714 + getApp().promiseGet("/api/weshop/marketing/reservation/reservation/page",{
  715 + data:{storeId:os.stoid,userId:usr.user_id,projectId:th.data.project_id}
  716 + }).then(res=>{
  717 + if(res.data.code==0 && res.data.data && res.data.data.pageData ){
  718 + var ppdata= res.data.data.pageData[0];
  719 + var data={
  720 + store_name:ppdata.StorageName,
  721 + beautician_name:ppdata.BeauticianName,
  722 + beauticianID:ppdata.BeauticianID,
  723 + StorageId:ppdata.StorageID,
  724 + }
  725 + //检查门店和导购能不能默认使用
  726 + th.check_firleader(data);
  727 + };
  728 + })
636 } 729 }
  730 +
  731 +
  732 +
637 }) 733 })
638 \ No newline at end of file 734 \ No newline at end of file
pages/user/my_service/i_service.js
@@ -45,11 +45,8 @@ Page({ @@ -45,11 +45,8 @@ Page({
45 */ 45 */
46 onShow: function() { 46 onShow: function() {
47 var th = this; 47 var th = this;
48 - setTimeout(function (){  
49 - var my_confirm = th.selectComponent("#my_confirm"); //组件的id  
50 - my_confirm.open_cancel(0);  
51 - },1000)  
52 - 48 + var my_confirm = th.selectComponent("#my_confirm"); //组件的id
  49 + my_confirm.open_cancel(0);
53 }, 50 },
54 onReachBottom: function() { 51 onReachBottom: function() {
55 var th = this; 52 var th = this;
pages/user/order_detail/order_detail.js
@@ -418,7 +418,8 @@ Page({ @@ -418,7 +418,8 @@ Page({
418 return false; 418 return false;
419 } 419 }
420 }else{ 420 }else{
421 - if((gg.prom_type==1 || gg.prom_type==3 || gg.prom_type==5 || gg.prom_type==6 || gg.prom_type==4) && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) { 421 + if((gg.prom_type==1 || gg.prom_type==3 || gg.prom_type==5 || gg.prom_type==6 || gg.prom_type==4)
  422 + && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {
422 var prom=null; 423 var prom=null;
423 //---如果是活动的时候--- 424 //---如果是活动的时候---
424 var prom=null,th=this; 425 var prom=null,th=this;
@@ -461,21 +462,25 @@ Page({ @@ -461,21 +462,25 @@ Page({
461 } 462 }
462 } 463 }
463 else{ 464 else{
464 - var t_ok=1;  
465 - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+good.goods_id+"/0", {}).then(res => {  
466 - if(res.data.code==0){  
467 - var r_data=res.data.data;  
468 - //-- 参加了全局的优惠活动 --  
469 - if(r_data.promGoodsLists){  
470 - wx.showModal({  
471 - title: '提示',  
472 - content: gg.goods_name+'商品的活动发生了变化'  
473 - });  
474 - t_ok=0;  
475 - }  
476 - }  
477 - })  
478 - if(!t_ok) return false; 465 + //不是赠品的时候
  466 + if(!good.is_gift){
  467 + var t_ok=1;
  468 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+good.goods_id+"/0", {}).then(res => {
  469 + if(res.data.code==0){
  470 + var r_data=res.data.data;
  471 + //-- 参加了全局的优惠活动 --
  472 + if(r_data.promGoodsLists){
  473 + wx.showModal({
  474 + title: '提示',
  475 + content: gg.goods_name+'商品的活动发生了变化'
  476 + });
  477 + t_ok=0;
  478 + }
  479 + }
  480 + })
  481 + if(!t_ok) return false;
  482 + }
  483 +
479 //-- 如果有参加线下取价 -- 484 //-- 如果有参加线下取价 --
480 if(good.offline_cut>0) wlist+=encodeURIComponent(gg.erpwareid)+","; 485 if(good.offline_cut>0) wlist+=encodeURIComponent(gg.erpwareid)+",";
481 } 486 }
pages/user/order_detail/order_detail.wxml
@@ -164,9 +164,9 @@ @@ -164,9 +164,9 @@
164 164
165 <block wx:if="{{order.order_status==2 && order.is_zsorder!=4}}"> 165 <block wx:if="{{order.order_status==2 && order.is_zsorder!=4}}">
166 <navigator wx:if="{{order.order_goods.length>1}}" class="tips-btn" 166 <navigator wx:if="{{order.order_goods.length>1}}" class="tips-btn"
167 - url="/pages/user/comment/comment?status=0&order_id={{order.order_id}}">评价</navigator> 167 + url="/packageB/pages/user/comment/comment?status=0&order_id={{order.order_id}}">评价</navigator>
168 <navigator wx:else class="tips-btn" 168 <navigator wx:else class="tips-btn"
169 - url="/pages/user/add_comment/add_comment?goods_id={{order.order_goods[0].goods_id}}&order_id={{order.order_id}}}">去评价</navigator> 169 + url="/packageB/pages/user/add_comment/add_comment?goods_id={{order.order_goods[0].goods_id}}&order_id={{order.order_id}}}">去评价</navigator>
170 </block> 170 </block>
171 <!-- 积分购 拼团 搭配购没有有再来一单 --> 171 <!-- 积分购 拼团 搭配购没有有再来一单 -->
172 <block wx:if="{{ (order.pay_status==1 || order.order_status==3) && order.pt_prom_id<=0 && order.integral<=0 && order.order_goods[0].prom_type!=5}}"> 172 <block wx:if="{{ (order.pay_status==1 || order.order_status==3) && order.pt_prom_id<=0 && order.integral<=0 && order.order_goods[0].prom_type!=5}}">
pages/user/order_list/order_list.js
@@ -537,7 +537,8 @@ Page({ @@ -537,7 +537,8 @@ Page({
537 } 537 }
538 538
539 }else{ 539 }else{
540 - if((gg.prom_type==1 || gg.prom_type==3 || gg.prom_type==5 || gg.prom_type==6 || gg.prom_type==4) && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) { 540 + if((gg.prom_type==1 || gg.prom_type==3 || gg.prom_type==5 || gg.prom_type==6 || gg.prom_type==4)
  541 + && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {
541 var prom=null; 542 var prom=null;
542 //---如果是活动的时候--- 543 //---如果是活动的时候---
543 var prom=null,th=this; 544 var prom=null,th=this;
@@ -580,21 +581,23 @@ Page({ @@ -580,21 +581,23 @@ Page({
580 } 581 }
581 } 582 }
582 else{ 583 else{
583 - var t_ok=1;  
584 - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+good.goods_id+"/0", {}).then(res => {  
585 - if(res.data.code==0){  
586 - var r_data=res.data.data;  
587 - //-- 参加了全局的优惠活动 --  
588 - if(r_data.promGoodsLists){  
589 - wx.showModal({  
590 - title: '提示',  
591 - content: gg.goods_name+'商品的活动发生了变化'  
592 - });  
593 - t_ok=0;  
594 - }  
595 - }  
596 - })  
597 - if(!t_ok) return false; 584 + if(!good.is_gift ){
  585 + var t_ok=1;
  586 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+good.goods_id+"/0", {}).then(res => {
  587 + if(res.data.code==0){
  588 + var r_data=res.data.data;
  589 + //-- 参加了全局的优惠活动 --
  590 + if(r_data.promGoodsLists){
  591 + wx.showModal({
  592 + title: '提示',
  593 + content: gg.goods_name+'商品的活动发生了变化'
  594 + });
  595 + t_ok=0;
  596 + }
  597 + }
  598 + })
  599 + if(!t_ok) return false;
  600 + }
598 //-- 如果有参加线下取价 -- 601 //-- 如果有参加线下取价 --
599 if(good.offline_cut>0) wlist+=encodeURIComponent(gg.erpwareid)+","; 602 if(good.offline_cut>0) wlist+=encodeURIComponent(gg.erpwareid)+",";
600 } 603 }
pages/user/order_list/order_list.wxml
@@ -183,9 +183,9 @@ @@ -183,9 +183,9 @@
183 183
184 <block wx:if="{{item.order_status==2 && item.is_zsorder!=4}}"> 184 <block wx:if="{{item.order_status==2 && item.is_zsorder!=4}}">
185 <navigator wx:if="{{item.order_goods.length>1}}" class="order-btn white" 185 <navigator wx:if="{{item.order_goods.length>1}}" class="order-btn white"
186 - url="/pages/user/comment/comment?status=0&order_id={{item.order_id}}">评价</navigator> 186 + url="/packageB/pages/user/comment/comment?status=0&order_id={{item.order_id}}">评价</navigator>
187 <navigator wx:else class="order-btn white red-b" 187 <navigator wx:else class="order-btn white red-b"
188 - url="/pages/user/add_comment/add_comment?goods_id={{item.order_goods[0].goods_id}}&order_id={{item.order_id}}&price={{item.order_goods[0].member_goods_price}}">评价</navigator> 188 + url="/packageB/pages/user/add_comment/add_comment?goods_id={{item.order_goods[0].goods_id}}&order_id={{item.order_id}}&price={{item.order_goods[0].member_goods_price}}">评价</navigator>
189 </block> 189 </block>
190 190
191 191
pages/user/plus/plus.js
@@ -170,49 +170,59 @@ Page({ @@ -170,49 +170,59 @@ Page({
170 var plusCard = res.data.data; 170 var plusCard = res.data.data;
171 var arr = [1219, 2089, 3031]; 171 var arr = [1219, 2089, 3031];
172 var new_arr = new Array(); 172 var new_arr = new Array();
  173 + var parr=[];
173 for (var i = 0; i < plusCard.length; i++) { 174 for (var i = 0; i < plusCard.length; i++) {
174 //plusCard[i].free=arr[i]; 175 //plusCard[i].free=arr[i];
175 if(plusCard[i].IsStopBuy) { continue; } 176 if(plusCard[i].IsStopBuy) { continue; }
176 if (plusCard[i].CardImg == "") plusCard[i].CardImg = th.data.url + "/miniapp/images/plus/bg"+(i + 1)+ ".jpg?v=1"; 177 if (plusCard[i].CardImg == "") plusCard[i].CardImg = th.data.url + "/miniapp/images/plus/bg"+(i + 1)+ ".jpg?v=1";
177 var item = {"fee": plusCard[i].CardFee, 'index': i} 178 var item = {"fee": plusCard[i].CardFee, 'index': i}
178 new_arr.push(item); 179 new_arr.push(item);
179 - 180 + parr.push(plusCard[i]);
180 } 181 }
181 - //根據距離遠近排序,越近在前面,升序  
182 - new_arr.sort(function (a, b) {  
183 - if (a.fee < b.fee) {  
184 - return -1;  
185 - } else if (a.fee == b.fee) {  
186 - return 0;  
187 - } else {  
188 - return 1;  
189 - }  
190 - });  
191 182
192 - //里面和外面要显示统一  
193 - switch (new_arr.length) {  
194 - case 1:arr=[3031]; break;  
195 - case 2: arr = [2089, 3031]; break;  
196 - case 3: arr = [1219, 2089, 3031];break;  
197 - } 183 + //看是不是还有卡项是可以购买的
  184 + if(new_arr && new_arr.length>0){
  185 + //根據距離遠近排序,越近在前面,升序
  186 + new_arr.sort(function (a, b) {
  187 + if (a.fee < b.fee) {
  188 + return -1;
  189 + } else if (a.fee == b.fee) {
  190 + return 0;
  191 + } else {
  192 + return 1;
  193 + }
  194 + });
198 195
199 - //---给数组添加立省多少钱---  
200 - for (i = 0; i < plusCard.length; i++) {  
201 - //判断是否停用  
202 -  
203 - for (var j = 0; j < new_arr.length; j++) {  
204 - if (i == new_arr[j].index) {  
205 - plusCard[i].free = arr[j];  
206 - break;  
207 - }  
208 - 196 + //里面和外面要显示统一
  197 + switch (new_arr.length) {
  198 + case 1:arr=[3031]; break;
  199 + case 2: arr = [2089, 3031]; break;
  200 + case 3: arr = [1219, 2089, 3031];break;
  201 + }
209 202
  203 + //---给数组添加立省多少钱---
  204 + for (i = 0; i < parr.length; i++) {
  205 + //判断是否停用
  206 + for (var j = 0; j < new_arr.length; j++) {
  207 + if (i == new_arr[j].index) {
  208 + parr[i].free = arr[j];
  209 + break;
  210 + }
  211 + }
210 } 212 }
211 - }  
212 - th.setData({  
213 - is_plusCard: plusCard, is_show: 1  
214 - }) 213 + th.setData({
  214 + is_plusCard: parr, is_show: 1
  215 + })
215 216
  217 + }else{
  218 + th.setData({is_show: 1});
  219 + wx.showToast({
  220 + title: "暂无可购买的等级卡项",
  221 + icon: 'none',
  222 + duration: 4000
  223 + })
  224 +
  225 + }
216 setTimeout(function(){ 226 setTimeout(function(){
217 var goods_list = th.selectComponent("#goods_list"); //组件的id 227 var goods_list = th.selectComponent("#goods_list"); //组件的id
218 goods_list.init(); 228 goods_list.init();
pages/user/plus/plus.wxml
@@ -6,44 +6,44 @@ @@ -6,44 +6,44 @@
6 </view> 6 </view>
7 <view class="plus"> 7 <view class="plus">
8 <!-- 开通会员模块 --> 8 <!-- 开通会员模块 -->
9 - <view class="Opening_plus">  
10 - <view class="Opening_bk">  
11 - <image src="{{url}}/miniapp/images/plus/card_bk.png"></image>  
12 - </view>  
13 - <view class="swiper">  
14 - <!-- 未开通会员swiper-item -->  
15 - <swiper current="{{currentId}}" current-item-id="{{currentId}}" next-margin="60rpx" previous-margin="60rpx" bindchange="swiperChange">  
16 - <swiper-item class="flex" item-id="{{index}}" data-item-id="{{index}}" wx:for="{{is_plusCard}}">  
17 -  
18 - <view wx:if="{{item.IsStopBuy!=true}}" class="Membership {{currentId==index?'enlarge':''}}" style=" background-image: url({{item.CardImg}});color:{{item.CardColor}}">  
19 - <view class="flex-space-between Membership_go">  
20 - <view>  
21 - <view class="fs36">{{item.CardName}}</view>  
22 - <view class="fs24 Membership_remarks">开通会员卡仅{{item.CardFee}}元</view>  
23 - </view>  
24 - <view class="Opening fs28 xc-black" data-ind="{{index}}" style="background:{{item.CardColor}}" bindtap="Opening">立即购买  
25 - </view>  
26 9
27 - </view> 10 + <block wx:if="{{is_plusCard}}">
  11 + <view class="Opening_plus">
  12 + <view class="Opening_bk">
  13 + <image src="{{url}}/miniapp/images/plus/card_bk.png"></image>
  14 + </view>
  15 + <view class="swiper">
  16 + <!-- 未开通会员swiper-item -->
  17 + <swiper current="{{currentId}}" current-item-id="{{currentId}}" next-margin="60rpx" previous-margin="60rpx" bindchange="swiperChange">
  18 + <swiper-item class="flex" item-id="{{index}}" data-item-id="{{index}}" wx:for="{{is_plusCard}}">
  19 +
  20 + <view class="Membership {{currentId==index?'enlarge':''}}" style=" background-image: url({{item.CardImg}});color:{{item.CardColor}}">
  21 + <view class="flex-space-between Membership_go">
  22 + <view>
  23 + <view class="fs36">{{item.CardName}}</view>
  24 + <view class="fs24 Membership_remarks">开通会员卡仅{{item.CardFee}}元</view>
  25 + </view>
  26 + <view class="Opening fs28 xc-black" data-ind="{{index}}" style="background:{{item.CardColor}}" bindtap="Opening">立即购买
  27 + </view>
28 28
29 - <view class="flex-vertical-between consumption" style="height: 40rpx;line-height:40rpx "> 29 + </view>
  30 +
  31 + <view class="flex-vertical-between consumption" style="height: 40rpx;line-height:40rpx ">
30 32
31 - <view class="flex-vertical fs24" style="overflow:hidden"> 33 + <view class="flex-vertical fs24" style="overflow:hidden">
32 34
33 - <view class="Member"style="background-image:url('{{url}}/miniapp/images/plus/privilege_o.png');filter: drop-shadow( 40rpx 0rpx 0rpx {{item.CardColor}});"></view>  
34 - <view style="margin-left:5rpx;white-space: nowrap;">按去年用户消费计算,开卡后一年预计省¥{{item.free}}元 35 + <view class="Member"style="background-image:url('{{url}}/miniapp/images/plus/privilege_o.png');filter: drop-shadow( 40rpx 0rpx 0rpx {{item.CardColor}});"></view>
  36 + <view style="margin-left:5rpx;white-space: nowrap;">按去年用户消费计算,开卡后一年预计省¥{{item.free}}元
  37 + </view>
35 </view> 38 </view>
36 </view> 39 </view>
37 </view> 40 </view>
38 - </view>  
39 41
40 -  
41 - </swiper-item>  
42 - </swiper> 42 + </swiper-item>
  43 + </swiper>
  44 + </view>
43 </view> 45 </view>
44 -  
45 -  
46 - </view> 46 + </block>
47 47
48 <!-- 会员礼遇 --> 48 <!-- 会员礼遇 -->
49 <view class="Courtesy"> 49 <view class="Courtesy">
pages/user/userinfo/userinfo.js
@@ -68,7 +68,6 @@ Page({ @@ -68,7 +68,6 @@ Page({
68 is_lable_set: "", //是否启用我的兴趣标签 68 is_lable_set: "", //是否启用我的兴趣标签
69 check_label: [], //我选择的兴趣标签 69 check_label: [], //我选择的兴趣标签
70 fir_guide_id:null, //存储会员详情接口出来的美导ID 70 fir_guide_id:null, //存储会员详情接口出来的美导ID
71 - reg_info:null  
72 71
73 }, 72 },
74 //通过路径跳转到其他页面 73 //通过路径跳转到其他页面
@@ -87,18 +86,6 @@ Page({ @@ -87,18 +86,6 @@ Page({
87 guide_title:sms_conf.guide_consultant, //系统参数 导购标题 86 guide_title:sms_conf.guide_consultant, //系统参数 导购标题
88 guide_change_time:sms_conf.guide_change_time //每月能修改几次 87 guide_change_time:sms_conf.guide_change_time //每月能修改几次
89 }) 88 })
90 -  
91 - let reg_type = ee.reg_type;  
92 - let reg_info = ee.reg_info;  
93 - if(reg_type) { //reg_type为1才显示积分信息  
94 - if(reg_info) {  
95 - reg_info = JSON.parse(reg_info);  
96 - th.setData({reg_info:reg_info});  
97 - }  
98 - }  
99 -  
100 -  
101 -  
102 if (sms_conf.user_label_set) { 89 if (sms_conf.user_label_set) {
103 th.query_checklabels(); 90 th.query_checklabels();
104 } 91 }
@@ -115,19 +102,20 @@ Page({ @@ -115,19 +102,20 @@ Page({
115 storeId: r.stoid 102 storeId: r.stoid
116 } 103 }
117 }).then(res => { 104 }).then(res => {
118 - if (res.data.code == 0 && res.data.data && res.data.data.VipLabel) { 105 + if (res.data.code == 0) {
119 var data = res.data.data; 106 var data = res.data.data;
120 - var VipLabel = th.data.VipLabel; //通过id标签找到已选择的标签 107 + var VipLabel = th.data.check_label; //通过id标签找到已选择的标签
121 var dateList = data.VipLabel.split(","); 108 var dateList = data.VipLabel.split(",");
122 - var arr=[];  
123 for (var i in dateList) { 109 for (var i in dateList) {
124 if (dateList[i] != "") { 110 if (dateList[i] != "") {
125 - arr.push(dateList[i]); 111 + VipLabel.push(dateList[i]);
126 } 112 }
127 } 113 }
128 th.setData({ 114 th.setData({
129 - check_label: arr 115 + check_label: VipLabel
130 }) 116 })
  117 + } else {
  118 + getApp().my_warnning("系统繁忙,请稍后再试", 0, th);
131 } 119 }
132 }) 120 })
133 }, 121 },
@@ -197,20 +185,9 @@ Page({ @@ -197,20 +185,9 @@ Page({
197 } 185 }
198 }, 186 },
199 bindChange: function(e) { 187 bindChange: function(e) {
200 -  
201 - let strBirthday = e.detail.value;  
202 - let age = this.verifyBirthday(strBirthday);  
203 -  
204 - if(age <= 10) {  
205 - getApp().my_warnning("会员年龄不能小于10岁(含10岁)", 0, this);  
206 - } else if(age >= 70) {  
207 - getApp().my_warnning("会员年龄不能超过70岁(含70岁)", 0, this);  
208 - } else {  
209 - this.setData({  
210 - datet: e.detail.value,  
211 - });  
212 - };  
213 - 188 + this.setData({
  189 + datet: e.detail.value,
  190 + });
214 }, 191 },
215 //---点击二级之后的选择--- 192 //---点击二级之后的选择---
216 choose_for_store: function(e) { 193 choose_for_store: function(e) {
@@ -587,7 +564,6 @@ Page({ @@ -587,7 +564,6 @@ Page({
587 }, 564 },
588 //------初始化加载---------- 565 //------初始化加载----------
589 onLoad: function(t) { 566 onLoad: function(t) {
590 - var th=this;  
591 var user = getApp().globalData.userInfo; 567 var user = getApp().globalData.userInfo;
592 if (user.card_field != '' && user.card_field != null && user.card_field != undefined && user.card_expiredate) { 568 if (user.card_field != '' && user.card_field != null && user.card_field != undefined && user.card_expiredate) {
593 var now = ut.gettimestamp(); 569 var now = ut.gettimestamp();
@@ -599,9 +575,6 @@ Page({ @@ -599,9 +575,6 @@ Page({
599 } 575 }
600 } 576 }
601 this.initial_user(); 577 this.initial_user();
602 -  
603 -  
604 -  
605 }, 578 },
606 //-----------会员是否初始化--------------------- 579 //-----------会员是否初始化---------------------
607 initial_user: function() { 580 initial_user: function() {
@@ -677,8 +650,8 @@ Page({ @@ -677,8 +650,8 @@ Page({
677 650
678 if(!a) a={}; 651 if(!a) a={};
679 var time ="",birthday =""; 652 var time ="",birthday ="";
680 - if(a && a.reg_time) time=util.formar_no_full(a.reg_time);  
681 - if(a && a.birthday) birthday=util.formar_no_full(a.birthday); 653 + if(a && a.reg_time) time=util.formatTime(a.reg_time, "'Y/M/D");
  654 + if(a && a.birthday) birthday=util.formatTime(a.birthday, "'Y/M/D");
682 655
683 a.reg_time = time; 656 a.reg_time = time;
684 a.birthday = birthday 657 a.birthday = birthday
@@ -692,7 +665,8 @@ Page({ @@ -692,7 +665,8 @@ Page({
692 a.staffName=choice_guide.StaffName; 665 a.staffName=choice_guide.StaffName;
693 a.staffId=choice_guide.Id; 666 a.staffId=choice_guide.Id;
694 } 667 }
695 - 668 +
  669 +
696 e.setData({ 670 e.setData({
697 phone: a.mobile, 671 phone: a.mobile,
698 user: a, 672 user: a,
@@ -703,13 +677,11 @@ Page({ @@ -703,13 +677,11 @@ Page({
703 address: a.address, 677 address: a.address,
704 isGender: a.sex, 678 isGender: a.sex,
705 isstcsp: a.vipnopwd, 679 isstcsp: a.vipnopwd,
706 - iscalendar:a.islunar,  
707 - user2:a,  
708 - datet:a.birthday 680 + iscalendar:a.islunar
709 }); 681 });
  682 +
710 } 683 }
711 }) 684 })
712 -  
713 a.getUserInfo(function(a) { 685 a.getUserInfo(function(a) {
714 var txt = util.formatTime(a.birthday, 'yyyy-M-d'), 686 var txt = util.formatTime(a.birthday, 'yyyy-M-d'),
715 arr = txt.split(' '); 687 arr = txt.split(' ');
@@ -717,7 +689,7 @@ Page({ @@ -717,7 +689,7 @@ Page({
717 var txt2 = util.formatTime(a.reg_time, 'yyyy-M-d'), 689 var txt2 = util.formatTime(a.reg_time, 'yyyy-M-d'),
718 arr2 = txt.split(' '); 690 arr2 = txt.split(' ');
719 a.reg_time = arr2[0]; 691 a.reg_time = arr2[0];
720 - if (a.pickup_id && a.pickup_id>0) { 692 + if (a.pickup_id != null) {
721 req.get("/api/weshop/pickup/get/" + r.stoid + "/" + a.pickup_id, { 693 req.get("/api/weshop/pickup/get/" + r.stoid + "/" + a.pickup_id, {
722 success: function(da) { 694 success: function(da) {
723 if(da.data.data){ 695 if(da.data.data){
@@ -830,9 +802,7 @@ Page({ @@ -830,9 +802,7 @@ Page({
830 }, 802 },
831 803
832 //点击确认修改信息 804 //点击确认修改信息
833 - confirm_revision: function() {  
834 -  
835 - 805 + confirm_revision: function() {
836 var th = this; 806 var th = this;
837 var isstcsp = th.data.isstcsp; //是否启用消费密码 807 var isstcsp = th.data.isstcsp; //是否启用消费密码
838 var phone = th.data.phone; //手机号码 808 var phone = th.data.phone; //手机号码
@@ -840,9 +810,6 @@ Page({ @@ -840,9 +810,6 @@ Page({
840 getApp().my_warnning("手机不能为空", 0, th); 810 getApp().my_warnning("手机不能为空", 0, th);
841 return false; 811 return false;
842 } 812 }
843 - var address = th.data.address; //地址  
844 - var sto_sele_id = th.data.sto_sele_id;  
845 -  
846 var consumption = th.data.consumption; //消费密码 813 var consumption = th.data.consumption; //消费密码
847 var isstcsp = th.data.isstcsp; 814 var isstcsp = th.data.isstcsp;
848 if (isstcsp == 1) { 815 if (isstcsp == 1) {
@@ -857,6 +824,7 @@ Page({ @@ -857,6 +824,7 @@ Page({
857 } 824 }
858 } 825 }
859 var sex = th.data.isGender; //性别 826 var sex = th.data.isGender; //性别
  827 +
860 if (sex != "1" && sex != "2") { 828 if (sex != "1" && sex != "2") {
861 getApp().my_warnning("请选择性别", 0, th); 829 getApp().my_warnning("请选择性别", 0, th);
862 return false; 830 return false;
@@ -866,32 +834,14 @@ Page({ @@ -866,32 +834,14 @@ Page({
866 getApp().my_warnning("请输入名字", 0, th); 834 getApp().my_warnning("请输入名字", 0, th);
867 return false; 835 return false;
868 } 836 }
869 -  
870 var identity_card = th.data.identity_card; //身份证 837 var identity_card = th.data.identity_card; //身份证
  838 +
871 if (identity_card!=null && identity_card!=undefined && identity_card != "" && !(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(identity_card))) { 839 if (identity_card!=null && identity_card!=undefined && identity_card != "" && !(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(identity_card))) {
872 getApp().my_warnning("身份证号码错误", 0, th); 840 getApp().my_warnning("身份证号码错误", 0, th);
873 return false; 841 return false;
874 - }  
875 - if(th.data.user2.idcard && (!identity_card || identity_card=='') ){  
876 - getApp().my_warnning("身份证不能为空", 0, th);  
877 - return false;  
878 - }  
879 - if(th.data.user2.address && (!address || address=='') ){  
880 - getApp().my_warnning("地址不能为空", 0, th);  
881 - return false;  
882 - }  
883 - if(th.data.user2.pickup_id && (!sto_sele_id || sto_sele_id=='') ){  
884 - getApp().my_warnning("门店不能为空", 0, th);  
885 - return false;  
886 - }  
887 - if(th.data.user2.birthday && (!th.data.datet || th.data.datet =='') ){  
888 - getApp().my_warnning("生日不能为空", 0, th);  
889 - return false;  
890 - }  
891 -  
892 - if(this.data.confirmed) return false;  
893 - this.data.confirmed=1;  
894 - 842 + }
  843 + var address = th.data.address; //地址
  844 + var sto_sele_id = th.data.sto_sele_id;
895 var datas = { 845 var datas = {
896 mobile: phone, //手机号码 846 mobile: phone, //手机号码
897 store_id: r.stoid, 847 store_id: r.stoid,
@@ -904,7 +854,7 @@ Page({ @@ -904,7 +854,7 @@ Page({
904 address: address, //地址 854 address: address, //地址
905 pickup_id: sto_sele_id ,//自提门店 所属门店 855 pickup_id: sto_sele_id ,//自提门店 所属门店
906 islunar:th.data.iscalendar, 856 islunar:th.data.iscalendar,
907 - birthday:th.data.datet 857 + birthday:th.data.datet
908 } 858 }
909 //往上提交美导的ID 859 //往上提交美导的ID
910 if(th.data.fir_guide_id!=th.data.user.staffId){ 860 if(th.data.fir_guide_id!=th.data.user.staffId){
@@ -914,9 +864,6 @@ Page({ @@ -914,9 +864,6 @@ Page({
914 getApp().request.put("/api/weshop/users/updateUserInfo", { 864 getApp().request.put("/api/weshop/users/updateUserInfo", {
915 data: datas, 865 data: datas,
916 success: function(res) { 866 success: function(res) {
917 -  
918 - th.data.confirmed=0;  
919 -  
920 if (res.data.code == 0) { 867 if (res.data.code == 0) {
921 getApp().my_warnning("修改成功", 1, th); 868 getApp().my_warnning("修改成功", 1, th);
922 getApp().goto("/pages/user/index/index"); 869 getApp().goto("/pages/user/index/index");
@@ -964,58 +911,7 @@ Page({ @@ -964,58 +911,7 @@ Page({
964 } 911 }
965 } 912 }
966 }); 913 });
967 - },  
968 -  
969 - // 生日判断  
970 - verifyBirthday(strBirthday) {  
971 - var returnAge;  
972 - var strBirthdayArr = strBirthday.split("-");  
973 - var birthYear = strBirthdayArr[0];  
974 - var birthMonth = strBirthdayArr[1];  
975 - var birthDay = strBirthdayArr[2];  
976 -  
977 - d = new Date();  
978 - var nowYear = d.getFullYear();  
979 - var nowMonth = d.getMonth() + 1;  
980 - var nowDay = d.getDate();  
981 -  
982 - if(nowYear == birthYear){  
983 - returnAge = 0;//同年 则为0岁  
984 - } else {  
985 - var ageDiff = nowYear - birthYear ; //年之差  
986 - if(ageDiff > 0){  
987 - if(nowMonth == birthMonth) {  
988 - var dayDiff = nowDay - birthDay;//日之差  
989 - if(dayDiff < 0)  
990 - {  
991 - returnAge = ageDiff - 1;  
992 - }  
993 - else  
994 - {  
995 - returnAge = ageDiff ;  
996 - }  
997 - }  
998 - else  
999 - {  
1000 - var monthDiff = nowMonth - birthMonth;//月之差  
1001 - if(monthDiff < 0)  
1002 - {  
1003 - returnAge = ageDiff - 1;  
1004 - }  
1005 - else  
1006 - {  
1007 - returnAge = ageDiff ;  
1008 - }  
1009 - }  
1010 - }  
1011 - else  
1012 - {  
1013 - returnAge = -1;//返回-1 表示出生日期输入错误 晚于今天  
1014 - }  
1015 - }  
1016 - return returnAge;//返回周岁年龄  
1017 - },  
1018 - 914 + }
1019 915
1020 916
1021 }); 917 });
1022 \ No newline at end of file 918 \ No newline at end of file
pages/user/userinfo/userinfo.wxml
@@ -108,15 +108,8 @@ @@ -108,15 +108,8 @@
108 </block> 108 </block>
109 <view class="fs26">女</view> 109 <view class="fs26">女</view>
110 </view> 110 </view>
111 -  
112 - <block wx:if="{{reg_info && reg_info.sex_state && reg_info.sex}}">  
113 - <view wx:if="{{!user.sex}}" class="fs28 co-red show_jf_val">+{{reg_info.sex}}  
114 - <text wx:if="{{reg_info.sex_state_type == 0}}">积分</text>  
115 - <text wx:if="{{reg_info.sex_state_type == 1}}">成长值</text>  
116 - </view>  
117 - </block>  
118 </view> 111 </view>
119 - 112 +
120 </view> 113 </view>
121 114
122 <view bindtap="editUserInfo1" class="user-name flex-vertical-between" data-type="sex"> 115 <view bindtap="editUserInfo1" class="user-name flex-vertical-between" data-type="sex">
@@ -150,48 +143,28 @@ @@ -150,48 +143,28 @@
150 </picker> 143 </picker>
151 </block> 144 </block>
152 <block wx:else> 145 <block wx:else>
153 - <view>{{datet==""? user.birthday==""?"":filters.format_time(user.birthday):datet}}</view>  
154 - </block> 146 + <view>{{datet==""? user.birthday==""?"":filters.replace_time2(user.birthday):datet}}</view>
  147 + </block>
  148 +
155 </view> 149 </view>
156 -  
157 -  
158 - <block wx:if="{{reg_info && reg_info.birthday_state && reg_info.birthday}}">  
159 - <view wx:if="{{!user.birthday}}" class="fs28 co-red show_jf_val">+{{reg_info.birthday}}  
160 - <text wx:if="{{reg_info.birthday_type == 0}}">积分</text>  
161 - <text wx:if="{{reg_info.birthday_type == 1}}">成长值</text>  
162 - </view>  
163 - </block>  
164 -  
165 </view> 150 </view>
166 -  
167 - </view> 151 + </view>
168 </view> 152 </view>
169 <view class="Bbottom"> 153 <view class="Bbottom">
170 <view bindtap="editUserInfo1" class="user-name mt flex-vertical-between" data-type="nickname"> 154 <view bindtap="editUserInfo1" class="user-name mt flex-vertical-between" data-type="nickname">
171 <view class="user-name-txt">姓名</view> 155 <view class="user-name-txt">姓名</view>
172 - <view class="flex ai-center">  
173 - <input bindblur="user_name" class="user-txt-right t-r" placeholder="*姓名" value='{{user.vipname}}' />  
174 -  
175 - <block wx:if="{{reg_info && reg_info.name_state && reg_info.name}}">  
176 - <view wx:if="{{!user2.vipname}}" class="fs28 co-red show_jf_val">+{{reg_info.name}}  
177 - <text wx:if="{{reg_info.name_val_type == 0}}">积分</text>  
178 - <text wx:if="{{reg_info.name_val_type == 1}}">成长值</text>  
179 - </view>  
180 - </block>  
181 - </view> 156 + <input bindblur="user_name" class="user-txt-right t-r" placeholder="*姓名" value='{{user.vipname}}' />
182 </view> 157 </view>
183 158
184 <view bindtap="editUserInfo1" class="user-name flex-vertical-between" data-type="nickname"> 159 <view bindtap="editUserInfo1" class="user-name flex-vertical-between" data-type="nickname">
185 <view class="user-name-txt">身份证</view> 160 <view class="user-name-txt">身份证</view>
186 - <view class="flex ai-center">  
187 - <input bindblur="identity_card" class="user-txt-right t-r" value="{{user.idcard}}" placeholder="*身份证"></input>  
188 - <block wx:if="{{reg_info && reg_info.idcard_state && reg_info.idcard}}">  
189 - <view wx:if="{{!user2.idcard}}" class="fs28 co-red show_jf_val" >+{{reg_info.idcard}}  
190 - <text wx:if="{{reg_info.idcard_type == 0}}">积分</text>  
191 - <text wx:if="{{reg_info.idcard_type == 1}}">成长值</text>  
192 - </view>  
193 - </block>  
194 - </view> 161 +
  162 + <input bindblur="identity_card" class="user-txt-right t-r" value="{{user.idcard}}" placeholder="*身份证"></input>
  163 +
  164 +
  165 + <!-- <block wx:else>
  166 + <input class="user-txt-right" bindblur="IdentityIDCard" value="" type="idcard" maxlength="18" placeholder="*身份证" />
  167 + </block> -->
195 </view> 168 </view>
196 <view data-url="/pages/user/Change_phone/Change_phone" bindtap="go_phone" class="user-name flex-vertical-between" data-type="mobile"> 169 <view data-url="/pages/user/Change_phone/Change_phone" bindtap="go_phone" class="user-name flex-vertical-between" data-type="mobile">
197 <view class="user-name-txt">更换手机</view> 170 <view class="user-name-txt">更换手机</view>
@@ -207,16 +180,8 @@ @@ -207,16 +180,8 @@
207 <view>{{user.address}}</view> 180 <view>{{user.address}}</view>
208 </block> 181 </block>
209 <block wx:else> --> 182 <block wx:else> -->
210 - <view class="flex ai-center">  
211 - <input bindblur="address" maxlength="30" value="{{user.address}}" class="user-txt-right" placeholder="*地址" style="text-align:right" />  
212 - <!-- </block> -->  
213 - <block wx:if="{{reg_info && reg_info.address_state && reg_info.address}}">  
214 - <view wx:if="{{!user2.address}}" class="fs28 co-red show_jf_val" >+{{reg_info.address}}  
215 - <text wx:if="{{reg_info.address_type == 0}}">积分</text>  
216 - <text wx:if="{{reg_info.address_type == 1}}">成长值</text>  
217 - </view>  
218 - </block>  
219 - </view> 183 + <input bindblur="address" maxlength="30" value="{{user.address}}" class="user-txt-right" placeholder="*地址" style="text-align:right" />
  184 + <!-- </block> -->
220 </view> 185 </view>
221 186
222 <!-- 选择门店 --> 187 <!-- 选择门店 -->
@@ -225,14 +190,7 @@ @@ -225,14 +190,7 @@
225 <view class="flex-center user-txt-right"> 190 <view class="flex-center user-txt-right">
226 <view class="one-line">{{stoname}}</view> 191 <view class="one-line">{{stoname}}</view>
227 <view class="angle">∟</view> 192 <view class="angle">∟</view>
228 - <block wx:if="{{reg_info && reg_info.pick_state && reg_info.pick}}">  
229 - <view wx:if="{{!user.pickup_id}}" class="fs28 co-red show_jf_val">+{{reg_info.pick}}  
230 - <text wx:if="{{reg_info.pick_type == 0}}">积分</text>  
231 - <text wx:if="{{reg_info.pick_type == 1}}">成长值</text>  
232 - </view>  
233 - </block>  
234 </view> 193 </view>
235 -  
236 </view> 194 </view>
237 195
238 <!-- 美容顾问 --> 196 <!-- 美容顾问 -->
pages/user/userinfo/userinfo.wxss
@@ -662,5 +662,3 @@ input { @@ -662,5 +662,3 @@ input {
662 height: 46rpx; 662 height: 46rpx;
663 line-height: 46rpx; 663 line-height: 46rpx;
664 } 664 }
665 -  
666 -.show_jf_val{ margin-left: 5rpx;}  
pages/user/userqy/userqy.js
@@ -190,7 +190,7 @@ Page({ @@ -190,7 +190,7 @@ Page({
190 190
191 switch (no) { 191 switch (no) {
192 case "01": 192 case "01":
193 - getApp().goto("/pages/user/user_coupon/user_coupon?img=" 193 + getApp().goto("/packageB/pages/user/user_coupon/user_coupon?img="
194 +url+"&gradeId="+th.data.gradeId+"&FormId="+item.Id); 194 +url+"&gradeId="+th.data.gradeId+"&FormId="+item.Id);
195 break; 195 break;
196 case "02": 196 case "02":
utils/filter.wxs
@@ -118,6 +118,15 @@ var filters = { @@ -118,6 +118,15 @@ var filters = {
118 }, 118 },
119 119
120 120
  121 + in_arr: function(index, arr) {
  122 + if(arr.indexOf(index) != -1) {
  123 + return true;
  124 + } else {
  125 + return false;
  126 + };
  127 + },
  128 +
  129 +
121 130
122 131
123 }; 132 };
@@ -131,4 +140,5 @@ module.exports = { @@ -131,4 +140,5 @@ module.exports = {
131 show_gui_ge: filters.show_gui_ge, 140 show_gui_ge: filters.show_gui_ge,
132 show_default: filters.show_default, 141 show_default: filters.show_default,
133 status: filters.status, 142 status: filters.status,
  143 + in_arr: filters.in_arr,
134 } 144 }
135 \ No newline at end of file 145 \ No newline at end of file