Commit 6332c657d15db4a3ff39d72150deb81aba73cf16

Authored by 后端研发-苏明海
2 parents 9207548e 585e0945

Merge branch 'qa' into 'master'

Qa

See merge request !863
Showing 80 changed files with 5781 additions and 1215 deletions
app.json
... ... @@ -157,7 +157,8 @@
157 157 {
158 158 "root": "packageC/",
159 159 "name":"pack3",
160   - "pages": [
  160 + "pages": [
  161 + "pages/group_list/group_list",
161 162 "pages/presell/list/list",
162 163 "pages/presell/cart/cart",
163 164 "pages/presell/cart/cart2",
... ... @@ -165,7 +166,9 @@
165 166 "pages/presell/goodsInfo/goodsInfo",
166 167 "pages/goods/distributionCategoryList/index",
167 168 "pages/goods/goodsList/goodsList",
168   - "pages/payForAnother/payForAnother"
  169 + "pages/payForAnother/payForAnother",
  170 + "pages/luckyGo/luckyGo_list/luckyGo_list",
  171 + "pages/luckyGo/luckyGo_details/luckyGo_details"
169 172 ]
170 173 }
171 174  
... ...
app.wxss
... ... @@ -4,6 +4,9 @@
4 4 .pdt4 {
5 5 padding-top: 4rpx;
6 6 }
  7 +.pdt6 {
  8 + padding-top: 6rpx;
  9 +}
7 10 .pd10 {
8 11 padding: 10rpx;
9 12 }
... ... @@ -37,6 +40,9 @@
37 40 .pdt12 {
38 41 padding-top: 12rpx;
39 42 }
  43 +.pdt16 {
  44 + padding-top: 16rpx;
  45 +}
40 46 .pdb10 {
41 47 padding-bottom: 10rpx;
42 48 }
... ... @@ -49,6 +55,9 @@
49 55 .pdl30 {
50 56 padding-left: 30rpx;
51 57 }
  58 +.pdl60 {
  59 + padding-left: 60rpx;
  60 +}
52 61 .pdr10 {
53 62 padding-right: 10rpx;
54 63 }
... ... @@ -137,9 +146,7 @@
137 146 color: #c7c7c7;
138 147 }
139 148  
140   -.c-7b {
141   - color: #7b7b7b;
142   -}
  149 +
143 150  
144 151 .c-d {
145 152 color: #ddd;
... ... @@ -708,9 +715,9 @@ background: #ffe3e2;
708 715 /* 图标字体(ty) */
709 716 @font-face {
710 717 font-family: 'iconfont'; /* Project id 2054717 */
711   - src: url('//at.alicdn.com/t/font_2054717_hsngh9ootwv.woff2?t=1632559813006') format('woff2'),
712   - url('//at.alicdn.com/t/font_2054717_hsngh9ootwv.woff?t=1632559813006') format('woff'),
713   - url('//at.alicdn.com/t/font_2054717_hsngh9ootwv.ttf?t=1632559813006') format('truetype');
  718 + src: url('//at.alicdn.com/t/font_2054717_kwrwze5y6c.woff2?t=1635844276600') format('woff2'),
  719 + url('//at.alicdn.com/t/font_2054717_kwrwze5y6c.woff?t=1635844276600') format('woff'),
  720 + url('//at.alicdn.com/t/font_2054717_kwrwze5y6c.ttf?t=1635844276600') format('truetype');
714 721 }
715 722  
716 723 .iconfont {
... ... @@ -721,6 +728,19 @@ background: #ffe3e2;
721 728 -moz-osx-font-smoothing: grayscale;
722 729 }
723 730  
  731 +.icon-luck:before {
  732 + content: "\e621";
  733 +}
  734 +
  735 +.icon-shizhong:before {
  736 + content: "\e74f";
  737 +}
  738 +
  739 +.icon-dingwei:before {
  740 + content: "\e6b4";
  741 +}
  742 +
  743 +
724 744 .icon-fenlei:before {
725 745 content: "\e628";
726 746 }
... ...
components/diy_goodsGroup/diy_goodsGroup.js
... ... @@ -151,6 +151,9 @@ Component({
151 151 index = 0,
152 152 gdata = [];
153 153  
  154 + var user_id=getApp().globalData.user_id;
  155 + if(!user_id) user_id=0;
  156 +
154 157 //--初始化卡类--
155 158 th.card_init();
156 159 var os=getApp().globalData.setting;
... ... @@ -162,8 +165,10 @@ Component({
162 165 for (var i = 0; i < g_id.length; i++) {
163 166 str += g_id[i].goodsid + ",";
164 167 }
165   - str=str.substring(0, str.length - 1);
  168 + str=str.substring(0, str.length - 1);
  169 +
166 170 await app.request.get("/api/weshop/goods/getgoodslistOrdby?store_id=" + os.stoid + "&goodsidlist=" + str, {
  171 + data:{user_id:user_id},
167 172 isShowLoading:false,
168 173 success: function(res) {
169 174 th.data.loading=0;
... ... @@ -218,6 +223,10 @@ Component({
218 223 if(th.data.is_hot) r_data.is_hot=th.data.is_hot;
219 224 if(th.data.is_new) r_data.is_new=th.data.is_new;
220 225  
  226 + var user_id=getApp().globalData.user_id;
  227 + if(!user_id) user_id=0;
  228 + r_data.user_id=user_id;
  229 +
221 230 await app.request.promiseGet("/api/weshop/goods/page", {
222 231 data:r_data
223 232 }).then(res => {
... ... @@ -245,6 +254,7 @@ Component({
245 254 isonsale: 1,
246 255 orderField: "sort",
247 256 orderType: 'asc',
  257 + user_id:user_id
248 258 }
249 259 }).then(res => {
250 260 th.data.loading=0;
... ... @@ -433,7 +443,9 @@ Component({
433 443 item.cardprice1 = val.cardprice1;
434 444 item.cardprice2 = val.cardprice2;
435 445 item.cardprice3 = val.cardprice3;
436   -
  446 + item.prom_type = val.prom_type;
  447 + item.prom_id = val.prom_id;
  448 +
437 449 if(val.prom_price) item.prom_price = val.prom_price;
438 450 if(val.prom_integral) item.prom_integral = val.prom_integral;
439 451  
... ...
components/diy_goodsGroup/diy_goodsGroup.wxml
... ... @@ -15,12 +15,20 @@
15 15 <view class="zs_goods_wai" wx:if='{{object.column==1}}'>
16 16 <block wx:for="{{goods_array}}" >
17 17 <view class='zs_goods {{g_filter.get_border_type(object.big_order_type)}}'>
18   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}" class="s1_gk_a1">
  18 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.prom_id}}&&prom_type={{item.prom_type}}" class="s1_gk_a1">
19 19 <view class='zs_top rel'>
20   - <image class='zs_t_img' src="{{item.goods_img}}"
21   - data-errorimg="goods_array[{{index}}].goods_img"
22   - binderror="bind_bnerr3" lazy-load="true"
23   - ></image>
  20 +
  21 + <block wx:if="{{object.big_order_type==3}}">
  22 + <view style="position: relative; width: 100%; height: 100%">
  23 + <image class='zs_t_img' src="{{object.pic_back}}" data-errorimg="object.pic_back" lazy-load="true"
  24 + binderror="bind_bnerr3"></image>
  25 + <image class="n_box" style="top: {{object.top}}%;left:{{object.left}}%;width: {{object.width}}%;height: {{object.width}}%" src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true" binderror="bind_bnerr3"></image>
  26 + </view>
  27 + </block>
  28 + <block wx:else>
  29 + <image class='zs_t_img' src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img"
  30 + binderror="bind_bnerr3" lazy-load="true" ></image>
  31 + </block>
24 32  
25 33 <block wx:if="{{object.goodicon==3}}">
26 34 <image class='{{g_filter.get_class(object.column,object.position)}}' src='{{object.customicon}}'></image>
... ... @@ -161,13 +169,25 @@
161 169 <!--2个一列-->
162 170 <block wx:if="{{object.column==2}}">
163 171 <block wx:for="{{goods_array}}" >
164   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}" class="s1_gk_a1">
  172 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.prom_id}}&&prom_type={{item.prom_type}}" class="s1_gk_a1">
165 173 <view class="zs_goods_wai_ban {{g_filter.get_border_type(object.big_order_type)}}">
166 174 <view class="zs_goods_ban">
167 175 <view class='zs_goods_2l'>
168 176 <view class='zs_top_2l rel'>
169   - <image class='zs_t_img_2l' src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
  177 +
  178 + <block wx:if="{{object.big_order_type==3}}">
  179 + <view style="position: relative; width: 100%; height: 100%">
  180 + <image class='zs_t_img_2l' src="{{object.pic_back}}" data-errorimg="object.pic_back" lazy-load="true"
  181 + binderror="bind_bnerr3"></image>
  182 + <image class="n_box" style="top: {{object.top}}%;left:{{object.left}}%;width: {{object.width}}%;height: {{object.width}}%" src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
  183 + binderror="bind_bnerr3"></image>
  184 + </view>
  185 + </block>
  186 + <block wx:else>
  187 + <image class='zs_t_img_2l' src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
170 188 binderror="bind_bnerr3"></image>
  189 + </block>
  190 +
171 191 <block wx:if="{{object.goodicon==3}}">
172 192 <image class='{{g_filter.get_class(object.column,object.position)}}'
173 193 src='{{object.customicon}}'></image>
... ... @@ -308,13 +328,24 @@
308 328 <block wx:if='{{object.column==3}}'>
309 329 <view class="zwp_3">
310 330 <block wx:for="{{goods_array}}" >
311   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}" class="s1_gk_a1">
  331 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.prom_id}}&&prom_type={{item.prom_type}}" class="s1_gk_a1">
312 332 <view class="zs_goods_wai_san" >
313 333 <view class="zs_goods_san">
314 334 <view class='zs_goods_3l {{g_filter.get_border_type(object.big_order_type)}}'>
315   - <view class='zs_top_3l rel'>
316   - <image class='zs_t_img_3l' src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
  335 + <view class='zs_top_3l rel'>
  336 + <block wx:if="{{object.big_order_type==3}}">
  337 + <view style="position: relative; width: 100%; height: 100%">
  338 + <image class='zs_t_img_3l' src="{{object.pic_back}}" data-errorimg="object.pic_back" lazy-load="true"
  339 + binderror="bind_bnerr3"></image>
  340 + <image class="n_box" style="top: {{object.top}}%;left:{{object.left}}%;width: {{object.width}}%;height: {{object.width}}%" src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
  341 + binderror="bind_bnerr3"></image>
  342 + </view>
  343 + </block>
  344 + <block wx:else>
  345 + <image class='zs_t_img_3l' src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
317 346 binderror="bind_bnerr3"></image>
  347 + </block>
  348 +
318 349 <block wx:if="{{object.goodicon==3}}">
319 350 <image class='{{g_filter.get_class(object.column,object.position)}}'
320 351 src='{{object.customicon}}'></image>
... ... @@ -454,12 +485,21 @@
454 485 <!-- 列表显示 -->
455 486 <view class="zs_goods_xiao_wai" wx:if='{{object.column==4}}'>
456 487 <block wx:for="{{goods_array}}" >
457   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}" class="s1_gk_a1">
  488 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.prom_id}}&&prom_type={{item.prom_type}}" class="s1_gk_a1">
458 489 <view class="{{object.noboder==0?'zs_goods_xiao_bottom':'zs_goods_xiao'}}" >
459 490 <view class='zs_top_x'>
460   - <!--<image class='zs_t_img_x'></image>-->
461   - <block>
462   - <image class='zs_t_img_x' src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
  491 + <block wx:if="{{object.big_order_type==3}}">
  492 + <view style="position: relative; width: 100%; height: 100%">
  493 + <image class='zs_t_img_x' src="{{object.pic_back}}" data-errorimg="object.pic_back" lazy-load="true"
  494 + binderror="bind_bnerr3"></image>
  495 + <image class="n_box" style="top: {{object.top}}%;left:{{object.left}}%;width: {{object.width}}%;height: {{object.width}}%" src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
  496 + binderror="bind_bnerr3"></image>
  497 + </view>
  498 + </block>
  499 +
  500 + <block wx:else>
  501 + <image class="zs_t_img_x {{object.big_order_type==0?'zj':''}}{{object.big_order_type==1?'yj':''}}"
  502 + src="{{item.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true"
463 503 binderror="bind_bnerr3" mode="widthFix" style='max-height:290rpx'></image>
464 504 </block>
465 505  
... ... @@ -587,12 +627,8 @@
587 627 <view class='wz_red'>¥{{item.shop_price}}</view>
588 628 <view class='del'>¥{{item.market_price}}</view>
589 629 </block>
590   -
591   -
  630 +
592 631 </block>
593   -
594   -
595   -
596 632 </view>
597 633 <view class='zs_wz5_x' wx:if="{{object.goodsnum}}">销量:{{item.sales_sum}}件</view>
598 634 </view>
... ... @@ -622,17 +658,30 @@
622 658  
623 659  
624 660 <!--商品展示-->
625   - <swiper class="s_prom" indicator-active-color='red' indicator-dots="false" wx:if="{{object.column==5}}" style="height: {{swiper_hei}}rpx;">
  661 +<swiper class="s_prom" indicator-active-color='red' indicator-dots="false" wx:if="{{object.column==5}}" style="height: {{swiper_hei}}rpx;">
626 662 <view class="sp">
627 663 <swiper-item class="s_it" wx:for="{{goods_array}}">
628 664 <block wx:for="{{item}}" wx:for-item="aitem" wx:for-index="aind">
629   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}" style="width: 32%" >
630   - <view class='one' style="margin-left: 10rpx">
  665 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}&prom_id={{aitem.prom_id}}&&prom_type={{aitem.prom_type}}" style="width: 32%" >
  666 + <view class="one {{object.big_order_type==0?'zj':''}}{{object.big_order_type==1?'yj':''}} " style="margin-left: 10rpx">
631 667 <view class='sp_top'>
632 668 <view class='s_img' style="position: relative; width: 100%">
633   - <image src="{{aitem.goods_img}}" data-errorimg="goods_array[{{index}}][{{aind}}].goods_img"
  669 +
  670 + <block wx:if="{{object.big_order_type==3}}">
  671 + <view style="position: relative; width: 100%; height: 100%">
  672 + <image src="{{object.pic_back}}" data-errorimg="object.pic_back" lazy-load="true"
  673 + binderror="bind_bnerr3"></image>
  674 +
  675 + <image class="n_box" style="top: {{object.top}}%;left:{{object.left}}%;width: {{object.width}}%;height: {{object.width}}%" src="{{aitem.goods_img}}" data-errorimg="goods_array[{{index}}].goods_img" lazy-load="true" binderror="bind_bnerr3"></image>
  676 + </view>
  677 + </block>
  678 +
  679 + <block wx:else>
  680 + <image src="{{aitem.goods_img}}" data-errorimg="goods_array[{{index}}][{{aind}}].goods_img"
634 681 binderror="bind_bnerr3" lazy-load="true" style="width: 100%"></image>
635   -
  682 + </block>
  683 +
  684 +
636 685 <block wx:if="{{object.goodicon==3}}">
637 686 <image class='{{g_filter.get_class(object.column,object.position)}}'
638 687 src='{{object.customicon}}'></image>
... ...
components/diy_goodsGroup/diy_goodsGroup.wxss
... ... @@ -154,6 +154,10 @@
154 154 margin-left: 20rpx;
155 155 }
156 156  
  157 +.zs_t_img_x.zj{ border: 1rpx solid #eee;}
  158 +.zs_t_img_x.yj{ border: 1rpx solid #eee;border-radius: 18rpx;}
  159 +
  160 +
157 161 .zs_center_x {
158 162 width: 100%;
159 163 min-height: 200rpx;
... ... @@ -727,8 +731,13 @@ swiper {
727 731  
728 732 .one {
729 733 margin-left: 14rpx;
  734 + overflow: hidden;
730 735 }
731 736  
  737 +.one.zj{ border: 1rpx solid #eee;}
  738 +.one.yj{ border: 1rpx solid #eee; border-radius: 18rpx;}
  739 +
  740 +
732 741 .sp .sp_top .s_top1_kill {
733 742 position: absolute;
734 743 background-color: #c4182e;
... ... @@ -814,5 +823,6 @@ top: 10rpx;
814 823 position: absolute;
815 824 right: 0rpx;
816 825 bottom: 10rpx;
  826 +}
817 827  
818   -}
819 828 \ No newline at end of file
  829 +.n_box{ position: absolute !important;z-index: 10}
820 830 \ No newline at end of file
... ...
components/diy_seckill/diy_seckill.js
... ... @@ -40,21 +40,22 @@ Component({
40 40 pageLifetimes: {
41 41 //要处理一下,游客登录后的界面的变化,主要还该是改变会员
42 42 show: function () {
43   -
44   - var th = this;
45   - if (this.data.goods_array.length > 0) {
46   - th.data.timer = setInterval(function () {
47   - th.countDown2(th);
48   - }, 1000);
49   - }
  43 + //会员身份变化
  44 + var th = this;
  45 + var g_id = this.data.object;
  46 + this.init(g_id);
  47 + setTimeout(function () {
  48 + if (th.data.goods_array && th.data.goods_array.length > 0) {
  49 + th.data.timer = setInterval(function () {
  50 + th.countDown2(th);
  51 + }, 1000);
  52 + }
  53 + },600)
50 54 }
51 55 },
52 56  
53 57 ready: function () {
54   - console.log("ready");
55   - // var g_id = this.data.object.data;
56 58 var g_id = this.data.object;
57   - // console.log(g_id);
58 59 this.init(g_id);
59 60 },
60 61 detached() {
... ... @@ -75,9 +76,12 @@ Component({
75 76 })
76 77 goodsidlist = ut.sub_last(goodsidlist);
77 78  
  79 + var user_id=getApp().globalData.user_id;
  80 + if(!user_id){ user_id=0;}
  81 +
78 82 //--调用接口,读取秒杀--
79 83 app.request.promiseGet("/api/ms/flash_sale/getGoodsList?store_id="
80   - + os.stoid + "&goodsidlist=" + goodsidlist, {}).then(res => {
  84 + + os.stoid + "&goodsidlist=" + goodsidlist+"&user_id="+user_id, {}).then(res => {
81 85 console.log(res);
82 86 //如果秒杀的数组为空的时候
83 87 var goodslist = res.data.data;
... ... @@ -94,9 +98,11 @@ Component({
94 98  
95 99 //当是默认的情况
96 100 no_gid_set() {
97   - console.log(5623);
  101 + var user_id=getApp().globalData.user_id;
  102 + if(!user_id){ user_id=0;}
  103 + var req={ store_id: os.stoid, is_end: 0, is_show: 1, timetype: 2,user_id:user_id};
98 104 getApp().request.promiseGet("/api/ms/flash_sale/spikepage?page=1&pageSize=9",
99   - { isShowLoading: 1, data: { store_id: os.stoid, is_end: 0, is_show: 1, timetype: 2 } }
  105 + { isShowLoading: 1, data:req }
100 106 ).then(res => {
101 107 if (res.data.code == 0 && res.data.data.pageData && res.data.data.pageData.length > 0) {
102 108 var goodsidlist = res.data.data.pageData;
... ... @@ -115,8 +121,8 @@ Component({
115 121 g_id.forEach(function (val, ind) {
116 122 goodslist.forEach(function (vy, indy) {
117 123 if (val.goodsid == vy.goods_id) {
  124 + if(!vy.id) vy.id=vy.prom_id;
118 125 all_array.push(vy);
119   - //th.setData({goods_array:arr});
120 126 }
121 127 })
122 128 })
... ... @@ -129,6 +135,11 @@ Component({
129 135 all_array = goodslist;
130 136 }
131 137  
  138 + for(let i in all_array){
  139 + let item=all_array[i];
  140 + if(item.user_price) item.price=item.user_price;
  141 + }
  142 +
132 143 var arr = new Array();
133 144 //--三个三个一组---
134 145 for (var i = 0; i < all_array.length; i += 3) {
... ...
components/diy_seckill/diy_seckill.wxml
... ... @@ -15,29 +15,29 @@
15 15 <view class='sp' wx:if="{{object.style==1}}">
16 16 <swiper-item class="s_it" wx:for="{{goods_array}}">
17 17 <block wx:for="{{item}}" wx:for-item="aitem" wx:for-index="aind">
18   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}" class="s1_gk_a1">
  18 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}&prom_type=1&prom_id={{aitem.id}}" class="s1_gk_a1">
19 19 <view class='one'>
20 20 <view class='sp_top'>
21 21 <view class='po'></view>
22 22 <block wx:if="{{aitem.start_time>newTime}}">
23   - <view class="rob">
  23 + <view class="rob" style="justify-content: flex-start">
24 24 <span class='s_top_kill' style="background-color: #ffe718;color: #3c3b31;font-weight: bold">即将开始</span>
25 25 </view>
26 26 </block>
27 27  
28 28 <block wx:if="{{aitem.end_time<=newTime}}">
29   - <view class="rob">
  29 + <view class="rob" style="justify-content: flex-start">
30 30 <span class='s_top_kill gray'>活动已结束</span>
31 31 </view>
32 32 </block>
33 33 <block wx:else>
34 34 <block wx:if="{{aitem.start_time<newTime && aitem.goods_num>aitem.buy_num}}">
35   - <view class="rob">
  35 + <view class="rob" style="justify-content: flex-start">
36 36 <span class='s_top_kill'>火热进行</span>
37 37 </view>
38 38 </block>
39 39 <block wx:if="{{aitem.goods_num<=aitem.buy_num}}">
40   - <view class="rob">
  40 + <view class="rob" style="justify-content: flex-start">
41 41 <span class='s_top_kill gray'>已抢光</span>
42 42 </view>
43 43 </block>
... ... @@ -62,7 +62,7 @@
62 62 </view>
63 63  
64 64 <view class='sp_wz'>
65   - <view class='sp_wzi'>{{aitem.title}}</view>
  65 + <view class='sp_wzi'>{{aitem.goods_name}}</view>
66 66 <view class='sp_jg'>¥{{aitem.price}}</view>
67 67 <view class='sp_jgx'>¥{{aitem.market_price}}</view>
68 68 </view>
... ... @@ -77,7 +77,7 @@
77 77 <view class="sp2" wx:if="{{object.style==2}}">
78 78 <block wx:for="{{goods_array}}">
79 79 <block wx:for="{{item}}" wx:for-item="aitem" wx:for-index="aind">
80   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}" class="s1_gk_a1">
  80 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}&prom_type=1&prom_id={{aitem.id}}" class="s1_gk_a1">
81 81 <view class='one1'>
82 82  
83 83 <view class="o1_img">
... ...
components/diy_seckill/diy_seckill.wxss
... ... @@ -77,13 +77,12 @@ swiper {
77 77 font-size: 24rpx;
78 78 height: 38rpx;
79 79 line-height: 38rpx;
80   - left: 6rpx;
81 80 padding: 4rpx 10rpx;
82 81 border-radius: 10rpx;
83 82 z-index: 999;
84 83 position: relative;
85   - top: -6rpx;
86   - width: 210rpx;
  84 + top: 1rpx;
  85 + width: 110rpx;
87 86 color: #fff;
88 87 text-align: center;
89 88 }
... ...
components/diy_service/diy_service.js
... ... @@ -36,8 +36,8 @@ Component({
36 36 return false;
37 37 },
38 38  
39   - //---------联系客服------------
40   - contactService: function() {
  39 + //---------联系客服------------
  40 + contactService: function() {
41 41 getApp().getConfig(function(t) {
42 42 if (t.store_tel == undefined) {
43 43 getApp().request.get("/api/weshop/store/get/" + os.stoid, {
... ... @@ -57,5 +57,16 @@ Component({
57 57 }
58 58 });
59 59 },
  60 +
  61 + //---------联系微信客服------------
  62 + con_weixin:function () {
  63 + var url=this.data.sys_switch.weapp_customertype_url;
  64 + var id=this.data.sys_switch.weapp_customertype_appid;
  65 + wx.openCustomerServiceChat({
  66 + extInfo: {url: url},
  67 + corpId: id,
  68 + success(res) {}
  69 + })
  70 + }
60 71 }
61 72 })
... ...
components/diy_service/diy_service.wxml
1 1 <!--有在线客户 和 打电话-->
2   -<block wx:if="{{sys_switch.weapp_customertype}}">
  2 +<block wx:if="{{sys_switch.weapp_customertype==1}}">
3 3 <!-- 判断是不是有登录 -->
4 4 <view wx:if="{{userInfo}}" class="custom-service" bindtap="go_user" >
5 5 <view style="text-align: center;">
... ... @@ -14,7 +14,16 @@
14 14 <view class="s_title" wx:if="{{object.title!=''}}">{{object.title}}</view>
15 15 </view>
16 16 </button>
17   -</block>
  17 +</block>
  18 +
  19 +<block wx:elif="{{sys_switch.weapp_customertype==2}}">
  20 + <view class="custom-service cart-ico new_split" bindtap="con_weixin">
  21 + <view style="text-align: center;">
  22 + <image class="cs-img" src="{{object.img}}"></image>
  23 + <view class="s_title" wx:if="{{object.title!=''}}">{{object.title}}</view>
  24 + </view>
  25 + </view>
  26 +</block>
18 27  
19 28 <block wx:else>
20 29 <view class="custom-service cart-ico new_split" bindtap="contactService">
... ...
components/goods_list/goods_list.js
... ... @@ -26,6 +26,12 @@ Component({
26 26 //要处理一下,游客登录后的界面的变化,主要还该是改变会员
27 27 show: function () {
28 28 this.init();
  29 + if(getApp().globalData.login_back==1){
  30 + getApp().globalData.login_back==0;
  31 + this.data.curPage=1;
  32 + this.setData({ recommend: [] });
  33 + this.get_list();
  34 + }
29 35 }
30 36 },
31 37  
... ... @@ -98,6 +104,9 @@ Component({
98 104 get_list: function () {
99 105 var that = this;
100 106 if (that.data.is_no_more == 0) return false;
  107 + var user_id=getApp().globalData.user_id;
  108 + if(!user_id) user_id=0;
  109 +
101 110 var curPage = that.data.curPage;
102 111 getApp().request.get('/api/weshop/goods/page?page', {
103 112 isShowLoading: false,
... ... @@ -111,6 +120,7 @@ Component({
111 120 pageSize: 6,
112 121 orderField: "sort",
113 122 orderType: 'asc',
  123 + user_id: user_id,
114 124 },
115 125 success: function (res) {
116 126 var data = res.data;
... ... @@ -124,6 +134,13 @@ Component({
124 134 }
125 135 //加载完成
126 136 if (data.data.pageData) {
  137 +
  138 + for(let i in data.data.pageData){
  139 + let item=data.data.pageData[i];
  140 + if(item.user_price)
  141 + item.prom_price=item.user_price;
  142 + }
  143 +
127 144 that.setData({
128 145 load_complete: 1
129 146 });
... ...
components/goods_list/goods_list.wxml
... ... @@ -4,15 +4,15 @@
4 4 <view class="collects">
5 5 <view class="hang ">
6 6 <!-- 商品详情 -->
7   - <view class="collect ib" wx:for="{{recommend}}" bindtap="go_url" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&title={{item.goods_name}}">
8   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&title={{item.goods_name}}" hover-class="none">
  7 + <view class="collect ib" wx:for="{{recommend}}" bindtap="go_url" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&title={{item.goods_name}}&prom_type={{item.prom_type}}&prom_id={{item.prom_id}}">
  8 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&title={{item.goods_name}}&prom_type={{item.prom_type}}&prom_id={{item.prom_id}}" hover-class="none">
9 9 <!-- 商品图⽚ -->
10 10 <image class="sp" src="{{url+item.original_img}}" mode="aspectFill" binderror="bind_bnerr_xc" data-url="{{url+item.original_img}}" data-errorimg="recommend[{{index}}].original_img"></image>
11 11 <view class="bottom">
12 12 <!-- 商品名称 -->
13 13 <view class="goods_name ellipsis-2 fs28">{{item.goods_name}}</view>
14 14 <!-- 判断是否有活动价 -->
15   - <block wx:if="{{item.prom_price>0 || item.prom_integral>0}}">
  15 + <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_type!=2 && item.prom_id>0}}">
16 16 <view class="pdt10">
17 17 <view class="money flex xc-wc" >
18 18 <text wx:if="{{item.prom_integral}}"><text class="fs35" style="font-weight: bold;">{{item.prom_integral}}</text>积分</text>
... ...
components/userqy_pop_up/userqy_pop_up.js
... ... @@ -28,9 +28,4 @@ Component({
28 28 },
29 29  
30 30 },
31   -
32   -
33   -
34   -
35   -
36 31 })
37 32 \ No newline at end of file
... ...
packageA/pages/activity_share/activity_share.js
... ... @@ -167,10 +167,22 @@ Page({
167 167 if(item){
168 168 var price = item.price;
169 169 if(!price) price=item.shop_price;
170   -
  170 + switch(th.data.currentIndex){
  171 + case 0: item.prom_type=1;break;
  172 + case 1: item.prom_type=6;break;
  173 + case 2:
  174 + if(th.data.currentIndex2==1) item.prom_type = 5;
  175 + if(th.data.currentIndex2==2) {
  176 + item.prom_type = 3;
  177 + item.id=item.prom_id;
  178 + }
  179 + break;
  180 + }
  181 + item.prom_id=item.id;
  182 +
171 183 var title= item.goods_name;
172 184 var img=this.data.url+item.original_img;
173   - var url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + item.goods_id;
  185 + var url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + item.goods_id+"&prom_type="+item.prom_type+"&prom_id="+item.prom_id;
174 186 if(getApp().globalData.user_id){
175 187 url+="&first_leader="+getApp().globalData.user_id;
176 188 }
... ... @@ -362,6 +374,8 @@ Page({
362 374 page:this.data.currentPage,
363 375 store_id:oo.stoid,
364 376 }
  377 + var user_id=getApp().globalData.user_id;
  378 + if(!user_id) user_id=0;
365 379  
366 380 switch(th.data.currentIndex){
367 381 case 0: //--秒杀--
... ... @@ -373,7 +387,8 @@ Page({
373 387 }
374 388 req_data.is_show=1;
375 389 req_data.is_end=0;
376   -
  390 + req_data.user_id=user_id;
  391 +
377 392 if(th.data.key_str && th.data.key_str.trim()){
378 393 req_data.key_str=th.data.key_str.trim();
379 394 }
... ... @@ -427,7 +442,15 @@ Page({
427 442 th.data.is_load=0;
428 443 if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){
429 444 th.data.currentPage++;
430   - var data=res.data.data.pageData;
  445 + var data=res.data.data.pageData;
  446 +
  447 + if(th.data.currentIndex==0){
  448 + for(let i in data){
  449 + let item=data[i];
  450 + if(item.user_price) item.price=item.price;
  451 + }
  452 + }
  453 +
431 454 if(res.data.data.page*10>res.data.data.total){th.setData({is_no_more:1});}
432 455 var list=th.data.list;
433 456 list=list.concat(data);
... ... @@ -536,7 +559,26 @@ Page({
536 559  
537 560 var app = getApp();
538 561 var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
  562 +
  563 + var prom_type=0;
  564 + var prom_id=th.data.share_good.id;
  565 + switch(th.data.currentIndex){
  566 + case 0: prom_type=1;break;
  567 + case 1: prom_type=6;break;
  568 + case 2:
  569 + if(th.data.currentIndex2==1) prom_type = 5;
  570 + if(th.data.currentIndex2==2){
  571 + prom_type = 3;
  572 + prom_id=th.data.share_good.prom_id;
  573 + }
  574 + break;
  575 + }
  576 +
  577 +
  578 +
539 579 var scene = th.data.share_good.goods_id+"";
  580 + scene+="."+prom_type+"."+prom_id;
  581 +
540 582 var user_id=getApp().globalData.user_id?getApp().globalData.user_id:0;
541 583 if(user_id>0){
542 584 scene+="_"+user_id;
... ... @@ -1118,14 +1160,27 @@ Page({
1118 1160 this.data.currentPage=1;
1119 1161 this.requestGoodsList();
1120 1162 },
1121   -
1122   -
1123   - go_goods:function(e){
1124   - var index=e.currentTarget.dataset.index;
1125   - var item=this.data.list[index];
1126   - var url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + item.goods_id;
1127   - getApp().goto(url);
1128   - },
  1163 +
  1164 +
  1165 + go_goods: function (e) {
  1166 + var index = e.currentTarget.dataset.index;
  1167 + var item = this.data.list[index];
  1168 + var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + item.goods_id;
  1169 +
  1170 + switch(this.data.currentIndex){
  1171 + case 0: item.prom_type = 1;break;
  1172 + case 1: item.prom_type = 6;break;
  1173 + case 2:
  1174 + if(th.data.currentIndex2==1) item.prom_type = 5;
  1175 + if(th.data.currentIndex2==2) item.prom_type = 3;
  1176 + break;
  1177 + }
  1178 +
  1179 + item.prom_id = item.id;
  1180 + url+="&prom_type="+item.prom_type+"&prom_id="+item.prom_id
  1181 +
  1182 + getApp().goto(url);
  1183 + },
1129 1184  
1130 1185 go_coll_good:function(e){
1131 1186 var gid=e.currentTarget.dataset.gid;
... ...
packageA/pages/chongzhi/g_filter.wxs
1 1 var is_acting = function(endtime){
2   - //判断结束时间减去当前时间 ,如果当前时间大于0则为True
3   - if(endtime=='') return true;
4   - endtime = endtime.substring(0, 19);
5   - var reg = getRegExp("-", "g");
6   - endtime = endtime.replace(reg, '/');
7   - var bijiao = getDate(endtime) - getDate();
8   - return bijiao > 0 ? true : false;
  2 + //判断结束时间减去当前时间 ,如果当前时间大于0则为True
  3 + endtime=endtime+" 23:59:59";
  4 + if(endtime=='') return true;
  5 + endtime = endtime.substring(0, 19);
  6 + var reg = getRegExp("-", "g");
  7 + endtime = endtime.replace(reg, '/');
  8 + var bijiao = getDate(endtime) - getDate();
  9 + return bijiao >= 0 ? true : false;
9 10 }
10 11 module.exports = {
11 12 is_acting:is_acting
... ...
packageA/pages/distribution/goods/goods.wxml
... ... @@ -75,13 +75,13 @@
75 75  
76 76 </label> -->
77 77 <checkbox value="{{item.goods_id}}" checked="{{item.checked}}" wx:if="{{!(options.index == 1 && currentTabIndex ==1)}}"/>
78   - <view class="flex pdl10" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}">
  78 + <view class="flex pdl10" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_type={{item.prom_type}}&prom_id={{item.prom_id}}">
79 79 <view class="pdr20"><image class="img" src="{{imghost + (item.original_img ? item.original_img : default_img)}}" lazy-load/></view>
80 80 <view class="flex fdc jc_sb">
81 81 <view class="ellipsis-2">{{item.goods_name}}</view>
82 82 <view>
83 83 <!-- 判断是否有活动价 -->
84   - <block wx:if="{{item.prom_price>0 || item.prom_integral>0}}">
  84 + <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_type!=2 && item.prom_id>0}}">
85 85 <view class="flex xc-wc ai-center" >
86 86 <text wx:if="{{item.prom_integral}}"><text class="fs30">{{item.prom_integral}}</text>积分</text>
87 87 <text wx:if="{{item.prom_integral && item.prom_price}}">+</text>
... ... @@ -214,7 +214,7 @@
214 214 </checkbox-group>
215 215  
216 216 <checkbox-group class="fs26 flex pd16 wrap" catchchange="checkboxChange" wx:else>
217   - <view class="item2 bg-white" wx:for="{{list.pageData}}" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}">
  217 + <view class="item2 bg-white" wx:for="{{list.pageData}}" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_type={{item.prom_type}}&prom_id={{item.prom_id}}">
218 218 <image class="img2" src="{{imghost + (item.original_img ? item.original_img : default_img)}}" mode="aspectFit" lazy-load/>
219 219 <view class="pd20 fs26 flex jc_sb fdc f1">
220 220 <view class="ellipsis-2">{{item.goods_name}}</view>
... ... @@ -222,7 +222,7 @@
222 222 <checkbox value="{{item.goods_id}}" checked="{{item.checked}}" data-name="checkbox" wx:if="{{!(options.index == 1 && currentTabIndex ==1)}}"/>
223 223 <view>
224 224 <!-- 判断是否有活动价 -->
225   - <block wx:if="{{item.prom_price>0 || item.prom_integral>0}}">
  225 + <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_type!=2 && item.prom_id>0 }}">
226 226 <view class="flex xc-wc ai-center" >
227 227 <text wx:if="{{item.prom_integral}}"><text class="fs30">{{item.prom_integral}}</text>积分</text>
228 228 <text wx:if="{{item.prom_integral && item.prom_price}}">+</text>
... ...
packageA/pages/distribution/shop/shop.wxml
... ... @@ -69,14 +69,14 @@
69 69 <view class="content">
70 70 <view class="fs26" wx:if="{{isShowRow}}">
71 71 <view class="item bg-white flex ai-center pd20" wx:for="{{list}}">
72   - <view class="flex pdl10" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}">
  72 + <view class="flex pdl10" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_type={{item.prom_type}}&prom_id={{item.prom_id}}">
73 73 <view class="img-container pdr20" data-txt="已售:{{item.sales_sum}}">
74 74 <image class="img" src="{{imghost + (item.original_img ? item.original_img : default_img)}}" lazy-load mode="aspectFit" />
75 75 </view>
76 76 <view class="flex fdc jc_sb">
77 77 <view class="ellipsis-2 h68 mgb20">{{item.goods_name}}</view>
78 78 <!-- 判断是否有活动价 -->
79   - <block wx:if="{{item.prom_price>0 || item.prom_integral>0}}">
  79 + <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_type!=2 && item.prom_id>0}}">
80 80 <view class="flex xc-wc pdt20">
81 81 <text wx:if="{{item.prom_integral}}">
82 82 <text class="fs30">{{item.prom_integral}}</text>
... ... @@ -213,14 +213,14 @@
213 213 </view>
214 214 </view>
215 215 <view class="fs26 flex pd20 wrap" wx:else>
216   - <view class="item2 bg-white" wx:for="{{list}}" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}">
  216 + <view class="item2 bg-white" wx:for="{{list}}" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_type={{item.prom_type}}&prom_id={{item.prom_id}}">
217 217 <view class="img-container" data-txt="已售:{{item.sales_sum}}">
218 218 <image class="img2" src="{{imghost + (item.original_img ? item.original_img : default_img)}}" lazy-load="true" />
219 219 </view>
220 220 <view class="pd20 fs26">
221 221 <view class="ellipsis-2 h68 mgb20">{{item.goods_name}}</view>
222 222 <!-- 判断是否有活动价 -->
223   - <block wx:if="{{item.prom_price>0 || item.prom_integral>0}}">
  223 + <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_type!=2 && item.prom_id>0}}">
224 224 <view class="flex xc-wc">
225 225 <text wx:if="{{item.prom_integral}}">
226 226 <text class="fs30" style="font-weight: bold;">{{item.prom_integral}}</text>
... ...
packageA/pages/goodsInfo/goodsInfo.js
... ... @@ -958,44 +958,54 @@ Page({
958 958 getApp().request.get("/api/weshop/storagecategory/page", {
959 959 data: {
960 960 store_id: o.stoid,
961   - is_show: 1,
962 961 pageSize: 1000,
963 962 orderField:"sort",
964 963 orderType:'asc',
965 964 },
966 965 success: function(ee) {
967 966 if (ee.data.code == 0) {
968   -
969   - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
970   - var def_arr = new Array();
971   - var ishas = 0;
972   - //-- 开始就看5个门店 --
973   - for (var k = 0; k < 5; k++) {
974   - if (k == e.data.data.pageData.length) break;
975   - def_arr.push(e.data.data.pageData[k]);
  967 +
  968 + var check_all_cate=0;
  969 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  970 + for(let i in ee.data.data.pageData){
  971 + let item=ee.data.data.pageData[i];
  972 + if(item.is_show==1){
  973 + check_all_cate=1;break
  974 + }
  975 + }
976 976 }
  977 +
  978 + if (check_all_cate) {
  979 +
977 980  
978   - th.setData({
979   - def_pickpu_list: def_arr,
980   - pickpu_list: ee.data.data.pageData
981   - });
982 981 var sto_cate = ee.data.data.pageData;
983 982 var sto_arr = e.data.data.pageData;
984 983 var newarr = new Array();
985 984 var qita = new Array();
986 985  
  986 + var is_del_pk=0;
  987 +
987 988 //----要进行门店分组--------
988 989 for (var i = 0; i < sto_arr.length; i++) {
989 990 //找一下这个门店有没有在分类数组内
990 991 var find2 = 0, find2name = "",sort=0;
  992 + is_del_pk=0;
991 993 for (var m = 0; m < sto_cate.length; m++) {
992   - if (sto_arr[i].category_id == sto_cate[m].cat_id) {
993   - find2 = sto_cate[m].cat_id;
994   - find2name = sto_cate[m].cat_name;
995   - sort = sto_cate[m].sort;
996   - break;
997   - }
  994 + if (sto_arr[i].category_id == sto_cate[m].cat_id) {
  995 + if (sto_cate[m].is_show != 1) {
  996 + is_del_pk = 1;
  997 + sto_arr.splice(i, 1);
  998 + i--;
  999 + } else {
  1000 + find2 = sto_cate[m].cat_id;
  1001 + find2name = sto_cate[m].cat_name;
  1002 + sort = sto_cate[m].sort;
  1003 + is_del_pk = 0;
  1004 + }
  1005 + break;
  1006 + }
998 1007 }
  1008 + if(is_del_pk) continue;
999 1009  
1000 1010 if (newarr.length > 0) {
1001 1011 var find = 0;
... ... @@ -1039,6 +1049,18 @@ Page({
1039 1049 }
1040 1050 }
1041 1051 }
  1052 +
  1053 + var def_arr = new Array();
  1054 + //-- 开始就看10个门店 --
  1055 + for (var k = 0; k < 10; k++) {
  1056 + if (k == sto_arr.length) break;
  1057 + def_arr.push(sto_arr[k]);
  1058 + }
  1059 +
  1060 + th.setData({
  1061 + def_pickpu_list: def_arr,
  1062 + pickpu_list: ee.data.data.pageData
  1063 + });
1042 1064  
1043 1065 //门店分类要排序下
1044 1066 function compare(property){
... ... @@ -1060,11 +1082,16 @@ Page({
1060 1082 };
1061 1083 newarr.push(item);
1062 1084 }
1063   -
1064   - th.setData({
1065   - is_show_sto_cat: 1,
1066   - all_sto: newarr
1067   - });
  1085 +
  1086 + var sd={
  1087 + all_sto: newarr,
  1088 + is_show_sto_cat:1
  1089 + }
  1090 + if(!sto_arr || sto_arr.length<=10){
  1091 + sd.is_show_sto_cat=-1;
  1092 + sd.only_pk=sto_arr;
  1093 + }
  1094 + th.setData(sd);
1068 1095  
1069 1096 } else {
1070 1097 th.setData({
... ... @@ -2209,6 +2236,17 @@ Page({
2209 2236 flag: !this.data.flag,
2210 2237 })
2211 2238 },
  2239 +
  2240 + //---------联系微信客服------------
  2241 + con_weixin:function () {
  2242 + var url=this.data.sys_switch.weapp_customertype_url;
  2243 + var id=this.data.sys_switch.weapp_customertype_appid;
  2244 + wx.openCustomerServiceChat({
  2245 + extInfo: {url: url},
  2246 + corpId: id,
  2247 + success(res) {}
  2248 + })
  2249 + }
2212 2250  
2213 2251  
2214 2252  
... ...
packageA/pages/goodsInfo/goodsInfo.wxml
... ... @@ -160,10 +160,16 @@
160 160 <view class="join-cart jc_sb">
161 161  
162 162 <view class="flex">
163   - <button wx:if="{{sys_switch.weapp_customertype}}" class="custom-service cart-ico new_split f1" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}" style="text-align: center">
  163 + <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split f1" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}" style="text-align: center">
164 164 <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
165 165 <view>客服</view>
166   - </button>
  166 + </button>
  167 +
  168 + <view wx:elif="{{sys_switch.weapp_customertype==2}}" class="custom-service cart-ico new_split f1" bindtap="con_weixin" style="text-align: center">
  169 + <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
  170 + <view>客服</view>
  171 + </view>
  172 +
167 173 <view wx:else class="custom-service cart-ico new_split f1" bindtap="contactService" style="text-align: center">
168 174 <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
169 175 <view>客服</view>
... ... @@ -334,9 +340,9 @@
334 340 <view>
335 341 <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
336 342 </view>
337   - <view class="felx choose_more" bindtap="more_store">
338   - <text class="fs26 red-co" wx:if="{{is_show_sto_cat}}">{{choice_sort_store==0?'更多门店':'返回'}}</text>
339   - <view class="bg_rights" wx:if="{{is_show_sto_cat}}"></view>
  343 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}" >
  344 + <text class="fs26 red-co">{{choice_sort_store==0?'更多门店':'返回'}}</text>
  345 + <view class="bg_rights"></view>
340 346 </view>
341 347 </view>
342 348 </view>
... ...
packageA/pages/goods_share/goods_share.js
... ... @@ -292,6 +292,11 @@ Page({
292 292 orderField:this.data.orderField,
293 293 orderType:this.data.orderType,
294 294 }
  295 +
  296 + var user_id=getApp().globalData.user_id;
  297 + if(!user_id){ user_id=0;}
  298 + req_data.user_id=user_id;
  299 +
295 300 if(this.data.key_str && this.data.key_str.trim()){
296 301 var str=this.data.key_str.trim();
297 302 req_data.key_str=str;
... ...
packageA/pages/profile/profile.js
... ... @@ -284,43 +284,53 @@ Page({
284 284 if (e.data.data.total > 10 && ishas_cate) {
285 285 i.get("/api/weshop/storagecategory/page", {
286 286 data: {
287   - store_id: r.stoid,
288   - is_show: 1,
289   - pageSize: 300
  287 + store_id: r.stoid,
  288 + pageSize: 1000,
  289 + orderField:"sort",
  290 + orderType:'asc',
290 291 },
291 292 success: function(ee) {
292 293 if (ee.data.code == 0) {
293   - if (ee.data.data.pageData.length > 0) {
294   - var def_arr = new Array();
295   - var ishas = 0;
296   - //-- 开始就看5个门店 --
297   - for (var k = 0; k < 5; k++) {
298   - if (k == e.data.data.pageData.length) break;
299   - def_arr.push(e.data.data.pageData[k]);
300   - }
301   -
302   - th.setData({
303   - def_pickpu_list: def_arr,
304   - pickpu_list: ee.data.data.pageData
305   - });
  294 +
  295 + var check_all_cate=0;
  296 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  297 + for(let i in ee.data.data.pageData){
  298 + let item=ee.data.data.pageData[i];
  299 + if(item.is_show==1){
  300 + check_all_cate=1;break
  301 + }
  302 + }
  303 + }
  304 +
  305 + if (check_all_cate) {
  306 +
306 307 var sto_cate = ee.data.data.pageData;
307 308 var sto_arr = e.data.data.pageData;
308 309 var newarr = new Array();
309 310 var qita = new Array();
310   -
  311 +
  312 + var is_del_pk=0;
311 313 //----要进行门店分组--------
312 314 for (var i = 0; i < sto_arr.length; i++) {
313 315 //找一下这个门店有没有在分类数组内
314   - var find2 = 0,
315   - find2name = "";
  316 + var find2 = 0,find2name = "",sort=0;
  317 + is_del_pk=0;
316 318 for (var m = 0; m < sto_cate.length; m++) {
317 319 if (sto_arr[i].category_id == sto_cate[m].cat_id) {
318   - find2 = sto_cate[m].cat_id;
319   - find2name = sto_cate[m].cat_name;
  320 + if(sto_cate[m].is_show!=1){
  321 + is_del_pk=1; sto_arr.splice(i,1);
  322 + i--;
  323 + }else {
  324 + find2 = sto_cate[m].cat_id;
  325 + find2name = sto_cate[m].cat_name;
  326 + sort = sto_cate[m].sort;
  327 + is_del_pk=0;
  328 + }
320 329 break;
321 330 }
322 331 }
323   -
  332 + if(is_del_pk) continue;
  333 +
324 334 if (newarr.length > 0) {
325 335 var find = 0;
326 336 //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
... ... @@ -338,6 +348,7 @@ Page({
338 348 var item = {
339 349 cat_id: find2,
340 350 name: find2name,
  351 + sort:sort,
341 352 s_arr: arr0
342 353 };
343 354 newarr.push(item);
... ... @@ -353,6 +364,7 @@ Page({
353 364 var item = {
354 365 cat_id: find2,
355 366 name: find2name,
  367 + sort:sort,
356 368 s_arr: arr0
357 369 };
358 370 newarr.push(item);
... ... @@ -361,6 +373,30 @@ Page({
361 373 }
362 374 }
363 375 }
  376 +
  377 + var def_arr = new Array();
  378 + //-- 开始就看10个门店 --
  379 + for (var k = 0; k < 10; k++) {
  380 + if (k == e.data.data.pageData.length) break;
  381 + def_arr.push(e.data.data.pageData[k]);
  382 + }
  383 +
  384 + th.setData({
  385 + def_pickpu_list: def_arr,
  386 + pickpu_list: ee.data.data.pageData
  387 + });
  388 +
  389 + //门店分类要排序下
  390 + function compare(property){
  391 + return function(a,b){
  392 + var value1 = a[property];
  393 + var value2 = b[property];
  394 + return value1 - value2;
  395 + }
  396 + }
  397 + if(newarr.length>0)
  398 + newarr.sort(compare("sort"));
  399 +
364 400  
365 401 //----安排其他的分类-----
366 402 if (qita.length > 0) {
... ...
packageA/pages/profile/profile.wxml
... ... @@ -211,8 +211,8 @@
211 211 <view>
212 212 <icon bindtap="onclickstore" class="modal-closes" color="black" size="22" type="cancel"></icon>
213 213 </view>
214   - <view class="felx choose_more" bindtap="more_store">
215   - <text class="fs26 red-co" wx:if="{{is_show_sto_cat}}">{{choice_sort_store==0?'更多门店':'返回'}}</text>
  214 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}" >
  215 + <text class="fs26 red-co" >{{choice_sort_store==0?'更多门店':'返回'}}</text>
216 216 <view class="bg_rights"></view>
217 217 </view>
218 218 </view>
... ...
packageA/pages/prom_list/prom_list.js
... ... @@ -650,8 +650,11 @@ Page({
650 650 th.data.def_pick_store.is_no_dis=1;
651 651 th.setData({def_pick_store:th.data.def_pick_store});
652 652 }else{
653   - th.data.def_pick_store.is_no_dis=0;
654   - th.setData({def_pick_store:th.data.def_pick_store});
  653 + if(th.data.def_pick_store){
  654 + th.data.def_pick_store.is_no_dis=0;
  655 + th.setData({def_pick_store:th.data.def_pick_store});
  656 + }
  657 +
655 658 }
656 659 }
657 660 }
... ... @@ -823,43 +826,51 @@ Page({
823 826 getApp().request.get("/api/weshop/storagecategory/page", {
824 827 data: {
825 828 store_id: o.stoid,
826   - is_show: 1,
827 829 pageSize: 1000,
828 830 orderField:"sort",
829 831 orderType:'asc',
830 832 },
831 833 success: function(ee) {
832 834 if (ee.data.code == 0) {
833   - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
834   - var def_arr = new Array();
835   - var ishas = 0;
836   - //-- 开始就看5个门店 --
837   - for (var k = 0; k < 5; k++) {
838   - if (k == e.data.data.pageData.length) break;
839   - def_arr.push(e.data.data.pageData[k]);
840   - }
841   -
842   - th.setData({
843   - def_pickpu_list: def_arr,
844   - pickpu_list: ee.data.data.pageData
845   - });
  835 +
  836 + var check_all_cate=0;
  837 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  838 + for(let i in ee.data.data.pageData){
  839 + let item=ee.data.data.pageData[i];
  840 + if(item.is_show==1){
  841 + check_all_cate=1;break
  842 + }
  843 + }
  844 + }
  845 +
  846 + if (check_all_cate) {
  847 +
846 848 var sto_cate = ee.data.data.pageData;
847 849 var sto_arr = e.data.data.pageData;
848 850 var newarr = new Array();
849 851 var qita = new Array();
850   -
  852 +
  853 + var is_del_pk=0;
851 854 //----要进行门店分组--------
852 855 for (var i = 0; i < sto_arr.length; i++) {
853 856 //找一下这个门店有没有在分类数组内
854 857 var find2 = 0, find2name = "",sort=0;
  858 + is_del_pk=0;
855 859 for (var m = 0; m < sto_cate.length; m++) {
856   - if (sto_arr[i].category_id == sto_cate[m].cat_id) {
857   - find2 = sto_cate[m].cat_id;
858   - find2name = sto_cate[m].cat_name;
859   - sort=sto_cate[m].sort;
860   - break;
861   - }
  860 + if (sto_arr[i].category_id == sto_cate[m].cat_id) {
  861 + if(sto_cate[m].is_show!=1){
  862 + is_del_pk=1; sto_arr.splice(i,1);
  863 + i--;
  864 + }else {
  865 + find2 = sto_cate[m].cat_id;
  866 + find2name = sto_cate[m].cat_name;
  867 + sort = sto_cate[m].sort;
  868 + is_del_pk=0;
  869 + }
  870 + break;
  871 + }
862 872 }
  873 + if(is_del_pk) continue;
863 874  
864 875 if (newarr.length > 0) {
865 876 var find = 0;
... ... @@ -903,8 +914,19 @@ Page({
903 914 }
904 915 }
905 916 }
906   -
907   - //门店分类要排序下
  917 +
  918 + var def_arr = new Array();
  919 + //-- 开始就看10个门店 --
  920 + for (var k = 0; k < 10; k++) {
  921 + if (k == sto_arr.length) break;
  922 + def_arr.push(sto_arr[k]);
  923 + }
  924 + th.setData({
  925 + def_pickpu_list: def_arr,
  926 + pickpu_list: ee.data.data.pageData
  927 + });
  928 +
  929 + //门店分类要排序下
908 930 function compare(property){
909 931 return function(a,b){
910 932 var value1 = a[property];
... ... @@ -925,10 +947,17 @@ Page({
925 947 };
926 948 newarr.push(item);
927 949 }
928   - th.setData({
929   - is_show_sto_cat: 1,
930   - all_sto: newarr
931   - });
  950 +
  951 +
  952 + var sd={
  953 + all_sto: newarr,
  954 + is_show_sto_cat:1
  955 + }
  956 + if(!sto_arr || sto_arr.length<=10){
  957 + sd.is_show_sto_cat=-1;
  958 + sd.only_pk=sto_arr;
  959 + }
  960 + th.setData(sd);
932 961  
933 962 } else {
934 963 th.setData({
... ...
packageA/pages/prom_list/prom_list.wxml
... ... @@ -214,9 +214,9 @@
214 214 <view>
215 215 <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
216 216 </view>
217   - <view class="felx choose_more" bindtap="more_store">
218   - <text class="fs26 red-co" wx:if="{{is_show_sto_cat}}">{{choice_sort_store==0?'更多门店':'返回'}}</text>
219   - <view class="bg_rights" wx:if="{{is_show_sto_cat}}"></view>
  217 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}">
  218 + <text class="fs26 red-co" >{{choice_sort_store==0?'更多门店':'返回'}}</text>
  219 + <view class="bg_rights"></view>
220 220 </view>
221 221 </view>
222 222 </view>
... ...
packageA/pages/prom_list/prom_list.wxss
... ... @@ -175,7 +175,7 @@
175 175 margin-right: 10rpx;
176 176 }
177 177 .address{
178   - width: 90%;
  178 + width: 99%;
179 179 margin-top: 25rpx;
180 180 margin-bottom: 5rpx;
181 181 }
... ...
packageB/pages/user/collect_list/collect_list.wxml
... ... @@ -22,7 +22,7 @@
22 22 <!-- 商品集合 -->
23 23 <view class="{{editEd?'collects_max colls_max':'collects_max'}}">
24 24 <navigator class="collect flex-vertical" bindtap="iconClick" data-index="{{index}}" wx:for="{{collects}}" wx:key="{{index}}"
25   - data-url="{{editEd==0?'/pages/goods/goodsInfo/goodsInfo?goods_id='+item.goods_id:''}}">
  25 + data-url="{{editEd==0?'/pages/goods/goodsInfo/goodsInfo?goods_id='+item.goods_id+'&prom_type='+item.prom_type+'&prom_id='+item.prom_id:''}}">
26 26  
27 27 <view class="radioCheck iconClick" wx:if="{{editEd}}">
28 28 <radio color="rgb(214,1,33)" class="scale" checked="{{item.checked==true?true:false}}"></radio>
... ... @@ -46,7 +46,7 @@
46 46 <!-- 优惠价 -->
47 47 <view class="price flex xc-wc">
48 48 <view class="fs24">¥</view>
49   - <view class="fs40">{{item.shop_price}}</view>
  49 + <view class="fs40">{{item.prom_price?item.prom_price:item.final_price}}</view>
50 50 </view>
51 51 <!-- 原价 -->
52 52 <view class="flex fs24 line through xc-ash">
... ...
packageB/pages/zuhegou/index/index.js
... ... @@ -124,6 +124,9 @@ Page({
124 124 * 生命周期函数--监听页面加载
125 125 */
126 126 onLoad: function (options) {
  127 +
  128 + console.log(options,111);
  129 +
127 130 self = this;
128 131 var the_id = options.id;
129 132 if(options.title) {
... ... @@ -131,7 +134,8 @@ Page({
131 134 title: options.title,
132 135 });
133 136 };
134   - var first_leader='';
  137 + var first_leader=options.first_leader;
  138 +
135 139 //--如果tg_id是空的话,分享回来--
136 140 if (the_id == undefined || the_id == null || the_id == "") {
137 141 var gid_str = decodeURIComponent(options.scene);
... ... @@ -249,8 +253,7 @@ Page({
249 253 return false;
250 254 }
251 255  
252   - //获取购物车的内容
253   - th.get_cart_val(e);
  256 +
254 257  
255 258 var ee = JSON.parse(JSON.stringify(e));
256 259 var appd = getApp().globalData;
... ... @@ -342,8 +345,13 @@ Page({
342 345 });
343 346 }
344 347 }
  348 + //获取购物车的内容
  349 + th.get_cart_val(e);
345 350  
346 351 })
  352 + }else{
  353 + //获取购物车的内容
  354 + th.get_cart_val(e);
347 355 }
348 356 }, 1);
349 357  
... ... @@ -418,9 +426,38 @@ Page({
418 426 * 用户点击右上角分享
419 427 */
420 428 onShareAppMessage: function () {
  429 + var title = this.data.act.name;
  430 + var url= "/packageB/pages/zuhegou/index/index?id="+this.data.act.id;
  431 + if (getApp().globalData.user_id) {
  432 + url += "&first_leader=" + getApp().globalData.user_id;
  433 + }
  434 + var ob = {
  435 + title:title,
  436 + path: url,
  437 + };
  438 + if(this.data.act.img_url)
  439 + ob.imageUrl=this.data.iurl+this.data.act.img_url;
  440 + return ob;
421 441 },
422 442  
423 443 /**
  444 + * 用户分享朋友圈
  445 + */
  446 + onShareTimeline(){
  447 + var title = this.data.act.name;
  448 + var url= "/packageB/pages/zuhegou/index/index?id="+this.data.act.id;
  449 + if (getApp().globalData.user_id) {
  450 + url += "&first_leader=" + getApp().globalData.user_id;
  451 + }
  452 + var ob = {
  453 + title:title,
  454 + path: url,
  455 + };
  456 + if(this.data.act.img_url)
  457 + ob.imageUrl=this.data.iurl+this.data.act.img_url;
  458 + return ob;
  459 + },
  460 + /**
424 461 * 点击规则详情,弹出规则
425 462 */
426 463 showRule() {
... ... @@ -1252,42 +1289,52 @@ Page({
1252 1289 getApp().request.get("/api/weshop/storagecategory/page", {
1253 1290 data: {
1254 1291 store_id: os.stoid,
1255   - is_show: 1,
1256 1292 pageSize: 1000,
1257 1293 orderField: "sort",
1258 1294 orderType: 'asc',
1259 1295 },
1260 1296 success: function (ee) {
1261 1297 if (ee.data.code == 0) {
1262   - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
1263   - var def_arr = new Array();
1264   - //-- 开始就看5个门店 --
1265   - for (var k = 0; k < 5; k++) {
1266   - if (k == e.data.data.pageData.length) break;
1267   - def_arr.push(e.data.data.pageData[k]);
  1298 +
  1299 + var check_all_cate=0;
  1300 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  1301 + for(let i in ee.data.data.pageData){
  1302 + let item=ee.data.data.pageData[i];
  1303 + if(item.is_show==1){
  1304 + check_all_cate=1;break
  1305 + }
1268 1306 }
  1307 + }
  1308 +
  1309 + if (check_all_cate) {
1269 1310  
1270   - th.setData({
1271   - def_pickpu_list: def_arr,
1272   - pickpu_list: ee.data.data.pageData
1273   - });
1274 1311 var sto_cate = ee.data.data.pageData;
1275 1312 var sto_arr = e.data.data.pageData;
1276 1313 var newarr = new Array();
1277 1314 var qita = new Array();
1278 1315  
  1316 + var is_del_pk=0;
1279 1317 //----要进行门店分组--------
1280 1318 for (var i = 0; i < sto_arr.length; i++) {
1281 1319 //找一下这个门店有没有在分类数组内
1282 1320 var find2 = 0, find2name = "", sort = 0;
  1321 + is_del_pk=0;
1283 1322 for (var m = 0; m < sto_cate.length; m++) {
1284 1323 if (sto_arr[i].category_id == sto_cate[m].cat_id) {
1285   - find2 = sto_cate[m].cat_id;
1286   - find2name = sto_cate[m].cat_name;
1287   - sort = sto_cate[m].sort;
  1324 + if (sto_cate[m].is_show != 1) {
  1325 + is_del_pk = 1;
  1326 + sto_arr.splice(i, 1);
  1327 + i--;
  1328 + } else {
  1329 + find2 = sto_cate[m].cat_id;
  1330 + find2name = sto_cate[m].cat_name;
  1331 + sort = sto_cate[m].sort;
  1332 + is_del_pk = 0;
  1333 + }
1288 1334 break;
1289 1335 }
1290 1336 }
  1337 + if(is_del_pk) continue;
1291 1338  
1292 1339 if (newarr.length > 0) {
1293 1340 var find = 0;
... ... @@ -1332,6 +1379,18 @@ Page({
1332 1379 }
1333 1380 }
1334 1381  
  1382 + var def_arr = new Array();
  1383 + //-- 开始就看10个门店 --
  1384 + for (var k = 0; k < 10; k++) {
  1385 + if (k == sto_arr.length) break;
  1386 + def_arr.push(sto_arr[k]);
  1387 + }
  1388 +
  1389 + th.setData({
  1390 + def_pickpu_list: def_arr,
  1391 + pickpu_list: ee.data.data.pageData
  1392 + });
  1393 +
1335 1394 //门店分类要排序下
1336 1395 function compare(property) {
1337 1396 return function (a, b) {
... ... @@ -1352,10 +1411,17 @@ Page({
1352 1411 };
1353 1412 newarr.push(item);
1354 1413 }
1355   - th.setData({
1356   - is_show_sto_cat: 1,
1357   - all_sto: newarr
1358   - });
  1414 +
  1415 +
  1416 + var sd={
  1417 + all_sto: newarr,
  1418 + is_show_sto_cat:1
  1419 + }
  1420 + if(!sto_arr || sto_arr.length<=10){
  1421 + sd.is_show_sto_cat=-1;
  1422 + sd.only_pk=sto_arr;
  1423 + }
  1424 + th.setData(sd);
1359 1425  
1360 1426 } else {
1361 1427 th.setData({
... ... @@ -2004,7 +2070,7 @@ Page({
2004 2070 await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
2005 2071 data: {
2006 2072 store_id: os.stoid,
2007   - user_id: user_id,
  2073 + user_id: oo.user_id,
2008 2074 goods_id: item_j.goods_id,
2009 2075 prom_type: 7,
2010 2076 prom_id: th.data.act.id
... ...
packageB/pages/zuhegou/index/index.wxml
... ... @@ -167,9 +167,9 @@
167 167 <view>
168 168 <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
169 169 </view>
170   - <view class="flex choose_more" bindtap="more_store">
171   - <text class="fs26 red-co" style="line-height: 30rpx;height: 30rpx" wx:if="{{is_show_sto_cat}}">{{choice_sort_store==0?'更多门店':'返回'}}</text>
172   - <view class="bg_rights" wx:if="{{is_show_sto_cat}}"></view>
  170 + <view class="flex choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}">
  171 + <text class="fs26 red-co" style="line-height: 30rpx;height: 30rpx" >{{choice_sort_store==0?'更多门店':'返回'}}</text>
  172 + <view class="bg_rights" ></view>
173 173 </view>
174 174 </view>
175 175 </view>
... ...
packageC/pages/group_list/group_list.js 0 → 100644
  1 +var e = getApp(), i = e.request, a = e.globalData.setting,os=a,ut = require("../../../utils/util.js");
  2 +var regeneratorRuntime = require('../../../utils/runtime.js');
  3 +const app = getApp();
  4 +let self = null;
  5 +
  6 +Page({
  7 +
  8 + /**
  9 + * 页面的初始数据
  10 + */
  11 + data: {
  12 + // type:1,
  13 + // goodlist: null,
  14 +
  15 + isLogin: false,
  16 + list: null,
  17 + isLoading: false, // 检测是否已经发送请求,防止重复发送请求
  18 + noMore: false, // 检测是否有更多数据,true为没有更多数据,false为还有数据
  19 + pageNum: 1, // 当前页数
  20 + },
  21 +
  22 + /**
  23 + * 生命周期函数--监听页面加载
  24 + */
  25 + onLoad: function (options) {
  26 + self = this;
  27 +
  28 + app.isLogin().then(function(data) {//进入页面前已经授权登录成功
  29 + self.setData({
  30 + userInfo: data,
  31 + });
  32 + });
  33 + },
  34 +
  35 + /**
  36 + * 生命周期函数--监听页面初次渲染完成
  37 + */
  38 + onReady: function () {
  39 +
  40 + },
  41 +
  42 + /**
  43 + * 生命周期函数--监听页面显示
  44 + */
  45 + onShow: function () {
  46 + if(app.globalData.userInfo) {
  47 + if(!this.data.isLogin) {
  48 + this.setData({
  49 + userInfo: app.globalData.userInfo,
  50 + imghost: app.globalData.setting.imghost,
  51 + isLogin: true,
  52 + });
  53 +
  54 +
  55 + let url = '/api/weshop/goods/groupBuy/page';
  56 + let data = {
  57 + store_id: app.globalData.setting.stoid,
  58 + is_show: 1,
  59 + is_end: 0,
  60 + timetype:1
  61 + };
  62 +
  63 + this.setData({
  64 + list: null,
  65 + pageNum: 1,
  66 + noMore: false,
  67 + });
  68 +
  69 + this.getData(true, url, data).then(function() {
  70 + self.setData({
  71 + currentData: data,
  72 + });
  73 + });
  74 +
  75 + this.data.is_timer=1;
  76 +
  77 + };
  78 +
  79 +
  80 + //设置全局定时器
  81 + this.data.timer = setInterval(function () {
  82 + self.countDown();
  83 + },1000);
  84 +
  85 +
  86 + };
  87 +
  88 + },
  89 +
  90 + /**
  91 + * 生命周期函数--监听页面隐藏
  92 + */
  93 + onHide: function () {
  94 + clearInterval(this.data.timer);
  95 + },
  96 +
  97 + /**
  98 + * 生命周期函数--监听页面卸载
  99 + */
  100 + onUnload: function () {
  101 +
  102 + },
  103 +
  104 + /**
  105 + * 页面相关事件处理函数--监听用户下拉动作
  106 + */
  107 + onPullDownRefresh: function () {
  108 +
  109 + },
  110 +
  111 + /**
  112 + * 页面上拉触底事件的处理函数
  113 + */
  114 + onReachBottom: function () {
  115 + let data = this.data.currentData;
  116 + this.scrollToLower('/api/weshop/goods/groupBuy/page', data);
  117 + },
  118 +
  119 + /**
  120 + * 用户点击右上角分享
  121 + */
  122 + onShareAppMessage: function () {
  123 +
  124 + },
  125 +
  126 +
  127 + /**
  128 + * 请求数据
  129 + */
  130 + getData: function(isInit, url, data) {
  131 + let p = app.request.promiseGet(url, {
  132 + data: data,
  133 + isShowLoading: true,
  134 + })
  135 + .then(function(res) {
  136 + if(res.data.code == 0) {
  137 +
  138 + self.setData({
  139 + isLoading: false
  140 + });
  141 +
  142 + if(isInit) {// 第一次加载
  143 + self.setData({
  144 + list: res.data.data
  145 + });
  146 + } else {
  147 + self.setData({
  148 + 'list.pageData': self.data.list.pageData.concat(res.data.data.pageData)
  149 + });
  150 + };
  151 +
  152 + if((res.data.data.pageData.length == 0) || (res.data.data.pageSize * res.data.data.page >= res.data.data.total)) {
  153 + self.setData({
  154 + noMore: true
  155 + });
  156 + };
  157 +
  158 + } else {
  159 + self.setData({
  160 + 'list.pageData': []
  161 + });
  162 + };
  163 +
  164 + });
  165 +
  166 + return p;
  167 + },
  168 +
  169 +
  170 + /**
  171 + * 上拉加载
  172 + */
  173 + scrollToLower(url, requestData) {
  174 + // 数据总量
  175 + let total = this.data.list.total;
  176 + // 单页最大数据量
  177 + let pageSize = this.data.list.pageSize;
  178 + // 如果数据总量不为0且小于或等于单页最大数据量,说明数据已全部加载,显示‘没有更多了’
  179 + if((total != 0)&&(total <= pageSize)) {
  180 + this.setData({
  181 + noMore: true
  182 + });
  183 + };
  184 +
  185 + if(!this.data.isLoading && !this.data.noMore) {
  186 + this.setData({
  187 + isLoading: true,
  188 + pageNum: this.data.pageNum + 1
  189 + });
  190 + requestData.page = this.data.pageNum;
  191 + this.getData(false, url, requestData);
  192 + };
  193 + },
  194 +
  195 +
  196 + //---小于10的格式化函数----
  197 + timeFormat(param) {
  198 + return param < 10 ? '0' + param : param;
  199 + },
  200 +
  201 +
  202 + //----倒计时函数-----
  203 + countDown() {
  204 + if(!this.data.is_timer) return false;
  205 + var th=this;
  206 + // 获取当前时间,同时得到活动结束时间数组
  207 + let newTime = ut.gettimestamp();
  208 + var endTimeList = this.data.list.pageData;
  209 + if(endTimeList == null) return null;
  210 + // 对结束时间进行处理渲染到页面
  211 + for(var i = 0; i < endTimeList.length; i++) {
  212 + var o = endTimeList[i];
  213 + var endTime = o.end_time;
  214 + // if(th.data.type==0) endTime = o.start_time;
  215 + let obj = null;
  216 + // 如果活动未结束,对时间进行处理
  217 + if (endTime - newTime > 0) {
  218 + let time = (endTime - newTime);
  219 + // 获取天、时、分、秒
  220 + let day = parseInt(time / (60 * 60 * 24));
  221 + let hou = parseInt(time % (60 * 60 * 24) / 3600);
  222 + let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
  223 + let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
  224 + obj = {
  225 + day: this.timeFormat(day), hou: this.timeFormat(hou), min: this.timeFormat(min), sec: this.timeFormat(sec), hide: 1
  226 + }
  227 + } else {
  228 + //活动已结束,全部设置为'00'
  229 + obj = { day: '00', hou: '00', min: '00', sec: '00' }
  230 + }
  231 + var txt ="goodlist["+i+"].djs";
  232 + th.setData({ [txt]: obj});
  233 + }
  234 + },
  235 +
  236 +
  237 +
  238 + //图片失败,默认图片
  239 + bind_bnerr2: function (e) {
  240 + var _errImg = e.target.dataset.errorimg;
  241 + var val = e.target.dataset.val;
  242 + if(val!=undefined && val!=null && val!='null' ){
  243 + var _errObj = {};
  244 + _errObj[_errImg] = "/public/images/default_goods_image_240.gif";
  245 + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
  246 + }
  247 + },
  248 +
  249 + goto(e) {
  250 + let url = e.target.dataset.url;
  251 + app.goto(url);
  252 + },
  253 +
  254 +
  255 +})
0 256 \ No newline at end of file
... ...
packageC/pages/group_list/group_list.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "团购",
  3 + "enablePullDownRefresh": false,
  4 + "usingComponents": {
  5 + "nodata": "/components/nodata/nodata"
  6 + }
  7 +}
0 8 \ No newline at end of file
... ...
packageC/pages/group_list/group_list.wxml 0 → 100644
  1 +<view class="list">
  2 + <view class="list-item" wx:for="{{list.pageData}}">
  3 + <view class="img-container">
  4 + <image class="img-block" src="{{imghost + item.original_img}}" data-val="{{item.original_img}}"
  5 + data-errorimg="list.pageData[{{index}}].original_img" binderror="bind_bnerr2" lazy-load="true"></image>
  6 + </view>
  7 + <view class="mgl20 flex fdc f1 jc_sb">
  8 + <view>
  9 + <view class="fs30">{{item.title}}</view>
  10 + <view class="flex ai_c">
  11 + <view class="fs26 tag">{{item.rebate}}折</view>
  12 + <view class="rmb c-red fs30">{{item.price}}</view>
  13 + <view class="rmb del fs24 c-7b pdl10">{{item.market_price}}</view>
  14 + </view>
  15 + </view>
  16 + <view class="flex jc_sb ai-center c-7b">
  17 + <view class="fs24">
  18 + <view>已售{{item.buy_num}}件</view>
  19 + <view class=""><text class="iconfont icon-shizhong fs24"></text>{{goodlist[index].djs.day}}天{{goodlist[index].djs.hou}}时{{goodlist[index].djs.min}}分{{goodlist[index].djs.sec}}秒</view>
  20 + </view>
  21 + <view class="btn" bindtap="goto" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.id}}&prom_type=2">去团购</view>
  22 + </view>
  23 + </view>
  24 + </view>
  25 +</view>
  26 +
  27 +<view class="no-more" hidden="{{!noMore}}" wx:if="{{list.pageData.length !== 0}}">—— 已经到底啦 ——</view>
  28 +<nodata nodataContainer="t-c" wx:if="{{list.pageData.length == 0}}"></nodata>
... ...
packageC/pages/group_list/group_list.wxss 0 → 100644
  1 +page {
  2 + background-color: #f2f2f2;
  3 +}
  4 +
  5 +.list {
  6 + padding-left: 20rpx;
  7 + padding-right: 20rpx;
  8 +}
  9 +
  10 +.list-item {
  11 + background-color: white;
  12 + border-radius: 12rpx;
  13 + margin-top: 20rpx;
  14 + padding: 20rpx;
  15 + display: flex;
  16 +}
  17 +
  18 +.tag {
  19 + background-color: #ff6768;
  20 + color: white;
  21 + font-size: 24rpx;
  22 + padding-left: 10rpx;
  23 + padding-right: 10rpx;
  24 +}
  25 +
  26 +.img-container {
  27 + width: 200rpx;
  28 + height: 200rpx;
  29 +}
  30 +
  31 +.btn {
  32 + background-color: #ff6768;
  33 + color: white;
  34 + padding: 10rpx 30rpx;
  35 + border-radius: 40rpx;
  36 + font-size: 26rpx;
  37 +}
  38 +
  39 +.rmb {
  40 + position: relative;
  41 +}
  42 +
  43 +.rmb::before {
  44 + content: '¥';
  45 + font-size: 24rpx;
  46 +}
  47 +
  48 +.del {
  49 + text-decoration: line-through;
  50 +}
  51 +
  52 +.no-more {
  53 + font-size: 24rpx;
  54 + line-height: 2;
  55 + text-align: center;
  56 + /* margin-top: 10rpx; */
  57 + color: #ccc;
  58 +}
0 59 \ No newline at end of file
... ...
packageC/pages/luckyGo/luckyGo_details/luckyGo_details.js 0 → 100644
  1 +var t = require("../../../../utils/util.js"),
  2 + ut = t,
  3 + e = require("../../../../utils/common.js"),
  4 + a = require("../../../../utils/wxParse/wxParse.js"),
  5 + s = getApp(),
  6 + i = s.request,
  7 + rq = i,
  8 + oo = s.globalData,
  9 + o = s.globalData.setting,
  10 + os = o;
  11 + var regeneratorRuntime = require('../../../../utils/runtime.js');
  12 +
  13 +Page({
  14 + data: {
  15 + //activity_type:1,//活动类型 商家1 阶梯2 会员3
  16 + p_status:1,//会员团的详细情况 1是正在行 2是成功 3失败
  17 + sf_length: 1,//人数大于5
  18 +
  19 + erweima:false,
  20 + meng:false,
  21 + zk:true,
  22 + stoid: o.stoid,
  23 + hiddenName: true,
  24 + teamlist:null,
  25 + teamgroup:null,
  26 + goods:null,//商品数据
  27 + pindGoods: null,//拼单数据
  28 + imageurl: o.imghost,
  29 + pay_f:0,//支付是否成功
  30 + order_sn:"",//订单编号
  31 + canvasHidden:false, //画画版
  32 + screenWidth:0,
  33 +
  34 + pd_xx: 0, //弹框
  35 + max_num:0,//最低成团人数
  36 + min_price:0,//最低价格
  37 + is_show:0,//加载完才显示
  38 +
  39 + share_img_localpath:"", //分享图片的本地图片
  40 + share_ewm_localpath: "", //分享的二维码本地图片
  41 + share_head:"", //分享头像的本地图片
  42 +
  43 + iurl:os.imghost,
  44 + ct_price:0,//阶梯团成团价格
  45 + sf_arr:null,
  46 +
  47 + },
  48 + onLoad: function (t) {
  49 + // wx.setNavigationBarTitle({ title: "拼团订单",})
  50 +
  51 + var that=this;
  52 + var th=this;
  53 + //获取用户设备信息,屏幕宽度
  54 + wx.getSystemInfo({
  55 + success: res => {
  56 + that.setData({ screenWidth: res.screenWidth })
  57 + }
  58 + })
  59 + var pay_f = t.payf, order_sn = t.ordersn;
  60 + this.setData({ pay_f: pay_f, order_sn: order_sn});
  61 + this.init(order_sn);
  62 +
  63 + //-- 自定义海报 --
  64 + getApp().request.promiseGet("/api/weshop/goods/poster/page",{
  65 + data:{store_id:os.stoid, type:1, is_use:1 }
  66 + }).then(res=>{
  67 + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0] ){
  68 +
  69 + var poster_data=res.data.data.pageData[0];
  70 + var json_str=poster_data.jsonStr;
  71 + if(json_str){
  72 + var json_data=JSON.parse(json_str);
  73 + if(json_data.bg_img){
  74 +
  75 + //-- 把图片那到本地 --
  76 + wx.getImageInfo({
  77 + src:json_data.bg_img,
  78 + success: function(res) {
  79 + var path= res.path;
  80 + th.setData({share_b_img:path})
  81 + },
  82 + fail: function(res) {}
  83 + });
  84 + }
  85 + th.setData({poster:json_data})
  86 + }
  87 + }
  88 + })
  89 + },
  90 + //关闭展开列表
  91 + click:function(e){
  92 + this.setData({
  93 + hiddenName: !this.data.hiddenName,
  94 + zk: !this.data.zk,
  95 + })
  96 + },
  97 + //打开收起拼团列表
  98 + czk:function(e){
  99 + this.setData({
  100 + zk:!this.data.zk,
  101 + hiddenName: !this.data.hiddenName,
  102 + })
  103 + },
  104 + //打开蒙板提示
  105 + cmeng:function(e){
  106 + this.setData({
  107 + meng:!this.data.meng,
  108 + })
  109 + },
  110 +
  111 + //关闭蒙板提示
  112 + cmc:function(e){
  113 + this.setData({
  114 + meng: !this.data.meng,
  115 + })
  116 + },
  117 +//打开二维码提示
  118 + cerweima:function(e){
  119 + this.setData({
  120 + meng: !this.data.meng,
  121 + erweima: !this.data.erweima,
  122 + })
  123 + },
  124 +
  125 + cerc:function(e){
  126 + this.setData({
  127 + erweima: !this.data.erweima,
  128 + meng: !this.data.meng,
  129 + })
  130 + },
  131 +
  132 + async init( order_sn) {
  133 +
  134 + wx.showLoading();
  135 +
  136 + var goods_id = 0,//商品ID,
  137 + pageteam=null,//
  138 + original_img=null ,//商品图片
  139 + order=null,//订单编号
  140 + id = 0,//团购id
  141 + pt_listno = "",//团编号
  142 + pt_prom_id = 0, //活动id
  143 + ee = this,
  144 + team_id = 0,//活动id
  145 + ordertx=[],//头像图片
  146 + share_img=null,//分享图片
  147 + teamlist=null,//活动表
  148 + goods=null,//商品
  149 + teamgroup=null,//活動从表
  150 + max_num=0,//最低价格时的成团人数
  151 + p_status=1;
  152 +
  153 + //--如果商家团的时候---
  154 + await getApp().request.promisePost("/api/weshop/order/pay/vipAutoTuan", {
  155 + data: {orderSn:order_sn,storeId:os.stoid }
  156 + })
  157 +
  158 + //获取order信息根据订单编号order_sn
  159 + await getApp().request.promiseGet("/api/weshop/order/page", {
  160 + data: { store_id: o.stoid, order_sn: order_sn,}
  161 + }).then(res => {
  162 + order = res.data.data.pageData[0];
  163 + pt_prom_id = order.pt_prom_id;
  164 + pt_listno = order.pt_listno;
  165 + })
  166 +
  167 + if (this.data.payf || order.pt_status == 3) p_status = 3; //失败
  168 + if (order.pt_status == 2 || order.pt_status == 4 || order.pt_status == 5)
  169 + p_status = 2; //成功
  170 + if (order.pt_status < 2 && !this.data.payf)
  171 + p_status = 1; //正在进行
  172 + if ( order.pt_status == 6) p_status = 4; //支付尾款失败
  173 +
  174 + //多少人参团头像
  175 + await getApp().request.promiseGet("/api/weshop/order/pagePtList", {
  176 + data: { store_id: o.stoid, pt_listno: pt_listno, }
  177 + }).then(res => {
  178 + ordertx = res.data.data.pageData;
  179 + })
  180 +
  181 +
  182 + var min_price=0;
  183 + //获取活动表的信息根据活动pt_prom_id
  184 + await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + pt_prom_id, {
  185 + data: { }
  186 + }).then(res => {
  187 + if (res.data.code==0){
  188 + teamlist = res.data.data;
  189 + this.setData({teamlist: teamlist});
  190 + //获取当前时间,并且判断剩余时间
  191 + var nt = ut.gettimestamp();
  192 + teamlist.status = 0;
  193 + if (nt >= teamlist.start_time) teamlist.status = 1;
  194 +
  195 + goods_id = res.data.data.goods_id;
  196 + id = res.data.data.id;
  197 + share_img = ee.data.imageurl + res.data.data.share_imgurl;
  198 +
  199 + //----------查看阶梯团------------
  200 + if (teamlist.ct_rylist != "" && teamlist.ct_rylist != null && teamlist.ct_rylist != undefined){
  201 + var ct_rylist = JSON.parse(teamlist.ct_rylist);
  202 + var max=0; var pri=0;
  203 + ct_rylist.forEach(function (val,ind) {
  204 + if(val.rynum>max){
  205 + max=val.rynum;
  206 + pri = val.price;
  207 + }
  208 + })
  209 + max_num=max;
  210 + min_price=pri;
  211 +
  212 + }
  213 +
  214 +
  215 + //获取商品信息
  216 + getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, {
  217 + }).then(res => {
  218 + //商品地址
  219 + original_img = ee.data.imageurl+ res.data.data.original_img,
  220 + goods = res.data.data
  221 +
  222 + ee.setData({goods: goods,image: original_img,})
  223 +
  224 + })
  225 +
  226 + }
  227 + })
  228 +
  229 +
  230 + //只装5个
  231 + var ordertx2=[],sf_num=0,ct_nun=teamlist.ct_num;
  232 + if(max_num){
  233 + ct_nun=parseInt(max_num);
  234 + if (ct_nun < ordertx.length) ct_nun = ordertx.length;
  235 + }
  236 +
  237 + if(ct_nun>5) ct_nun=5;
  238 + for(var i=0;i<ct_nun;i++){
  239 + if (i >= ordertx.length) sf_num++
  240 + else
  241 + ordertx2.push(ordertx[i]);
  242 + }
  243 +
  244 + var sf_arr=[];
  245 + for (var i=0;i<sf_num;i++){
  246 + sf_arr.push(i);
  247 + }
  248 +
  249 +
  250 +
  251 +
  252 + //获取活动从表信息team_id:305暂时
  253 + await getApp().request.promiseGet("/api/weshop/teamgroup/page" , {
  254 + data: { store_id: os.stoid, listno: pt_listno, team_id: pt_prom_id }
  255 + }).then(res => {
  256 + teamgroup = res.data.data.pageData[0];
  257 + if (teamgroup){
  258 + var buy_start_date = ut.formatTime(teamgroup.buy_start_date, "yyyy-MM-dd hh:mm:ss");
  259 + teamgroup.buy_start_date=buy_start_date;
  260 + }
  261 + })
  262 +
  263 +
  264 + var ct_price = 0,
  265 + num_0 = ordertx.length;
  266 + if (teamlist.kttype == 3){
  267 + var js_data = JSON.parse(teamlist.ct_rylist);
  268 + js_data.forEach(function (val,ind) {
  269 + if (num_0<=val.rynum && ct_price==0){
  270 + ct_price=val.price;
  271 + }
  272 + })
  273 + if(ct_price==0) ct_price=min_price;
  274 + }
  275 +
  276 + //获取大家都在团信息
  277 + getApp().request.promiseGet("/api/weshop/teamlist/pageteam/1?store_id="+ os.stoid +"&is_end=0&is_show=1" , {
  278 + data:{page:1,pageSize:2}
  279 + }).then(res => {
  280 + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
  281 + pageteam = res.data.data.pageData;
  282 + ee.setData({pageteam: pageteam,})
  283 + }
  284 +
  285 + })
  286 +
  287 + //--当是成团的时候的操作--
  288 + if(order.pt_status==2 || order.pt_status==4 || order.pt_status==5){
  289 + //设置值
  290 +
  291 + ee.setData({
  292 + ordertx2: ordertx2, ordertx: ordertx, teamlist: teamlist, teamgroup: teamgroup, min_price: min_price,
  293 + order: order, share_img: share_img,max_num:max_num,
  294 + pindGoods: teamlist,is_show:1, zk:false,
  295 + hiddenName: false, ct_price:ct_price,p_status:p_status,sf_arr:sf_arr});
  296 +
  297 + //--是否支付了尾款--
  298 + if(order.pt_status==4 || order.pt_status==5){
  299 + ee.setData({is_pay_wk:1});
  300 + }
  301 + }else{
  302 + console.log("239什么鬼", teamlist);
  303 + //设置值
  304 + ee.setData({
  305 + ordertx2: ordertx2, ordertx: ordertx, teamlist: teamlist, teamgroup: teamgroup,
  306 + order: order, p_status: p_status, min_price:min_price,
  307 + share_img: share_img, max_num: max_num, pindGoods: teamlist, is_show: 1,
  308 + ct_price: ct_price, p_status: p_status,sf_arr:sf_arr});
  309 + }
  310 +
  311 + wx.hideLoading();
  312 +
  313 + wx.setNavigationBarTitle({
  314 + title: "拼团详情",
  315 + })
  316 +
  317 + ee.countDown2();
  318 +
  319 + //获取分享图片的本地地址
  320 + var path2 = os.imghost + teamlist.share_imgurl;
  321 + wx.getImageInfo({
  322 + src: path2,
  323 + success: function (res) {
  324 + //res.path是网络图片的本地地址
  325 + ee.data.share_img_localpath = res.path;
  326 + },
  327 + fail: function (res) {
  328 + //失败回调
  329 + }
  330 + });
  331 +
  332 +
  333 + },
  334 + //---小于10的格式化函数----
  335 + timeFormat(param) {
  336 + return param < 10 ? '0' + param : param;
  337 + },
  338 + countDown2() {
  339 + var th = this;
  340 + // 获取当前时间,同时得到活动结束时间数组
  341 + var newTime = ut.gettimestamp();
  342 + var o = this.data.teamgroup;
  343 + if(!o) return false;
  344 +
  345 + var endTime = o.kt_end_time;
  346 + if (o.status == 0) endTime = o.start_time;
  347 +
  348 + //看一下,是否要支付尾款
  349 + if(o.team_type==3 && th.data.order.pt_status==2){
  350 + endTime = o.wk_end_time;
  351 + }
  352 +
  353 + let obj = null;
  354 + // 如果活动未结束,对时间进行处理
  355 + if (endTime - newTime > 0) {
  356 + let time = (endTime - newTime);
  357 + // 获取天、时、分、秒
  358 + let day = parseInt(time / (60 * 60 * 24));
  359 + let hou = parseInt(time % (60 * 60 * 24) / 3600);
  360 + let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
  361 + let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
  362 + obj = {
  363 + day: this.timeFormat(day),
  364 + hou: this.timeFormat(hou),
  365 + min: this.timeFormat(min),
  366 + sec: this.timeFormat(sec)
  367 + }
  368 + } else {
  369 + //活动已结束,全部设置为'00'
  370 + obj = {
  371 + day: '00',
  372 + hou: '00',
  373 + min: '00',
  374 + sec: '00'
  375 + }
  376 + }
  377 + var txt = "pindGoods.djs";
  378 + th.setData({
  379 + obj: obj
  380 + });
  381 + setTimeout(th.countDown2, 1000);
  382 + },
  383 +
  384 + //--定义的保存图片方法,分享团---
  385 + saveImageToPhotosAlbum: function () {
  386 + //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团
  387 + var type=1;
  388 + if(this.data.teamlist.kttype==3) type=2;
  389 +
  390 + wx.showLoading({ title: '生成中...', })
  391 + var that = this, th = that;
  392 + //设置画板显示,才能开始绘图
  393 + that.setData({
  394 + canvasHidden: true,
  395 + })
  396 +
  397 + if(this.data.share_hidden) {
  398 + this.setData({
  399 + share_hidden: false,
  400 + });
  401 + };
  402 +
  403 + var app = getApp();
  404 + var unit = that.data.screenWidth / 750 * 1.35;
  405 + var scene=th.data.teamgroup.id;
  406 + var user_id=getApp().globalData.user_id?getApp().globalData.user_id:0;
  407 + if(user_id>0){
  408 + scene+="_"+user_id;
  409 + }
  410 +
  411 + //二微码
  412 + var path3 = os.url+ "/api/wx/open/app/user/getWeAppEwm/"+
  413 + os.stoid+"?sceneValue="+scene+"&pageValue=pages/team/team_show/team_show";
  414 +
  415 + //读取文件成功则OK--
  416 + wx.getImageInfo({
  417 + src: path3,
  418 + success:function (res) {
  419 + //回调写法
  420 + th.get_head_temp(th.get_goods_temp,function () {
  421 + var vpath = res.path;
  422 + var context = wx.createCanvasContext('share');
  423 +
  424 +
  425 + //先画背景
  426 + var pg_path = "../../../images/share/share_bg.png";
  427 + //-- 如果有自定义海报的时候,判断背景的图片 --
  428 + if(th.data.share_b_img){
  429 + pg_path=th.data.share_b_img;
  430 + }
  431 +
  432 + var share_title=th.data.teamlist.share_title;
  433 + if(!share_title)
  434 + share_title=th.data.teamlist.title;
  435 + context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  436 +
  437 + //-- 是自定义海报的情况下 --
  438 + if(th.data.poster && parseInt(th.data.poster.style)==2){
  439 + //在线上分享人的情况下
  440 + if(parseInt(th.data.poster.show_headpic)){
  441 + //获取坐标
  442 + var x=parseFloat(th.data.poster.head_x)*2;
  443 + var y=parseFloat(th.data.poster.head_y)*2;
  444 + var x1=(x+90) *unit;
  445 + var y1=(y+50) *unit;
  446 + //--昵称---
  447 + context.setFontSize(24 * unit)
  448 + context.setFillStyle("black")
  449 + context.fillText(app.globalData.userInfo.nickname, x1, y1);
  450 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
  451 + //强烈推荐 改许程
  452 + var tj_path = "../../../images/share/q_tj.png";
  453 + context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit);
  454 + context.setFontSize(16 * unit)
  455 + context.setLineJoin('round'); //交点设置成圆角
  456 + context.setFillStyle("white")
  457 + context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit);
  458 + }
  459 +
  460 + }else{
  461 + //--昵称---
  462 + context.setFontSize(24 * unit)
  463 + context.setFillStyle("black")
  464 + context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
  465 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
  466 + //强烈推荐
  467 + var tj_path = "../../../images/share/q_tj.png";
  468 + context.drawImage(tj_path, 152 * unit + width, 54 * unit, 110 * unit, 30 * unit);
  469 + context.setFontSize(18 * unit)
  470 + context.setFillStyle("white")
  471 + context.fillText('强烈推荐', 152 * unit + width + 20 * unit, 76 * unit);
  472 + }
  473 +
  474 +
  475 + //---产品名称---
  476 + context.setFontSize(21.3 * unit);
  477 + context.setFillStyle("black");
  478 +
  479 +
  480 +
  481 +
  482 + th.draw_Text(context,share_title,
  483 + 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit);
  484 + //------产品的价格-------
  485 + context.setFontSize(24 * unit)
  486 + context.setFillStyle("red")
  487 +
  488 + var pri0 = th.data.teamlist.price;
  489 + pri0=parseFloat(pri0).toFixed(2);
  490 + var wd1=th.data.screenWidth-ut.measureText(pri0, 31 * unit)-25;
  491 + context.fillText("¥", wd1-15, 180 * unit);
  492 + context.setFontSize(31 * unit)
  493 + context.fillText(pri0, wd1, 180 * unit);
  494 +
  495 + //---市场价划掉---
  496 + context.setFillStyle("gray")
  497 + context.setFontSize(22 * unit)
  498 + pri0= "¥" + parseFloat(th.data.goods.market_price).toFixed(2);
  499 + var wd2=th.data.screenWidth-ut.measureText(pri0, 22 * unit)-25;
  500 + context.fillText(pri0, wd2, 210 * unit);
  501 +
  502 + context.setStrokeStyle('gray')
  503 + context.setLineWidth(1 * unit)
  504 + context.moveTo(wd2-5, 204 * unit)
  505 + context.lineTo(wd2+ut.measureText(pri0, 22 * unit)+5, 204 * unit)
  506 + context.stroke();
  507 + console.log(th.data.share_img_localpath);
  508 +
  509 +
  510 + //---中间大图---
  511 + context.drawImage(th.data.share_img_localpath, 68 * unit, 242 * unit, 410 * unit, 410 * unit);
  512 +
  513 + var g_ct=th.data.teamlist.ct_num-th.data.ordertx.length;
  514 + var wz= "";
  515 + if(g_ct>0) wz="还差"+g_ct+"人成团,";
  516 + else{
  517 + g_ct= th.data.max_num -th.data.ordertx.length;
  518 + if(g_ct>0){
  519 + wz="还差"+g_ct+"人享最低优惠,";
  520 + }else{
  521 + wz="已享受最优惠,";
  522 + }
  523 + }
  524 +
  525 + //-------大图后面就不一样了-----------
  526 + switch (type) {
  527 + case 1://会员团和商家团的展示
  528 + //---画线---
  529 + context.setLineWidth(1 * unit)
  530 + context.moveTo(32 * unit, 670 * unit)
  531 + context.lineTo(520 * unit, 670 * unit)
  532 + context.stroke();
  533 +
  534 + //---文字---
  535 + context.setFontSize(22 * unit)
  536 + context.setFillStyle("black")
  537 + context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
  538 +
  539 + //绘制成团图片
  540 + var ct_img ="../../../images/share/ct_num.png";
  541 + context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit);
  542 + var ct_num = th.data.teamlist.ct_num;
  543 + context.setFontSize(14 * unit)
  544 +
  545 + context.setFillStyle("red")
  546 + if(ct_num<10){
  547 + context.fillText(ct_num+"人拼团", 92 * unit, 760 * unit);
  548 + }else{
  549 + context.fillText(ct_num+"人拼团", 86 * unit, 760 * unit);
  550 + }
  551 + context.setFontSize(22 * unit)
  552 + context.fillText("已拼"+th.data.teamlist.buy_num+"份", 166 * unit, 763 * unit);
  553 + context.setFillStyle("gray")
  554 + context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 826 * unit);
  555 + context.setFillStyle("black")
  556 +
  557 + context.setFontSize(22 * unit)
  558 + context.fillText("长按识别二维码,立即参团", 40 * unit, 856 * unit);
  559 + //---二维吗图---
  560 + //-- 自定义海报 --
  561 + if(th.data.poster){
  562 + var erm_x= parseFloat(th.data.poster.ewm_x)*2;
  563 + var erm_y= parseFloat(th.data.poster.ewm_y)*2;
  564 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  565 + }else{
  566 + //---二维吗图---
  567 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  568 + }
  569 + break
  570 + case 2://阶梯团的展示
  571 + //---画线---
  572 + context.setLineWidth(1 * unit)
  573 + context.moveTo(32 * unit, 670 * unit)
  574 + context.lineTo(520 * unit, 670 * unit)
  575 + context.stroke();
  576 + //---文字---
  577 + context.setFontSize(22 * unit)
  578 + context.setFillStyle("black")
  579 + context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit);
  580 + //---绘制中间阶梯的价格---
  581 + var list= JSON.parse(th.data.teamlist.ct_rylist);
  582 + for(var i=0; i<list.length;i++){
  583 + var item=list[i];
  584 + var wi=i*90*unit;
  585 + context.setFontSize(16 * unit)
  586 + context.setFillStyle("red")
  587 + context.fillText("¥", 40 * unit+wi, 756 * unit);
  588 + context.setFontSize(22 * unit)
  589 + var pri=parseFloat(item.price).toFixed(2);
  590 + context.fillText(pri, 56 * unit+wi, 756 * unit);
  591 + context.setFillStyle("gray")
  592 + context.fillText("满"+item.rynum+"人", 40 * unit+wi, 786 * unit);
  593 + }
  594 +
  595 + //----------------下面部分----------------
  596 + context.setFillStyle("gray")
  597 + context.fillText(wz+"快来和我一起拼团吧!", 40 * unit, 830 * unit);
  598 + context.setFillStyle("black")
  599 + context.setFontSize(22 * unit)
  600 +
  601 + context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit);
  602 + //---二维吗图---
  603 + //-- 自定义海报 --
  604 + if(th.data.poster){
  605 + var erm_x= parseFloat(th.data.poster.ewm_x)*2;
  606 + var erm_y= parseFloat(th.data.poster.ewm_y)*2;
  607 + context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit);
  608 + }else{
  609 + //---二维吗图---
  610 + context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit);
  611 + }
  612 + break
  613 + }
  614 +
  615 + //--- 如果是自定义海报的时候 ---
  616 + if(th.data.poster && parseInt(th.data.poster.style)==2){
  617 +
  618 + //如果显示会员信息的话
  619 + if(parseInt(th.data.poster.show_headpic)){
  620 + //获取坐标
  621 + var x= parseFloat(th.data.poster.head_x)*2;
  622 + var y=parseFloat(th.data.poster.head_y)*2;
  623 + //---绘制圆形要放在最后----
  624 + context.save();
  625 + context.beginPath();
  626 + var h_x = x* unit;
  627 + var h_y = y * unit;
  628 + var h_r = 40 * unit;
  629 + var cx = h_x + h_r;
  630 + var cy = h_y + h_r;
  631 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  632 + context.closePath();
  633 + context.fill();
  634 + context.clip();
  635 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  636 + context.restore();
  637 + }
  638 +
  639 + }else{
  640 + //---绘制圆形要放在最后----
  641 + context.save();
  642 + context.beginPath();
  643 + var h_x = 60 * unit;
  644 + var h_y = 24 * unit;
  645 + var h_r = 40 * unit;
  646 + var cx = h_x + h_r;
  647 + var cy = h_y + h_r;
  648 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  649 + context.closePath();
  650 + context.fill();
  651 + context.clip();
  652 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  653 + context.restore();
  654 + }
  655 +
  656 + //把画板内容绘制成图片,并回调 画板图片路径
  657 + context.draw(false, function () {
  658 + setTimeout(function () {
  659 + wx.canvasToTempFilePath({
  660 + x: 0, y: 0,
  661 + width: 750,
  662 + height: 1217,
  663 + destWidth: 750 * 750 / that.data.screenWidth,
  664 + destHeight: 1217 * 750 / that.data.screenWidth,
  665 + canvasId: 'share',
  666 + success: function (res) {
  667 +
  668 + that.setData({
  669 + shareImgPath: res.tempFilePath, canvasHidden: false,
  670 + })
  671 + if (!res.tempFilePath) {
  672 + wx.showModal({
  673 + title: '提示',
  674 + content: '图片绘制中,请稍后重试',
  675 + showCancel: false
  676 + })
  677 + return false;
  678 + }
  679 +
  680 + // wx.previewImage({
  681 + // //将图片预览出来
  682 + // urls: [that.data.shareImgPath]
  683 + // });
  684 +
  685 + that.setData({
  686 + showPoster: true,
  687 + });
  688 +
  689 + wx.hideLoading();
  690 + }
  691 + })
  692 + },500)
  693 + });
  694 + });
  695 + }
  696 + });
  697 + },
  698 +
  699 +
  700 + //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
  701 + draw_Text: function (ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) {
  702 + var lineWidth = 0;
  703 + var lastSubStrIndex = 0; //每次开始截取的字符串的索引
  704 + var han = 0;
  705 + for (let i = 0; i < str.length; i++) {
  706 + if (han == 2) return;
  707 +
  708 + //lineWidth += ctx.measureText(str[i]).width;
  709 + lineWidth += ut.measureText(str[i], 21.3 * unit);
  710 +
  711 + if (lineWidth > canvasWidth) {
  712 + han++;
  713 + if (han == 2)
  714 + ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
  715 + else
  716 + ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
  717 +
  718 + initHeight += 22; //22为字体的高度
  719 + lineWidth = 0;
  720 + lastSubStrIndex = i;
  721 + titleHeight += 20;
  722 + }
  723 + if (i == str.length - 1) { //绘制剩余部分
  724 + ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
  725 + }
  726 + }
  727 + },
  728 +
  729 + //c点击打开拼团弹窗
  730 + cpd: function() {
  731 + console.log("heheh");
  732 + this.setData({ pd_xx: 1,})
  733 + },
  734 +
  735 + //点击关闭拼团弹窗
  736 + close_pt_xx: function() {
  737 + this.setData({ pd_xx: 0, })
  738 + },
  739 +
  740 + go_goodsinfo:function (e) {
  741 + var gid=e.currentTarget.dataset.gid;
  742 + var url="/pages/goods/goodsInfo/goodsInfo?goods_id="+gid;
  743 + wx.navigateTo({ url: url, }) //跳到非tabbar页
  744 + },
  745 +
  746 + gohome:function () {
  747 + getApp().goto("/pages/index/index/index");
  748 + },
  749 +
  750 + //--获取头像的本地缓存,回调写法--
  751 + get_head_temp:function (tt,func) {
  752 + var ee=this;
  753 + if(ee.data.share_head){
  754 + tt(func);
  755 + return false;
  756 + }
  757 + //---获取分享图片的本地地址,头像和商品图片----
  758 + var path2 = getApp().globalData.userInfo.head_pic;
  759 + if(path2==""){
  760 + ee.data.share_head ="../../../images/share/hui_hear_pic.png";
  761 + tt(func);
  762 + }else {
  763 + path2=path2.replace("http://thirdwx.qlogo.cn","https://wx.qlogo.cn");
  764 + path2=path2.replace("https://thirdwx.qlogo.cn","https://wx.qlogo.cn");
  765 + wx.getImageInfo({
  766 + src: path2,
  767 + success: function (res) {
  768 + //res.path是网络图片的本地地址
  769 + ee.data.share_head = res.path;
  770 + tt(func);;
  771 + },
  772 + fail: function (res) {
  773 + ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
  774 + tt(func);
  775 + }
  776 + });
  777 + }
  778 + },
  779 +
  780 + //--获取商品图片的本地缓存,回调写法--
  781 + get_goods_temp:function (tt) {
  782 + var ee=this;
  783 + if(ee.data.share_img_localpath) {
  784 + tt();
  785 + return false;
  786 + }
  787 + var path2 = os.imghost + ee.data.teamlist.share_imgurl;
  788 + //获取商品是分享图信息
  789 + wx.getImageInfo({
  790 + src: path2,
  791 + success: function (res) {
  792 + //res.path是网络图片的本地地址
  793 + ee.data.share_img_localpath = res.path;
  794 + tt();
  795 + },
  796 + fail: function (res) {
  797 + ee.data.share_img_localpath= "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的
  798 + tt();
  799 + }
  800 + });
  801 + },
  802 +
  803 + go_pay_wk:function(){
  804 + var url = "/pages/cart/cart_wk/cart_wk?order_id=" + this.data.order.order_id;
  805 + getApp().goto(url);
  806 + },
  807 +
  808 + img_show_err:function(e){
  809 + var err_img = e.currentTarget.dataset.err;
  810 + var ob={};
  811 + ob[err_img] = this.data.iurl + "/miniapp/images/default_g_img.gif";
  812 + this.setData(ob);
  813 +
  814 + },
  815 +
  816 + //------ 分享配置 --------
  817 + onShareAppMessage: function (e) {
  818 + var th=this;
  819 + var scene=this.data.teamgroup.id;
  820 + var url="/pages/team/team_show/team_show?tg_id="+scene;
  821 + //--分享图片--
  822 + var img=th.data.iurl+th.data.teamlist.share_imgurl;
  823 + //--把会员分享出去--
  824 + if(getApp().globalData.user_id){
  825 + if(url.indexOf("?")>0)
  826 + url+="&first_leader="+getApp().globalData.user_id;
  827 + else
  828 + url+="?first_leader="+getApp().globalData.user_id;
  829 + }
  830 + // console.log('url+++++>>>>>', url, th.data.teamlist.title);
  831 +
  832 + var share_title=th.data.teamlist.title;
  833 + if(th.data.teamlist.share_title){
  834 + share_title=th.data.teamlist.share_title;
  835 + }
  836 +
  837 + return {
  838 + path:url,
  839 + title: share_title,
  840 + imageUrl: img,
  841 + }
  842 + },
  843 +
  844 + clickShare() {
  845 + this.setData({
  846 + share_hidden: true,
  847 + });
  848 + },
  849 +
  850 + send() {
  851 + this.setData({
  852 + share_hidden:false,
  853 + });
  854 + },
  855 +
  856 + cancel() {
  857 + this.setData({
  858 + share_hidden:false,
  859 + });
  860 + },
  861 +
  862 +
  863 + closePoster() {
  864 + this.setData({
  865 + showPoster: false,
  866 + });
  867 + },
  868 +
  869 +
  870 + // 保存图片到手机
  871 + savePic() {
  872 + console.log('保存图片');
  873 + var self = this;
  874 + // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限
  875 + this.getSetting().then((res) => {
  876 + // 判断用户是否授权了保存到相册的权限,如果没有发起授权
  877 + if (!res.authSetting['scope.writePhotosAlbum']) {
  878 + this.authorize().then(() => {
  879 + // 同意授权后保存下载文件
  880 + this.saveImage(self.data.shareImgPath)
  881 + .then(() => {
  882 + self.setData({
  883 + showPoster: false
  884 + });
  885 + });
  886 + })
  887 + } else {
  888 + // 如果已经授权,保存下载文件
  889 + this.saveImage(self.data.shareImgPath)
  890 + .then(() => {
  891 + self.setData({
  892 + showPoster: false
  893 + });
  894 + });
  895 + }
  896 +
  897 + })
  898 + },
  899 +
  900 +
  901 + // 保存图片到系统相册
  902 + saveImage(saveUrl) {
  903 + var self = this;
  904 + return new Promise((resolve, reject) => {
  905 + wx.saveImageToPhotosAlbum({
  906 + filePath: saveUrl,
  907 + success: (res) => {
  908 + wx.showToast({
  909 + title: '保存成功',
  910 + duration: 1000,
  911 + });
  912 + self.setData({
  913 + showPlaybill: 'true'
  914 + });
  915 + resolve();
  916 + },
  917 + fail: () => {
  918 + wx.showToast({
  919 + title: '保存失败',
  920 + duration: 1000,
  921 + });
  922 + }
  923 + })
  924 + })
  925 + },
  926 +
  927 + // 获取用户已经授予了哪些权限
  928 + getSetting() {
  929 + return new Promise((resolve, reject) => {
  930 + wx.getSetting({
  931 + success: res => {
  932 + resolve(res)
  933 + }
  934 + })
  935 + })
  936 + },
  937 +
  938 + // 发起首次授权请求
  939 + authorize() {
  940 + // isFirst 用来记录是否为首次发起授权,
  941 + // 如果首次授权拒绝后,isFirst赋值为1
  942 + let isFirst = wx.getStorageSync('isFirst') || 0;
  943 + return new Promise((resolve, reject) => {
  944 + wx.authorize({
  945 + scope: 'scope.writePhotosAlbum',
  946 + // 同意授权
  947 + success: () => {
  948 + resolve();
  949 + },
  950 + // 拒绝授权,这里是用户拒绝授权后的回调
  951 + fail: res => {
  952 + if(isFirst === 0) {
  953 + wx.setStorageSync('isFirst', 1);
  954 + wx.showToast({
  955 + title: '保存失败',
  956 + icon: 'none',
  957 + duration: 1000
  958 + })
  959 + } else {
  960 + this.showModal();
  961 + }
  962 + console.log('拒绝授权');
  963 + reject();
  964 + }
  965 + })
  966 + })
  967 + },
  968 +
  969 +
  970 +
  971 +
  972 +})
  973 +
... ...
packageC/pages/luckyGo/luckyGo_details/luckyGo_details.json 0 → 100644
  1 +{
  2 + "windom": {
  3 + "navigationBarTitleText": "参团详情",
  4 + "backgroundTextStyle": "light",
  5 + "navigationBarTextStyle": "white",
  6 + "navigationBarBackgroundColor": "#ffffff",
  7 + "backgroundColor": "#eeeeee"
  8 + },
  9 + "usingComponents": {
  10 + "share": "/components/share/share"
  11 + }
  12 +}
0 13 \ No newline at end of file
... ...
packageC/pages/luckyGo/luckyGo_details/luckyGo_details.wxml 0 → 100644
  1 +<wxs module="filters" src="../../../../utils/filter.wxs"></wxs>
  2 +<!---- //文字"-->
  3 +<view>
  4 +
  5 + <view class='center'>
  6 + <view class='cenleft'>
  7 + <image src='{{image}}' binderror='img_show_err' data-err="image"></image>
  8 + </view>
  9 + <view class='cenright'>
  10 + <!----//图片区域---->
  11 + <view class='cenrt'>
  12 + <view class='xc-goods-details ellipsis-2 fs30'>
  13 + {{goods.goods_name}}
  14 + </view>
  15 + </view>
  16 + <view class='cenrcen flex-vertical-between'>
  17 + <view>
  18 + <view class="fs40 xc-wc" style='font-size:40rpx'>
  19 + <span class="fs28 xc-rmbs" style="font-weight:500;">¥</span>{{teamlist.price}}</view>
  20 + <view class="fs22 word-line xc-wc" style="width:172rpx;">
  21 + 零售价¥{{goods.market_price}}
  22 + </view>
  23 + </view>
  24 + <view class="xc-wc fs24">
  25 + <view>
  26 + <view class="">已拼{{teamlist.buy_num}}件</view>
  27 + <view class="flex xc-valframe t-c">
  28 + <view class="xc-frame-img">
  29 + <image class="picture" src="{{iurl}}/miniapp/images/bai-ren.png"></image>
  30 + </view>
  31 + <view class="xc-people-val">
  32 + {{teamlist.ct_num}}人拼
  33 + </view>
  34 + </view>
  35 + </view>
  36 + </view>
  37 + </view>
  38 + </view>
  39 + <view class='clear'></view>
  40 + </view>
  41 + <!----以上商品显示完成---->
  42 +
  43 +
  44 + <view class='body'>
  45 + <!-- 阶梯团 -->
  46 + <view class='bodytop' wx:if="{{teamlist.kttype==3&& p_status==1}}">
  47 + 当前价格
  48 + <text class="xc-wc">¥{{ct_price}}</text>,
  49 + <block wx:if="{{max_num-ordertx.length>0}}">
  50 + <text class="xc-wc">还差{{max_num-ordertx.length}}</text>人享受最低价格<text class="xc-wc">¥{{min_price}}</text>
  51 + </block>
  52 + <block wx:else>
  53 + 该团已经拼购到最低价了哦~
  54 + </block>
  55 + </view>
  56 + <!-- 拼团成功 -->
  57 + <view class="xc-ptcomplete-ladder flex-level fs28" wx:if="{{teamlist.kttype==3&&p_status==2}}">
  58 + <view class="xc-wc">拼团成功</view>,当前价格
  59 + <text class="xc-wc">¥{{ct_price}}</text>
  60 + <view class="xc-img-frame oh">
  61 + <image class="img" src="{{iurl}}/miniapp/images/xc_qtcg.png"></image>
  62 + </view>
  63 + </view>
  64 +
  65 + <view style="height: 20rpx" wx:if="{{teamlist.kttype==3&&p_status==4}}"></view>
  66 +
  67 +
  68 + <!-- 阶梯团失败 -->
  69 + <view class=".xc-fail-ladder flex-level fs28" wx:if="{{pay_f==1 || order.pt_status==3}}">
  70 + <view class="xc-wc">拼团失败</view>
  71 + <view class="xc-img-frame oh" >
  72 + <image class="img" src="{{iurl}}/miniapp/images/xc-qtshibai.png"></image>
  73 + </view>
  74 + </view>
  75 +
  76 + <!-- 会员团和商家团 -->
  77 + <view class='bodytop' wx:if="{{(teamlist.kttype==2 || teamlist.kttype==1) && p_status==1}}">
  78 + 还差
  79 + <text class="xc-wc">{{teamlist.ct_num-ordertx.length}}</text>人成团,组团成功为您节省
  80 + <text class="xc-wc">{{filters.toFix(goods.market_price-teamlist.price,2)}}</text>元
  81 + </view>
  82 + <!-- 拼团成功 -->
  83 + <view class="xc-ptcomplete flex-level fs28" wx:if="{{p_status==2 && (teamlist.kttype==2||teamlist.kttype==1)}}">
  84 + <view class="xc-wc">拼团成功</view>,为您节省
  85 + <text class="xc-wc">{{filters.toFix(goods.market_price-teamlist.price,2)}}</text>元
  86 + <view class="xc-img-frame oh">
  87 + <image class="img" src="{{iurl}}/miniapp/images/xc_qtcg.png"></image>
  88 + </view>
  89 + </view>
  90 +
  91 + <!----//// //头像---->
  92 + <view class="flex_tou">
  93 + <view class='bodyimg flex-level'>
  94 + <view class='d' wx:for="{{ordertx2}}" wx:key>
  95 + <image src='{{item.head_pic}}'></image>
  96 + <span wx:if="{{item.is_pt_tz==1}}">团长</span>
  97 + </view>
  98 + <view class='d' wx:for="{{sf_arr}}" wx:if="{{p_status!=2}}">
  99 + <image src='{{iurl}}/miniapp/images/shafa.png'></image>
  100 + </view>
  101 +
  102 + <view class='xc-ellipsis-img flex-vertical' wx:if="{{ordertx.length>5}}">
  103 + <image class="pictures " src="{{iurl}}/miniapp/images/xc_ellipsis.png"></image>
  104 + </view>
  105 + </view>
  106 + </view>
  107 +
  108 + <view class='bodytime'>
  109 + <!----/ //旁边直线---->
  110 + <view class='bodytimeleft'>
  111 + <view class='xian'></view>
  112 + </view>
  113 +
  114 + <!-- 阶梯团 开始-->
  115 + <view class='bodytimecen' wx:if='{{p_status==1}}'>
  116 + 剩余
  117 +
  118 + <span>{{obj.hou}}</span>:
  119 + <span>{{obj.hou}}</span>:
  120 + <span>{{obj.min}}</span>:
  121 + <span>{{obj.sec}}</span>结束
  122 + </view>
  123 +
  124 + <!-- 阶梯团 成功-->
  125 + <view class='bodytimecen-success' wx:if='{{teamlist.kttype==3&&p_status==2 && is_pay_wk!=1}}'>
  126 + 剩余支付时间:
  127 +
  128 + <span>{{obj.hou}}</span>时
  129 + <span>{{obj.min}}</span>分
  130 + <span>{{obj.sec}}</span>秒
  131 + </view>
  132 +
  133 + <view class='bodytimecen-success' wx:if='{{teamlist.kttype==3&&p_status==4 }}'>
  134 + 拼团已结束
  135 + </view>
  136 +
  137 + <!-- </block> -->
  138 + <!-- 阶梯团失败 -->
  139 + <view class='bodytimecen' wx:if='{{p_status==3}}'>
  140 + 还差
  141 + <text class="xc-wc">{{teamlist.ct_num-ordertx.length}}</text>人参团, 拼团失败。
  142 + </view>
  143 + <!-- 会员团 -->
  144 + <view class='bodytimecen' wx:if='{{(teamlist.kttype==1 || teamlist.kttype==2) && p_status==2}}'>
  145 + 已经有
  146 + <text class="xc-wc">{{ordertx.length}}</text>人参团, 拼团成功。
  147 + </view>
  148 +
  149 + <!----//旁边直线---->
  150 + <view class='bodytimeright'>
  151 + <view class='xian'></view>
  152 + </view>
  153 + </view>
  154 +
  155 + <!-- 阶梯团 -->
  156 + <view class='fs30 xc-green' wx:if='{{teamlist.kttype==3&&p_status==2}}'>
  157 + 拼团成功, 规定时间内支付尾款即发货
  158 + </view>
  159 + <view class="xc-wc fs30 t-c xc-onclik" wx:if="{{p_status==1}}">
  160 + 点击下方按钮分享给小伙伴,可快速成团!
  161 + </view>
  162 +
  163 + <!-- <block wx:if="{{pay_f!=1 && order.pt_status<2}}"> -->
  164 + <!----/ // // // //按钮---->
  165 +
  166 + <view wx:if="{{teamlist.kttype==3}}" class='bodybutton'>
  167 + <!-- 阶梯团 -->
  168 + <button wx:if="{{p_status==1}}" bindtap="clickShare" style='background-color:#fab55a; color:#fff'>
  169 + <!-- <button wx:if="{{p_status==1}}" bindtap="clickShare" bindtap='cmeng' style='background-color:#fab55a; color:#fff'> -->
  170 + 邀请好友参团
  171 + </button>
  172 + <button bindtap="go_pay_wk" style='background-color:#42c780;' wx:if="{{order.pt_status==2 && order.is_zsorder==4 }}">
  173 + 支付尾款
  174 + </button>
  175 + </view>
  176 + <!-- <view wx:elif="{{teamlist.ct_num-ordertx.length>0}}" class='' bindtap='cmeng'> -->
  177 +
  178 + <!--会员团 商家团-->
  179 + <button class="bodybutton" style='background-color:#fab55a; color:#fff' bindtap='clickShare'
  180 + wx:if="{{(teamlist.kttype==2||teamlist.kttype==1)&&p_status==1}}">邀请好友参团</button>
  181 +
  182 + <!-- </view> -->
  183 + <!-- </block> -->
  184 + <view class="xc-home-page-frame">
  185 + <button class="xc-home-page" bindtap='gohome'> 返回首页</button>
  186 + </view>
  187 +
  188 + <view class='zspan' hidden="{{hiddenName}}" bindtap='click'>查看拼团列表
  189 + <view class='down-arrow1'></view>
  190 + </view>
  191 +
  192 + </view>
  193 +
  194 + <!---/ // // // // //展开拼团列表---->
  195 + <view class='bodyfoot'>
  196 + <view class='bodyselect' wx:if="{{zk}}" bindtap='czk'>
  197 + <span>查看拼团列表
  198 + <view class='down-arrow'></view>
  199 + </span>
  200 + </view>
  201 +
  202 + <view class='zhangxi' hidden="{{hiddenName}}" wx:for="{{ordertx}}" wx:for-index="ky">
  203 + <view class='img rel'>
  204 + <view class="xc-list" wx:if="{{item.is_pt_tz}}">
  205 + <span>团长</span>
  206 + </view>
  207 + <image src='{{item.head_pic}}'></image>{{item.nickname}}
  208 + </view>
  209 + <!-- <view class='zssj' wx:if="{{teamlist.kttype==1}}">{{item.add_time_date}}参团</view> -->
  210 + <view class='zssj' wx:if="{{ky==0 &&teamlist.kttype!=1}}">{{item.add_time_date}}
  211 + <text>开团</text>
  212 + </view>
  213 + <view class='zssj' wx:else>{{item.add_time_date}} 参团</view>
  214 + <view class="clear"></view>
  215 + </view>
  216 +
  217 +
  218 + <view class='clear'></view>
  219 + </view>
  220 + <view class='clear'></view>
  221 +
  222 + <!----//大家都在团---->
  223 + <view class='goodslist'>
  224 + <view class='goodslisttop'>
  225 + <!-- <view class='goodslistspan fs24'>大家都在团</view> -->
  226 + <!-- 推荐商品 -->
  227 + <view class="flex-center rel xc-linellae-frame">
  228 + <view class="xc-linellae"></view>
  229 + <view class="abs flex-center xc-recommend-frame ">
  230 + <image class=" xc-recommend" src="{{iurl}}/miniapp/images/diamond.png">
  231 + </image>
  232 + <view class="xc-recommend-word">大家都在团</view>
  233 + </view>
  234 + </view>
  235 + <view class='goodslisttopright'></view>
  236 + </view>
  237 + <view class="changxin">
  238 + <view class='onegoods' wx:for="{{pageteam}}" wx:key="{{index}}" bindtap="go_goodsinfo" data-gid="{{item.goods_id}}">
  239 + <view class='onegoodsimg'>
  240 + <image src="{{imageurl+item.share_imgurl}}"></image>
  241 + </view>
  242 + <view class="xc-buttmo-frame">
  243 + <view class='onegoodsdesc '>
  244 +
  245 + <view class='price flex-vertical-between'>
  246 + <view class='jgleft fs32 flex-center xc-wc'>
  247 + <view class="xc-ping xc-wc fs26 t-c">拼</view>
  248 + <text class="fs20" style='height:39rpx;margin-right:5rpx;margin-left:15rpx;' >¥</text>11.00{{item.price}}
  249 + </view>
  250 + <view class='jgright'>{{item.ct_num}}2
  251 + <span>人参团</span>
  252 + </view>
  253 + </view>
  254 + </view>
  255 + <view class="xc-shuoming ellipsis-2 fs26">
  256 + <text>{{item.goods_name}}</text>
  257 + </view>
  258 + </view>
  259 + </view>
  260 + </view>
  261 + </view>
  262 +</view>
  263 +
  264 +
  265 +
  266 +
  267 +<!--二维码显示页面-->
  268 +<canvas canvas-id='share' style='width:750rpx;height:1217rpx;' wx:if='{{canvasHidden}}'></canvas>
  269 +<!--拼团玩法弹出框-->
  270 +<!----弹起的---->
  271 +<block wx:if="{{pd_xx}}">
  272 + <view class="bview"></view>
  273 + <view class="juzhong">
  274 + <view class="xq">
  275 + <view class="title" bindtap="close_pt_xx">拼团玩法介绍
  276 + <image src="{{iurl}}/miniapp/images/gbi.png" class="close"></image>
  277 + </view>
  278 + <view>1.开团:
  279 + <text class="hs1">选择心仪商品,点击“发起X人团”按钮,付款后即为开团成功;</text>
  280 + </view>
  281 + <view>2.参团:
  282 + <text class="hs1">进入朋友分享的页面,点击“立即参团”按钮,付款后即为参团成功,若多人同时支付,支付成功时间较早的人获得参团资格;</text>
  283 + </view>
  284 + <view>3.成团:
  285 + <text class="hs1">在开团或参团成功后,点击“邀请小伙伴参团”将页面分享给好友,在有效时间内凑齐人数即为成团,此时商家会开始发货;</text>
  286 + </view>
  287 + <view>4.组团失败:
  288 + <text class="hs1">在有效时间内未凑齐人数,即为组团失败,此时付款项会原路退回到支付账户;</text>
  289 + </view>
  290 + <view>5.
  291 + <text class="hs1">组团有效期间内,拼购商品订单不允许取消。 </text>
  292 + </view>
  293 + </view>
  294 + </view>
  295 +</block>
  296 +
  297 +<!-- 分享控件,底部弹出 -->
  298 +<share id="share_button" bind:send="send" bind:cancel="cancel" bind:share_img="saveImageToPhotosAlbum" wx:if="{{share_hidden}}"></share>
  299 +
  300 +
  301 +<view wx:if="{{showPoster}}">
  302 + <view class="mask" catchtap="closePoster"></view>
  303 + <view class="poster-container">
  304 + <view class="poster-wrapper">
  305 + <view class="poster">
  306 + <!-- <view class="poster" bindtap="previewImage"> -->
  307 + <image src="{{shareImgPath}}" class="poster-img" show-menu-by-longpress></image>
  308 + <view class="btn-close" catchtap="closePoster"><text class="iconfont icon-close"></text></view>
  309 + </view>
  310 + <view class="btn-container">
  311 + <!--<button class="btn-share" open-type="share" bindtap="">微信好友分享</button>-->
  312 + <button class="btn-share" bindtap="savePic">保存到相册</button>
  313 + </view>
  314 + </view>
  315 + </view>
  316 +</view>
  317 +
  318 +
  319 +
... ...
packageC/pages/luckyGo/luckyGo_details/luckyGo_details.wxss 0 → 100644
  1 +page{
  2 + background-color:#eee;
  3 +}
  4 +.top{
  5 + background-color:rgb(216, 230, 220);
  6 + color: rgb(98, 155, 13);
  7 + text-align: center;
  8 + height:120rpx;
  9 + width: 100%;
  10 + padding-top:24rpx;
  11 +}
  12 +
  13 +.center{
  14 + height: 240rpx;
  15 + width: 100%;
  16 + position: relative;
  17 + background:#fff;
  18 +}
  19 +
  20 +.cenleft{
  21 + width: 240rpx;
  22 + height: 100%;
  23 +
  24 + float: left;
  25 + display:flex;
  26 + justify-content: center;
  27 + align-items: center;
  28 +}
  29 +
  30 +.cenleft image{
  31 + background-color:white ;
  32 + width: 200rpx;
  33 + height: 200rpx;
  34 +
  35 +}
  36 +
  37 +
  38 +.cenrt{
  39 + width: 460rpx; margin-top: 10rpx;
  40 +}
  41 +
  42 +.cenright{
  43 + height: 100%;
  44 + width: 460rpx;
  45 +
  46 + float: left;
  47 +}
  48 +
  49 +.cenrtop{
  50 + margin-top: 10rpx;
  51 + background-color: red;
  52 + color: white;
  53 + border-radius:10rpx;
  54 + padding-left: 16rpx;
  55 + width: 140rpx;
  56 + font-size: 32rpx;
  57 + float: left;
  58 + height: 40rpx;
  59 +}
  60 +
  61 +.cenrtoptitle{
  62 + float: left;
  63 + width: 295rpx;
  64 + height: 40rpx;
  65 + margin-left: 12rpx;
  66 + font-size: 28rpx;
  67 + margin-top:12rpx;
  68 +}
  69 +
  70 +.cenrtoptitle>span{
  71 + width: 100%;
  72 + display: inline-block;
  73 + overflow:hidden;
  74 + text-overflow:ellipsis;
  75 + white-space:nowrap
  76 +}
  77 +
  78 +.cenrcen{
  79 + height: 70rpx;
  80 + margin-top: 35rpx;
  81 + width:474rpx;
  82 +}
  83 +.jg{ font-size: 40rpx;
  84 + margin-right: 30rpx;}
  85 +.jgx{
  86 + font-size: 28rpx;
  87 + color: #777;
  88 + text-decoration:line-through;
  89 + margin-left: 20rpx;
  90 +}
  91 +
  92 +.cenrfoot{
  93 + align-content: center;
  94 + text-align: center;
  95 + border: 2rpx solid red;
  96 + border-radius:10rpx;
  97 + color: red;
  98 + float: left;
  99 + font-size: 24rpx;
  100 + padding: 4rpx 16rpx;
  101 +}
  102 +
  103 +.body{
  104 + background-color: white;
  105 + /* min-height:418rpx; */
  106 + width: 100%;
  107 + margin-top: 4rpx;
  108 + border-top:5rpx solid #eee;
  109 + height: auto;
  110 +}
  111 +
  112 +.bodytop{
  113 + background-color: white;
  114 + text-align: center;
  115 + font-size: 28rpx;
  116 + height:100rpx;
  117 + line-height:117rpx;
  118 +
  119 +}
  120 +
  121 +.bodytop span{
  122 + color: red;
  123 +}
  124 +
  125 +
  126 +.bodyimg{
  127 + height:140rpx;
  128 + width:590rpx;
  129 +
  130 +
  131 +
  132 +}
  133 +.bodyimg image{
  134 +
  135 +border-radius:50rpx;
  136 +height: 96rpx;
  137 +width: 96rpx;
  138 +background-color:burlywood;
  139 +margin-top: 30rpx;
  140 + position: absolute;
  141 +
  142 +}
  143 +
  144 +.d{
  145 +width:101rpx;
  146 + height:101rpx;
  147 + display: inline-block;
  148 + margin-right:15rpx;
  149 +
  150 +}
  151 +
  152 +.bodyimg span{
  153 + background-color:#e22b44;
  154 + color: white;
  155 + font-size: 24rpx;
  156 + border-radius:6rpx;
  157 + padding:2rpx 10rpx;
  158 + position: relative;
  159 + top: 0rpx;
  160 + left: 40rpx;
  161 +}
  162 +
  163 +
  164 +
  165 +.bodyspan{
  166 + color: red;
  167 + text-align: center;
  168 + font-size: 26rpx;
  169 +
  170 +}
  171 +
  172 +.bodyselect{
  173 + line-height: 47rpx;
  174 +}
  175 +
  176 +.bodytime{
  177 + height: 88rpx;
  178 + width: 100%;
  179 + display: flex;
  180 + flex-wrap: nowrap;
  181 + margin-left:40rpx;
  182 + align-items:center;
  183 +
  184 +}
  185 +
  186 +.bodytimeleft{
  187 + text-decoration:line-through;
  188 + flex-grow: 1.7;
  189 +}
  190 +
  191 +
  192 +.bodytimecen-success{
  193 + text-align: center;
  194 + flex-grow: 1;
  195 + line-height:75rpx;
  196 + font-size: 30rpx;
  197 + color: #000;
  198 +}
  199 +.bodytimecen-success span{
  200 +
  201 + color: #18ba5f;
  202 + border-radius:7rpx;
  203 + font-size: 30rpx;
  204 + margin: 0 auto;
  205 +
  206 +}
  207 +.bodytimecen{
  208 + text-align: center;
  209 + flex-grow: 1;
  210 +
  211 + font-size: 30rpx;
  212 + color: #000;
  213 +}
  214 +.bodytimecen span{
  215 + background-color: #333333;
  216 + color: white;
  217 + border-radius:7rpx;
  218 + padding-left: 10rpx;
  219 + font-size: 30rpx;
  220 + margin: 0 auto;
  221 + padding-right:10rpx;
  222 + margin-right:5px
  223 +}
  224 +
  225 +
  226 +.bodytimecen span:last-child{
  227 + margin-right: 10rpx;
  228 +}
  229 +
  230 +.bodytimeright{
  231 + flex-grow: 1.7;
  232 + margin-right:72rpx;
  233 +
  234 +}
  235 +
  236 +.bodybutton{
  237 + width: 90%;
  238 + margin: 0 auto;
  239 + text-align: center;
  240 + line-height: 60rpx;
  241 + border-radius:15rpx;
  242 + height: auto;
  243 +}
  244 +
  245 +.bodybutton button{
  246 + height:60rpx;
  247 + width: 100%;
  248 + background-color: #e4374d;
  249 + color: white;
  250 + font-size:26rpx;
  251 + border-radius:12rpx;
  252 +
  253 +}
  254 +
  255 +.bodyfoot{
  256 +
  257 + width: 100%;
  258 + text-align: center;
  259 +
  260 + font-size: 28rpx;
  261 + color: #000;
  262 + background-color: white;
  263 +}
  264 +
  265 +
  266 +
  267 +
  268 +
  269 +.pintuan{
  270 + width: 100%;
  271 + height: 84rpx;
  272 + background-color: white;
  273 + color: black;
  274 + text-align: center;
  275 + font-size:36rpx;
  276 + margin-top: 60rpx;
  277 +}
  278 +
  279 +.pintuanzhou{
  280 +float: left;
  281 +
  282 +line-height: 84rpx;
  283 +width: 220rpx;
  284 +}
  285 +
  286 +.pintuanyou{
  287 + float: right;
  288 + color: rgb(168, 167, 167);
  289 + line-height: 84rpx;
  290 + font-size: 28rpx;
  291 + margin-right: 20rpx;
  292 +}
  293 +
  294 +.onegoods{
  295 + background-color: white;
  296 + width: 345rpx;
  297 + min-height: 490rpx;
  298 + height:auto;
  299 +
  300 + border:2rpx solid #eee;
  301 +
  302 + float: left;
  303 + margin-right:17rpx;
  304 + border-radius:20rpx;
  305 +}
  306 +
  307 +.goodsl{
  308 + background-color: white;
  309 +}
  310 +
  311 +.onegoodsimg{
  312 + width: 100%;
  313 + height: 360rpx;
  314 +}
  315 +
  316 +.onegoodsimg image{
  317 + height: 100%;
  318 + width: 100%;
  319 + border-radius:20rpx 20rpx 0 0;
  320 +
  321 +}
  322 + .xc-buttmo-frame{
  323 + min-height: 103rpx;
  324 + height: auto;
  325 + padding-bottom:15rpx;
  326 +
  327 + }
  328 +.xc-buttmo-frame .onegoodsdesc {
  329 +
  330 + height: 80rpx;
  331 +}
  332 +
  333 +.xc-buttmo-frame .onegoodsdesc .price{
  334 +
  335 + padding-left:10rpx;
  336 + height:85rpx;
  337 +
  338 +}
  339 +.xc-ping{
  340 + border-radius: 50%;
  341 + background: #fff;
  342 + line-height:34rpx;
  343 +width:34rpx;
  344 +height:34rpx;
  345 +font-size:24rpx;
  346 +
  347 +}
  348 +.jgleft{
  349 +border-radius:36rpx;
  350 +height:45rpx;
  351 +line-height:50rpx;
  352 +color:#fff;
  353 +padding-left:7rpx;
  354 +padding-right:24rpx;
  355 +background:#e4374d;
  356 +}
  357 +
  358 +.jgright{
  359 + font-size: 26rpx;
  360 + height:16rpx;
  361 +padding-right:10rpx;
  362 +color:rgb(168, 167, 167);
  363 +}
  364 +
  365 +.jgright span{
  366 + color: rgb(168, 167, 167);
  367 +}
  368 +
  369 +.goodslisttop{
  370 + width: 100%;
  371 +}
  372 +
  373 +.goodslisttop{
  374 + width: 100%;
  375 + margin-top: 5rpx;
  376 + border-bottom: 4rpx solid #eee;
  377 + text-align: center;
  378 +}
  379 +
  380 +.goodslistspan{
  381 +
  382 + margin: 0 auto;
  383 + padding-top: 20rpx;
  384 +}
  385 +
  386 +.xian{
  387 + width: 100%;
  388 + border-bottom: 2rpx solid #eee;
  389 + float: left;
  390 +}
  391 +
  392 +.bodyselect{
  393 + height: 90rpx;
  394 + background-color: white;
  395 + width: 100%;
  396 + line-height:90rpx;
  397 +
  398 +}
  399 +
  400 +
  401 +.changxin{
  402 + overflow: hidden;
  403 + width: 100%;
  404 + padding-left:20rpx;
  405 +
  406 +}
  407 +
  408 +.zhangxi{
  409 + width: 100%;
  410 + background-color:white;
  411 + color: black;
  412 +}
  413 +
  414 +.img{
  415 + height: 100rpx;
  416 + margin-bottom: 0rpx;
  417 + float: left;
  418 + color: black;
  419 + line-height:100rpx;
  420 +display:flex;
  421 +align-items:center;
  422 +
  423 +}
  424 +
  425 +.zhangxi image{
  426 + border-radius:50rpx;
  427 + height: 60rpx;
  428 + width: 60rpx;
  429 + float: left;
  430 +
  431 + background-color: red;
  432 + margin-left: 40rpx;
  433 + margin-right:10rpx;
  434 +
  435 +}
  436 +
  437 +.zhangxi .zssj{
  438 + width: 413rpx;
  439 + margin-left: 28rpx;
  440 + float: right;
  441 + margin-top:32rpx;
  442 +}
  443 +
  444 +.zspan{
  445 + float: left;
  446 + text-align: center;
  447 + display: flex;
  448 + align-items: center;
  449 + justify-content: center;
  450 + height: 48rpx;
  451 + font-size: 28rpx;
  452 + color:#000;
  453 + margin-bottom: 10rpx;
  454 + padding-bottom: 10rpx;
  455 + width: 100%;
  456 + background: #fff;
  457 + border-bottom:3rpx solid #eee;
  458 + margin-top:20rpx;
  459 +
  460 +}
  461 +
  462 +
  463 +
  464 +.mtop{
  465 + text-align: center;
  466 + color: white;
  467 + background-color:rgba(0, 0, 0, .4);
  468 + width: 100%;
  469 + height: 100%;
  470 + position: fixed;
  471 + z-index: 5;top:0;left: 0;
  472 +
  473 +}
  474 +
  475 +.mt1{
  476 + margin-top: 200rpx;
  477 + margin-bottom: 20rpx;
  478 +}
  479 +
  480 +.mts{
  481 + color:#E1E10B;
  482 +}
  483 +
  484 +.mcou{
  485 + font-size: 48rpx;
  486 +
  487 +}
  488 +
  489 +.mfoot{
  490 + width: 100%;
  491 + margin-top: 700rpx;
  492 +}
  493 +
  494 +
  495 +.mbtn{
  496 + margin-top: 60rrpx;
  497 + width: 400rpx;
  498 + background: #666666;
  499 + color: #fff;
  500 + border-radius: 20rpx;
  501 + font-size: 32rpx;
  502 +}
  503 +
  504 +
  505 +
  506 +
  507 +
  508 +
  509 +
  510 +.etop{
  511 + padding-top: 200rpx;
  512 + width: 100%;
  513 + height: 100%;
  514 + position: fixed;
  515 + left: 0rpx;
  516 + top: 0rpx;
  517 + z-index: 12rpx;
  518 +background-color:rgba(0, 0, 0, .4);
  519 +
  520 +}
  521 +
  522 +.emyimage{
  523 + display:flex;
  524 + justify-content: center;
  525 + align-items: center;
  526 +}
  527 +
  528 +
  529 +.emyimage image{
  530 + background-color: red;
  531 + width: 300rpx;
  532 + height: 300rpx;
  533 + margin: 0 auto;
  534 +
  535 +}
  536 +
  537 +.espan{
  538 + font-size: 32rpx;
  539 + margin-top: 10rpx;
  540 +}
  541 +
  542 +.erweima{
  543 + margin-top: 10rpx;
  544 + display: flex;
  545 + width: 100%;
  546 +
  547 +}
  548 +
  549 +.erzhou{
  550 + width: 200rpx;
  551 +
  552 +
  553 + margin-right: 20rpx;
  554 +}
  555 +
  556 +.erzhou image{
  557 + background-color: blanchedalmond;
  558 + width: 200rpx;
  559 + height: 200rpx;
  560 +}
  561 +
  562 +
  563 +.eright{
  564 + width: 500rpx;
  565 + font-size: 32rpx;
  566 +
  567 +}
  568 +
  569 +
  570 +
  571 +.ecc{
  572 + float: right;
  573 + margin-right: 48rpx;
  574 +}
  575 +
  576 +
  577 +.eee{
  578 + padding-top:40rpx;
  579 +
  580 +width:90%;
  581 +height:70%;
  582 +
  583 +padding-left:32rpx;
  584 +margin-left:20rpx;
  585 +
  586 +background-color:white;
  587 +
  588 +}
  589 +
  590 +.clear{
  591 + clear: both;
  592 +}
  593 +
  594 +.down-arrow {
  595 + display: inline-block;
  596 + position: relative;
  597 + width: 40rpx;
  598 + height: 30rpx;
  599 + margin-right: 20rpx;
  600 +}
  601 +
  602 +.down-arrow::after {
  603 + display: inline-block;
  604 + content: " ";
  605 + height: 18rpx;
  606 + width: 18rpx;
  607 + border-width: 0 2rpx 2rpx 0;
  608 + border-color: #000;
  609 + border-style: solid;
  610 + transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0);
  611 + transform-origin: center;
  612 + transition: transform 0.3s;
  613 + position: absolute;
  614 + top: 50%;
  615 + right: 10rpx;
  616 + margin-top: -10rpx;
  617 +}
  618 +
  619 +.down-arrow1 {
  620 + display: inline-block;
  621 + position: relative;
  622 + width: 40rpx;
  623 + height: 30rpx;
  624 + margin-right: 20rpx;
  625 + margin-top: 12rpx;
  626 +}
  627 +
  628 +.down-arrow1::after {
  629 + display: inline-block;
  630 + content: " ";
  631 + height: 18rpx;
  632 + width: 18rpx;
  633 + border-width: 0 2rpx 2rpx 0;
  634 + border-color: #000;
  635 + border-style: solid;
  636 + transform: matrix(0.71, 0.71, -0.71, 0.71, 0, 0);
  637 + transform-origin: center;
  638 + transition: transform 0.3s;
  639 + position: absolute;
  640 + top: 50%;
  641 + right: 10rpx;
  642 + margin-top: -10rpx;
  643 +}
  644 +
  645 +.down-arrow1::after {
  646 + transform-origin: center;
  647 + transform: rotate(-135deg);
  648 + transition: transform 0.3s;
  649 +}
  650 +
  651 +.bview {
  652 + position: fixed;
  653 + top: 0;
  654 + left: 0;
  655 + width: 100%;
  656 + height: 100%;
  657 + background-color: rgba(0, 0, 0, 0.5);
  658 +}
  659 +
  660 +.juzhong {
  661 + position: fixed;
  662 + top: 0;
  663 + left: 0;
  664 + width: 100%;
  665 + height: 100%;
  666 + display: flex;
  667 + flex-direction: row;
  668 + justify-content: center;
  669 + align-items: center;
  670 +}
  671 +
  672 +.juzhong .xq {
  673 + padding: 0 20rpx;
  674 + background: #fff;
  675 + font-size: 30rpx;
  676 + padding-bottom: 20rpx;
  677 +}
  678 +
  679 +.juzhong .xq .title {
  680 + text-align: center;
  681 + margin: 20rpx 0;
  682 + position: relative;
  683 + height: 50rpx;
  684 +}
  685 +
  686 +.juzhong .xq .hs1 {
  687 + font-size: 28rpx;
  688 + color: #ab8f9e;
  689 +}
  690 +
  691 +.juzhong .xq .title .close {
  692 + position: absolute;
  693 + top: 0;
  694 + right: 0;
  695 + width: 45rpx;
  696 + height: 45rpx;
  697 +}
  698 +
  699 +.pt_qd {
  700 + margin-top: 40rpx;
  701 + height: auto;
  702 +}
  703 +
  704 +.spec-cart-btn.w100 {
  705 + width: 100%;
  706 + margin-left: 0;
  707 + height: 80rpx;
  708 + line-height: 80rpx;
  709 +}
  710 +
  711 +.pt_status_set{
  712 + position: absolute; right: 10rpx; top:50rpx; width: 120rpx; height: 120rpx;
  713 +}
  714 +
  715 +
  716 +
  717 +.xc-goods-details{
  718 +width:479rpx;
  719 +margin-top:20rpx;
  720 +height:77rpx;
  721 +}
  722 +
  723 +.xc-valframe{
  724 + border-radius:7rpx;
  725 +border:1rpx solid;
  726 +margin-top:3rpx;
  727 +}
  728 +.xc-valframe .xc-frame-img{
  729 + width:30rpx;
  730 +height:100%;
  731 +background:#e22b44;
  732 +}
  733 +.xc-valframe .xc-frame-img .picture{
  734 + width:25rpx;
  735 +height:25rpx;
  736 +margin-top:4rpx;
  737 +
  738 +}
  739 +.xc-ellipsis-img{
  740 +width:56rpx;
  741 +height:96rpx;
  742 +
  743 +}
  744 +.xc-ellipsis-img .pictures{
  745 + width:56rpx;height:56rpx;
  746 +}
  747 +.flex_tou{ display: flex; justify-content: center; width: 100%;}
  748 +.xc-ptcomplete{
  749 + width:74%;
  750 +height:105rpx;
  751 +line-height:105rpx;
  752 +float:right;
  753 +
  754 +}
  755 +.xc-ptcomplete .xc-img-frame .img{
  756 + width: 105rpx;
  757 + height: 105rpx;
  758 + float: right;
  759 +}
  760 +.xc-ptcomplete-ladder .xc-img-frame{
  761 + width:201rpx;
  762 + height: 105rpx;
  763 + margin-top:20rpx;
  764 +}
  765 +.xc-ptcomplete-ladder .xc-img-frame .img{
  766 + width: 105rpx;
  767 + height: 105rpx;
  768 + float: right;
  769 + padding-right:6rpx;
  770 +}
  771 +.xc-ptcomplete .xc-img-frame{
  772 + width:190rpx;
  773 + height: 105rpx;
  774 + margin-top:20rpx;
  775 +}
  776 +.xc-ptcomplete .xc-end{
  777 + width:283rpx;
  778 +text-align:right;
  779 +}
  780 +.iw{
  781 +padding-right:33rpx;
  782 +}
  783 +.xc-ptcomplete .xc-img-frames{
  784 + width:360rpx;
  785 +height:105rpx;
  786 +margin-top:20rpx;
  787 +
  788 +}
  789 +.xc-ptcomplete .xc-img-frames .img{
  790 + width: 105rpx;
  791 + height: 105rpx;
  792 + float: right;
  793 + padding-right:6rpx;
  794 +}
  795 +.xc-home-page-frame{
  796 + padding-top:16rpx;
  797 +
  798 +}
  799 +.xc-home-page-frame .xc-home-page{
  800 + background-color: #e22b44;border-radius:15rpx;
  801 +width:90%;
  802 +color:#fff;
  803 +height:60rpx;
  804 +font-size:26rpx;
  805 +line-height:60rpx;
  806 +}
  807 +/* */
  808 +.xc-people-val{
  809 + padding-left:8rpx;
  810 +padding-right:8rpx;
  811 +}
  812 +.xc-onclik{
  813 + width:100%;
  814 +height:70rpx;
  815 +
  816 +}
  817 +.xc-green{
  818 + color: #18ba5f;
  819 + text-align:center;
  820 +flex-grow:1;
  821 +height:90rpx;
  822 +
  823 +
  824 +}
  825 +.xc-ptcomplete-ladder{
  826 + width:74%;
  827 +height:105rpx;
  828 +line-height:105rpx;
  829 +float:right;
  830 +}
  831 +.xc-fail-ladder{
  832 + width:61%;
  833 +height:105rpx;
  834 +line-height:105rpx;
  835 +float:right;
  836 +
  837 +}
  838 +.xc-fail-ladder .xc-img-frame{
  839 + width:61%;
  840 +height:105rpx;
  841 +margin-top:20rpx;
  842 +}
  843 +.xc-fail-ladder .xc-img-frame .img{
  844 + width: 105rpx;
  845 + height: 105rpx;
  846 + float: right;
  847 + padding-right:6rpx;
  848 +}
  849 +.xc-list{
  850 + background-color:#e22b44;
  851 +color:white;
  852 +font-size:17rpx;
  853 +border-radius:6rpx;
  854 +padding:0 5rpx;
  855 +position:absolute;
  856 +top:13rpx;
  857 +left:80rpx;
  858 +width:34rpx;
  859 +line-height:25rpx;
  860 +
  861 +}
  862 +
  863 +.xc-linellae-frame{
  864 + width: 100%;
  865 + height: 60rpx;
  866 + background: #eee;
  867 +}
  868 +.xc-linellae-frame .xc-linellae{
  869 + width: 425rpx;
  870 + height: 1rpx;
  871 + border-bottom: 1rpx solid #a5a5a5;
  872 +}
  873 +.xc-recommend-frame{
  874 +background:#eee;
  875 +width:200rpx;
  876 +height:100%;
  877 +
  878 +}
  879 +.xc-recommend-frame .xc-recommend{
  880 + width: 35rpx;
  881 + height: 27rpx;
  882 + margin-top:7rpx;
  883 +}
  884 +.xc-recommend-frame .xc-recommend-word{
  885 +font-size:26rpx;
  886 +color: #a9a9a9;
  887 +margin-left:5rpx;
  888 +}
  889 +.xc-rmbs{
  890 +
  891 +height:40rpx;
  892 +}
  893 +.xc-shuoming{
  894 + padding-left:10rpx;
  895 +}
  896 +
  897 +
  898 +.poster-container {
  899 + box-sizing: border-box;
  900 + position: fixed;
  901 + top: 50%;
  902 + left: 50%;
  903 + transform: translate(-50%, -50%);
  904 + width: calc(100% - 210rpx);
  905 + z-index: 1000;
  906 +}
  907 +.mask {
  908 + position: fixed;
  909 + top: 0;
  910 + left: 0;
  911 + width: 100%;
  912 + height: 100%;
  913 + z-index: 999;
  914 + background-color: rgba(0,0,0,.4);
  915 +}
  916 +.poster-wrapper {
  917 + width: 100%;
  918 +}
  919 +
  920 +.poster {
  921 + box-sizing: border-box;
  922 + width: 100%;
  923 + height: 905rpx;
  924 + border-radius: 20rpx;
  925 + /* box-shadow: 0 8px 12px #666; */
  926 + position: relative;
  927 + z-index: 999;
  928 + overflow: hidden;
  929 +}
  930 +.poster-img {
  931 + display: block;
  932 + width: 100%;
  933 + height: 100%;
  934 +}
  935 +.btn-container {
  936 + display: flex;
  937 + justify-content: space-around;
  938 +}
  939 +.btn-share {
  940 + display: block;
  941 + background-color: #FE6867;
  942 + color: white;
  943 + border-radius: 8rpx;
  944 + line-height: 80rpx;
  945 + margin-top: 28rpx;
  946 + padding: 0 60rpx;
  947 +}
  948 +
  949 +
  950 +.btn-close {
  951 + /* background-color: rgba(0,0,0,.5); */
  952 + color: #ccc;
  953 + width: 50rpx;
  954 + height: 50rpx;
  955 + line-height: 50rpx;
  956 + text-align: center;
  957 + border-radius: 50%;
  958 + position: absolute;
  959 + right: 20rpx;
  960 + top: 20rpx;
  961 +}
  962 +
  963 +.icon-close {
  964 + font-size: 48rpx;
  965 +}
0 966 \ No newline at end of file
... ...
packageC/pages/luckyGo/luckyGo_list/luckyGo_list.js 0 → 100644
  1 +var t = require("../../../../utils/util.js"),
  2 + ut = t,
  3 + e = require("../../../../utils/common.js"),
  4 + a = require("../../../../utils/wxParse/wxParse.js"),
  5 + s = getApp(),
  6 + i = s.request,
  7 + rq = i,
  8 + oo = s.globalData,
  9 + o = s.globalData.setting,
  10 + os = o;
  11 +var regeneratorRuntime = require('../../../../utils/runtime.js');
  12 +var e = getApp(),oo = e.globalData.setting;
  13 +
  14 +Page({
  15 + data: {
  16 + wu:false,
  17 + imageurl: os.imghost,//有礼派图片地址,
  18 + iurl: os.imghost,//有礼派图片地址,
  19 + pt_state:0,
  20 + order : null,//订单数据
  21 + currentTab: 0,
  22 + current:0,
  23 + ordertx:[],//头像
  24 + baseUrl: "/api/weshop/order/page?1=1",
  25 + resourceUrl: e.globalData.setting.resourceUrl,
  26 + currentPage: 1,
  27 + requestData: null,
  28 + original_img:null,
  29 + timer:null,
  30 +
  31 +
  32 +
  33 +
  34 + tabArr: ['全部','参团中','已团中','未团中'],
  35 + currentTabIndex: 0,
  36 + },
  37 + onLoad: function () {
  38 + this.data.requestData=new Array();
  39 + this.init(0);
  40 + },
  41 + onShow:function(){
  42 + var th=this;
  43 + //设置全局定时器
  44 + th.data.timer=setInterval(function () {
  45 + th.countDown();
  46 + },1000);
  47 + },
  48 +
  49 +
  50 + clickTab(e) {
  51 + this.setData({
  52 + currentTabIndex: e.target.dataset.index,
  53 + });
  54 + },
  55 +
  56 +
  57 + /**
  58 + * 点击tab切换
  59 + */
  60 + swichNav: function (e) {
  61 + this.data.requestData=[];
  62 + this.data.currentPage=1;
  63 + var that = this;
  64 +
  65 + if (that.data.order == null){
  66 + that.setData({
  67 + wu:true
  68 + })
  69 + }
  70 +
  71 + if (this.data.currentTab === e.target.dataset.current) {
  72 + return false;
  73 + } else {
  74 + that.setData({
  75 + currentTab: e.target.dataset.current,
  76 + })
  77 + that.init(e.target.dataset.current);
  78 + }
  79 + },
  80 +
  81 + async init(current) {
  82 + var where="1=1";
  83 + var user_id = getApp().globalData.user_id;
  84 + switch (current){
  85 + case "1":
  86 + where+="&pt_status=1";
  87 + break;
  88 + case "2":
  89 + where += "&pt_ok=1";
  90 + break;
  91 + case "3":
  92 + where += "&pt_status=3";
  93 + break;
  94 + }
  95 +
  96 + var goods_id = 0,//商品ID,
  97 + original_img = [],//商品图片
  98 + ee = this,
  99 + ordertx=[],//头像
  100 + order = null,//订单数据
  101 + goods = null,//商品数据
  102 + users = null,//会员数据
  103 + order_goods=null;//订单商品表
  104 +
  105 + //获取订单表的信息根据活动user_id,pt_prom_id>0 AND pay_time>0
  106 + /*---
  107 + await getApp().request.promiseGet("/api/weshop/order/page?"+where, {
  108 + data: { is_pt:1,store_id: os.stoid, user_id: user_id, pageSize: 6, page: this.data.currentPage,}
  109 + }).then(res => {
  110 + order = res.data.data.pageData;
  111 + this.data.currentPage++;
  112 + })--*/
  113 +
  114 + await getApp().request.promiseGet("/api/weshop/order/pageTuan?"+where, {
  115 + data: { is_pt:1,store_id: os.stoid, user_id: user_id, pageSize: 6, page: this.data.currentPage,}
  116 + }).then(res => {
  117 + order = res.data.data.pageData;
  118 + this.data.currentPage++;
  119 + })
  120 +
  121 +
  122 + wx.showLoading({ title: "加载中"});
  123 + for (i = 0; i < order.length; i++) {
  124 + //获取订单从表信息
  125 + await getApp().request.promiseGet("/api/weshop/ordergoods/pageGoods", {
  126 + data: { store_id: os.stoid, order_id: order[i].order_id }
  127 + }).then(res => {
  128 + order_goods = res.data.data.pageData;
  129 + order[i].order_goods = order_goods;
  130 + order[i].gimage = ee.data.imageurl + order_goods[0].original_img;
  131 + })
  132 +
  133 +
  134 + //获取订单表信息根据上面查询的订单号order[i].pt_listno
  135 + await getApp().request.promiseGet("/api/weshop/order/pagePtList", {
  136 + data: { store_id: os.stoid, pt_listno: order[i].pt_listno,pageSize:60,page:1}
  137 + }).then(res => {
  138 + //console.log("ordertx");
  139 + ordertx = res.data.data.pageData;
  140 + //console.log(ordertx);
  141 + order[i].tx=ordertx;
  142 + })
  143 +
  144 +
  145 +
  146 + if (order[i].is_zsorder== 4) {
  147 + var num = 0;
  148 + var jt_data = JSON.parse(order[i].ct_rylist);
  149 + for (var m in jt_data) {
  150 + if (jt_data[m].rynum > num) num = jt_data[m].rynum;
  151 + }
  152 + order[i].max_ct_num = num;
  153 + }
  154 +
  155 + var sf_num = order[i].ct_num;
  156 + if (order[i].ct_num>=3){ sf_num=3;}
  157 + sf_num=sf_num-ordertx.length;
  158 + if(sf_num>0) {
  159 + var arr = [];
  160 + for(var j=0;j<sf_num;j++){
  161 + arr.push(j);
  162 + }
  163 + order[i].sf_num=arr;
  164 + }
  165 +
  166 + }
  167 + //设置值
  168 + for (var ii = 0; ii < order.length;ii++){
  169 + this.data.requestData.push(order[ii]);
  170 + }
  171 +
  172 + wx.hideLoading();
  173 + ee.setData({ order: this.data.requestData, ordertx: ordertx, isgo:1});
  174 + },
  175 +
  176 + //---滚动到底部加载更多---
  177 + onReachBottom: function () {
  178 + this.init(this.data.currentTab);
  179 + },
  180 +
  181 + resetData: function () {
  182 + n.resetConfig(), this.data.order = null, this.data.currentPage = 1;
  183 + },
  184 +
  185 + //----跳转到拼单success展示-----
  186 + go_team_success:function(e) {
  187 + var order_sn=e.currentTarget.dataset.ordsn;
  188 + wx.navigateTo({
  189 + url: "/pages/team/team_success/team_success?ordersn=" + order_sn,
  190 + });
  191 + },
  192 +
  193 + onHide:function(){
  194 + //--清理定时器--
  195 + clearInterval(this.timer);
  196 + },
  197 +
  198 + //----倒计时函数-----
  199 + countDown() {
  200 + var th=this;
  201 + // 获取当前时间,同时得到活动结束时间数组
  202 + let newTime =ut.gettimestamp();
  203 + var endTimeList = this.data.order;
  204 +
  205 + if(endTimeList==null) return null
  206 + // 对结束时间进行处理渲染到页面
  207 + for (var i = 0; i < endTimeList.length;i++){
  208 + var o = endTimeList[i];
  209 + if(o.kt_end_time==undefined) continue;
  210 + var endTime = o.kt_end_time;
  211 + let obj = null;
  212 + // 如果活动未结束,对时间进行处理
  213 + if (endTime - newTime > 0){
  214 + let time = (endTime - newTime);
  215 + // 获取天、时、分、秒
  216 + let day = parseInt(time / (60 * 60 * 24));
  217 + let hou = parseInt(time % (60 * 60 * 24) / 3600);
  218 + let min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
  219 + let sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
  220 + obj = {
  221 + day: this.timeFormat(day), hou: this.timeFormat(hou), min: this.timeFormat(min), sec: this.timeFormat(sec)
  222 + }
  223 + }else{
  224 + //活动已结束,全部设置为'00'
  225 + obj = { day: '00', hou: '00', min: '00', sec: '00' }
  226 + }
  227 +
  228 + var txt ="order["+i+"].djs";
  229 + th.setData({ [txt]: obj});
  230 + }
  231 + },
  232 + //---小于10的格式化函数----
  233 + timeFormat(param) {
  234 + return param < 10 ? '0' + param : param;
  235 + },
  236 +
  237 + images_err:function(e){
  238 + var txt = e.currentTarget.dataset.err;
  239 + var ob={};
  240 + ob[txt] = this.data.imageurl + "/miniapp/images/default_g_img.gif";
  241 + this.setData(ob);
  242 + }
  243 +
  244 +
  245 +})
  246 +
... ...
packageC/pages/luckyGo/luckyGo_list/luckyGo_list.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "幸运购列表",
  3 + "enablePullDownRefresh": false,
  4 + "usingComponents": {
  5 + "nodata": "/components/nodata/nodata"
  6 + }
  7 +}
0 8 \ No newline at end of file
... ...
packageC/pages/luckyGo/luckyGo_list/luckyGo_list.wxml 0 → 100644
  1 +<view class="tab-hd" bindtap="clickTab">
  2 + <view class="tab-hd-item {{currentTabIndex == index ? 'active':''}}" wx:for="{{tabArr}}" data-index="{{index}}">{{item}}</view>
  3 +</view>
  4 +
  5 +<view class="tab-bd">
  6 + <view class="list">
  7 + <view class="list-item">
  8 + <view class="pd20">
  9 + <view class="pdr40 arrow">参团中,还差<text class="c-red">2</text>人</view>
  10 + </view>
  11 + <view class="flex pd20">
  12 + <view class="img-container"><image src="../../../../images/bk.png" class="img-block"></image></view>
  13 + <view>
  14 + <view class="title ellipsis-2">商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称商品名称</view>
  15 + <view class="flex ai-center">
  16 + <text class="rmb fs40 c-red">15</text>
  17 + <view class="fs24 del pdl10 c-c7">零售价<text class="rmb">25</text></view>
  18 + </view>
  19 + <view class="c-red fs24">未团中可获得XXXX帮团奖励</view>
  20 + </view>
  21 + </view>
  22 + <view class="flex ai-center pd20 bdt fs24 jc_sb">
  23 + <view>共1件,实付金额:<text class="rmb">15.00</text></view>
  24 + <view class="flex">
  25 + <view class="btn gray">查看订单</view>
  26 + <view class="btn c-red mgl20">邀请好友</view>
  27 + </view>
  28 + </view>
  29 + </view>
  30 +
  31 + <view class="list-item">
  32 + <view class="pd20">
  33 + <view class="pdr40 arrow">已团中,待发货</view>
  34 + </view>
  35 + <view class="flex pd20">
  36 + <view class="img-container"><image src="../../../../images/bk.png" class="img-block"></image></view>
  37 + <view>
  38 + <view class="title ellipsis-2">商品名称商品名称</view>
  39 + <view class="flex ai-center">
  40 + <text class="rmb fs40 c-red">15</text>
  41 + <view class="fs24 del pdl10 c-c7">零售价<text class="rmb">25</text></view>
  42 + </view>
  43 + <view class="c-red fs24">未团中可获得XXXX帮团奖励</view>
  44 + </view>
  45 + </view>
  46 + <view class="flex ai-center pd20 bdt fs24 jc_sb">
  47 + <view>共1件,实付金额:<text class="rmb">15.00</text></view>
  48 + <view class="flex">
  49 + <view class="btn gray">查看订单</view>
  50 + <!-- <view class="btn c-red mgl20">邀请好友</view> -->
  51 + </view>
  52 + </view>
  53 + </view>
  54 +
  55 + <view class="list-item">
  56 + <view class="pd20">
  57 + <view class="pdr40 arrow">未团中,已退款</view>
  58 + </view>
  59 + <view class="flex pd20">
  60 + <view class="img-container"><image src="../../../../images/bk.png" class="img-block"></image></view>
  61 + <view>
  62 + <view class="title ellipsis-2">商品名称商品名称</view>
  63 + <view class="flex ai-center">
  64 + <text class="rmb fs40 c-red">15</text>
  65 + <view class="fs24 del pdl10 c-c7">零售价<text class="rmb">25</text></view>
  66 + </view>
  67 + <view class="c-red fs24">未团中可获得XXXX帮团奖励</view>
  68 + </view>
  69 + </view>
  70 + <view class="flex ai-center pd20 bdt fs24 jc_sb">
  71 + <view>共1件,实付金额:<text class="rmb">15.00</text></view>
  72 + <view class="flex">
  73 + <view class="btn gray">查看订单</view>
  74 + <view class="btn c-red mgl20">查看奖励</view>
  75 + </view>
  76 + </view>
  77 + </view>
  78 +
  79 + </view>
  80 +</view>
  81 +
  82 +
  83 +<view class="popup-container">
  84 + <view class="popup">
  85 + <view class="pd20 flex jc_sb">
  86 + <text class="c-red">帮团奖励</text>
  87 + <text class="iconfont icon-close fs32 c-7b"></text>
  88 + </view>
  89 + <view class="popup-list">
  90 + <view class="popup-list-item">
  91 + <view class="img-container"><image class="img-block" src="../../../../images/bk.png"></image></view>
  92 + <view class="f1">
  93 + <view class="ellipsis-2 popup-title">我是名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称</view>
  94 + <view class="fs24 t-r pdt16 c-7b">数量:<text class="c-red">100</text></view>
  95 + </view>
  96 + </view>
  97 +
  98 + <view class="popup-list-item">
  99 + <view class="img-container"><image class="img-block" src="../../../../images/bk.png"></image></view>
  100 + <view class="f1">
  101 + <view class="ellipsis-2 popup-title">我是名称</view>
  102 + <view class="fs24 t-r pdt16 c-7b">数量:<text class="c-red">11</text></view>
  103 + </view>
  104 + </view>
  105 +
  106 + <view class="popup-list-item">
  107 + <view class="img-container"><image class="img-block" src="../../../../images/bk.png"></image></view>
  108 + <view class="f1">
  109 + <view class="ellipsis-2 popup-title">我是名称</view>
  110 + <view class="fs24 t-r pdt16 c-7b">数量:<text class="c-red">11</text></view>
  111 + </view>
  112 + </view>
  113 +
  114 + <view class="popup-list-item">
  115 + <view class="img-container"><image class="img-block" src="../../../../images/bk.png"></image></view>
  116 + <view class="f1">
  117 + <view class="ellipsis-2 popup-title">我是名称</view>
  118 + <view class="fs24 t-r pdt16 c-7b">数量:<text class="c-red">11</text></view>
  119 + </view>
  120 + </view>
  121 +
  122 + </view>
  123 + </view>
  124 +</view>
  125 +
  126 +
  127 +
  128 +<view class="no-more">—— 已经到底啦 ——</view>
  129 +<nodata nodataContainer="t-c"></nodata>
0 130 \ No newline at end of file
... ...
packageC/pages/luckyGo/luckyGo_list/luckyGo_list.wxss 0 → 100644
  1 +.bdt {
  2 + border-top: 2rpx solid #f5f5f5;
  3 +}
  4 +
  5 +page {
  6 + background-color: #f2f2f2;
  7 +}
  8 +
  9 +.btn {
  10 + border: 2rpx solid #ff6768;
  11 + padding: 10rpx 20rpx;
  12 + border-radius: 40rpx;
  13 +}
  14 +
  15 +.btn.gray {
  16 + border-color: #ccc;
  17 +}
  18 +
  19 +.tab-hd {
  20 + display: flex;
  21 + text-align: center;
  22 + font-size: 28rpx;
  23 + background-color: white;
  24 + position: sticky;
  25 + top: 0;
  26 + z-index: 2;
  27 +}
  28 +
  29 +.tab-hd-item {
  30 + flex-grow: 1;
  31 + padding: 20rpx;
  32 + position: relative;
  33 +}
  34 +
  35 +.tab-hd-item.active {
  36 + color: #ff6768;
  37 +}
  38 +
  39 +.tab-hd-item.active::after {
  40 + content: '';
  41 + position: absolute;
  42 + width: 30%;
  43 + height: 4rpx;
  44 + left: 0;
  45 + right: 0;
  46 + bottom: 0;
  47 + margin: 0 auto;
  48 + background-color: #ff6768;
  49 +}
  50 +
  51 +.title {
  52 + height: 88rpx;
  53 +}
  54 +
  55 +.tab-bd {
  56 + padding-left: 20rpx;
  57 + padding-right: 20rpx;
  58 +}
  59 +
  60 +.list {
  61 + overflow: hidden;
  62 +}
  63 +
  64 +.list-item {
  65 + background-color: white;
  66 + margin-top: 20rpx;
  67 + border-radius: 12rpx;
  68 + font-size: 28rpx;
  69 +}
  70 +
  71 +.arrow {
  72 + position: relative;
  73 +}
  74 +
  75 +.arrow::after {
  76 + font-family: iconfont;
  77 + content: '\e61f';
  78 + position: absolute;
  79 + right: 0;
  80 + color: #ccc;
  81 +}
  82 +
  83 +.img-container {
  84 + width: 200rpx;
  85 + height: 200rpx;
  86 + flex-shrink: 0;
  87 + padding-right: 20rpx;
  88 +}
  89 +
  90 +.rmb::before {
  91 + content: '¥';
  92 + font-size: 24rpx;
  93 +}
  94 +
  95 +.del {
  96 + text-decoration: line-through;
  97 +}
  98 +
  99 +.no-more {
  100 + font-size: 24rpx;
  101 + line-height: 2;
  102 + text-align: center;
  103 + margin-top: 10rpx;
  104 + color: #ccc;
  105 +}
  106 +
  107 +
  108 +.popup-container {
  109 + position: fixed;
  110 + top: 0;
  111 + bottom: 0;
  112 + left: 0;
  113 + right: 0;
  114 + background-color: rgba(0,0,0,.8);
  115 +}
  116 +
  117 +.popup {
  118 + background-color: #FFFAE7;
  119 + position: fixed;
  120 + left: 50%;
  121 + top: 50%;
  122 + transform: translate(-50%, -50%);
  123 + border-radius: 12rpx;
  124 + min-width: 600rpx;
  125 + color: #AF481D;
  126 +}
  127 +
  128 +
  129 +
  130 +.popup-list-item {
  131 + display: flex;
  132 + padding: 20rpx;
  133 +}
  134 +
  135 +.popup-list-item .img-container {
  136 + width: 140rpx;
  137 + height: 140rpx;
  138 +}
  139 +
  140 + .popup-title {
  141 + font-size: 28rpx;
  142 + height: 88rpx;
  143 + }
0 144 \ No newline at end of file
... ...
packageC/pages/presell/cart/cart.js
... ... @@ -656,7 +656,7 @@ Page({
656 656 })
657 657 }else{
658 658 th.setData({quan_price:0});
659   - if(th.data.using_quan[bn_pick].isby==1){
  659 + if(th.data.using_quan && th.data.using_quan[bn_pick] && th.data.using_quan[bn_pick].isby==1){
660 660 var txt="using_quan["+bn_pick+"]";
661 661 th.setData({[txt]:{}});
662 662 }
... ... @@ -2529,6 +2529,40 @@ Page({
2529 2529 },
2530 2530  
2531 2531  
  2532 + //---------联系客服------------
  2533 + contactService: function() {
  2534 + getApp().getConfig(function(t) {
  2535 + if (t.store_tel == undefined) {
  2536 + getApp().request.get("/api/weshop/store/get/" + os.stoid, {
  2537 + isShowLoading: 1,
  2538 + data: {},
  2539 + success: function(rs) {
  2540 + getApp().globalData.config = rs.data.data;
  2541 + if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) {
  2542 + getApp().my_warnning("商家未设置电话", 0, th);
  2543 + return false;
  2544 + }
  2545 + wx.makePhoneCall({ phoneNumber: rs.data.data.store_tel, })
  2546 + }
  2547 + })
  2548 + } else {
  2549 + wx.makePhoneCall({ phoneNumber: t.store_tel, })
  2550 + }
  2551 + });
  2552 + },
  2553 +
  2554 + //---------联系微信客服------------
  2555 + con_weixin:function () {
  2556 + var url=this.data.sys_switch.weapp_customertype_url;
  2557 + var id=this.data.sys_switch.weapp_customertype_appid;
  2558 + wx.openCustomerServiceChat({
  2559 + extInfo: {url: url},
  2560 + corpId: id,
  2561 + success(res) {}
  2562 + })
  2563 + }
  2564 +
  2565 +
2532 2566  
2533 2567  
2534 2568  
... ...
packageC/pages/presell/cart/cart.wxml
... ... @@ -647,15 +647,20 @@
647 647  
648 648 <!-- 客服 -->
649 649 <view class="kefu-container shadow-1">
650   - <block wx:if="{{sys_switch.weapp_customertype}}">
651   - <button wx:if="{{sys_switch.weapp_customertype}}" class="kefu-btn"
  650 + <block wx:if="{{sys_switch.weapp_customertype==1}}">
  651 + <button class="kefu-btn"
652 652 open-type="contact"
653 653 session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
654 654 <text class="iconfont icon-kefu fs60 co-red"></text>
655 655 </button>
656 656 </block>
  657 +
  658 + <block wx:elif="{{sys_switch.weapp_customertype==2}}">
  659 + <text bindtap="con_weixin" class="iconfont icon-kefu fs60 co-red"></text>
  660 + </block>
  661 +
657 662 <block wx:else>
658   - <text class="iconfont icon-kefu fs60 co-red"></text>
  663 + <text bindtap="contactService" class="iconfont icon-kefu fs60 co-red"></text>
659 664 </block>
660 665 </view>
661 666  
... ...
packageC/pages/presell/goodsInfo/goodsInfo.js
... ... @@ -1877,7 +1877,6 @@ Page({
1877 1877 getApp().request.get("/api/weshop/storagecategory/page", {
1878 1878 data: {
1879 1879 store_id: o.stoid,
1880   - is_show: 1,
1881 1880 pageSize: 1000,
1882 1881 orderField: "sort",
1883 1882 orderType: 'asc',
... ... @@ -1885,37 +1884,47 @@ Page({
1885 1884 success: function (ee) {
1886 1885 if (ee.data.code == 0) {
1887 1886  
1888   - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
1889   - var def_arr = new Array();
1890   - var ishas = 0;
1891   - //-- 开始就看5个门店 --
1892   - for (var k = 0; k < 5; k++) {
1893   - if (k == e.data.data.pageData.length) break;
1894   - def_arr.push(e.data.data.pageData[k]);
  1887 + var check_all_cate=0;
  1888 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  1889 + for(let i in ee.data.data.pageData){
  1890 + let item=ee.data.data.pageData[i];
  1891 + if(item.is_show==1){
  1892 + check_all_cate=1;break
  1893 + }
  1894 + }
1895 1895 }
1896 1896  
1897   - th.setData({
1898   - def_pickpu_list: def_arr,
1899   - pickpu_list: ee.data.data.pageData
1900   - });
  1897 + if (check_all_cate) {
  1898 +
1901 1899 var sto_cate = ee.data.data.pageData;
1902 1900 var sto_arr = e.data.data.pageData;
1903 1901 var newarr = new Array();
1904 1902 var qita = new Array();
1905 1903  
  1904 + var is_del_pk=0;
1906 1905 //----要进行门店分组--------
1907 1906 for (var i = 0; i < sto_arr.length; i++) {
1908 1907 //找一下这个门店有没有在分类数组内
1909 1908 var find2 = 0, find2name = "", sort = 0;
  1909 + is_del_pk=0;
1910 1910 for (var m = 0; m < sto_cate.length; m++) {
1911   - if (sto_arr[i].category_id == sto_cate[m].cat_id) {
1912   - find2 = sto_cate[m].cat_id;
1913   - find2name = sto_cate[m].cat_name;
1914   - sort = sto_cate[m].sort;
1915   - break;
1916   - }
  1911 + if (sto_arr[i].category_id == sto_cate[m].cat_id) {
  1912 + if (sto_cate[m].is_show != 1) {
  1913 + is_del_pk = 1;
  1914 + sto_arr.splice(i, 1);
  1915 + i--;
  1916 + } else {
  1917 + find2 = sto_cate[m].cat_id;
  1918 + find2name = sto_cate[m].cat_name;
  1919 + sort = sto_cate[m].sort;
  1920 + is_del_pk = 0;
  1921 + }
  1922 + break;
  1923 + }
1917 1924 }
1918 1925  
  1926 + if(is_del_pk) continue;
  1927 +
1919 1928 if (newarr.length > 0) {
1920 1929 var find = 0;
1921 1930 //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
... ... @@ -1959,6 +1968,18 @@ Page({
1959 1968 }
1960 1969 }
1961 1970  
  1971 +
  1972 + var def_arr = new Array();
  1973 + //-- 开始就看10个门店 --
  1974 + for (var k = 0; k < 10; k++) {
  1975 + if (k == sto_arr.length) break;
  1976 + def_arr.push(sto_arr[k]);
  1977 + }
  1978 +
  1979 + th.setData({
  1980 + def_pickpu_list: def_arr,
  1981 + pickpu_list: ee.data.data.pageData
  1982 + });
1962 1983 //门店分类要排序下
1963 1984 function compare(property) {
1964 1985 return function (a, b) {
... ... @@ -1981,10 +2002,16 @@ Page({
1981 2002 newarr.push(item);
1982 2003 }
1983 2004  
1984   - th.setData({
1985   - is_show_sto_cat: 1,
1986   - all_sto: newarr
1987   - });
  2005 +
  2006 + var sd={
  2007 + all_sto: newarr,
  2008 + is_show_sto_cat:1
  2009 + }
  2010 + if(!sto_arr || sto_arr.length<=10){
  2011 + sd.is_show_sto_cat=-1;
  2012 + sd.only_pk=sto_arr;
  2013 + }
  2014 + th.setData(sd);
1988 2015  
1989 2016 } else {
1990 2017 th.setData({
... ... @@ -3936,7 +3963,7 @@ Page({
3936 3963 }
3937 3964  
3938 3965 var userInfo = getApp().globalData.userInfo;
3939   - var pre_data = {store_id: os.stoid, is_end: 0, timetype: 1, isuse: 1, prom_type: 8, prom_id: presell_id};
  3966 + var pre_data = {store_id: os.stoid, is_end: 0, timetype: 1, isuse: 1, prom_type: 8, prom_id: presell_id,pageSize:1000};
3940 3967 if (userInfo) {
3941 3968 pre_data.user_id = userInfo.user_id;
3942 3969 }
... ... @@ -3965,6 +3992,16 @@ Page({
3965 3992 if (func) {
3966 3993 func();
3967 3994 }
  3995 + },
  3996 +
  3997 + con_weixin:function () {
  3998 + var url=this.data.sys_switch.weapp_customertype_url;
  3999 + var id=this.data.sys_switch.weapp_customertype_appid;
  4000 + wx.openCustomerServiceChat({
  4001 + extInfo: {url: url},
  4002 + corpId: id,
  4003 + success(res) {}
  4004 + })
3968 4005 }
3969 4006  
3970 4007 });
... ...
packageC/pages/presell/goodsInfo/goodsInfo.wxml
... ... @@ -482,10 +482,16 @@
482 482 <!-- -----------------底部按钮------------------ -->
483 483 <view class="join-cart">
484 484 <!-- bindtap="contactService" -->
485   - <button wx:if="{{sys_switch.weapp_customertype}}" class="custom-service cart-ico new_split" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
  485 + <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
486 486 <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
487 487 <view>客服</view>
488 488 </button>
  489 +
  490 + <view wx:elif="{{sys_switch.weapp_customertype==2}}" class="custom-service cart-ico new_split" bindtap="con_weixin">
  491 + <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
  492 + <view>客服</view>
  493 + </view>
  494 +
489 495 <view wx:else class="custom-service cart-ico new_split" bindtap="contactService">
490 496 <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
491 497 <view>客服</view>
... ... @@ -782,9 +788,9 @@
782 788 <view>
783 789 <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
784 790 </view>
785   - <view class="felx choose_more" bindtap="more_store">
786   - <text class="fs26 red-co" wx:if="{{is_show_sto_cat}}">{{choice_sort_store==0?'更多门店':'返回'}}</text>
787   - <view class="bg_rights" wx:if="{{is_show_sto_cat}}"></view>
  791 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}" >
  792 + <text class="fs26 red-co" >{{choice_sort_store==0?'更多门店':'返回'}}</text>
  793 + <view class="bg_rights"></view>
788 794 </view>
789 795 </view>
790 796 </view>
... ...
pages/activity/seckill_list/seckill_list.js
... ... @@ -76,7 +76,7 @@ Page({
76 76 },
77 77 onHide:function(){
78 78 //--清理定时器--
79   - clearInterval(this.timer);
  79 + clearInterval(this.data.timer);
80 80 this.setData({isshow:0});
81 81 },
82 82 //---小于10的格式化函数----
... ... @@ -124,9 +124,12 @@ Page({
124 124 var e = this,th=e, i = "/api/ms/flash_sale/spikepage?page=" + e.data.currentPage;
125 125 var plist=null,alllist=th.data.goodlist;
126 126 if(!alllist) alllist=[];
  127 + var user_id=getApp().globalData.user_id;
  128 + if(!user_id) user_id=user_id;
  129 + var req={store_id:os.stoid,timetype:th.data.type,is_end:0,is_show:1,user_id:user_id};
127 130  
128 131 await getApp().request.promiseGet(i,
129   - {isShowLoading:1,data:{store_id:os.stoid,timetype:th.data.type,is_end:0,is_show:1}}
  132 + {isShowLoading:1,data:req}
130 133 ).then(res=>{
131 134 plist=res.data.data.pageData;
132 135 console.log("是什么即将开始",plist);
... ... @@ -148,6 +151,8 @@ Page({
148 151  
149 152 //--循环读取接口---
150 153 for(var i=0;i<plist.length;i++) {
  154 +
  155 + if( plist[i].user_price) plist[i].price= plist[i].user_price;
151 156 var prom_id = plist[i].id;
152 157 await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
153 158 os.stoid + "/1/" + prom_id, {}
... ...
pages/activity/seckill_list/seckill_list.wxml
... ... @@ -33,13 +33,13 @@
33 33  
34 34 <view class="kill-list abs seckill_list">
35 35 <view class="kill-item" wx:for="{{goodlist}}" wx:if="{{item.djs.hide}}" >
36   - <navigator class="kill-pic rel" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}">
  36 + <navigator class="kill-pic rel" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.id}}&prom_type=1">
37 37 <image class="abs xc-miaosha" src="{{url}}/miniapp/images/zms.png"></image>
38 38 <image class="wh100" src="{{url+item.original_img}}" data-val="{{item.original_img}}"
39 39 data-errorimg="goodlist[{{index}}].original_img" binderror="bind_bnerr2" lazy-load="true"></image>
40 40 </navigator>
41 41 <view class="kill-cont">
42   - <navigator class="goods-name ellipsis-2" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}">{{item.title}}</navigator>
  42 + <navigator class="goods-name ellipsis-2" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.id}}&prom_type=1">{{item.goods_name}}</navigator>
43 43 <view class="flex-vertical xc-strip-frame">
44 44 <view class="xc-strip-blank rel">
45 45  
... ... @@ -71,9 +71,9 @@
71 71  
72 72 </view>
73 73 <view class="kill-btn ">
74   - <navigator style="background-color: #059de5;" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}" wx:if="{{type==0}}" >即将开始</navigator>
75   - <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}" wx:if="{{item.status==1 && type==1}}">马上抢</navigator>
76   - <navigator class="huise"url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}" wx:if="{{item.status==3 && type==1}}">已抢光</navigator>
  74 + <navigator style="background-color: #059de5;" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.id}}&prom_type=1" wx:if="{{type==0}}" >即将开始</navigator>
  75 + <navigator url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.id}}&prom_type=1" wx:if="{{item.status==1 && type==1}}">马上抢</navigator>
  76 + <navigator class="huise"url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}&prom_id={{item.id}}&prom_type=1" wx:if="{{item.status==3 && type==1}}">已抢光</navigator>
77 77 </view>
78 78 </view>
79 79 </view>
... ...
pages/cart/cart/cart.js
... ... @@ -120,15 +120,20 @@ Page({
120 120 }
121 121 th.setData({ad_data:narr});
122 122 }else{
  123 +
  124 + var user_id=getApp().globalData.user_id;
  125 + if(!user_id) user_id=0;
  126 + var req_d= {
  127 + store_id: oo.stoid,
  128 + timetype: 2,
  129 + is_end: 0,
  130 + is_show: 1,
  131 + pageSize: 1,
  132 + user_id:user_id
  133 + }
123 134 //--获取是否又秒杀活动--
124 135 getApp().request.promiseGet("/api/ms/flash_sale/spikepage", {
125   - data: {
126   - store_id: oo.stoid,
127   - timetype: 2,
128   - is_end: 0,
129   - is_show: 1,
130   - pageSize: 1
131   - },
  136 + data:req_d,
132 137 }).then(res => {
133 138 if (res.data.code == 0 && res.data.data && res.data.data.pageData.length > 0) {
134 139 th.setData({
... ... @@ -150,6 +155,7 @@ Page({
150 155 },
151 156 //-------------获取购物车列表,要安装门店进行分类订单-----------
152 157 getCardList: function() {
  158 +
153 159 var th = this;
154 160  
155 161 //要获取会员是不是等级会员
... ... @@ -185,6 +191,7 @@ Page({
185 191 th.get_cart();
186 192 th.get_ser_cart();
187 193 }
  194 +
188 195  
189 196 }
190 197 })
... ... @@ -214,6 +221,7 @@ Page({
214 221 state:0
215 222 },
216 223 success:async function(su) {
  224 + console.log(su,10000);
217 225 //按门店分类的数组
218 226 var arr = new Array(),
219 227 carr = su.data.data.pageData;
... ... @@ -302,8 +310,11 @@ Page({
302 310 if (item.prom_type == 1) {
303 311 var prom = null;
304 312 var now = ut.gettimestamp();
305   - await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + item.prom_id, {}).then(res => {
306   - if (res.data.code == 0) prom = res.data.data;
  313 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid +'/'+user_id+ "/" + item.prom_id, {}).then(res => {
  314 + if (res.data.code == 0){
  315 + prom = res.data.data;
  316 + prom.price=prom.user_price;
  317 + }
307 318 })
308 319 //---如果互动都已经过期,或者还未开始,或者无活动
309 320 if (!prom || prom.is_end == 1 || prom.end_time < now || prom.start_time > now) {
... ... @@ -331,7 +342,18 @@ Page({
331 342 })
332 343 item.goods_num=cbuy;
333 344 }
  345 +
  346 + //价格不对,就要更新一下
  347 + if(good.goods_price!=prom.price){
  348 + good.goods_price=prom.price;
  349 + //-- 购物车更新秒杀价格 --
  350 + var updata1={id: item.id,goods_price:prom.price,store_id:os.stoid,user_id:getApp().globalData.userInfo.user_id };
  351 + getApp().request.put("/api/weshop/cart/update", {
  352 + data: updata1,
  353 + })
  354 + }
334 355 }
  356 +
335 357 //--判断优惠活动有没有过期--
336 358 else if (item.prom_type == 3) {
337 359 var isok = 1;
... ... @@ -366,9 +388,11 @@ Page({
366 388 if(!th.data.zuhe_map[item.prom_id]){
367 389 //如果有组合购
368 390 var isok = 1;
  391 + var is_flag=1;
369 392 var act=null;
370 393 var url="/api/weshop/prom/zhbuy/get/"+os.stoid+"/"+item.prom_id+"/"+getApp().globalData.userInfo.user_id;
371 394 await getApp().request.promiseGet(url, {}).then(res => {
  395 + console.log(res,1000);
372 396 if(res.data.code==0 && res.data.data){
373 397 if(res.data.data.is_show!=1){
374 398 isok=0;
... ... @@ -386,12 +410,11 @@ Page({
386 410 isok=0;
387 411 }
388 412 act=res.data.data;
389   -
  413 +
390 414 }else{
391   - //未找到商品的活动
392   - isok = 0;
393   - }
394   -
  415 + //未找到商品的活动
  416 + is_flag = 0;
  417 + }
395 418 })
396 419 if (!isok){
397 420 var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
... ... @@ -400,7 +423,6 @@ Page({
400 423 continue;
401 424 }
402 425 th.data.zuhe_map[item.prom_id]=act;
403   -
404 426 var url1 = "/api/weshop/prom/zhbuyGoods/page";
405 427 var req_data = {
406 428 page: 1,
... ... @@ -411,8 +433,17 @@ Page({
411 433 await getApp().request.promiseGet(url1, {
412 434 data: req_data
413 435 }).then(res => {
  436 + console.log(res,2000);
414 437 if (ut.ajax_ok(res)) {
415 438 var gdlist = res.data.data.pageData;
  439 + gdlist.forEach(i=>{
  440 + if(item.goods_id==i.goods_id&&!is_flag){
  441 + item.prom_type=0;
  442 + item.prom_type1=0;
  443 + item.prom_id=0;
  444 + item.prom_id1=0
  445 + }
  446 + })
416 447 th.data.zuhe_map_good[item.prom_id]=gdlist;
417 448 }
418 449 })
... ... @@ -423,15 +454,21 @@ Page({
423 454 var t_item=gdlist.find(function (ele) {
424 455 return ele.goods_id==item.goods_id
425 456 })
  457 + if(!t_item){
  458 + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  459 + getApp().request.delete(url, {});
  460 + th.data.zuhe_map[item.prom_id]=-1;
  461 + continue;
  462 + }
426 463 item.buyqty=t_item.buyqty;
427 464 item.zh_b_num=promgoodsbuynum;
428 465 item.act=th.data.zuhe_map[item.prom_id];
429   - }else{
430   - var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
431   - getApp().request.delete(url, {});
432   - th.data.zuhe_map[item.prom_id]=-1;
433   - continue;
434   - }
  466 + }//else{
  467 + // var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  468 + // getApp().request.delete(url, {});
  469 + // th.data.zuhe_map[item.prom_id]=-1;
  470 + // continue;
  471 + // }
435 472 }
436 473 else if(item.prom_type == 0) {
437 474 //如果有优惠活动,要更新活动
... ... @@ -538,7 +575,9 @@ Page({
538 575 }
539 576 }
540 577  
541   -
  578 + // console.log('AAAAAAAAAAAA', all_num);
  579 + // getApp().globalData.cartGoodsNum = all_num;
  580 +
542 581 th.setData({
543 582 requestData: arr,
544 583 all_num: all_num,
... ... @@ -637,7 +676,7 @@ Page({
637 676 }
638 677 }
639 678  
640   -
  679 + // console.log('BBBBBB', all_num);
641 680 th.setData({
642 681 service_data: arr,
643 682 all_num2: all_num,
... ... @@ -748,7 +787,8 @@ Page({
748 787 var a = t.currentTarget.dataset.item;
749 788 var b = t.currentTarget.dataset.pitems;
750 789 a = this.data.requestData[b].goods[a];
751   -
  790 +
  791 + console.log('add+');
752 792 if (a.goods_num<a.store_count) {
753 793 var e = {
754 794 goods_num: a.goods_num + 1,
... ... @@ -756,6 +796,7 @@ Page({
756 796 goods_id: a.goods_id,
757 797 store_id: oo.stoid
758 798 };
  799 + // console.log('goods_num', e.goods_num);
759 800 this.postCardList(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
760 801 } else {
761 802 wx.showModal({
... ... @@ -834,7 +875,7 @@ Page({
834 875 goods_id: a.goods_id,
835 876 store_id: oo.stoid
836 877 };
837   - this.postCardList_ser(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
  878 + // this.postCardList_ser(e, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
838 879  
839 880 },
840 881 //-------------减数量---------------------
... ... @@ -1368,6 +1409,9 @@ Page({
1368 1409 });
1369 1410 }
1370 1411 }
  1412 +
  1413 + // getApp().globalData.cartGoodsNum = all_num;
  1414 + // console.log('CCCCCCC', all_num, getApp().globalData.cartGoodsNum);
1371 1415  
1372 1416 this.setData({
1373 1417 checkAllToggle: ischeck,
... ... @@ -1382,14 +1426,14 @@ Page({
1382 1426  
1383 1427 var e = this,th=e;
1384 1428 var user_id = getApp().globalData.user_id;
1385   - console.log('update');
1386   - console.log(t);
  1429 + // console.log('update');
  1430 + // console.log('9995959595959',t);
1387 1431 rq.get("/api/weshop/goods/get/" + oo.stoid + "/" + t.goods_id, {
1388 1432 isShowLoading: 0,
1389 1433 async success(d) {
1390 1434 var limit = d.data.data.viplimited;
1391 1435 var store_count = d.data.data.store_count;
1392   - var wareIds=d.data.data.erpwareid;
  1436 + var wareIds = d.data.data.erpwareid;
1393 1437  
1394 1438 var goodsinfo = e.data.requestData[pitem].goods[item];
1395 1439 var promgoodsbuynum = 0;
... ... @@ -1412,8 +1456,12 @@ Page({
1412 1456 th.setData({[txt]:promgoodsbuynum});
1413 1457 }
1414 1458 goodsbuynum = buy_num_data.goodsbuynum;
  1459 +
  1460 +
  1461 + // console.log('goodsbuynum===========', goodsbuynum);
1415 1462 })
1416 1463  
  1464 +
1417 1465  
1418 1466 var buyed_mum2 = t.goods_num + goodsbuynum;
1419 1467 if (buyed_mum2 > limit && limit > 0) {
... ... @@ -1922,7 +1970,7 @@ Page({
1922 1970  
1923 1971 //如果会员是等级会员,商品有等级价,且不是活动商品
1924 1972 if (card_field && val[card_field] > 0 &&
1925   - (val.prom_type == 0 || val.prom_type == 3 || val.prom_type == 4 || val.prom_type == 5 || val.prom_type == 7 || normal_arr[val.goods_id])) {
  1973 + ((val.prom_type == 0 && g_arr[i].prom_type==0) || val.prom_type == 3 || val.prom_type == 4 || val.prom_type == 5 || val.prom_type == 7 || normal_arr[val.goods_id])) {
1926 1974 if (g_arr[i].goods_price != val[card_field]) {
1927 1975 isok = 0;
1928 1976 gname = val.goods_name;
... ... @@ -2069,7 +2117,11 @@ Page({
2069 2117 var url = '/api/weshop/cart/delIds/' + oo.stoid + '/' + user_id + "/" + glist;
2070 2118 getApp().request.delete(url, {
2071 2119 success: function(t) {
  2120 + // console.log('del done1111111111');
2072 2121 th.getCardList();
  2122 + getApp().requestCardNum(th);
  2123 + // console.log('all================', th.data.all_num);
  2124 + // getApp().globalData.cartGoodsNum =
2073 2125 }
2074 2126 });
2075 2127 }
... ... @@ -2080,10 +2132,12 @@ Page({
2080 2132 getApp().request.delete(url, {
2081 2133 success: function(t) {
2082 2134 th.getCardList();
  2135 + getApp().requestCardNum(th);
  2136 + console.log('all2================', th.data.all_num);
2083 2137 }
2084 2138 });
2085 2139 }
2086   -
  2140 +
2087 2141 },
2088 2142 //跳到首页
2089 2143 goto: function(e) {
... ... @@ -2351,6 +2405,28 @@ Page({
2351 2405 go_url(e){
2352 2406 var url=e.currentTarget.dataset.url;
2353 2407 getApp().goto(url);
  2408 + },
  2409 +
  2410 + //跳转到商品
  2411 + go_gd:function (e) {
  2412 + var gd= e.currentTarget.dataset.gd;
  2413 + var good_url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + gd;
  2414 + var url="/api/weshop/activitylist/getGoodActInfo";
  2415 + var req_data={
  2416 + store_id:os.stoid,goodsidlist:gd,is_detail:1
  2417 + };
  2418 + //获取秒杀的多规格
  2419 + getApp().request.promiseGet(url, {data:req_data}).then(res=>{
  2420 + if(res.data.code==0 && res.data.data){
  2421 + if(res.data.data.length==1){
  2422 + good_url+="&prom_type="+res.data.data[0].prom_type+"&prom_id="+res.data.data[0].act_id;
  2423 + }
  2424 + getApp().goto(good_url);
  2425 +
  2426 + }else{
  2427 + getApp().goto(good_url);
  2428 + }
  2429 + })
2354 2430 }
2355 2431  
2356 2432 });
2357 2433 \ No newline at end of file
... ...
pages/cart/cart/cart.wxml
... ... @@ -56,7 +56,6 @@
56 56 <view class="shmd_m">
57 57 <!-- 门店 -->
58 58 <!--<radio color="red" bindtap="check_th_all_item" class="order-raido flex-center" checked="{{checkAllToggle||item.selected}}" data-pitems="{{pidx}}"></radio>-->
59   -
60 59 <icon wx:if="{{checkAllToggle||item.selected}}" class="order-raido flex-center" bindtap="check_th_all_item" data-pitems="{{pidx}}"
61 60 color="red" size="20" type="success"></icon>
62 61 <view wx:else class="icon_no_sele2" bindtap="check_th_all_item" data-pitems="{{pidx}}"></view>
... ... @@ -77,7 +76,7 @@
77 76 </block>
78 77 <block wx:else><view class="order-raido flex-vertical " style="width: 45rpx"></view></block>
79 78  
80   - <navigator class="goods-img rel" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{items.goods_id}}">
  79 + <navigator class="goods-img rel" bindtap="go_gd" data-gd="{{items.goods_id}}">
81 80 <image class="wh100" src="{{items.original_img}}" binderror="bind_bnerr2" data-errorimg="requestData[{{pidx}}].goods[{{idx}}].original_img" data-url="{{items.original_img}}"></image>
82 81 <block wx:if="{{items.is_gift}}">
83 82 <view style="background-color:red" class="abs flex-center fs26" wx:if="{{items.is_gift==1}}">赠品</view>
... ... @@ -91,8 +90,7 @@
91 90 <block wx:if="{{items.prom_type==7}}">
92 91 <block wx:if="{{items.selected}}">
93 92 <!-- 主要显示限购 -->
94   - <text wx:if="{{items.buyqty>0 && items.zh_b_num>0}}" class="abs2">活动剩余可购{{items.buyqty-items.zh_b_num>0?items.buyqty-items.zh_b_num:0}}件</text>
95   - <text wx:elif="{{items.zhqty>items.goods_num}}" class="abs2">还需购买{{items.zhqty-items.goods_num}}件</text>
  93 + <text wx:if="{{items.zhqty>items.goods_num}}" class="abs2">还需购买{{items.zhqty-items.goods_num}}件</text>
96 94 </block>
97 95 <block wx:else>
98 96 <text wx:if="{{items.zhqty}}" class="abs2">需购买{{items.zhqty}}件</text>
... ... @@ -103,7 +101,7 @@
103 101 </navigator>
104 102 <view class="goods-cont">
105 103 <view class="goods-name">
106   - <navigator class="ellipsis-2 fs30" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{items.goods_id}}">{{items.goods_name}}</navigator>
  104 + <navigator bindtap="go_gd" class="ellipsis-2 fs30" data-gd="{{items.goods_id}}">{{items.goods_name}}</navigator>
107 105  
108 106 <view class="specifications ellipsis-1">
109 107 <view wx:if="{{items.goods_color || items.goods_spec}}">
... ... @@ -113,6 +111,7 @@
113 111 <block wx:if="{{items.is_gift}}">
114 112 <view>{{items.goods_num}}件</view>
115 113 </block>
  114 + <view wx:if="{{items.buyqty>0}}" class="fs22 ml10 c-7b">组合限购{{items.buyqty}}件</view>
116 115 </view>
117 116  
118 117  
... ... @@ -124,6 +123,7 @@
124 123  
125 124 <view wx:if="{{items.is_offline}}" class="quan_color flex ai-center"><text>券后 ¥{{g_filter.toFix(items.offline_price,2)}}</text></view>
126 125  
  126 +
127 127 </view>
128 128 <view class="count">
129 129 <view bindtap="{{items.goods_num <= 1 ? '':'subNum'}}" class="sub fs28 {{items.goods_num <= 1 ? 'active':''}}" data-pitems="{{pidx}}" data-item="{{idx}}">一</view>
... ...
pages/cart/cart2/cart2.js
... ... @@ -124,6 +124,7 @@ Page({
124 124 in_zhact_gdmap:{}, //不同门店参与同一活动的限购
125 125 hid_inp:1,
126 126 user_note:{},
  127 + zuhe_map_good:{},
127 128 },
128 129 onLoad: function (t) {
129 130 wx.setNavigationBarTitle({title: "填写订单",})
... ... @@ -289,7 +290,6 @@ Page({
289 290 }
290 291  
291 292 }, 1);
292   -
293 293 //值在这里换
294 294 getApp().globalData.plus_buy_back = 0;
295 295 },
... ... @@ -454,6 +454,7 @@ Page({
454 454 //要把组合购的东西拿出来算一下
455 455 if (item1.prom_type == 7) {
456 456 var isok = 1;
  457 + var is_flag=1;
457 458 //如果有组合购
458 459 var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item1.prom_id+'/'+getApp().globalData.userInfo.user_id;
459 460 await getApp().request.promiseGet(url, {}).then(res => {
... ... @@ -465,25 +466,45 @@ Page({
465 466 if (ut.gettimestamp() > res.data.data.end_time) {
466 467 isok = 0;
467 468 }
  469 + item1.act = res.data.data;
468 470 } else {
469 471 //未找到商品的活动
470   - isok = 0;
  472 + is_flag = 0;
471 473 }
472   - item1.act = res.data.data;
473 474 })
474   -
475 475 if (!isok) {
476 476 getApp().my_warnning("组合购的活动已经过期", 0, th);
477 477 return false;
478 478 }
479   -
  479 + var url1 = "/api/weshop/prom/zhbuyGoods/page";
  480 + var req_data = {
  481 + page: 1,
  482 + pageSize: 2000,
  483 + store_id: os.stoid,
  484 + zh_id: item1.prom_id,
  485 + }
  486 + await getApp().request.promiseGet(url1, {
  487 + data: req_data
  488 + }).then(res => {
  489 + if (ut.ajax_ok(res)) {
  490 + var gdlist = res.data.data.pageData;
  491 + gdlist.forEach(i=>{
  492 + if(item1.goods_id==i.goods_id&&!is_flag){
  493 + item1.prom_type=0;
  494 + item1.prom_type1=0;
  495 + item1.prom_id=0;
  496 + item1.prom_id1=0
  497 + }
  498 + })
  499 + th.data.zuhe_map_good[item1.prom_id]=gdlist;
  500 + }
  501 + })
480 502 }
481 503 }
482 504  
483 505 //在分组的时候,就不要再调用接口,await
484 506 for (var i = 0; i < carr.length; i++) {
485 507 var item = carr[i];
486   -
487 508 //-- 如果是等级会员注册返回 --
488 509 if (is_card_back) {
489 510 th.data.card_name = th.data.userinfo.card_field;
... ... @@ -667,22 +688,26 @@ Page({
667 688 //存储不同活动的商品列表
668 689 u_item.zh_prom_goods = {};
669 690 for (let var1 in obj) {
670   - var h_item = obj[var1];
671   - var gdlist = null;
672   - var url1 = "/api/weshop/prom/zhbuyGoods/page";
673   - var req_data = {
674   - page: 1,
675   - pageSize: 2000,
676   - store_id: os.stoid,
677   - zh_id: h_item.prom_id,
678   - }
679   - await getApp().request.promiseGet(url1, {
680   - data: req_data
681   - }).then(res => {
682   - if (ut.ajax_ok(res)) {
683   - gdlist = res.data.data.pageData;
684   - }
685   - })
  691 + var h_item=obj[var1];
  692 + var gdlist= th.data.zuhe_map_good[h_item.prom_id];
  693 + //获取活动需要的商品列表
  694 + // u_item.zh_prom_goods[h_item.prom_id]=gdlist;
  695 + // var h_item = obj[var1];
  696 + // var gdlist = null;
  697 + // var url1 = "/api/weshop/prom/zhbuyGoods/page";
  698 + // var req_data = {
  699 + // page: 1,
  700 + // pageSize: 2000,
  701 + // store_id: os.stoid,
  702 + // zh_id: h_item.prom_id,
  703 + // }
  704 + // await getApp().request.promiseGet(url1, {
  705 + // data: req_data
  706 + // }).then(res => {
  707 + // if (ut.ajax_ok(res)) {
  708 + // gdlist = res.data.data.pageData;
  709 + // }
  710 + // })
686 711 //获取活动需要的商品列表
687 712 u_item.zh_prom_goods[h_item.prom_id] = {gdlist: gdlist, act: h_item.act};
688 713 }
... ... @@ -780,6 +805,10 @@ Page({
780 805 }
781 806 }
782 807  
  808 +
  809 + gd.prom_type=gg.prom_type;
  810 + gd.prom_id=gg.prom_id;
  811 +
783 812 switch (gd.prom_type) {
784 813 case 0:
785 814 case 2:
... ... @@ -948,22 +977,23 @@ Page({
948 977 break;
949 978 case 1: //---秒杀-----
950 979 var quanlist = null;
951   - getApp().request.get("/api/weshop/activitylist/getSJGoodsPrice/" + gd.store_id
952   - + "/" + gd.goods_id + "/1/" + gd.prom_id, {
  980 + getApp().request.get("/api/weshop/activitylist/getSJGoodsPriceNew/" + gd.store_id
  981 + + "/" + gd.goods_id + "/1/" + gd.prom_id+"/"+app.globalData.user_id, {
953 982 success: async function (tt) {
954 983 if (tt.data.code == 0) {
955   - t.data.data.shop_price = tt.data.data.prom_price;
  984 + //t.data.data.shop_price = tt.data.data.prom_price;
  985 + t.data.data.shop_price = tt.data.data.prom_user_price;
  986 + th.data.ckeck_quan_price=0;
956 987 } else {
957 988 t.data.data.prom_id = 0;
958 989 t.data.data.prom_type = 0;
959   -
960 990 th.data.ckeck_quan_price = t.data.data.shop_price * gg.goods_num;
961 991 th.data.check_quan_price_list = t.data.data.shop_price * gg.goods_num + "";
962 992 th.data.check_quan_ware_list = t.data.data.erpwareid + "";
963 993 }
964 994  
965 995 th.setData({
966   - bn_goods: t.data.data,
  996 + bn_goods: gd,
967 997 bn_pickname: gg.pick_name,
968 998 bn_exp_type: et,
969 999 index: m_wind,
... ... @@ -3810,6 +3840,11 @@ Page({
3810 3840 var index = e.currentTarget.dataset.index;
3811 3841 var txt = "cartlist[" + index + "].focus";
3812 3842 this.setData({[txt]:0})
  3843 + },
  3844 +
  3845 + go_url:function (e) {
  3846 + var url = e.currentTarget.dataset.url;
  3847 + getApp().goto(url);
3813 3848 }
3814 3849  
3815 3850  
... ...
pages/cart/cart2/cart2.wxml
... ... @@ -78,26 +78,21 @@
78 78 </view>
79 79 <view class="order-detail" wx:for="{{item.goods}}" wx:for-index="idx" wx:for-item="items">
80 80 <!----商品图片----->
81   - <view class="goods-img" style="position: relative">
  81 + <view class="goods-img" style="position: relative; overflow: hidden" bindtap="go_url" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{items.goods_id}}&prom_type={{items.prom_type}}&prom_id={{items.prom_id}}">
82 82 <image wx:if="{{items.is_gift}}" src="{{imgUrl}}/miniapp/images/giveaway.png" class="gift_image"></image>
  83 + <text class="zuhe" wx:if="{{items.prom_type==7}}">组合购</text>
83 84 <image class="wh100 bdr14" src="{{items.original_img}}" binderror='cart_set_err' data-err='cartlist[{{pidx}}].goods[{{idx}}].original_img'></image>
84 85 </view>
85 86 <!----商品名称规格---->
86   - <navigator class="order-cont" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{items.goods_id}}">
  87 + <navigator class="order-cont" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{items.goods_id}}&prom_type={{items.prom_type}}&prom_id={{items.prom_id}}" >
87 88 <view class="goods-name ellipsis-2">{{items.goods_name}}</view>
88 89 <!-- 商品属性 -->
89 90 <view class="flex-vertical fs28 color-gray n_guige">
90 91 <view class="goods-color">
91 92 <block><text>{{filters.show_gui_ge(items.goods_spec,items.goods_color)}}</text></block>
92   - <!--<block wx:if="{{!items.goods_spec && !items.goods_color}}"><text>规格1</text></block>-->
93   - <!--<block wx:else>-->
94   - <!--<text wx:if="{{items.goods_spec!=''}}">{{items.goods_spec}}<text wx:if="{{items.goods_color}}">/</text></text>-->
95   - <!--<text wx:if="{{items.goods_color}}">{{items.goods_color}}</text>-->
96   - <!--</block>-->
97 93 </view>
98 94 </view>
99 95  
100   -
101 96 <!-----商品名称规格------>
102 97 <view class="order-num flex-space-between">
103 98 <view class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text></view>
... ... @@ -255,10 +250,10 @@
255 250 <!-- <view>门店:{{bn_pickname}}</view> -->
256 251 </view>
257 252 <view class="order-detail">
258   - <view class="goods-img">
  253 + <view class="goods-img" bindtap="go_url" data-url="/pages/goods/goodsInfo/goodsInfo?goods_id={{bn_goods.goods_id}}&prom_type={{bn_goods.prom_type}}&prom_id={{bn_goods.prom_id}}">
259 254 <image class="wh100 bdr14" src="{{bn_goods.original_img}}" binderror='cart_set_err' data-err="bn_goods.original_img"></image>
260 255 </view>
261   - <navigator class="order-cont" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{bn_goods.goods_id}}">
  256 + <navigator class="order-cont" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{bn_goods.goods_id}}&prom_type={{items.prom_type}}&prom_id={{items.prom_id}}">
262 257 <view class="goods-name ellipsis-2">{{bn_goods.goods_name}}</view>
263 258 <!-- 商品属性 -->
264 259 <view class="flex-vertical fs28 xc-ash color-gray n_guige">
... ...
pages/cart/cart2/cart2.wxss
... ... @@ -19,9 +19,6 @@
19 19 box-shadow: 16rpx 0px 12px #e7e9eb;
20 20 }
21 21  
22   -
23   -
24   -
25 22 page {
26 23 /* background-color: #FAFAFA; */
27 24 background-color: #F0F0F0;
... ... @@ -995,3 +992,16 @@ margin-left: 20rpx;
995 992 top:36rpx
996 993 }
997 994  
  995 +.zuhe {
  996 + width: 140rpx;
  997 + text-align: center;
  998 + height:40rpx;
  999 + position: absolute;
  1000 + top: 15rpx;
  1001 + left: -37rpx;
  1002 + transform: rotate(-45deg);
  1003 + background-color: rgb(255,0,0);
  1004 + font-size:22rpx;
  1005 + color: #fff;
  1006 + line-height: 37rpx;
  1007 +}
... ...
pages/cart/cart2/zh_calculate.js
... ... @@ -193,6 +193,11 @@ module.exports = {
193 193 new_g.prom_type = 0;
194 194 new_g.prom_id = 0;
195 195 goods.push(new_g);
  196 +
  197 + //如果商品的数量已经为空了
  198 + if(goods[idx].goods_num<=0){
  199 + goods.splice(idx,1);
  200 + }
196 201 }
197 202 }
198 203  
... ...
pages/giftpack/mygiftpack/mygiftpack.js
... ... @@ -148,5 +148,18 @@ onShareAppMessage: function (e) {
148 148 }
149 149 },
150 150  
  151 + onShareTimeline() {
  152 + var curPage=this;
  153 + var pagePath = curPage.route; //当前页面url
  154 + if (pagePath.indexOf('/') != 0) {
  155 + pagePath = '/' + pagePath;
  156 + }
  157 + return {
  158 + title: '专享礼包',
  159 + imageUrl: this.data.ad_data.ad_code,
  160 + path: pagePath,
  161 + }
  162 + },
  163 +
151 164  
152 165 });
153 166 \ No newline at end of file
... ...
pages/goods/categoryList/categoryList.js
... ... @@ -52,7 +52,7 @@ Page({
52 52 currentPage: 1,
53 53 allData: null,
54 54 openFilterModal: !1,
55   - baseUrl: "api/weshop/goods/page?1=1&cat_id=1&parent_id=0&orderField=goods_id&orderType=desc&page=1&is_mainshow=1&isonsale=1&store_id="+oo.stoid+"&is_recommend=1",
  55 + baseUrl: "api/weshop/goods/page?1=1&cat_id=1&parent_id=0&orderField=sort&orderType=asc&page=1&is_mainshow=1&isonsale=1&store_id="+oo.stoid+"&is_recommend=1",
56 56 requestUrl: "",
57 57 tabname: "goods_id", //排序的字段
58 58 adname: "desc", //升降的字段
... ... @@ -791,7 +791,7 @@ Page({
791 791 var that = this;
792 792 that.data.requestUrl = t;
793 793 e.get("/api/weshop/goods/page?1=1", {
794   - data: { page: that.data.stylePage, cat_id: that.data.cat_id, parent_id: 0, orderField: 'goods_id', orderType: 'desc', is_mainshow: 1, isonsale: 1, store_id: oo.stoid, is_recommend: 1 },
  794 + data: { page: that.data.stylePage, cat_id: that.data.cat_id, parent_id: 0, orderField: 'sort', orderType: 'asc', is_mainshow: 1, isonsale: 1, store_id: oo.stoid, is_recommend: 1 },
795 795 success: function (data) {
796 796 console.log(data.data.data.pageData)
797 797 that.setData({
... ... @@ -853,12 +853,10 @@ Page({
853 853 console.log("page:=" + page)
854 854 var s = this
855 855 e.get("/api/weshop/goods/page?1=1", {
856   - data: { page: page, cat_id: cid, parent_id: 0, orderField: 'goods_id', orderType: 'desc', is_mainshow: 1, isonsale: 1, store_id: oo.stoid, is_recommend: 1 },
  856 + data: { page: page, cat_id: cid, parent_id: 0, orderField: 'sort', orderType: 'asc', is_mainshow: 1, isonsale: 1, store_id: oo.stoid, is_recommend: 1 },
857 857 success: function (e) {
858 858 console.log(e.data.data.pageData)
859   - s.setData({
860   - dataLength: e.data.data.pageData.length,
861   - });
  859 +
862 860 if (e.data.data.pageData.length > 0) {
863 861 s.setData({
864 862 msgStatus: false,is_no_more:0
... ... @@ -886,6 +884,10 @@ Page({
886 884 })
887 885 }
888 886 }
  887 +
  888 + s.setData({
  889 + dataLength: s.data.requestData.length,
  890 + });
889 891  
890 892 } else {
891 893 //没有数据页面显示暂无数据
... ... @@ -911,9 +913,7 @@ Page({
911 913 });
912 914 s.style(s.data.stylePage, dataArray[index + 1]['items']['id'])
913 915 }
914   -
915   -
916   -
  916 +
917 917 }else{
918 918 //没有数据而且是第一页的时候
919 919 s.setData({
... ...
pages/goods/goodsInfo/filter.wxs
... ... @@ -8,7 +8,20 @@ function format_tt(ts) {
8 8 var fm=(d.getMonth()+1)+"月"+ d.getDate()+"日";
9 9 return fm;
10 10 }
  11 +
  12 +function act_type(ty){
  13 + switch(ty){
  14 + case 1: return '秒杀';
  15 + case 2: return '团购';
  16 + case 4: return '积分购';
  17 + case 6: return '拼单';
  18 + case 7: return '组合购';
  19 + case 8: return '预售';
  20 + }
  21 +}
  22 +
11 23 module.exports = {
12 24 is_has: is_has,
13   - format_tt:format_tt
  25 + format_tt:format_tt,
  26 + act_type:act_type
14 27 }
... ...
pages/goods/goodsInfo/goodsInfo.js
... ... @@ -255,15 +255,20 @@ Page({
255 255 //------初始化加载----------
256 256 onLoad: function (t) {
257 257  
258   -
259   -
260 258 var ee = this,
261 259 that = ee,
262 260 th = ee,
263 261 gid = t.goods_id,
264 262 first_leader = t.first_leader,
265 263 room_id = t.room_id,
266   - room_user_share = t.room_user_share; //如果是会员分享带有room_id的话,那么接下来会员分享就不传room_id
  264 + room_user_share = t.room_user_share, //如果是会员分享带有room_id的话,那么接下来会员分享就不传room_id
  265 + prom_type=t.prom_type,
  266 + prom_id=t.prom_id; //活动ID
  267 +
  268 + if(prom_type){
  269 + this.data.prom_type=prom_type;
  270 + this.data.prom_id=prom_id;
  271 + }
267 272  
268 273 //-- 自定义海报 --
269 274 getApp().request.promiseGet("/api/weshop/goods/poster/page", {
... ... @@ -300,6 +305,17 @@ Page({
300 305 var gid_str = decodeURIComponent(t.scene);
301 306 gid_str = gid_str.split("_");
302 307 gid = gid_str[0];
  308 + if(gid.indexOf('.')!=-1){
  309 + var fir_arr=gid.split(".");
  310 + gid=fir_arr[0];
  311 + prom_type=fir_arr[1];
  312 + prom_id=fir_arr[2];
  313 + this.data.prom_type=prom_type;
  314 + this.data.prom_id=prom_id;
  315 + }
  316 +
  317 +
  318 +
303 319 if (gid_str.length > 1) {
304 320 first_leader = gid_str[1];
305 321 }
... ... @@ -435,9 +451,6 @@ Page({
435 451 if (th.data.fir_goods) var g_distr_type = th.data.fir_goods.distr_type;
436 452 //--如果默认门店的配送方式不对,就不能被选择,这里不控制,如果不一样,就说明配送方式不对--
437 453 if (ee.distr_type != 0 && g_distr_type != 0 && ee.distr_type != g_distr_type) {
438   - //th.data.fir_def_store={}; //赋值空对象
439   - //return false;
440   - //th.data.fir_def_store.is_no_dis=1;
441 454 ee.is_no_dis = 1;
442 455 }
443 456  
... ... @@ -452,15 +465,7 @@ Page({
452 465 if (that.data.lat != null) {
453 466 //如果经纬度有变化的话
454 467 if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) {
455   - //that.data.fir_def_store=e;
456   - // that.setData({
457   - // def_pick_store: e,
458   - // sto_sele_name: e.pickup_name,
459   - // sto_sele_id: e.pickup_id,
460   - // sto_sele_distr: e.distr_type
461   - // })
462 468 that.set_def_storage(e);
463   -
464 469 } else {
465 470 //要用接口是获取距离,js的计算不准
466 471 getApp().request.promiseGet("/api/weshop/pickup/list", {
... ... @@ -471,13 +476,6 @@ Page({
471 476 if (e) {
472 477 e.is_no_dis = ee.is_no_dis;
473 478 appd.pk_store = e;
474   - // that.data.fir_def_store=e;
475   - // that.setData({
476   - // def_pick_store: e,
477   - // sto_sele_name: e.pickup_name,
478   - // sto_sele_id: e.pickup_id,
479   - // sto_sele_distr: e.distr_type
480   - // })
481 479 that.set_def_storage(e);
482 480 }
483 481  
... ... @@ -491,13 +489,6 @@ Page({
491 489 } else {
492 490 if (e) {
493 491 e.distance = null;
494   - // that.data.fir_def_store=e;
495   - // that.setData({
496   - // def_pick_store: e,
497   - // sto_sele_name: e.pickup_name,
498   - // sto_sele_id: e.pickup_id,
499   - // sto_sele_distr: e.distr_type
500   - // })
501 492 that.set_def_storage(e);
502 493 }
503 494 }
... ... @@ -614,7 +605,7 @@ Page({
614 605 }).then(res => {
615 606 var t = res;
616 607 var data = t.data.data.pageData;
617   - if (data.length > 0) {
  608 + if (data && data.length > 0) {
618 609 //ee.setData({ is_collect: 1, collect_id: data[0].collect_id, });
619 610 is_collect = 1;
620 611 collect_id = data[0].collect_id;
... ... @@ -671,7 +662,7 @@ Page({
671 662 }
672 663 }
673 664  
674   - if (th.data.is_closecoupon != 1) {
  665 + if (th.data.is_closecoupon != 1 && (!th.data.fir_quan || th.data.fir_quan.length<=0)) {
675 666 //----获取详情页的券的数量----
676 667 await getApp().request.promiseGet("/api/weshop/prom/coupon/pageCouponList", {
677 668 data: {
... ... @@ -790,7 +781,7 @@ Page({
790 781 if (getApp().globalData.userInfo && t.data.data.prom_type == 7) {
791 782 //获取活动信息
792 783 var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" +
793   - t.data.data.prom_id + "/" + getApp().globalData.userInfo.user_id;
  784 + t.data.data.prom_id + "/" + getApp().globalData.user_id;
794 785 getApp().request.get(url, {
795 786 success: function (e) {
796 787 if (e.data.code == 0 && e.data.data) {
... ... @@ -809,7 +800,8 @@ Page({
809 800  
810 801 //-- 把商品的赋值 --
811 802 ee.data.fir_goods = JSON.parse(JSON.stringify(t.data.data));
812   - ee.check_is_youhui(ee.data.gid);
  803 + if(ee.data.prom_type!=1 && ee.data.prom_type!=4 && ee.data.prom_type!=6)
  804 + ee.check_is_youhui(ee.data.gid);
813 805  
814 806 t.data.data.on_time = ut.formatTime(t.data.data.on_time, 'yyyy-MM-dd hh:mm:ss');
815 807  
... ... @@ -835,6 +827,11 @@ Page({
835 827 a.wxParse("content", "html", t.data.data.goods_content, ee, 6);
836 828 e.wxParseAddFullImageUrl(ee, "content");
837 829  
  830 + if(ee.data.prom_type){
  831 + t.data.data.prom_type=ee.data.prom_type;
  832 + t.data.data.prom_id=ee.data.prom_id;
  833 + }
  834 +
838 835 ee.setData({
839 836 data: t.data.data,
840 837 sele_g: t.data.data,
... ... @@ -848,43 +845,15 @@ Page({
848 845 if (that.data.sales_rules == 2 && that.data.is_newsales_rules) {
849 846 //获取门店
850 847 ee.get_sto();
851   - //--等待某个值只运行---,这里有可能因为导航的时间太久,而不能计算门店库存
852   - /*---
853   - getApp().waitfor2(that,"wait_for_user_store","fir_def_store",function(){
854   - if(th.data.fir_def_store && th.data.fir_def_store.pickup_id ){
855   - var lock=0,plist=null;
856   - //先读取门店的lock,采用链式写法,少用await
857   - getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
858   - data:{store_id:os.stoid,wareId:ee.data.data.goods_id,storageId:that.data.fir_def_store.pickup_id,pageSize:1000}
859   - }).then(res=>{
860   - if(res.data.code==0 && res.data.data.total>0){
861   - for(var i in res.data.data.pageData)
862   - lock+=res.data.data.pageData[i].outQty
863   - }
864   - //---通过接口获取门店的线下库存信息--
865   - return getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
866   - data:{storageNos:that.data.fir_def_store.pickup_no,wareIds:encodeURIComponent(th.data.data.erpwareid),storeId:os.stoid}
867   - })
868   - }).then(res=>{
869   - if(res.data.code==0 && res.data.data.total>0){
870   - plist=res.data.data.pageData[0];
871   - }
872   - if(plist && plist.CanOutQty-lock>0){
873   - that.data.fir_def_store.CanOutQty=plist.CanOutQty-lock;
874   - }else{
875   - that.data.fir_def_store.CanOutQty=0;
876   - }
877   - //--给门店赋值线下库存--
878   - th.setData({def_pick_store:that.data.fir_def_store});
879   - })
880   - }
881   - })--*/
  848 +
882 849 } else {
883 850 //获取门店
884 851 ee.get_sto();
885 852 }
886 853  
887 854 ee.get_sku(o.stoid, t.data.data, gid);
  855 + ee.check_has_flash();
  856 +
888 857 }
889 858 else {
890 859 var gg = "", item = t.data.data;
... ... @@ -1260,6 +1229,8 @@ Page({
1260 1229 goods_name: o.goods_name,
1261 1230 goods_sn: o.goods_sn,
1262 1231 sku: o.sku,
  1232 + prom_id:th.data.sele_g.prom_id,
  1233 + prom_type:th.data.sele_g.prom_type,
1263 1234 };
1264 1235  
1265 1236 //---是不是从收藏夹出来的---
... ... @@ -1428,7 +1399,7 @@ Page({
1428 1399 add_cart_next(e, t, a, o, newd, CanOutQty) {
1429 1400 var th = this, i = getApp().request;
1430 1401 //---如果商品不是积分购和拼团,要判断一个是否要进行等级价的判断------
1431   - if (o.prom_type != 1 && ((o.prom_type != 6 && o.prom_type != 4) || th.data.is_normal)) {
  1402 + if ((o.prom_type != 1 || o.prom_id<=0) && ((o.prom_type != 6 && o.prom_type != 4) || th.data.is_normal)) {
1432 1403 var conf = th.data.bconfig;
1433 1404 if (conf.switch_list && getApp().globalData.userInfo['card_field'] && getApp().globalData.userInfo['card_expiredate']) {
1434 1405 var s_list = JSON.parse(conf.switch_list);
... ... @@ -1850,17 +1821,33 @@ Page({
1850 1821 return false;
1851 1822 }
1852 1823  
1853   - var ind = t.currentTarget.dataset.ind;
  1824 + if(th.data.more_flash && open_store==1){
  1825 + th.setData({is_pop_more:1});
  1826 + }else{
  1827 + var ind = t.currentTarget.dataset.ind;
  1828 + //回调。判断是不是优惠促销
  1829 + th.check_is_prom_goods(function () {
  1830 + th.setData({
  1831 + openSpecModal: !0,
  1832 + openSpecModal_ind: ind,
  1833 + });
  1834 + //var is_open=th.data.config
  1835 + th.get_off_price();
  1836 + })
  1837 + }
  1838 + },
1854 1839  
1855   - //回调。判断是不是优惠促销
1856   - th.check_is_prom_goods(function () {
1857   - th.setData({
1858   - openSpecModal: !0,
1859   - openSpecModal_ind: ind,
1860   - });
1861   - //var is_open=th.data.config
1862   - th.get_off_price();
1863   - })
  1840 + open_next(){
  1841 + var th=this;
  1842 + //回调。判断是不是优惠促销
  1843 + th.check_is_prom_goods(function () {
  1844 + th.setData({
  1845 + openSpecModal: !0,
  1846 + openSpecModal_ind: 1,
  1847 + is_pop_more:0
  1848 + });
  1849 + th.get_off_price();
  1850 + })
1864 1851 },
1865 1852  
1866 1853 //判断是不是优惠促销
... ... @@ -2130,13 +2117,13 @@ Page({
2130 2117 onShareAppMessage: function (t) {
2131 2118  
2132 2119 var th = this;
2133   - var price = th.data.data.shop_price;
  2120 + var price = th.data.sele_g.shop_price;
2134 2121 if (th.data.prom_act) {
2135 2122 price = th.data.prom_act.price;
2136 2123  
2137 2124 }
2138   - var title = th.data.data.goods_name;
2139   - var img = th.data.data.original_img;
  2125 + var title = th.data.sele_g.goods_name;
  2126 + var img = th.data.sele_g.original_img;
2140 2127 if (th.data.prom_type == 6 || th.data.prom_type == 1 || th.data.prom_type == 4) {
2141 2128 title = th.data.prom_act.share_title;
2142 2129 if (!title) title = th.data.prom_act.title;
... ... @@ -2147,14 +2134,15 @@ Page({
2147 2134 }
2148 2135  
2149 2136  
2150   - var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + th.data.gid;
  2137 + var url = "/pages/goods/goodsInfo/goodsInfo?goods_id="
  2138 + + th.data.sele_g.goods_id+"&prom_type="+th.data.sele_g.prom_type+"&prom_id="+th.data.sele_g.prom_id;
2151 2139 if (getApp().globalData.user_id) {
2152 2140 url += "&first_leader=" + getApp().globalData.user_id;
2153 2141 }
2154 2142  
2155 2143 //-- 如果房间分享,且不是会员分享的 --
2156 2144 if (getApp().globalData.room_id &&
2157   - th.data.data.goods_id == getApp().globalData.room_goods_id &&
  2145 + th.data.sele_g.goods_id == getApp().globalData.room_goods_id &&
2158 2146 !getApp().globalData.room_user_share
2159 2147 ) {
2160 2148 url += "&room_id=" + getApp().globalData.room_id + "&room_user_share=1";
... ... @@ -2185,6 +2173,8 @@ Page({
2185 2173 ob.title = text + " " + name;
2186 2174 }
2187 2175  
  2176 + //-- 页面不能刷新 --
  2177 + this.data.show_prew_img=1;
2188 2178 return ob;
2189 2179  
2190 2180 },
... ... @@ -2266,6 +2256,9 @@ Page({
2266 2256 case 8:
2267 2257 continue;
2268 2258  
  2259 + case 8:
  2260 + continue;
  2261 +
2269 2262 }
2270 2263  
2271 2264  
... ... @@ -2347,10 +2340,8 @@ Page({
2347 2340 });
2348 2341  
2349 2342  
2350   -
2351 2343 that.check_is_youhui(gid, that.data.is_normal);
2352 2344  
2353   - var ty = 0;
2354 2345 this.get_sto(that.data.is_normal);
2355 2346  
2356 2347  
... ... @@ -2391,11 +2382,14 @@ Page({
2391 2382 async sele_spec_chech_activity() {
2392 2383 //---如果是活动的时候---
2393 2384 var prom = null, goodsinfo = this.data.sele_g, th = this;
  2385 + var user_id=getApp().globalData.user_id;
  2386 + if(!user_id) user_id=0;
2394 2387 if (goodsinfo.prom_type == 1) {
2395   - await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + goodsinfo.prom_id, {
  2388 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" +user_id+"/"+ goodsinfo.prom_id, {
2396 2389 }).then(res => {
2397 2390 if (res.data.code == 0) {
2398   - prom = res.data.data;
  2391 + prom = res.data.data;
  2392 + prom.price=prom.user_price;
2399 2393 }
2400 2394 })
2401 2395 }
... ... @@ -2420,16 +2414,53 @@ Page({
2420 2414 //----------如果有活动,并且在进行中,就不计算线下库存---------------
2421 2415 var now = ut.gettimestamp();
2422 2416 if (prom) {
2423   - if (prom.is_end == 0 && prom.end_time > now && prom.start_time < now) {
  2417 +
  2418 + var t1=prom.start_time;
  2419 + var prom_st=1;
  2420 + if(prom.show_time){
  2421 + t1=prom.show_time;
  2422 + if(prom.start_time>now) prom_st=0;
  2423 + }
  2424 + if (prom.is_end == 0 && prom.end_time > now && t1 < now) {
2424 2425 th.setData({
2425 2426 prom_type: goodsinfo.prom_type,
2426 2427 prom_price: prom.price,
2427 2428 prom_buy_limit: prom.buy_limit,
2428 2429 prom_end_time: prom.end_time,
2429 2430 prom_start_time: prom.start_time,
2430   - prom_st: 1,
  2431 + prom_st: prom_st,
  2432 + prom_act: prom,
  2433 + prom_id:prom.id
2431 2434 })
2432   - return false;
  2435 +
  2436 + //却换图片
  2437 + th.init(goodsinfo.goods_id);
  2438 + var newTime = ut.gettimestamp();
  2439 + var endTime2 = prom.end_time;
  2440 + var endTime1 = prom.start_time;
  2441 +
  2442 + this.data.is_timer=0;
  2443 +
  2444 + setTimeout(function () {
  2445 + th.data.is_timer=1;
  2446 + if (endTime1 > newTime) {
  2447 + th.setData({
  2448 + prom_time_text: '距秒杀开始还有'
  2449 + })
  2450 + th.countDown(endTime1, 0);
  2451 + } else {
  2452 + if (endTime2 > newTime) {
  2453 + th.setData({
  2454 + prom_time_text: '距秒杀结束还有',
  2455 + prom_st: 1
  2456 + })
  2457 + th.countDown(endTime2);
  2458 + }
  2459 + }
  2460 +
  2461 + },1000)
  2462 +
  2463 + return false;
2433 2464 }
2434 2465 }
2435 2466 //---设置普通商品---
... ... @@ -2487,13 +2518,6 @@ Page({
2487 2518 if (!th.data.def_pick_store && th.data.fir_def_store) {
2488 2519 th.setData({ def_pick_store: th.data.fir_def_store });
2489 2520 }
2490   -
2491   - /*--最新的,不用这里筛选配送方式
2492   - if(th.data.def_pick_store && g_distr_type!=0 && th.data.def_pick_store.distr_type!=0 && th.data.def_pick_store.distr_type!=g_distr_type ){
2493   - th.setData({def_pick_store:null});
2494   - }--*/
2495   -
2496   -
2497 2521 wx.showLoading({
2498 2522 title: '加载中.'
2499 2523 });
... ... @@ -2570,44 +2594,49 @@ Page({
2570 2594 getApp().request.get("/api/weshop/storagecategory/page", {
2571 2595 data: {
2572 2596 store_id: o.stoid,
2573   - is_show: 1,
2574 2597 pageSize: 1000,
2575 2598 orderField: "sort",
2576 2599 orderType: 'asc',
2577 2600 },
2578 2601 success: function (ee) {
2579 2602 if (ee.data.code == 0) {
2580   -
2581   - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
2582   - var def_arr = new Array();
2583   - var ishas = 0;
2584   - //-- 开始就看5个门店 --
2585   - for (var k = 0; k < 10; k++) {
2586   - if (k == e.data.data.pageData.length) break;
2587   - def_arr.push(e.data.data.pageData[k]);
2588   - }
2589   -
2590   - th.setData({
2591   - def_pickpu_list: def_arr,
2592   - pickpu_list: ee.data.data.pageData
2593   - });
  2603 + var check_all_cate=0;
  2604 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  2605 + for(let i in ee.data.data.pageData){
  2606 + let item=ee.data.data.pageData[i];
  2607 + if(item.is_show==1){
  2608 + check_all_cate=1;break
  2609 + }
  2610 + }
  2611 + }
  2612 + if (check_all_cate) {
2594 2613 var sto_cate = ee.data.data.pageData;
2595 2614 var sto_arr = e.data.data.pageData;
2596 2615 var newarr = new Array();
2597 2616 var qita = new Array();
2598 2617  
  2618 +
  2619 + var is_del_pk=0;
2599 2620 //----要进行门店分组--------
2600 2621 for (var i = 0; i < sto_arr.length; i++) {
2601 2622 //找一下这个门店有没有在分类数组内
2602 2623 var find2 = 0, find2name = "", sort = 0;
  2624 + is_del_pk=0;
2603 2625 for (var m = 0; m < sto_cate.length; m++) {
2604 2626 if (sto_arr[i].category_id == sto_cate[m].cat_id) {
2605   - find2 = sto_cate[m].cat_id;
2606   - find2name = sto_cate[m].cat_name;
2607   - sort = sto_cate[m].sort;
  2627 + if(sto_cate[m].is_show!=1){
  2628 + is_del_pk=1; sto_arr.splice(i,1);
  2629 + i--;
  2630 + }else {
  2631 + find2 = sto_cate[m].cat_id;
  2632 + find2name = sto_cate[m].cat_name;
  2633 + sort = sto_cate[m].sort;
  2634 + is_del_pk=0;
  2635 + }
2608 2636 break;
2609 2637 }
2610 2638 }
  2639 + if(is_del_pk) continue;
2611 2640  
2612 2641 if (newarr.length > 0) {
2613 2642 var find = 0;
... ... @@ -2652,6 +2681,19 @@ Page({
2652 2681 }
2653 2682 }
2654 2683  
  2684 + var def_arr = new Array();
  2685 + //-- 开始就看10个门店 --
  2686 + for (var k = 0; k < 10; k++) {
  2687 + if (k == sto_arr.length) break;
  2688 + def_arr.push(sto_arr[k]);
  2689 + }
  2690 +
  2691 + th.setData({
  2692 + def_pickpu_list: def_arr,
  2693 + pickpu_list: ee.data.data.pageData
  2694 + });
  2695 +
  2696 +
2655 2697 //门店分类要排序下
2656 2698 function compare(property) {
2657 2699 return function (a, b) {
... ... @@ -2674,10 +2716,15 @@ Page({
2674 2716 newarr.push(item);
2675 2717 }
2676 2718  
2677   - th.setData({
2678   - is_show_sto_cat: 1,
2679   - all_sto: newarr
2680   - });
  2719 + var sd={
  2720 + all_sto: newarr,
  2721 + is_show_sto_cat:1
  2722 + }
  2723 + if(!sto_arr || sto_arr.length<=10){
  2724 + sd.is_show_sto_cat=-1;
  2725 + sd.only_pk=sto_arr;
  2726 + }
  2727 + th.setData(sd);
2681 2728  
2682 2729 } else {
2683 2730 th.setData({
... ... @@ -2686,7 +2733,12 @@ Page({
2686 2733 });
2687 2734 //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
2688 2735 if (!th.data.def_pick_store) {
2689   - th.setData({ def_pick_store: e.data.data.pageData[0] })
  2736 + th.setData({
  2737 + def_pick_store: e.data.data.pageData[0],
  2738 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  2739 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  2740 + sto_sele_distr: e.data.data.pageData[0].distr_type
  2741 + })
2690 2742 }
2691 2743 }
2692 2744 } else {
... ... @@ -2696,7 +2748,12 @@ Page({
2696 2748 });
2697 2749 //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
2698 2750 if (!th.data.def_pick_store) {
2699   - th.setData({ def_pick_store: e.data.data.pageData[0] })
  2751 + th.setData({
  2752 + def_pick_store: e.data.data.pageData[0],
  2753 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  2754 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  2755 + sto_sele_distr: e.data.data.pageData[0].distr_type
  2756 + })
2700 2757 }
2701 2758  
2702 2759 }
... ... @@ -2859,9 +2916,7 @@ Page({
2859 2916  
2860 2917 //------隐藏取货门店2级----
2861 2918 hide_sec_mend: function () {
2862   - this.setData({
2863   - is_sec_mend: 0,
2864   - });
  2919 + this.setData({ is_sec_mend: 0, });
2865 2920 },
2866 2921  
2867 2922 //评论的调用
... ... @@ -2875,7 +2930,7 @@ Page({
2875 2930 parent_id: 0, goods_id: th.data.gid, commenttype: tp,
2876 2931 }
2877 2932 if (getApp().globalData.userInfo) {
2878   - req_where.userId = getApp().globalData.userInfo.user_id;
  2933 + req_where.userId = getApp().globalData.user_id;
2879 2934 }
2880 2935  
2881 2936 var rs_data = null;
... ... @@ -2943,19 +2998,32 @@ Page({
2943 2998  
2944 2999 //--------检查是否活动,活动是否开始,或者是否结束-------
2945 3000 async check_prom(gid, prom_type, prom_id) {
2946   - var ee = this,
2947   - th = ee;
  3001 + var ee = this,th = ee;
  3002 + var user_id=getApp().globalData.user_id;
  3003 + if(!user_id) user_id=0;
  3004 +
2948 3005 if (prom_type == 3 || prom_type == 0 || prom_type == 2 || prom_type == 5 || prom_type == 7) {
2949 3006 this.setData({
2950   - prom_type: 0,
2951   - isshow: 1,
  3007 + prom_type: 0,isshow: 1,
2952 3008 });
2953 3009 return false;
2954 3010 }
2955 3011  
  3012 + if (prom_type == 1 && prom_id==0){
  3013 + this.setData({
  3014 + prom_type: 0,isshow: 1,
  3015 + });
  3016 +
  3017 + //获取门店
  3018 + this.get_sto();
  3019 + this.get_sku(o.stoid, this.data.data, gid);
  3020 + this.check_has_flash();
  3021 + return false;
  3022 + }
  3023 +
2956 3024 //if (prom_type != 3 && prom_type!=0){
2957 3025 //---判断秒杀----
2958   - if (prom_type == 1) {
  3026 + if (prom_type == 1 && prom_id>0) {
2959 3027 //-------判断活动是否抢光---------
2960 3028 await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, {
2961 3029 1: 1
... ... @@ -2967,8 +3035,7 @@ Page({
2967 3035 prom_r_null: 1
2968 3036 });
2969 3037 //拿取价格并且判断时间--
2970   - getApp().request.get("/api/ms/flash_sale/get/" +
2971   - os.stoid + "/" + prom_id, {
  3038 + getApp().request.get("/api/ms/flash_sale/getNew/" +os.stoid + "/" +user_id+"/"+ prom_id, {
2972 3039 success: function (t) {
2973 3040 if (t.data.code != 0) {
2974 3041 ee.setData({
... ... @@ -3015,7 +3082,7 @@ Page({
3015 3082 var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss");
3016 3083  
3017 3084 ee.setData({
3018   - prom_price: t.data.data.price,
  3085 + prom_price: t.data.data.user_price,
3019 3086 prom_type: 1,
3020 3087 prom_id: prom_id,
3021 3088 prom_buy_limit: t.data.data.buy_limit,
... ... @@ -3026,17 +3093,9 @@ Page({
3026 3093 });
3027 3094  
3028 3095 ee.get_sto();
3029   -
3030   -
3031 3096 var newTime = ut.gettimestamp();
3032 3097 var endTime2 = t.data.data.end_time;
3033 3098 var endTime1 = t.data.data.start_time;
3034   -
3035   - //---苹果机不兼容---
3036   - /*----
3037   - var endTime2 = new Date(prom_end_time).getTime();
3038   - var endTime1 = new Date(prom_start_time).getTime();----*/
3039   -
3040 3099 if (endTime1 > newTime) {
3041 3100 ee.setData({
3042 3101 prom_time_text: '距秒杀开始还有'
... ... @@ -3051,6 +3110,56 @@ Page({
3051 3110 ee.countDown(endTime2);
3052 3111 }
3053 3112 }
  3113 +
  3114 + //如果是进行中的话
  3115 + if (endTime1 < newTime) {
  3116 + //-- 获取秒杀活动的多少规格 --
  3117 + ee.get_more_flahs(function (list) {
  3118 + if (list && list.length > 1) {
  3119 +
  3120 + var n_item = list[0];
  3121 + var ind = list.findIndex(function (ele) {
  3122 + return ele.goods_id == ee.data.data.goods_id;
  3123 + })
  3124 + if (ind < 0) return false;
  3125 + if (ind > 0) {
  3126 + n_item = JSON.parse(JSON.stringify(list[ind]));
  3127 + list.splice(ind, 1);
  3128 + list.unshift(n_item);
  3129 + }
  3130 +
  3131 + ee.data.sele_g.viplimited = n_item.viplimited;
  3132 + ee.data.data.viplimited = n_item.viplimited;
  3133 +
  3134 + var gb = 1;
  3135 + //-- 显示多规格 --
  3136 + for (let i in list) {
  3137 + let item = list[i];
  3138 + var gg = "";
  3139 + if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = "";
  3140 + if (item.goods_color == "null" || item.goods_color == null) item.goods_color = "";
  3141 +
  3142 + if (item.goods_spec != "" && item.goods_color != "") {
  3143 + gg = item.goods_spec + "/" + item.goods_color;
  3144 + } else if (item.goods_spec != "" || item.goods_color != "") {
  3145 + gg = item.goods_spec + item.goods_color;
  3146 + } else {
  3147 + gg = "规格" + gb;
  3148 + gb++;
  3149 + }
  3150 + item.gg = gg;
  3151 + item.prom_id = item.prom_id;
  3152 + item.prom_type = 1;
  3153 + }
  3154 +
  3155 + ee.setData({
  3156 + sku_g: list,
  3157 + });
  3158 +
  3159 + }
  3160 + })
  3161 + }
  3162 +
3054 3163 }
3055 3164 });
3056 3165 }
... ... @@ -3106,7 +3215,6 @@ Page({
3106 3215  
3107 3216 }
3108 3217  
3109   -
3110 3218 //---判断拼单----
3111 3219 if (prom_type == 6) {
3112 3220 //-------判断活动是否抢光---------
... ... @@ -3454,6 +3562,12 @@ Page({
3454 3562 success: function (t) {
3455 3563 if (t.data.code == 0) {
3456 3564 var g_buy_num = t.data.data.goodsbuynum;
  3565 +
  3566 + //如果是秒杀的时候
  3567 + if(th.data.prom_type==0 && gd.prom_type == 1 ){
  3568 + gd.prom_type= 0;
  3569 + }
  3570 +
3457 3571 if (gd.prom_type == 1 || gd.prom_type == 2 || gd.prom_type == 4 || gd.prom_type == 6) {
3458 3572 //----获取活动购买数----
3459 3573 getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", {
... ... @@ -4116,6 +4230,95 @@ Page({
4116 4230 }
4117 4231 })
4118 4232 },
  4233 +
  4234 +
  4235 + drawPoster(context, unit, img, vpath) {
  4236 + // 1.灰色背景
  4237 + context.setFillStyle('#f2f1f6');
  4238 + context.rect(0,0,554*unit,899*unit);
  4239 + context.fill();
  4240 + // 2.商城名称
  4241 + let shopName = this.data.sto_sele_name_1;
  4242 + // let shopNameLen = context.measureText(shopName);
  4243 + // let x_shopNameLen = (554 - shopNameLen.width)/2*unit;
  4244 + // console.log('11111111111111',shopNameLen,x_shopNameLen);
  4245 + context.setTextAlign('center');
  4246 + context.setFontSize(26*unit);
  4247 + context.setFillStyle('black');
  4248 + context.fillText(shopName, 277*unit, 60*unit);
  4249 + // // 3.推荐来源
  4250 + let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
  4251 + // let fromTextLen = context.measureText(fromText);
  4252 + // let x_fromText = (375 - fromTextLen.width)/2;
  4253 + // console.log('222222',fromTextLen,x_fromText);
  4254 + context.setTextAlign('center');
  4255 + context.setFontSize(22*unit);
  4256 + context.setFillStyle('#96959a');
  4257 + context.fillText(fromText, 277*unit, 105*unit);
  4258 + // 4.海报背景
  4259 + // context.beginPath();
  4260 + // context.setStrokeStyle('#f2f1f6');
  4261 + context.setFillStyle('white');
  4262 + context.fillRect(37*unit, 157*unit, 480*unit, 673*unit);
  4263 + // context.stroke();
  4264 + // context.fill();
  4265 + // 5.商品图片
  4266 + // 图片的x坐标
  4267 + let bg_x = 37*unit
  4268 + // 图片的y坐标
  4269 + let bg_y = 157*unit
  4270 + // 图片宽度
  4271 + let bg_w = 480*unit
  4272 + // 图片高度
  4273 + let bg_h = 474*unit
  4274 + // 图片圆角
  4275 + let bg_r = 4
  4276 + // 绘制海报背景图片圆角
  4277 + context.save()
  4278 + context.beginPath()
  4279 + context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI*1.5)
  4280 + context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2)
  4281 + context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5)
  4282 + context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI)
  4283 + context.clip()
  4284 + context.drawImage(img, bg_x, bg_y, bg_w, bg_h);
  4285 + context.restore()
  4286 + // 6.强烈推荐
  4287 + // context.beginPath();
  4288 + let tj_path = "../../../images/share/q_tj.png";
  4289 + context.beginPath()
  4290 + context.drawImage(tj_path, 54*unit, 648*unit, 85*unit, 30*unit);
  4291 + context.setFontSize(16*unit)
  4292 + context.setLineJoin('round'); //交点设置成圆角
  4293 + context.setFillStyle("white")
  4294 + context.setTextAlign('left');
  4295 + context.fillText('强烈推荐', 64*unit, 672*unit);
  4296 + // 7.商品价格
  4297 + let price = '¥' + this.data.data.shop_price;
  4298 + // if (th.data.prom_act)
  4299 + // pri0 = th.data.prom_act.price;
  4300 + context.setFontSize(32*unit);
  4301 + context.setFillStyle('#DE1117');
  4302 + context.fillText(price, 54*unit, 730*unit);
  4303 + // 8.商品标题
  4304 + context.setFontSize(20*unit);
  4305 + context.setFillStyle('#898989');
  4306 + this.draw_Text(context, this.data.data.goods_name,
  4307 + 54*unit, 770*unit, 240*unit, 240*unit, unit);
  4308 + // 9.小程序码
  4309 + context.drawImage(vpath, 375*unit, 660*unit, 120*unit, 120*unit);
  4310 + context.setFontSize(16*unit);
  4311 + context.setFillStyle('#777');
  4312 + context.fillText('长按识别二维码', 378*unit, 810*unit);
  4313 + // 10.竖线
  4314 + context.beginPath();
  4315 + context.setFillStyle('#eee');
  4316 + context.rect(354*unit, 670*unit, 1*unit, 130*unit);
  4317 + context.fill();
  4318 +
  4319 + },
  4320 +
  4321 +
4119 4322  
4120 4323 //--定义的保存图片方法,分享团---
4121 4324 saveImageToPhotosAlbum: function () {
... ... @@ -4128,9 +4331,7 @@ Page({
4128 4331 }
4129 4332  
4130 4333 if (this.data.share_hidden) {
4131   - this.setData({
4132   - share_hidden: false,
4133   - });
  4334 + this.setData({ share_hidden: false,});
4134 4335 };
4135 4336  
4136 4337 //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团
... ... @@ -4138,11 +4339,8 @@ Page({
4138 4339 if (type == 6) type = 2;
4139 4340 if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3;
4140 4341  
4141   - wx.showLoading({
4142   - title: '生成中...',
4143   - })
4144   - var that = this,
4145   - th = that;
  4342 + wx.showLoading({ title: '生成中...',})
  4343 + var that = this, th = that;
4146 4344 //设置画板显示,才能开始绘图
4147 4345 that.setData({
4148 4346 canvasHidden: false
... ... @@ -4152,6 +4350,8 @@ Page({
4152 4350 var unit = that.data.screenWidth / 750 * 1.35; //基础单位,
4153 4351 var path2 = that.data.data.original_img;
4154 4352 var scene = th.data.gid + "";
  4353 + scene+="."+th.data.sele_g.prom_type+"."+th.data.sele_g.prom_id;
  4354 +
4155 4355 var user_id = getApp().globalData.user_id ? getApp().globalData.user_id : 0;
4156 4356 if (user_id > 0) {
4157 4357 scene += "_" + user_id;
... ... @@ -4167,67 +4367,90 @@ Page({
4167 4367 os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo";
4168 4368  
4169 4369 console.log(path3);
  4370 +
4170 4371  
4171   - //读取文件成功则OK--
  4372 + // 读取文件成功则OK--
4172 4373 wx.getImageInfo({
4173 4374 src: path3,
4174 4375 success: function (res) {
4175   - //回调写法
  4376 + // 回调写法
4176 4377 th.get_head_temp(th.get_goods_temp, function () {
4177 4378 var vpath = res.path;
4178 4379 var context = wx.createCanvasContext('share');
4179   - //先画背景
  4380 + // 先画背景
4180 4381 var pg_path = "../../../images/share/share_bg.png";
4181 4382  
4182 4383 // context.fillStyle="#FFFFFF";
4183 4384 // context.fillRect(0,0,554 * unit, 899 * unit);
  4385 +
  4386 + // if(type == 0) {
  4387 + // this.drawPoster(context);
  4388 + // return false;
  4389 + // };
  4390 +
4184 4391  
4185 4392 //-- 如果有自定义海报的时候,判断背景的图片 --
4186 4393 if (th.data.share_b_img) {
4187 4394 pg_path = th.data.share_b_img;
4188 4395 }
4189   - context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  4396 + // context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  4397 +
  4398 +
  4399 + if(type == 0) { // 如果是普通商品,绘制新海报
  4400 + th.drawPoster(context, unit, th.data.share_goods_img, vpath);
  4401 + } else {
  4402 + context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  4403 + };
  4404 +
  4405 + // th.drawPoster(context, unit, th.data.share_goods_img, vpath);
  4406 +
4190 4407  
4191 4408 //-- 是自定义海报的情况下 --
4192   - if (th.data.poster && parseInt(th.data.poster.style) == 2) {
4193   - //在线上分享人的情况下
4194   - if (parseInt(th.data.poster.show_headpic)) {
4195   - //获取坐标
4196   - var x = parseFloat(th.data.poster.head_x) * 2;
4197   - var y = parseFloat(th.data.poster.head_y) * 2;
4198   - var x1 = (x + 90) * unit;
4199   - var y1 = (y + 50) * unit;
4200   - //--昵称---
4201   - context.setFontSize(24 * unit)
4202   - context.setFillStyle("black")
4203   - context.fillText(app.globalData.userInfo.nickname, x1, y1);
4204   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
4205   - //强烈推荐 改许程
4206   - var tj_path = "../../../images/share/q_tj.png";
4207   - context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
4208   - context.setFontSize(16 * unit)
4209   - context.setLineJoin('round'); //交点设置成圆角
4210   - context.setFillStyle("white")
4211   - context.fillText('强烈推荐', x1 + width + 8 * unit, y1 - 1 * unit);
4212   -
4213   - //context.setFillStyle("black")
4214   - //context.setFontSize(24 * unit)
4215   - //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit);
4216   - }
4217   - } else {
4218   - //--昵称---
4219   - context.setFontSize(24 * unit)
4220   - context.setFillStyle("black")
4221   - context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
4222   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
4223   - //强烈推荐 改许程
4224   - var tj_path = "../../../images/share/q_tj.png";
4225   - context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
4226   - context.setFontSize(16 * unit);
4227   - context.setLineJoin('round'); //交点设置成圆角
4228   - context.setFillStyle("white");
4229   - context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
4230   - }
  4409 + if(type != 0) {
  4410 +
  4411 + if (th.data.poster && parseInt(th.data.poster.style) == 2) {
  4412 + //在线上分享人的情况下
  4413 + if (parseInt(th.data.poster.show_headpic)) {
  4414 + //获取坐标
  4415 + var x = parseFloat(th.data.poster.head_x) * 2;
  4416 + var y = parseFloat(th.data.poster.head_y) * 2;
  4417 + var x1 = (x + 90) * unit;
  4418 + var y1 = (y + 50) * unit;
  4419 + //--昵称---
  4420 + context.setFontSize(24 * unit)
  4421 + context.setFillStyle("black")
  4422 + context.fillText(app.globalData.userInfo.nickname, x1, y1);
  4423 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
  4424 + //强烈推荐 改许程
  4425 + var tj_path = "../../../images/share/q_tj.png";
  4426 + context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
  4427 + context.setFontSize(16 * unit);
  4428 + context.setLineJoin('round'); //交点设置成圆角
  4429 + context.setFillStyle("white");
  4430 + context.fillText('强烈推荐', x1 + width + 8 * unit, y1 - 1 * unit);
  4431 +
  4432 + //context.setFillStyle("black")
  4433 + //context.setFontSize(24 * unit)
  4434 + //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit);
  4435 + }
  4436 + } else {
  4437 + //--昵称---
  4438 + context.setFontSize(24 * unit);
  4439 + context.setFillStyle("black");
  4440 + context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
  4441 + var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
  4442 + //强烈推荐 改许程
  4443 + var tj_path = "../../../images/share/q_tj.png";
  4444 + context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
  4445 + context.setFontSize(16 * unit);
  4446 + context.setLineJoin('round'); //交点设置成圆角
  4447 + context.setFillStyle("white");
  4448 + context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit);
  4449 + }
  4450 +
  4451 + };
  4452 +
  4453 +
4231 4454  
4232 4455 var share_title = th.data.data.goods_name;
4233 4456 if (th.data.prom_type == 1 || th.data.prom_type == 6 || th.data.prom_type == 4) {
... ... @@ -4238,7 +4461,7 @@ Page({
4238 4461  
4239 4462 //---产品名称---
4240 4463 //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
4241   - if (type != 4) {
  4464 + if (type != 4 && type != 0) {
4242 4465 context.setFillStyle("black");
4243 4466 context.setFontSize(21.3 * unit)
4244 4467 th.draw_Text(context, share_title,
... ... @@ -4251,7 +4474,7 @@ Page({
4251 4474  
4252 4475 var pri0 = th.data.data.shop_price;
4253 4476 if (th.data.prom_act)
4254   - pri0 = th.data.prom_act.price;
  4477 + pri0 = th.data.prom_price;
4255 4478 pri0 = parseFloat(pri0).toFixed(2);
4256 4479 var wd1 = th.data.screenWidth - ut.measureText(pri0, 31 * unit) - 25;
4257 4480 context.fillText("¥", wd1 - 15, 185 * unit);
... ... @@ -4271,7 +4494,7 @@ Page({
4271 4494 context.lineTo(wd2 + ut.measureText(pri0, 22 * unit) + 5, 206 * unit);
4272 4495 context.stroke();
4273 4496  
4274   - } else {
  4497 + } else if(type == 4 && type != 0) {
4275 4498 context.setFillStyle("black");
4276 4499 context.setFontSize(21.3 * unit)
4277 4500 th.draw_Text(context, share_title,
... ... @@ -4291,10 +4514,15 @@ Page({
4291 4514 }
4292 4515  
4293 4516 //---中间大图---
4294   - context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit);
  4517 + if(type != 0) {
  4518 + context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit);
  4519 + };
  4520 +
  4521 +
  4522 +
4295 4523 //-------大图后面就不一样了-----------
4296 4524 switch (type) {
4297   - case 0: //普通商品的展示
  4525 + case 0: break;//普通商品的展示
4298 4526 case 4:
4299 4527 //中间的几个字
4300 4528 if (th.data.poster && parseInt(th.data.poster.style) == 2) {
... ... @@ -4361,7 +4589,6 @@ Page({
4361 4589 context.fillText("长按识别二维码", 40 * unit, 806 * unit);
4362 4590 context.fillText("立即开始兑换", 40 * unit, 846 * unit);
4363 4591  
4364   -
4365 4592 }
4366 4593  
4367 4594 //---二维吗图---
... ... @@ -4373,7 +4600,7 @@ Page({
4373 4600 } else {
4374 4601 //---二维吗图---
4375 4602 context.drawImage(vpath, 390 * unit, 726 * unit, 136 * unit, 136 * unit);
4376   - }
  4603 + };
4377 4604  
4378 4605 break;
4379 4606 case 1: //秒杀商品的展示
... ... @@ -4416,7 +4643,6 @@ Page({
4416 4643 context.lineTo(520 * unit, 670 * unit)
4417 4644 context.stroke();
4418 4645 //---文字---
4419   -
4420 4646 context.setFillStyle("black")
4421 4647 context.setFontSize(24 * unit)
4422 4648 context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
... ... @@ -4462,7 +4688,6 @@ Page({
4462 4688 context.lineTo(520 * unit, 670 * unit)
4463 4689 context.stroke();
4464 4690 //---文字---
4465   -
4466 4691 context.setFillStyle("black")
4467 4692 context.setFontSize(24 * unit)
4468 4693 context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit);
... ... @@ -4513,45 +4738,50 @@ Page({
4513 4738  
4514 4739  
4515 4740 //--- 如果是自定义海报的时候 ---
4516   - if (th.data.poster && parseInt(th.data.poster.style) == 2) {
4517   -
4518   - //如果显示会员信息的话
4519   - if (parseInt(th.data.poster.show_headpic)) {
4520   - //获取坐标
4521   - var x = parseFloat(th.data.poster.head_x) * 2;
4522   - var y = parseFloat(th.data.poster.head_y) * 2;
4523   - //---绘制圆形要放在最后----
4524   - context.save();
4525   - context.beginPath();
4526   - var h_x = x * unit;
4527   - var h_y = y * unit;
4528   - var h_r = 40 * unit;
4529   - var cx = h_x + h_r;
4530   - var cy = h_y + h_r;
4531   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
4532   - context.closePath();
4533   - context.fill();
4534   - context.clip();
4535   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
4536   - context.restore();
4537   - }
4538   -
4539   - } else {
4540   - //---绘制圆形要放在最后----
4541   - context.save();
4542   - context.beginPath();
4543   - var h_x = 60 * unit;
4544   - var h_y = 24 * unit;
4545   - var h_r = 40 * unit;
4546   - var cx = h_x + h_r;
4547   - var cy = h_y + h_r;
4548   - context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
4549   - context.closePath();
4550   - context.fill();
4551   - context.clip();
4552   - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
4553   - context.restore();
4554   - }
  4741 + if(type != 0) {
  4742 +
  4743 + if (th.data.poster && parseInt(th.data.poster.style) == 2) {
  4744 +
  4745 + //如果显示会员信息的话
  4746 + if (parseInt(th.data.poster.show_headpic)) {
  4747 + //获取坐标
  4748 + var x = parseFloat(th.data.poster.head_x) * 2;
  4749 + var y = parseFloat(th.data.poster.head_y) * 2;
  4750 + //---绘制圆形要放在最后----
  4751 + context.save();
  4752 + context.beginPath();
  4753 + var h_x = x * unit;
  4754 + var h_y = y * unit;
  4755 + var h_r = 40 * unit;
  4756 + var cx = h_x + h_r;
  4757 + var cy = h_y + h_r;
  4758 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  4759 + context.closePath();
  4760 + context.fill();
  4761 + context.clip();
  4762 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  4763 + context.restore();
  4764 + }
  4765 +
  4766 + } else {
  4767 + //---绘制圆形要放在最后----
  4768 + context.save();
  4769 + context.beginPath();
  4770 + var h_x = 60 * unit;
  4771 + var h_y = 24 * unit;
  4772 + var h_r = 40 * unit;
  4773 + var cx = h_x + h_r;
  4774 + var cy = h_y + h_r;
  4775 + context.arc(cx, cy, h_r, 0, Math.PI * 2, false);
  4776 + context.closePath();
  4777 + context.fill();
  4778 + context.clip();
  4779 + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2);
  4780 + context.restore();
  4781 + }
  4782 +
  4783 + };
  4784 +
4555 4785  
4556 4786  
4557 4787 //把画板内容绘制成图片,并回调 画板图片路径
... ... @@ -5540,9 +5770,6 @@ Page({
5540 5770 this.add_cart_func_inte(t);
5541 5771 },
5542 5772  
5543   -
5544   -
5545   -
5546 5773 onShareTimeline() {
5547 5774 var store_name = getApp().globalData.config ? getApp().globalData.config.store_name : '';
5548 5775 if (!store_name)
... ... @@ -5602,7 +5829,7 @@ Page({
5602 5829 check_zh_acting: function (func) {
5603 5830 var isok = 1, item = this.data.sele_g;
5604 5831 //如果有组合购
5605   - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item.prom_id + "/" + getApp().globalData.userInfo.user_id;
  5832 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + item.prom_id + "/" + getApp().globalData.user_id;
5606 5833 getApp().request.promiseGet(url, {}).then(res => {
5607 5834 if (res.data.code == 0 && res.data.data) {
5608 5835 if (res.data.data.is_show != 1) {
... ... @@ -5628,5 +5855,84 @@ Page({
5628 5855 item.act = res.data.data;
5629 5856 func(isok);
5630 5857 })
5631   - }
  5858 + },
  5859 +
  5860 + //获取更多秒杀
  5861 + get_more_flahs: async function (func) {
  5862 + var f_more=false;
  5863 + var user_id=getApp().globalData.user_id;
  5864 + if(!user_id) user_id=0;
  5865 +
  5866 + var url="/api/weshop/goods/listSkuFlash?store_id="+os.stoid+"&goods_id="+this.data.data.goods_id+"&user_id="+user_id;
  5867 + //获取秒杀的多规格
  5868 + await getApp().request.promiseGet(url, {}).then(res=>{
  5869 + if(res.data.code==0 && res.data.data && res.data.data.length>0){
  5870 + f_more=res.data.data;
  5871 + }
  5872 + })
  5873 + if(!f_more) {
  5874 + func(false);
  5875 + return false;
  5876 + }
  5877 + //-- 秒杀的价格要更新 --
  5878 + for(let i in f_more){
  5879 +
  5880 + let item=f_more[i];
  5881 + f_more[i].prom_id=item.act_id;
  5882 + f_more[i].prom_type=1;
  5883 + if(item.goods_id==this.data.data.goods_id){
  5884 + continue;
  5885 + }
  5886 + var url="/api/ms/flash_sale/getNew/"+os.stoid+"/"+user_id+"/"+item.act_id;
  5887 + await getApp().request.promiseGet(url, {}).then(rs=>{
  5888 + if(rs.data.code==0){
  5889 + f_more[i].price=rs.data.data.user_price;
  5890 +
  5891 + }
  5892 + })
  5893 + }
  5894 + func(f_more);
  5895 +
  5896 + },
  5897 +
  5898 + //-- 判断是否有秒杀 --
  5899 + check_has_flash:function () {
  5900 + var th=this;
  5901 + var url="/api/weshop/activitylist/getGoodActInfo";
  5902 + var req_data={
  5903 + store_id:os.stoid,goodsidlist:this.data.data.goods_id,is_detail:1
  5904 + };
  5905 + //获取秒杀的多规格
  5906 + getApp().request.promiseGet(url, {data:req_data}).then(res=>{
  5907 + if(res.data.code==0 && res.data.data && res.data.data.length){
  5908 + th.setData({more_flash:res.data.data});
  5909 + }
  5910 + })
  5911 + },
  5912 +
  5913 + //-- 跳转到秒杀商品详情页 --
  5914 + go_more_flash:function (e) {
  5915 + var prom_id=e.currentTarget.dataset.id;
  5916 + var goods_id=this.data.data.goods_id;
  5917 + var url="/pages/goods/goodsInfo/goodsInfo?goods_id="+goods_id+"&prom_id="+prom_id+"&prom_type=1";
  5918 + getApp().goto(url);
  5919 + },
  5920 +
  5921 + close_pop_more:function () {
  5922 + this.setData({is_pop_more:0})
  5923 + },
  5924 +
  5925 + con_weixin:function () {
  5926 + var url=this.data.sys_switch.weapp_customertype_url;
  5927 + var id=this.data.sys_switch.weapp_customertype_appid;
  5928 + wx.openCustomerServiceChat({
  5929 + extInfo: {url: url},
  5930 + corpId: id,
  5931 + success(res) {}
  5932 + })
  5933 + }
  5934 +
  5935 +
  5936 +
  5937 +
5632 5938 });
... ...
pages/goods/goodsInfo/goodsInfo.wxml
... ... @@ -7,16 +7,11 @@
7 7 <view class="container">
8 8 <view class="type-navbar">
9 9 <view class="type-box" wx:for="{{categories}}" wx:key="categories">
10   - <view bindtap="tabClick" class="type-navbar-item {{activeCategoryId==item.id?'type-item-on':''}}" id="{{item.id}}">
11   - {{item.name}}
12   - </view>
  10 + <view bindtap="tabClick" class="type-navbar-item {{activeCategoryId==item.id?'type-item-on':''}}" id="{{item.id}}">{{item.name}}</view>
13 11 </view>
14 12 </view>
15 13 <view class="goods-detail">
16 14 <view class="goods-info" hidden="{{activeCategoryId==0?false:true}}">
17   - <!-- 视频 -->
18   - <!-- <swiper bindchange="swiperChange"class="xc-pictures swiperContainer rel" current="{{swiperCurrent}}"
19   - indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}"> -->
20 15 <view id="id" bindtouchstart="handletouchtart" bindtouchmove="handletouchmove">
21 16 <view class="xc-videos-picture rel">
22 17 <swiper autoplay="{{false}}" current="{{swiperCurrent}}" class="swiper_box swiperContainer rel" duration="{{1000}}" indicatorDots="{{mapurl?false:true}}" interval="{{3000}}" vertical="{{false}}" bindchange="swiperChange">
... ... @@ -31,7 +26,6 @@
31 26 </view>
32 27 </swiper-item>
33 28 <swiper-item wx:for="{{gallery}}" wx:key="gallery">
34   - <!-- <image class="wh100" src="{{item.image_url}}" mode="aspectFit" binderror="bind_bnerr" lazy-load="true" data-errorimg="gallery[{{index}}].image_url"></image> -->
35 29 <view class="wh100 g_img_box" style="background-image:url({{item.image_url}});"></view>
36 30 </swiper-item>
37 31 </swiper>
... ... @@ -93,7 +87,8 @@
93 87 零售价¥{{filters.toFix(data.market_price,2)}}
94 88 </view>
95 89 </view>
96   - <view class="abs white xc-nanber">
  90 +
  91 + <!-- <view class="abs white xc-nanber">
97 92 <text class="fs22">已拼{{prom_act.buy_num}}件</text>
98 93 <view class="flex" style='margin-top:-34rpx'>
99 94 <view class="xc-people-img">
... ... @@ -101,7 +96,19 @@
101 96 </view>
102 97 <view class="t-s fs20 xc-people-val">{{prom_act.ct_num}}人拼</view>
103 98 </view>
104   - </view>
  99 + </view> -->
  100 +
  101 + <!-- 幸运购 -->
  102 + <view class="abs white xc-nanber" wx:if="{{false}}">
  103 + <text class="fs22">已成团{{prom_act.buy_num}}期</text>
  104 + <view class="flex" style='margin-top:-34rpx'>
  105 + <view class="xc-people-img">
  106 + <image class="imgs" src="{{prom_st==1? iurl+'/miniapp/images/r_logo_red.png':iurl+'/miniapp/images/r_logo.png'}}"></image>
  107 + </view>
  108 + <view class="t-s fs20 xc-people-val">{{prom_act.ct_num}}人团</view>
  109 + </view>
  110 + </view>
  111 +
105 112 <view class="hy-stop word-color fs26 abs" wx:if="{{prom_st==1}}">距活动结束还有</view>
106 113 <view class="hy-stop word-color-lan fs26 abs" wx:if="{{prom_st==0}}">距活动开始还有</view>
107 114 <view class="secview flex abs fs24 " style="color: black;right: 3px; top:46rpx;">
... ... @@ -181,26 +188,11 @@
181 188 <view class="rel">
182 189 <view class='ghaicha ellipsis-2'>
183 190 <text class='gred' wx:if="{{prom_act.max_ct_num >0}}">
184   - <text class="flex" wx:if="{{prom_act.max_ct_num - item.open_num>0}}">
185   - 还差
186   - <text class="word-color">{{prom_act.max_ct_num - item.open_num}}</text>
187   - 人享最低优惠
188   - </text>
  191 + <text class="flex" wx:if="{{prom_act.max_ct_num - item.open_num>0}}">还差<text class="word-color">{{prom_act.max_ct_num - item.open_num}}</text>人享最低优惠</text>
189 192 <text wx:else>您已经享最低优惠</text>
190 193 </text>
191   - <text class='gred' wx:else>
192   - 还差
193   - <text style='color:#ff2753'>{{prom_act.ct_num - item.open_num}}</text>
194   - 人成团
195   - </text>
196   - <view class="t_show">
197   - 剩余
198   - <text wx:if="{{timer[t_ind].day}}">{{timer[t_ind].day}}天:</text>
199   - <text>{{timer[t_ind].hou}}</text>
200   - :
201   - <text>{{timer[t_ind].min}}</text>
202   - :
203   - <text>{{timer[t_ind].sec}}</text>
  194 + <text class='gred' wx:else>还差<text style='color:#ff2753'>{{prom_act.ct_num - item.open_num}}</text>人成团</text>
  195 + <view class="t_show">剩余<text wx:if="{{timer[t_ind].day}}">{{timer[t_ind].day}}天:</text><text>{{timer[t_ind].hou}}</text>:<text>{{timer[t_ind].min}}</text>:<text>{{timer[t_ind].sec}}</text>
204 196 </view>
205 197 </view>
206 198 </view>
... ... @@ -210,6 +202,72 @@
210 202 </view>
211 203 </view>
212 204 </view>
  205 +
  206 + <!-- 幸运购 -->
  207 + <view class="pt_fir se2 bdt16" wx:if="{{teamgroup}}" hidden="{{true}}">
  208 + <view class="xc-partner-frame">
  209 + <view class="zzk-1 flex jc_sb" bindtap="go_t_more">
  210 + <view class="pdl10">已参团4人,还差<text class="c-red">1</text>人成团</view>
  211 + <view class="ckgd flex ai_c">
  212 + 查看奖励
  213 + <view class="bg_right arrow-one"></view>
  214 + </view>
  215 + </view>
  216 + </view>
  217 + <view class='group'>
  218 + <view class='group-list luck' bindtap="go_cj_team" data-ind="{{t_ind}}">
  219 + <!-- <view class="flex ai_c"> -->
  220 + <!-- //选项框头像 -->
  221 + <view class='gtou' wx:for="{{teamgroup}}" wx:for-index="t_ind" wx:key="teamgroup">
  222 + <image src='{{item.user.head_pic}}'></image>
  223 + </view>
  224 + <view class='gtou more'>
  225 + <text class="iconfont icon-sandian"></text>
  226 + </view>
  227 + <!-- <view class='gtou'>
  228 + <image src='{{item.user.head_pic}}'></image>
  229 + </view> -->
  230 + <!-- //等你来拼 -->
  231 + <!-- <view class='gdn ellipsis-1'>{{item.user.nickname}}</view> -->
  232 + <!-- </view> -->
  233 + <!-- //还差几人,剩余时间 -->
  234 + <!-- <view class="rel">
  235 + <view class='ghaicha ellipsis-2'>
  236 + <text class='gred' wx:if="{{prom_act.max_ct_num >0}}">
  237 + <text class="flex" wx:if="{{prom_act.max_ct_num - item.open_num>0}}">
  238 + 还差
  239 + <text class="word-color">{{prom_act.max_ct_num - item.open_num}}</text>
  240 + 人享最低优惠
  241 + </text>
  242 + <text wx:else>您已经享最低优惠</text>
  243 + </text>
  244 + <text class='gred' wx:else>
  245 + 还差
  246 + <text style='color:#ff2753'>{{prom_act.ct_num - item.open_num}}</text>
  247 + 人成团
  248 + </text>
  249 + <view class="t_show">
  250 + 剩余
  251 + <text wx:if="{{timer[t_ind].day}}">{{timer[t_ind].day}}天:</text>
  252 + <text>{{timer[t_ind].hou}}</text>
  253 + :
  254 + <text>{{timer[t_ind].min}}</text>
  255 + :
  256 + <text>{{timer[t_ind].sec}}</text>
  257 + </view>
  258 + </view>
  259 + </view> -->
  260 + <!-- //参加团 -->
  261 + <!-- <view class='cjt t-c'>去参团</view> -->
  262 + <!-- <view class="clear"></view> -->
  263 + </view>
  264 +
  265 + <view class="fs24 pdh20 pdt20">*<text class="c-red">5</text>人成团,<text class="c-red">5</text>人得商品,<text class="c-red">5</text>人全额退款并获得<text class="c-red">惊喜礼品</text>!</view>
  266 + </view>
  267 + </view>
  268 +
  269 +
  270 +
213 271 </view>
214 272 <!-- 积分购 -->
215 273 <view wx:if="{{prom_type==4}}">
... ... @@ -252,6 +310,9 @@
252 310 </view>
253 311 <!-- 不是拼团,不是积分购 -->
254 312 <block wx:if="{{prom_type!=6 && prom_type!=4}}">
  313 +
  314 +
  315 +
255 316 <view class="goods-price">
256 317 <view class="flex jc_sb">
257 318 <view class="co-red" style="" wx:if="{{prom_type==0 || prom_type==3}}">
... ... @@ -287,7 +348,8 @@
287 348 </view>
288 349 <!-- 不是秒杀 -->
289 350 <!-- 等级卡的价格,不是等级卡会员,且商品又有设置等级级价,商家后台有开通升级卡同能 -->
290   - <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}}">
  351 + <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 && g_filters.get_card_price(data,card_list,1)!=''}}">
  352 +
291 353 <view class="flex ai-center grade-card-frame card-frame">
292 354 <image class="img" src="{{iurl}}/miniapp/images/userinfo/userinfo/privilege_t.png"></image>
293 355 <view class="fs24 white view card-name ellipsis-1">
... ... @@ -295,14 +357,13 @@
295 357 </view>
296 358 </view>
297 359 <view class="fs32 xc-black3 ai_and carde_frame">
298   - <text class="fs26">¥</text>
299   - {{g_filters.get_card_price(data,card_list,0)}}
  360 + <text class="fs26">¥</text>{{g_filters.get_card_price(data,card_list,0)}}
300 361 </view>
301 362 </view>
302 363 <!-- 等级卡的显示,购买, 等级卡近30天要显示续费 -->
303 364 <block wx:if="{{g_filters.is_has_rank(rank_switch,data)}}">
304 365 <!-- 不是秒杀,且会员不是等级会员 -->
305   - <view wx:if="{{!card_field && prom_type!=1 && card_list && card_list.length>0}}">
  366 + <view wx:if="{{!card_field && prom_type!=1 && card_list && card_list.length>0 && g_filters.get_card_price(data,card_list,1)!=''}}">
306 367 <view class="beauty-makeup-frame flex ai-center">
307 368 <view class="left flex ai-center jc_sa">
308 369 <view class="flex ai-center grade-card-frame card-frame advert-card">
... ... @@ -314,10 +375,7 @@
314 375 <view class="card-effect">
315 376 <view class="fs24 xc-black3">
316 377 成为{{g_filters.get_card_price(data,card_list,1)}}立
317   - <text class="co-red">
318   - 省{{filters.toFix(data.shop_price-g_filters.get_card_price(data,card_list,0),2)}}
319   - </text>
320   - 元
  378 + <text class="co-red">省{{filters.toFix(data.shop_price-g_filters.get_card_price(data,card_list,0),2)}}</text>元
321 379 </view>
322 380 <view class="fs22 xc-ash">开通会员 尽享更多优惠</view>
323 381 </view>
... ... @@ -390,7 +448,7 @@
390 448 </view>
391 449 </view>
392 450 <view class="xc-explain fs32 ellipsis-2" wx:if="{{prom_type!=0 && prom_type!=4}}">
393   - {{data.goods_name}}
  451 + {{sele_g.goods_name}}
394 452 </view>
395 453 <!-- <view wx:if="{{prom_type==1}}" style='height:58rpx'></view> -->
396 454 <!-- 许程 7.24 暂时注释 -->
... ... @@ -398,7 +456,9 @@
398 456 <view class="goods-num" wx:if="{{prom_type==1}}">
399 457 <block wx:if="prom_st>0">
400 458 <view class="stock">总数量:{{prom_act.goods_num+prom_act.virtual}}件</view>
401   - <view class="stock">限购:{{prom_act.buy_limit}}件</view>
  459 + <view class="stock" wx:if="{{prom_act.buy_limit>0}}">限购:{{prom_act.buy_limit}}件</view>
  460 + <view class="stock" wx:else>限购:不限</view>
  461 +
402 462 <block wx:if="{{prom_st==0}}">
403 463 <view class="sales">已购:0件</view>
404 464 </block>
... ... @@ -408,7 +468,8 @@
408 468 </block>
409 469 <block wx:else>
410 470 <view class="stock">总数量:{{prom_act.goods_num}}件</view>
411   - <view class="stock">限购:{{prom_act.buy_limit}}件</view>
  471 + <view class="stock" wx:if="{{prom_act.buy_limit>0}}">限购:{{prom_act.buy_limit}}件</view>
  472 + <view class="stock" wx:else>限购:不限</view>
412 473 <view class="sales">已购:{{prom_act.buy_num}}件</view>
413 474 </block>
414 475 </view>
... ... @@ -423,10 +484,7 @@
423 484 <image class="stores-img" src="{{iurl}}/miniapp/images/stores.png"></image>
424 485 <view class="fs30" style="color:black;">选择门店</view>
425 486 </view>
426   - <view class="red_bb fs26">
427   - 更多门店
428   - <text class="bg_jj"></text>
429   - </view>
  487 + <view class="red_bb fs26">更多门店<text class="bg_jj"></text></view>
430 488 </view>
431 489 <view wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
432 490 <view class="flex-space-between address ai_end pdv10">
... ... @@ -501,6 +559,7 @@
501 559 </view>
502 560 </view>
503 561 </block>
  562 +
504 563 <!-- 要判断是不是有订单优惠 -->
505 564 <block wx:if="{{order_prom}}">
506 565 <view class="cx-frame flex" style="position: relative; height: auto">
... ... @@ -538,6 +597,29 @@
538 597 </view>
539 598 </view>
540 599 </block>
  600 + <!-- 判断是不是有秒杀 -->
  601 + <block wx:if="{{more_flash}}">
  602 +
  603 + <block wx:for="{{more_flash}}">
  604 +
  605 + <view class="cx-frame flex" style="position: relative; height: auto" wx:if="{{item.prom_type==1}}" >
  606 + <view class="cx-sizs wsize" style="width: 144rpx">秒杀</view>
  607 + <!-- 中间显示层 -->
  608 + <view class="flex ai-center jc_sb" style="width: 570rpx" bindtap="go_more_flash" data-id="{{item.act_id}}">
  609 + <view class="flex">
  610 + <view class="miao_lab">秒</view>
  611 + <view class="order_hui">
  612 + <view class="fs28 ellipsis-1">{{item.act_name}}</view>
  613 + <view class="fs26">
  614 + (活动时间:{{tool.format_tt(item.s_time)}} - {{tool.format_tt(item.e_time)}})
  615 + </view>
  616 + </view>
  617 + </view>
  618 + <view><text class="bg_jj is_more_cx" style="position: relative;top:-10rpx"></text></view>
  619 + </view>
  620 + </view>
  621 + </block>
  622 + </block>
541 623 <view class="bz_view flex bdt16" wx:if="{{bconfig}}" style="">
542 624 <image class="bzfu_img" src="{{iurl}}/miniapp/images/bzfu_w.png"></image>
543 625 <view class="flex f1 ai_c rel">
... ... @@ -629,13 +711,6 @@
629 711 </view>
630 712 <!-- 图文详情 -->
631 713 <view class="bdt16">
632   - <!-- <view class="tuwen_title">
633   - <view class="g_line"></view>
634   - <view class="center_s">
635   - <image src="{{iurl}}/miniapp/images/tuwen_c.png"></image>
636   - <text>详情</text>
637   - </view>
638   - </view> -->
639 714 <view class="t_g_info">
640 715 <view class="red_shu"></view>
641 716 <view class="fs30 bold">商品详情</view>
... ... @@ -892,10 +967,16 @@
892 967 <!-- -----------------底部按钮------------------ -->
893 968 <view class="join-cart">
894 969 <!-- bindtap="contactService" -->
895   - <button wx:if="{{sys_switch.weapp_customertype}}" class="custom-service cart-ico new_split" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
  970 + <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
896 971 <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
897 972 <view>客服</view>
898 973 </button>
  974 +
  975 + <view wx:elif="{{sys_switch.weapp_customertype==2}}" class="custom-service cart-ico new_split" bindtap="con_weixin">
  976 + <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
  977 + <view>客服</view>
  978 + </view>
  979 +
899 980 <view wx:else class="custom-service cart-ico new_split" bindtap="contactService">
900 981 <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
901 982 <view>客服</view>
... ... @@ -1094,10 +1175,7 @@
1094 1175 <image class="stores-img" src="{{iurl}}/miniapp/images/stores.png"></image>
1095 1176 <view class="fs30" style="color:black;">选择门店</view>
1096 1177 </view>
1097   - <view class="red-co fs28" bindtap="choice_store">
1098   - 更多门店
1099   - <text class="right-arrow"></text>
1100   - </view>
  1178 + <view class="red-co fs28" bindtap="choice_store">更多门店<text class="right-arrow"></text></view>
1101 1179 </view>
1102 1180 <view wx:if="{{only_pk && !only_pk.length}}">(库存不足)</view>
1103 1181 <block wx:else>
... ... @@ -1364,11 +1442,8 @@
1364 1442 <view>
1365 1443 <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
1366 1444 </view>
1367   - <view class="felx choose_more" bindtap="more_store">
1368   - <text class="fs26 red-co" wx:if="{{is_show_sto_cat}}">
1369   - {{choice_sort_store==0?'更多门店':'返回'}}
1370   - </text>
1371   - <view class="bg_rights" wx:if="{{is_show_sto_cat}}"></view>
  1445 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}">
  1446 + <text class="fs26 red-co" >{{choice_sort_store==0?'更多门店':'返回'}}</text> <view class="bg_rights" ></view>
1372 1447 </view>
1373 1448 </view>
1374 1449 </view>
... ... @@ -1518,4 +1593,27 @@
1518 1593 </view>
1519 1594 </view>
1520 1595 </view>
1521   -</view>
1522 1596 \ No newline at end of file
  1597 +</view>
  1598 +
  1599 +<!-- 商品要加入购物车 -->
  1600 +<view class="pop_more_act" wx:if="{{is_pop_more}}">
  1601 + <view class="cover-layer" bindtap="close_pop_more"></view>
  1602 + <view class="content">
  1603 + <view class="main pd20">
  1604 + <view class="t-c fs36" style="color: #c3172d">提示</view>
  1605 +
  1606 + <block wx:for="{{more_flash}}">
  1607 + <view bindtap="go_more_flash" data-id="{{item.act_id}}" class="flex jc_sb fs28 mt20" wx:if="{{item.prom_type==1}}">
  1608 + <view class="ellipsis-2" style="max-width: 80%">该商品有参与{{item.act_name}} {{tool.act_type(item.prom_type)}} 活动</view>
  1609 + <view class="fs26 c-7b">去参与
  1610 + <text class="bg_jj is_more_cx"></text>
  1611 + </view>
  1612 + </view>
  1613 + </block>
  1614 +
  1615 + <view style="margin-top: 30rpx" bindtap="open_next">
  1616 + <button class="p_btn">继续加入购物车</button>
  1617 + </view>
  1618 + </view>
  1619 + </view>
  1620 +</view>
... ...
pages/goods/goodsInfo/goodsInfo.wxss
... ... @@ -2690,7 +2690,7 @@ border-radius: 55rpx;
2690 2690 }
2691 2691 .carde_frame{
2692 2692 height: 50rpx;
2693   - line-height: 18rpx
  2693 + /* line-height: 18rpx */
2694 2694 }
2695 2695  
2696 2696 button.custom-service { line-height: normal; border: 0;}
... ... @@ -2842,4 +2842,37 @@ button.custom-service::after{
2842 2842 width: 132rpx;
2843 2843 height: 37rpx;
2844 2844 margin-right: 10rpx;
  2845 +}
  2846 +
  2847 +.miao_lab{ width: 36rpx; height: 36rpx; border: 4rpx solid #e71f19; color:#e71f19; text-align: center;margin-right: 10rpx;
  2848 + line-height: 36rpx;font-size: 22rpx; font-weight: bolder; border-radius: 50%; }
  2849 +
  2850 +.pop_more_act .content{
  2851 + position:fixed;background: #fff; width: 100%;
  2852 + left: 0;bottom: 0;z-index: 1000;
  2853 +}
  2854 +
  2855 +.p_btn{
  2856 + background-color: #f23030;
  2857 + height: 70rpx;line-height: 70rpx;
  2858 + color: #fff;
  2859 +}
  2860 +
  2861 +.mt20{ margin-top: 20rpx}
  2862 +
  2863 +.group .group-list.luck {
  2864 + padding: 0 20rpx;
  2865 + justify-content: flex-start;
  2866 +}
  2867 +
  2868 +.group-list.luck .gtou ~ .gtou {
  2869 + margin-left: -16rpx;
  2870 +}
  2871 +
  2872 +.gtou.more {
  2873 + background-color: #ddd;
  2874 + text-align: center;
  2875 + line-height: 70rpx;
  2876 + border-radius: 50%;
  2877 + color: #aaa;
2845 2878 }
2846 2879 \ No newline at end of file
... ...
pages/goods/goodsList/g_filter.wxs
... ... @@ -81,12 +81,13 @@ var g_filters = {
81 81 },
82 82 //跳转的接口
83 83 get_goods_url:function(item){
84   -
85   - console.log(item,111)
86 84 var url1="/pages/goods/goodsInfo/goodsInfo?goods_id="+item.goods_id
87 85 if(item.prom_type==8){
88   - url1="/packageC/pages/presell/goodsInfo/goodsInfo?goods_id="+item.goods_id+"&prom_id="+item.prom_id
89   - }
  86 + url1="/packageC/pages/presell/goodsInfo/goodsInfo?goods_id="+item.goods_id+"&prom_id="+item.prom_id
  87 + }
  88 + if(item.prom_type==1 && item.prom_id>0 ){
  89 + url1="/pages/goods/goodsInfo/goodsInfo?goods_id="+item.goods_id+"&prom_id="+item.prom_id+"&prom_type=1";
  90 + }
90 91 return url1;
91 92 }
92 93 }
... ...
pages/goods/goodsList/goodsList.wxml
... ... @@ -177,7 +177,7 @@
177 177 <view class="item-cont">
178 178 <view class="title ellipsis-2">{{item.goods_name}}</view>
179 179 <!-- 判断是否有活动价 -->
180   - <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_type!=2}}">
  180 + <block wx:if="{{(item.prom_price>0 || item.prom_integral>0) && item.prom_type!=2 && item.prom_id>0}}">
181 181 <view class="flex on">
182 182 <!-- 活动价 -->
183 183 <view class="price">
... ...
pages/goods/search/g_filter.wxs
... ... @@ -83,11 +83,14 @@ var g_filters = {
83 83  
84 84  
85 85 get_goods_url:function(item){
86   - console.log(item,111)
  86 +
87 87 var url1="/pages/goods/goodsInfo/goodsInfo?goods_id="+item.goods_id
88 88 if(item.prom_type==8){
89 89 url1="/packageC/pages/presell/goodsInfo/goodsInfo?goods_id="+item.goods_id+"&prom_id="+item.prom_id
90 90 }
  91 + if(item.prom_type==1 && item.prom_id>0){
  92 + url1="/pages/goods/goodsInfo/goodsInfo?goods_id="+item.goods_id+"&prom_id="+item.prom_id+"&prom_type=1";
  93 + }
91 94 return url1;
92 95 }
93 96 }
... ...
pages/goods/search/search.wxml
... ... @@ -35,7 +35,7 @@
35 35 <view class="item-cont">
36 36 <view class="title ellipsis-2">{{item.goods_name}}</view>
37 37 <!-- 判断是否有活动价,小程序没有有团购和拼单 -->
38   - <block wx:if="{{(item.prom_price>0 || item.prom_integral) && item.prom_type!=2}}">
  38 + <block wx:if="{{(item.prom_price>0 || item.prom_integral) && item.prom_type!=2 && item.prom_id>0}}">
39 39 <!-- 活动价 -->
40 40 <view class="price">
41 41 <text wx:if="{{item.prom_integral}}">{{item.prom_integral}}积分</text>
... ...
pages/index/index/index.js
... ... @@ -335,6 +335,49 @@ Page({
335 335 })
336 336  
337 337  
  338 + //-----秒杀-----
  339 + var flash_data = null;
  340 + var f_req={
  341 + store_id: os.stoid,
  342 + timetype: 2,
  343 + is_end: 0,
  344 + is_show: 1,
  345 + pageSize: 9,
  346 + user_id:0
  347 + };
  348 + if(user_id) f_req.user_id=user_id;
  349 + //--获取活动--
  350 + await getApp().request.promiseGet("/api/ms/flash_sale/spikepage", {
  351 + data:f_req ,
  352 + }).then(res => {
  353 + var e = res;
  354 + if (e.data.code == 0) {
  355 + flash_data = e.data.data.pageData;
  356 + if (flash_data == null || flash_data.length <= 0) return false;
  357 +
  358 + //当前时间戳
  359 + var nt = ut.gettimestamp();
  360 +
  361 + flash_data.forEach(function (val, ind) {
  362 +
  363 + if(val.user_price) val.price=val.user_price;
  364 + if (val.start_time > nt) flash_data[ind].status = 0;
  365 + else if (val.end_time > nt) flash_data[ind].status = 1;
  366 + if (val.buy_num >= val.goods_num) flash_data[ind].status = 2;
  367 + });
  368 +
  369 + var arr = new Array();
  370 + //--三个三个一组---
  371 + for (var i = 0; i < flash_data.length; i += 3) {
  372 + arr.push(flash_data.slice(i, i + 3));
  373 + }
  374 + th.setData({
  375 + saleGoods: arr
  376 + });
  377 + }
  378 + });
  379 +
  380 +
338 381  
339 382 //优惠券要实时更新
340 383 getApp().getConfig2(function (e) {
... ... @@ -458,45 +501,6 @@ Page({
458 501 }
459 502 })
460 503  
461   - //-----秒杀-----
462   - var flash_data = null;
463   - //--获取活动--
464   - await getApp().request.promiseGet("/api/ms/flash_sale/spikepage", {
465   - data: {
466   - store_id: os.stoid,
467   - timetype: 2,
468   - is_end: 0,
469   - is_show: 1,
470   - pageSize: 9
471   - },
472   - }).then(res => {
473   - var e = res;
474   - if (e.data.code == 0) {
475   - flash_data = e.data.data.pageData;
476   - if (flash_data == null || flash_data.length <= 0) return false;
477   -
478   - //当前时间戳
479   - var nt = ut.gettimestamp();
480   -
481   - flash_data.forEach(function (val, ind) {
482   - if (val.start_time > nt) flash_data[ind].status = 0;
483   - else if (val.end_time > nt) flash_data[ind].status = 1;
484   - if (val.buy_num >= val.goods_num) flash_data[ind].status = 2;
485   - });
486   -
487   - var arr = new Array();
488   - //--三个三个一组---
489   - for (var i = 0; i < flash_data.length; i += 3) {
490   - arr.push(flash_data.slice(i, i + 3));
491   - }
492   - th.setData({
493   - saleGoods: arr
494   - });
495   - //th.countDown();
496   - }
497   - });
498   -
499   -
500 504 //----拼单-----
501 505 await getApp().request.promiseGet("/api/weshop/teamlist/pageteam/2", {
502 506 data: {
... ...
pages/index/index/index.wxml
... ... @@ -153,9 +153,9 @@
153 153 </view>
154 154 </navigator>
155 155 <view class="seckill-list">
156   - <swiper class="s_prom" indicator-dots="{{false}}" bindchange="flashSwiperChange" next-margin="105rpx">
157   - <swiper-item wx:for="{{saleGoods}}" wx:key="{{index}}" class="p_swiper" wx:key="saleGoods" style="750rpx !important;">
158   - <navigator class="nav" hover-class="none" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}&title={{aitem.goods_name}}" wx:for="{{item}}" wx:key="item" wx:for-item="aitem" wx:for-index="aind">
  156 + <swiper class="s_prom" indicator-dots="{{false}}" bindchange="flashSwiperChange">
  157 + <swiper-item wx:for="{{saleGoods}}" wx:key="{{index}}" class="p_swiper" wx:key="saleGoods" style="740rpx !important;padding: 0; margin-left: 10rpx">
  158 + <navigator style="flex-shrink: 0;width: 247rpx" class="nav" hover-class="none" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{aitem.goods_id}}&title={{aitem.goods_name}}&prom_type=1&prom_id={{aitem.id}}" wx:for="{{item}}" wx:key="item" wx:for-item="aitem" wx:for-index="aind">
159 159 <view class="imgview ">
160 160 <image src="{{url+aitem.original_img}}" mode="aspectFill" lazy-load="true" data-errorimg="saleGoods[{{index}}][{{aind}}].original_img" binderror="bind_bnerr3" data-img="{{aitem.original_img}}"></image>
161 161  
... ... @@ -163,7 +163,7 @@
163 163 <image wx:if="{{aitem.status==1}}" class="status_img" src="{{url}}/miniapp/images/miao/going.png"></image>
164 164 <image wx:if="{{aitem.status==2}}" class="status_img" src="{{url}}/miniapp/images/miao/mend.png"></image>
165 165 </view>
166   - <view class="ellipsis-2 mar-top10" style="height: 70rpx;">{{aitem.title}}</view>
  166 + <view class="ellipsis-2 mar-top10" style="height: 76rpx;">{{aitem.goods_name}}</view>
167 167 <!-- <view class="red-co mar-top10 is_seckill_height"> -->
168 168 <view class="co-red mar-top10">
169 169 <text class="fs20">¥</text>{{aitem.price}}
... ... @@ -215,7 +215,52 @@
215 215 </swiper-item>
216 216 </swiper>
217 217 </view>
218   - </view>
  218 + </view>
  219 +
  220 +
  221 +
  222 + <!--幸运购-->
  223 + <view class="seckill" wx:if="{{false}}">
  224 + <navigator bindtap="go_pre" data-url="/packageC/pages/luckyGo/luckyGo_activityList/luckyGo_activityList" hover-class="none">
  225 + <view class="seckill-time">
  226 + <view class="classname flex ai_c">
  227 + <i class="iconfont icon-luck"></i>
  228 + <text class="bold fs30">幸运购</text>
  229 + </view>
  230 + <view class="flex ai_c seckill-list">
  231 + <text class="fs24 xc-marfin-right">查看全部</text>
  232 + <image class="arrow-right" src="{{url}}/miniapp/images/icon-arrowdown.png"></image>
  233 + </view>
  234 + </view>
  235 + </navigator>
  236 + <view class="seckill-list luck">
  237 + <view class="list-item" wx:for="{{3}}">
  238 + <view class="flex ai-center">
  239 + <view class="img-container"><image class="img-block" src="../../../images/bk.png"></image></view>
  240 + <view class="pdl20 flex fdc jc_sb f1">
  241 +
  242 + <view class="ellipsis-2 name fs28">我是商品</view>
  243 + <view>
  244 + <view class="flex ai-center">
  245 + <text class="rmb c-red">189.00</text>
  246 + <view class="del fs22 c-a pdl10">零售价:<text class="rmb">155</text></view>
  247 + </view>
  248 + <view class="flex jc_sb">
  249 + <progress class="pdr20 f1 progress" percent="50" activeColor="#FF6768" backgroundColor="#d0d0d0" border-radius="12" stroke-width="12" data-content="1人已参团"></progress>
  250 + <view class="btn fs26">去参团</view>
  251 + </view>
  252 + </view>
  253 +
  254 + </view>
  255 + </view>
  256 + <view class="fs24 pdt10 c-7b">*<text class="c-red">5</text>人成团,<text class="c-red">5</text>人得商品,<text class="c-red">5</text>人全额退款并得<text class="c-red">惊喜礼品</text>!</view>
  257 + </view>
  258 + </view>
  259 + </view>
  260 +
  261 +
  262 +
  263 +
219 264  
220 265  
221 266  
... ...
pages/index/index/index.wxss
... ... @@ -2,7 +2,8 @@
2 2 background: #ff7295;
3 3 }
4 4  
5   -.icon-presell {
  5 +.icon-presell,
  6 +.icon-luck {
6 7 color: #ED6064;
7 8 font-size: 18px;
8 9 margin-right: 4rpx;
... ... @@ -1115,3 +1116,82 @@ page {
1115 1116 margin-right: 10rpx;
1116 1117 }
1117 1118  
  1119 +
  1120 +
  1121 +/* .luck {
  1122 + padding-left: 20rpx;
  1123 + padding-right: 20rpx;
  1124 +} */
  1125 +
  1126 +.luck .list-item {
  1127 + background-color: white;
  1128 + padding: 20rpx;
  1129 + border-radius: 12rpx;
  1130 +}
  1131 +
  1132 +.luck .img-container {
  1133 + width: 200rpx;
  1134 + height: 200rpx;
  1135 + border-radius: 14rpx;
  1136 + overflow: hidden;
  1137 + flex-shrink: 0;
  1138 + position: relative;
  1139 +}
  1140 +
  1141 +.luck .img-container::before {
  1142 + content: '幸运购';
  1143 + position: absolute;
  1144 + left: 0;
  1145 + top: 0;
  1146 + padding: 4rpx;
  1147 + background-color: rgba(255,103,103,.7);
  1148 + color: white;
  1149 + font-size: 22rpx;
  1150 + border-radius: 0 0 14rpx 0;
  1151 +}
  1152 +
  1153 +.luck .name::before {
  1154 + content: '5人团';
  1155 + background-color: #FF6768;
  1156 + color: white;
  1157 + font-size: 26rpx;
  1158 + padding-left: 10rpx;
  1159 + padding-right: 10rpx;
  1160 + border-radius: 20rpx;
  1161 + margin-right: 10rpx;
  1162 +}
  1163 +
  1164 +.rmb::before {
  1165 + content: '¥';
  1166 + font-size: 24rpx;
  1167 +}
  1168 +
  1169 +.del {
  1170 + text-decoration: line-through;
  1171 +}
  1172 +
  1173 +.luck .btn {
  1174 + background-color: #FF6768;
  1175 + border-radius: 20rpx;
  1176 + padding-left:20rpx;
  1177 + padding-right: 20rpx;
  1178 + color: white;
  1179 +}
  1180 +
  1181 +.luck .name {
  1182 + height: 88rpx;
  1183 +}
  1184 +
  1185 +
  1186 +.luck .progress {
  1187 + position: relative;
  1188 +}
  1189 +.luck .progress::before {
  1190 + position: absolute;
  1191 + width: 100%;
  1192 + content: attr(data-content);
  1193 + font-size: 20rpx;
  1194 + color: white;
  1195 + text-align: center;
  1196 +}
  1197 +
... ...
pages/team/team_show/team_show.js
... ... @@ -1178,43 +1178,53 @@ Page({
1178 1178 getApp().request.get("/api/weshop/storagecategory/page", {
1179 1179 data: {
1180 1180 store_id: o.stoid,
1181   - is_show: 1,
1182 1181 pageSize: 1000,
1183 1182 orderField:"sort",
1184 1183 orderType:'asc',
1185 1184 },
1186 1185 success: function(ee) {
1187 1186 if (ee.data.code == 0) {
1188   - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
1189   - var def_arr = new Array();
1190   - var ishas = 0;
1191   - //-- 开始就看5个门店 --
1192   - for (var k = 0; k < 5; k++) {
1193   - if (k == e.data.data.pageData.length) break;
1194   - def_arr.push(e.data.data.pageData[k]);
1195   - }
1196   -
1197   - th.setData({
1198   - def_pickpu_list: def_arr,
1199   - pickpu_list: ee.data.data.pageData
1200   - });
  1187 +
  1188 + var check_all_cate=0;
  1189 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  1190 + for(let i in ee.data.data.pageData){
  1191 + let item=ee.data.data.pageData[i];
  1192 + if(item.is_show==1){
  1193 + check_all_cate=1;break
  1194 + }
  1195 + }
  1196 + }
  1197 +
  1198 +
  1199 +
  1200 + if (check_all_cate) {
  1201 +
1201 1202 var sto_cate = ee.data.data.pageData;
1202 1203 var sto_arr = e.data.data.pageData;
1203 1204 var newarr = new Array();
1204 1205 var qita = new Array();
1205   -
  1206 +
  1207 + var is_del_pk=0;
1206 1208 //----要进行门店分组--------
1207 1209 for (var i = 0; i < sto_arr.length; i++) {
1208 1210 //找一下这个门店有没有在分类数组内
1209 1211 var find2 = 0,find2name = "",sort=0;
  1212 + is_del_pk=0;
1210 1213 for (var m = 0; m < sto_cate.length; m++) {
1211 1214 if (sto_arr[i].category_id == sto_cate[m].cat_id) {
1212   - find2 = sto_cate[m].cat_id;
1213   - find2name = sto_cate[m].cat_name;
1214   - sort=sto_cate[m].sort;
1215   - break;
  1215 + if(sto_cate[m].is_show!=1){
  1216 + is_del_pk=1; sto_arr.splice(i,1);
  1217 + i--;
  1218 + }else {
  1219 + find2 = sto_cate[m].cat_id;
  1220 + find2name = sto_cate[m].cat_name;
  1221 + sort = sto_cate[m].sort;
  1222 + is_del_pk=0;
  1223 + }
  1224 + break;
1216 1225 }
1217 1226 }
  1227 + if(is_del_pk) continue;
1218 1228  
1219 1229 if (newarr.length > 0) {
1220 1230 var find = 0;
... ... @@ -1258,8 +1268,20 @@ Page({
1258 1268 }
1259 1269 }
1260 1270 }
1261   -
1262   - //门店分类要排序下
  1271 +
  1272 + var def_arr = new Array();
  1273 + //-- 开始就看10个门店 --
  1274 + for (var k = 0; k < 10; k++) {
  1275 + if (k == sto_arr.length) break;
  1276 + def_arr.push(sto_arr[k]);
  1277 + }
  1278 +
  1279 + th.setData({
  1280 + def_pickpu_list: def_arr,
  1281 + pickpu_list: ee.data.data.pageData
  1282 + });
  1283 +
  1284 + //门店分类要排序下
1263 1285 function compare(property){
1264 1286 return function(a,b){
1265 1287 var value1 = a[property];
... ... @@ -1280,10 +1302,16 @@ Page({
1280 1302 };
1281 1303 newarr.push(item);
1282 1304 }
1283   - th.setData({
1284   - is_show_sto_cat: 1,
1285   - all_sto: newarr
1286   - });
  1305 +
  1306 + var sd={
  1307 + all_sto: newarr,
  1308 + is_show_sto_cat:1
  1309 + }
  1310 + if(!sto_arr || sto_arr.length<=10){
  1311 + sd.is_show_sto_cat=-1;
  1312 + sd.only_pk=sto_arr;
  1313 + }
  1314 + th.setData(sd);
1287 1315  
1288 1316 } else {
1289 1317 th.setData({
... ...
pages/team/team_show/team_show.wxml
... ... @@ -291,9 +291,9 @@
291 291 <view>
292 292 <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
293 293 </view>
294   - <view class="felx choose_more" bindtap="more_store">
295   - <text class="fs26 red-co" wx:if="{{is_show_sto_cat}}">{{choice_sort_store==0?'更多门店':'返回'}}</text>
296   - <view class="bg_rights" wx:if="{{is_show_sto_cat}}"></view>
  294 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}">
  295 + <text class="fs26 red-co">{{choice_sort_store==0?'更多门店':'返回'}}</text>
  296 + <view class="bg_rights"></view>
297 297 </view>
298 298 </view>
299 299 </view>
... ...
pages/togoin/togoin.js
... ... @@ -64,6 +64,14 @@ Page({
64 64  
65 65 //-- 会员授权 --
66 66 bindGetUserInfo: function(ee) {
  67 +
  68 + if(!this.data.isAgree) {
  69 + wx.showToast({
  70 + title: '请您先阅读和勾选指定的内容',
  71 + icon: 'none',
  72 + });
  73 + return false;
  74 + }
67 75 var that = this;
68 76 //-- 点击授权 --
69 77 that.getUserProfile(function(res){
... ... @@ -97,7 +105,8 @@ Page({
97 105 wx.setStorageSync("userinfo",e.data.data);
98 106  
99 107 setTimeout(function () {
100   - wx.navigateBack({ delta: 1}) //返回上一页
  108 + getApp().globalData.login_back=1;
  109 + wx.navigateBack({ delta: 1}) //返回上一页
101 110 },1000)
102 111 }else{
103 112 getApp().globalData.sessionKey=e.data.data.sessionKey;
... ... @@ -192,7 +201,9 @@ Page({
192 201  
193 202 var need_go=0;
194 203 var t_user=e.data.data;
195   -
  204 +
  205 +
  206 + getApp().globalData.login_back=1;
196 207 wx.setStorageSync("userinfo",e.data.data);
197 208 wx.setStorageSync("isAuth", !0), app.globalData.userInfo = e.data.data, app.globalData.userInfo.head_pic = t.getFullUrl(a.globalData.userInfo.head_pic);
198 209  
... ... @@ -264,7 +275,8 @@ Page({
264 275 wx.setStorageSync("userinfo",e.data.data);
265 276  
266 277 setTimeout(function () {
267   - wx.navigateBack({ delta: 1}) //返回上一页
  278 + getApp().globalData.login_back=1;
  279 + wx.navigateBack({ delta: 1}) //返回上一页
268 280 },1000)
269 281 }else{
270 282 getApp().globalData.sessionKey=e.data.data.sessionKey;
... ... @@ -286,7 +298,30 @@ Page({
286 298 close_pop_back:function(){
287 299 this.close_pop();
288 300 wx.navigateBack({ delta: 1})
289   - }
  301 + },
  302 +
  303 +
  304 + // 是否同意协议
  305 + isAgree(e) {
  306 + let isAgree = null;
  307 + if(e.detail.value[0]) {
  308 + isAgree = true;
  309 + } else {
  310 + isAgree = false;
  311 + };
  312 + // this.data.isAgree = isAgree;
  313 + this.setData({
  314 + isAgree,
  315 + });
  316 + },
  317 +
  318 +
  319 + //通过路径跳转到其他页面
  320 + goto: function(e) {
  321 + console.log('xxxx', e);
  322 + var url = e.currentTarget.dataset.url;
  323 + getApp().goto(url);
  324 + },
290 325  
291 326  
292 327  
... ...
pages/togoin/togoin.wxml
... ... @@ -2,7 +2,7 @@
2 2  
3 3 <!-- 登录图 -->
4 4 <view >
5   - <view class="logins flex-center2 ali-c flex" style="position: relative;top: 120rpx;">
  5 + <view class="logins flex-center2 ali-c flex" style="padding-top: 120rpx;">
6 6 <image mode="widthFix" bindtap="go_index" class="login_img_back" src="{{imghots}}/miniapp/images/loginbg.jpg"></image>
7 7 <view class="middle_view">
8 8 <image bindtap="go_index" class="login_img" src="{{store_logo}}" binderror="bind_bnerr" lazy-load="true" data-errorimg="store_logo"></image>
... ... @@ -14,6 +14,13 @@
14 14 <!-- 登录按钮 -->
15 15 <view>
16 16 <view class="phones">
  17 +
  18 + <view bindtap="" class="user-name flex-vertical fs24 jc-center">
  19 + <checkbox-group bindchange="isAgree">
  20 + <checkbox value="true"/>
  21 + </checkbox-group>
  22 + <view class="user-name-txt">我已阅读同意 <text class="gray" bindtap="goto" data-url="/packageA/pages/parseHtml/parseHtml?t=0">《用户使用协议》</text>与<text class="gray" bindtap="goto" data-url="/packageA/pages/parseHtml/parseHtml?t=1">《隐私政策》</text></view>
  23 + </view>
17 24  
18 25 <!-- 授权获取基础信息 -->
19 26 <block wx:if="{{canIUseGetUserProfile}}">
... ...
pages/togoin/togoin.wxss
... ... @@ -4,7 +4,7 @@ page{
4 4 }
5 5 .logins {
6 6 width: 100%;
7   - padding-bottom: 130rpx;
  7 + /* padding-bottom: 130rpx; */
8 8 background-position: center;
9 9 background-repeat: no-repeat;
10 10 background-size: cover
... ... @@ -26,7 +26,7 @@ page{
26 26 border-radius: 48rpx;
27 27 color: rgb(255,255,255);
28 28 font-size: 32rpx;
29   - margin-top:150rpx;
  29 + margin-top: 40rpx;
30 30 }
31 31 .we_chat{
32 32 width: 55rpx;
... ... @@ -65,3 +65,13 @@ button{
65 65 .middle_view{
66 66 position: absolute; left: 0; width: 100%; text-align: center;
67 67 }
  68 +
  69 +/*checkbox 选项框大小 */
  70 +checkbox .wx-checkbox-input {
  71 + width: 30rpx;
  72 + height: 30rpx;
  73 +}
  74 +
  75 +.gray {
  76 + color: #767f8e;
  77 +}
... ...
pages/user/index/index.js
... ... @@ -67,7 +67,7 @@ Page({
67 67 getApp().promiseGet("/api/weshop/storeDistribut/get/"+os.stoid,{}).then(rs=>{
68 68 var dis=rs.data.data;
69 69 for(var i in d_list){
70   - if(d_list[i].name=='我的分销' && dis && dis.switch==0){
  70 + if(d_list[i].name=='我的分销' && (!dis || dis.switch==0)){
71 71 d_list.splice(i,1);
72 72 }
73 73 }
... ... @@ -237,8 +237,26 @@ Page({
237 237 });
238 238 }
239 239 }
240   - })
241   -
  240 + });
  241 +
  242 + /*-----物流信息提醒-----*/
  243 + rq.get('/api/weshop/order/countDadaOrder', {
  244 + isShowLoading:0,
  245 + data: {
  246 + user_id: e.user_id,
  247 + store_id: os.stoid,
  248 + },
  249 + success: function(su) {
  250 + if (su.data.code == 0) {
  251 + th.setData({
  252 + countDadaOrder: su.data.data
  253 + });
  254 + }
  255 + }
  256 + });
  257 +
  258 +
  259 +
242 260  
243 261 //--初始化是否有打勾--
244 262 getApp().request.get("/api/weshop/users/grade/vip/init/get", {
... ... @@ -395,6 +413,11 @@ Page({
395 413 }
396 414 })
397 415 //th.requestRecommend();
  416 +
  417 +
  418 +
  419 +
  420 +
398 421 }
399 422  
400 423 /*--
... ... @@ -817,6 +840,19 @@ Page({
817 840 }
818 841 })
819 842 },
820   -
  843 +
  844 + con_weixin:function () {
  845 + var url=this.data.sys_switch.weapp_customertype_url;
  846 + var id=this.data.sys_switch.weapp_customertype_appid;
  847 + wx.openCustomerServiceChat({
  848 + extInfo: {url: url},
  849 + corpId: id,
  850 + success(res) {}
  851 + })
  852 + }
  853 +
  854 +
  855 +
  856 +
821 857  
822 858 })
... ...
pages/user/index/index.wxml
... ... @@ -96,14 +96,16 @@
96 96 </view>
97 97 <view class="xc-after-sale rel">
98 98 <!-- 顶上的一栏 -->
99   - <view class="xc-equity-title flex-level" bindtap="go_order" data-url="/pages/user/order_list/order_list">
100   - <view class="xc-title-frame flex-space-between">
101   - <view class="flex-vertical xc-title-content">
  99 + <view class="xc-equity-title flex-level">
  100 + <view class="xc-title-frame flex ai-center">
  101 + <view class="flex-vertical xc-title-content" bindtap="go_order" data-url="/pages/user/order_list/order_list">
102 102 <image class="xc-title-img" src="{{iurl}}/miniapp/images/hdindan.png" style="width: 50rpx; height: 55rpx;margin-right: 5rpx"></image>
103 103 <view class="three-level-word">我的订单</view>
104 104 </view>
  105 + <!-- 物流信息提醒 -->
  106 + <view class="fs26 c-5 pdl60" wx:if="{{countDadaOrder && countDadaOrder != 0}}" bindtap="go_order" data-url="/pages/user/order_list/order_list?index=1"><text class="iconfont icon-dingwei"></text>您有<text class="c-red">{{countDadaOrder}}</text>个同城配送订单</view>
105 107 </view>
106   - <view class="three-level-word xc-more-frame flex-vertical">
  108 + <view class="three-level-word xc-more-frame flex-vertical" bindtap="go_order" data-url="/pages/user/order_list/order_list">
107 109 <view class="three-level-word xc-more">更多</view>
108 110 <view class="bg_right xc-more-click bcolor"></view>
109 111 </view>
... ... @@ -250,10 +252,16 @@
250 252 <!-- 没有链接地址的时候 -->
251 253 <block wx:else>
252 254 <block wx:if="{{item.name=='联系客服'}}">
253   - <button class="item t-c" wx:if="{{sys_switch.weapp_customertype}}" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
  255 + <button class="item t-c" wx:if="{{sys_switch.weapp_customertype==1}}" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">
254 256 <image class="xc-center-img " src="{{iurl+item.icoimg}}"></image>
255 257 <view class="fs26">联系客服</view>
256   - </button>
  258 + </button>
  259 +
  260 + <view class="item t-c" bindtap="con_weixin" wx:elif="{{sys_switch.weapp_customertype==2}}">
  261 + <image class="xc-center-img " src="{{iurl+item.icoimg}}"></image>
  262 + <view class="fs26">联系客服</view>
  263 + </view>
  264 +
257 265 <view class="item t-c" bindtap="contactService" wx:else>
258 266 <image class="xc-center-img " src="{{iurl+item.icoimg}}"></image>
259 267 <view class="fs26">联系客服</view>
... ...
pages/user/index/index.wxss
... ... @@ -725,4 +725,13 @@ button::after{ border: 0}
725 725 width: 132rpx;
726 726 height: 37rpx;
727 727 margin-right: 10rpx;
  728 +}
  729 +
  730 +.icon-dingwei {
  731 + color: #EA4F2B;
  732 + font-size: 28rpx;
  733 +}
  734 +
  735 +.c-5 {
  736 + color: #555;
728 737 }
729 738 \ No newline at end of file
... ...
pages/user/order_detail/order_detail.js
... ... @@ -322,7 +322,8 @@ Page({
322 322 url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true"
323 323 })
324 324 var order=this.data.order;
325   - var order_goods=order.order_goods;
  325 + var order_goods=order.order_goods;
  326 + var user_id=order.user_id;
326 327  
327 328 var wlist="";
328 329 for(var i in order_goods){
... ... @@ -474,8 +475,7 @@ Page({
474 475  
475 476 //商品的普通购买 ,不要进行判断
476 477 if((good.prom_type==1 || good.prom_type==6 || good.prom_type==4) && !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal){
477   - if(gg.prom_type!=good.prom_type) {
478   -
  478 + if(gg.prom_type!=good.prom_type && gg.prom_type>0) {
479 479 var content=gg.goods_name+'商品的活动发生了变化,请取消订单重新购买';
480 480 th.toast(content);
481 481 return false;
... ... @@ -487,10 +487,11 @@ Page({
487 487 //---如果是活动的时候---
488 488 var prom=null,th=this;
489 489 if(gg.prom_type==1){
490   - await getApp().request.promiseGet("/api/ms/flash_sale/get/"+os.stoid+"/"+gg.prom_id,{
  490 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/"+os.stoid+"/"+user_id+"/"+gg.prom_id,{
491 491 }).then(res=>{
492 492 if(res.data.code==0){
493 493 prom=res.data.data;
  494 + prom.price=prom.user_price;
494 495 }
495 496 })
496 497 }
... ... @@ -595,10 +596,11 @@ Page({
595 596 //---如果是活动的时候---
596 597 var prom=null,goodsinfo=good,th=this;
597 598 if(goodsinfo.prom_type==1){
598   - await getApp().request.promiseGet("/api/ms/flash_sale/get/"+os.stoid+"/"+goodsinfo.prom_id,{
  599 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/"+os.stoid+"/"+user_id+"/"+goodsinfo.prom_id,{
599 600 }).then(res=>{
600 601 if(res.data.code==0){
601 602 prom=res.data.data;
  603 + prom.price=prom.user_price;
602 604 }
603 605 })
604 606 }
... ... @@ -638,7 +640,13 @@ Page({
638 640 th.toast(content);
639 641 return false;
640 642 }
641   -
  643 + //看一下会员的秒杀价格是不是发生了变化
  644 + if(goodsinfo.prom_type==1 && goodsinfo.goods_price!=prom.price){
  645 + var content=goodsinfo.goods_name+'秒杀活动的价格发生了变化';
  646 + th.toast(content);
  647 + return false;
  648 + }
  649 +
642 650 if(goodsinfo.prom_type==4){
643 651 if (good.goods_num > prom.limitqty-prom.buy_num) {
644 652  
... ... @@ -646,23 +654,13 @@ Page({
646 654 th.toast(content);
647 655 return false;
648 656 }
649   - }else{
650   - var redis_num = 0;
651   - //------判断活动是否抢光-----
652   - await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
653   - os.stoid + "/" + goodsinfo.prom_type + "/" + goodsinfo.prom_id, {
654   - }).then(res => {
655   - redis_num = res.data.data;
656   - });
657   -
658   - if (good.goods_num > redis_num) {
659   -
660   - var content=gg.goods_name+'超出商品活动库存,请取消订单';
661   - th.toast(content);
662   - return false;
663   - }
664   - }
665   -
  657 + }else if(goodsinfo.prom_type == 1 || goodsinfo.prom_type == 2 || goodsinfo.prom_type == 6 ) {
  658 + if(order.add_time+5*60<ut.gettimestamp()) {
  659 + var content = gg.goods_name + '该订单已经超时无法支付,请取消订单';
  660 + th.toast(content);
  661 + return false;
  662 + }
  663 + }
666 664 }
667 665  
668 666 }
... ... @@ -897,6 +895,7 @@ Page({
897 895  
898 896 check_more_order:async function(item){
899 897 var pickup=null,th=this;
  898 + var user_id=getApp().globalData.userInfo.user_id;
900 899 wx.showLoading();
901 900 //--------获取门店-----------
902 901 await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + item.pickup_id, {
... ... @@ -980,41 +979,62 @@ Page({
980 979 if(card_field && good[card_field]>0){
981 980 b_item.price=good[card_field];
982 981 }
983   -
984   - //--判断商品当前的活动情况--
985   - switch(good.prom_type){
986   - case 1:
987   - var flash=null;
988   - getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + good.prom_id, {
989   - }).then(res=>{
990   - if (res.data.code== 0) {
991   - flash=res.data.data;
992   - }
993   - })
994   - //----已经结束-----
995   - if (flash && flash.is_end == 0 && flash.end_time > timestamp && flash.start_time > timestamp ) {
996   - prom=flash;
997   - b_item.price=prom.price; //
998   - }
999   - break;
1000   - case 6:
1001   - b_item.is_pd_normal=1; break;
1002   - case 7:
1003   - //如果有组合购
1004   - var url="/api/weshop/prom/zhbuy/get/"+os.stoid+"/"+good.prom_id+"/"+getApp().globalData.userInfo.user_id;
1005   - await getApp().request.promiseGet(url, {}).then(res => {
1006   - if(res.data.code==0 && res.data.data){
1007   - if(res.data.data.is_show==1 && res.data.data.is_end==0
1008   - && ut.gettimestamp()<res.data.data.end_time
1009   - && ut.gettimestamp()>res.data.data.start_time
1010   - ){
1011   - b_item.prom_type=7;
1012   - b_item.prom_id=res.data.data.id;
  982 +
  983 + var url="/api/weshop/activitylist/getGoodActInfo";
  984 + var req_data={
  985 + store_id:g_item.store_id,goodsidlist:g_item.goods_id,is_detail:1
  986 + };
  987 + await getApp().request.promiseGet(url, {data:req_data}).then(res=>{
  988 + if(res.data.code==0){
  989 + var list = res.data.data;
  990 + for(let i in list){
  991 + let item=list[i];
  992 + if(item.prom_type==1){ good.prom_type=1; good.prom_id=item.act_id; }
  993 + }
  994 + }
  995 + })
  996 +
  997 + if(!prom) {
  998 + //--判断商品当前的活动情况--
  999 + switch (good.prom_type) {
  1000 + case 1:
  1001 + var flash = null;
  1002 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + good.prom_id, {}).then(res => {
  1003 + if (res.data.code == 0) {
  1004 + flash = res.data.data;
1013 1005 }
  1006 + })
  1007 + //----已经结束-----
  1008 + if (flash && flash.is_end == 0 && flash.end_time > timestamp && flash.start_time < timestamp) {
  1009 + prom = flash;
  1010 + prom.price = prom.user_price;
  1011 + b_item.price = prom.price;
  1012 + good.prom_type = 1;
  1013 + good.prom_id = prom.id;
1014 1014 }
1015   - })
1016   - break;
1017   - }
  1015 + break;
  1016 + case 6:
  1017 + b_item.is_pd_normal = 1;
  1018 + break;
  1019 + case 7:
  1020 + //如果有组合购
  1021 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id;
  1022 + await getApp().request.promiseGet(url, {}).then(res => {
  1023 + if (res.data.code == 0 && res.data.data) {
  1024 + if (res.data.data.is_show == 1 && res.data.data.is_end == 0
  1025 + && ut.gettimestamp() < res.data.data.end_time
  1026 + && ut.gettimestamp() > res.data.data.start_time
  1027 + ) {
  1028 + b_item.prom_type = 7;
  1029 + b_item.prom_id = res.data.data.id;
  1030 + good.prom_type = 7;
  1031 + good.prom_id = res.data.data.id;
  1032 + }
  1033 + }
  1034 + })
  1035 + break;
  1036 + }
  1037 + }
1018 1038  
1019 1039 //如果有优惠促销的时候,要看下商品的优惠活动有没有过期
1020 1040 if(g_item.prom_type==3 || good.prom_type==3){
... ... @@ -1132,7 +1152,6 @@ Page({
1132 1152 back_goods_arr.push(b_item); //返回商品元素
1133 1153  
1134 1154 }else{
1135   -
1136 1155 //-- 看一下购物车上有多少商品 --
1137 1156 var cart_num=0;
1138 1157 await getApp().request.promiseGet("/api/weshop/cart/page", {
... ... @@ -1151,8 +1170,7 @@ Page({
1151 1170 }
1152 1171 cart_num=num;
1153 1172 })
1154   -
1155   -
  1173 +
1156 1174 if(good.store_count<=0){
1157 1175 err_text+= good['goods_name']+"库存不足\n";
1158 1176 continue;
... ... @@ -1226,16 +1244,19 @@ Page({
1226 1244  
1227 1245 if(b_item.goods_num>redis_num){
1228 1246 b_item.goods_num=redis_num;
1229   - }
1230   -
1231   - if(cart_num+buynum>prom['buy_limit']){
1232   - err_text+= good['goods_name']+"超出活动限购\n";continue;
1233 1247 }
1234   - prom['buy_limit'] -= (cart_num+buynum);
1235   - if(b_item.goods_num>prom['buy_limit']){
1236   - b_item.goods_num=prom['buy_limit'];
1237   - }
1238   -
  1248 +
  1249 + if(prom['buy_limit']>0){
  1250 + if(cart_num+buynum>prom['buy_limit'] ){
  1251 + err_text+= good['goods_name']+"超出活动限购\n";continue;
  1252 + }
  1253 + prom['buy_limit'] -= (cart_num+buynum);
  1254 + if(b_item.goods_num>prom['buy_limit']){
  1255 + b_item.goods_num=prom['buy_limit'];
  1256 + }
  1257 + }
  1258 +
  1259 +
1239 1260 }
1240 1261 back_goods_arr.push(b_item); //返回商品元素
1241 1262 }
... ... @@ -1400,7 +1421,39 @@ Page({
1400 1421 icon: 'none',
1401 1422 duration: 3000
1402 1423 })
1403   - }
  1424 + },
  1425 +
  1426 + con_weixin:function () {
  1427 + var url=this.data.sys_switch.weapp_customertype_url;
  1428 + var id=this.data.sys_switch.weapp_customertype_appid;
  1429 + wx.openCustomerServiceChat({
  1430 + extInfo: {url: url},
  1431 + corpId: id,
  1432 + success(res) {}
  1433 + })
  1434 + },
  1435 +
  1436 + //跳转到商品
  1437 + go_gd:function (e) {
  1438 + var gd= e.currentTarget.dataset.gd;
  1439 + var good_url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + gd;
  1440 + var url="/api/weshop/activitylist/getGoodActInfo";
  1441 + var req_data={
  1442 + store_id:os.stoid,goodsidlist:gd,is_detail:1
  1443 + };
  1444 + //获取秒杀的多规格
  1445 + getApp().request.promiseGet(url, {data:req_data}).then(res=>{
  1446 + if(res.data.code==0 && res.data.data){
  1447 + if(res.data.data.length==1){
  1448 + good_url+="&prom_type="+res.data.data[0].prom_type+"&prom_id="+res.data.data[0].act_id;
  1449 + }
  1450 + getApp().goto(good_url);
  1451 +
  1452 + }else{
  1453 + getApp().goto(good_url);
  1454 + }
  1455 + })
  1456 + }
1404 1457  
1405 1458  
1406 1459  
... ...
pages/user/order_detail/order_detail.wxml
... ... @@ -20,12 +20,12 @@
20 20 </view>
21 21 <!--wx:if="{{item.return_btn!=4}}" -->
22 22 <view class="order-detail" wx:for="{{order.order_goods}}" wx:key="{{index}}" >
23   - <view class="goods-img">
  23 + <view class="goods-img" bindtap="go_gd" data-gd="{{item.goods_id}}">
24 24 <image class="wh100" src="{{resourceUrl+item.original_img}}" binderror="bind_bnerr" lazy-load="true"
25 25 data-errorimg="order.order_goods[{{index}}].original_img"></image>
26 26 </view>
27   -
28   - <navigator class="order-cont" openType="navigate" url="/pages/goods/goodsInfo/goodsInfo?goods_id={{item.goods_id}}">
  27 + <!-- 跳转到商品 -->
  28 + <navigator class="order-cont" bindtap="go_gd" data-gd="{{item.goods_id}}">
29 29 <view class="goods-name">{{item.goods_name}}</view>
30 30 <!--<view class="goods-color">{{item.goods_spec}} {{item.goods_color}}</view>-->
31 31 <view class="goods-color">{{filters.show_gui_ge(item.goods_spec,item.goods_color)}}</view>
... ... @@ -53,15 +53,10 @@
53 53 <view class="order-operate">
54 54 <view bindtap="checkTeam" class="contact-us check-btn" wx:if="{{optionIsGoup}}">查看拼团详情</view>
55 55 <view>
56   - <!-- <button wx:if="{{sys_switch.weapp_customertype}}" class="custom-service cart-ico new_split" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> -->
57   - <!-- <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
58   - <view></view> -->
59   - <!-- </button> -->
60   - <button wx:if="{{sys_switch.weapp_customertype}}" class="contact-us goods-btn" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">联系客服</button>
61   - <!-- <view wx:else class="custom-service cart-ico new_split" bindtap="contactService">
62   - <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image>
63   - <view>联系客服</view>
64   - </view> -->
  56 +
  57 + <button wx:if="{{sys_switch.weapp_customertype==1}}" class="contact-us goods-btn" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}">联系客服</button>
  58 +
  59 + <view wx:elif="{{sys_switch.weapp_customertype==2}}" bindtap="con_weixin" class="contact-us goods-btn">联系客服</view>
65 60 <view wx:else bindtap="contactService" class="contact-us goods-btn">联系客服</view>
66 61 </view>
67 62 <!-- <view bindtap="contactService" class="contact-us goods-btn">联系客服</view> -->
... ...
pages/user/order_list/order_list.js
... ... @@ -70,6 +70,13 @@ Page({
70 70 var nowDate = now.getFullYear() + '-' + (now.getMonth() + 1) + '-' + now.getDate();
71 71 var date = new Date(now.getTime() - 7 * 24 * 3600 * 1000);
72 72 var startDate=date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate();
  73 +
  74 +
  75 + if(t.index) {
  76 + this.setData({
  77 + currentIndex: t.index
  78 + });
  79 + };
73 80  
74 81 this.setData({
75 82 currentDate: this.currentDate(),
... ... @@ -453,7 +460,6 @@ Page({
453 460 }
454 461 });
455 462 },
456   -
457 463 /*----------跳转支付-----------*/
458 464 async jumpToCart4(t) {
459 465 var o_index = t.currentTarget.dataset.idx;
... ... @@ -497,7 +503,7 @@ Page({
497 503 await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
498 504 data: {
499 505 store_id: os.stoid,
500   - user_id: getApp().globalData.user_id,
  506 + user_id: user_id,
501 507 goods_id: good.goods_id,
502 508 prom_type: good.prom_type,
503 509 prom_id: good.prom_id
... ... @@ -567,12 +573,9 @@ Page({
567 573 })
568 574  
569 575 var num = good['buyqty'];
570   - console.log(1111);
571   - console.log(num);
572 576 //---- 要计算商品的限购 -----
573 577 if (good['buyqty'] > 0) {
574 578 if (good.goods_num + promgoodsbuynum > good['buyqty']) {
575   -
576 579 var content = good['goods_name'] + "超出活动限购\n";
577 580 th.toast(content);
578 581 return false;
... ... @@ -658,7 +661,7 @@ Page({
658 661 //商品的普通购买 ,不要进行判断
659 662 if ((good.prom_type == 1 || good.prom_type == 6 || good.prom_type == 4 || good.prom_type == 8)
660 663 && !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal) {
661   - if (gg.prom_type != good.prom_type) {
  664 + if (gg.prom_type != good.prom_type && gg.prom_type>0) {
662 665 var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
663 666 th.toast(content);
664 667 return false;
... ... @@ -671,9 +674,10 @@ Page({
671 674 //---如果是活动的时候---
672 675 var prom = null, th = this;
673 676 if (gg.prom_type == 1) {
674   - await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
  677 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/"+ user_id + "/" + gg.prom_id, {}).then(res => {
675 678 if (res.data.code == 0) {
676 679 prom = res.data.data;
  680 + prom.price=prom.user_price;
677 681 }
678 682 })
679 683 }
... ... @@ -771,13 +775,13 @@ Page({
771 775 }
772 776 }
773 777  
774   - console.log("------------------------------------");
775 778 //---如果是活动的时候---
776 779 var prom = null, goodsinfo = good, th = this;
777 780 if (goodsinfo.prom_type == 1) {
778   - await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => {
  781 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/"+ user_id + "/" + goodsinfo.prom_id, {}).then(res => {
779 782 if (res.data.code == 0) {
780 783 prom = res.data.data;
  784 + prom.price=prom.user_price;
781 785 }
782 786 })
783 787 }
... ... @@ -803,7 +807,6 @@ Page({
803 807 if (prom) {
804 808 var now = ut.gettimestamp();
805 809 if (prom.is_end == 1 && prom.end_time < now) {
806   -
807 810 var content = goodsinfo.goods_name + '商品的活动已经结束,请取消订单'
808 811 th.toast(content);
809 812 return false;
... ... @@ -817,6 +820,13 @@ Page({
817 820 return false;
818 821 }
819 822  
  823 + // --看一下会员的秒杀价格是不是发生了变化,因为会员的身份发生了变化
  824 + if(goodsinfo.prom_type==1 && goodsinfo.goods_price!=prom.price){
  825 + var content=goodsinfo.goods_name+'秒杀活动的价格发生了变化';
  826 + th.toast(content);
  827 + return false;
  828 + }
  829 +
820 830 if (goodsinfo.prom_type == 4) {
821 831 if (good.goods_num > prom.limitqty - prom.buy_num) {
822 832  
... ... @@ -824,17 +834,9 @@ Page({
824 834 th.toast(content);
825 835 return false;
826 836 }
827   - } else {
828   - var redis_num = 0;
829   - //------判断活动是否抢光-----
830   - await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
831   - os.stoid + "/" + goodsinfo.prom_type + "/" + goodsinfo.prom_id, {}).then(res => {
832   - redis_num = res.data.data;
833   - });
834   -
835   - if (good.goods_num > redis_num) {
836   -
837   - var content = gg.goods_name + '超出商品活动库存,请取消订单';
  837 + } else if(goodsinfo.prom_type == 1 || goodsinfo.prom_type == 2 || goodsinfo.prom_type == 6 ) {
  838 + if(order.add_time+5*60<ut.gettimestamp()) {
  839 + var content = gg.goods_name + '该订单已经超时无法支付,请取消订单';
838 840 th.toast(content);
839 841 return false;
840 842 }
... ... @@ -1058,388 +1060,413 @@ Page({
1058 1060 var item=th.data.orderList[index];
1059 1061 th.check_more_order(item);
1060 1062 },
1061   -
1062   - check_more_order:async function(item){
1063   - var pickup=null,th=this;
1064   - wx.showLoading();
1065   - //--------获取门店-----------
1066   - await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + item.pickup_id, {
1067   -
1068   - }).then(res=>{
1069   - pickup = res.data.data;
1070   - })
1071   -
1072   - //--------获取商品----------
1073   - var goods_list=item.order_goods;
1074   - //--- 返回的内容 ---
1075   - var back_goods_arr=[];
1076   - var err_text="";
1077   - for(var i in goods_list){
1078   - var g_item=goods_list[i];
1079   - //--如果是赠品,不加入购物车--
1080   - if(g_item['is_gift']) continue;
1081   - if(g_item['prom_type']==4 ){
1082   - err_text+= g_item['goods_name']+"积分购商品不加入购物车\n";
1083   - continue;
1084   - }
1085   - if(g_item['prom_type']==5){
1086   - err_text+= g_item['goods_name']+"搭配购商品不加入购物车\n";
1087   - continue;
1088   - }
1089   - if(g_item['prom_type']==6 ){
1090   - err_text+= g_item['goods_name']+"拼团商品不加入购物车\n";
1091   - continue;
1092   - }
1093 1063  
1094   - //--获取商品--
1095   - var good=null;
1096   - await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + g_item.goods_id, {
1097 1064  
1098   - }).then(res=>{
1099   - good=res.data.data;
1100   - })
  1065 + check_more_order:async function(item){
  1066 + var pickup=null,th=this;
  1067 + var user_id=getApp().globalData.user_id;
  1068 + wx.showLoading();
  1069 + //--------获取门店-----------
  1070 + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + item.pickup_id, {
  1071 +
  1072 + }).then(res=>{
  1073 + pickup = res.data.data;
  1074 + })
1101 1075  
1102   - if(!good){
1103   - err_text+= g_item['goods_name']+"未找到商品\n";
1104   - continue;
1105   - }
1106   - if (good.is_on_sale != 1) {
1107   - err_text+= g_item['goods_name']+"已经下架\n";
1108   - continue;
1109   - }
  1076 + //--------获取商品----------
  1077 + var goods_list=item.order_goods;
  1078 + //--- 返回的内容 ---
  1079 + var back_goods_arr=[];
  1080 + var err_text="";
  1081 + for(var i in goods_list){
  1082 + var g_item=goods_list[i];
  1083 + //--如果是赠品,不加入购物车--
  1084 + if(g_item['is_gift']) continue;
  1085 + if(g_item['prom_type']==4 ){
  1086 + err_text+= g_item['goods_name']+"积分购商品不加入购物车\n";
  1087 + continue;
  1088 + }
  1089 + if(g_item['prom_type']==5){
  1090 + err_text+= g_item['goods_name']+"搭配购商品不加入购物车\n";
  1091 + continue;
  1092 + }
  1093 + if(g_item['prom_type']==6 ){
  1094 + err_text+= g_item['goods_name']+"拼团商品不加入购物车\n";
  1095 + continue;
  1096 + }
1110 1097  
1111   - var timestamp = ut.gettimestamp();
1112   - if (good.on_time > timestamp) {
1113   - err_text+= g_item['goods_name']+"还未上架\n";
1114   - continue;
1115   - }
1116   - if (good.down_time > 0) {
1117   - if (good.down_time < timestamp) {
1118   - err_text+=g_item['goods_name']+"已经下架\n";
1119   - continue;
1120   - }
1121   - }
  1098 + //--获取商品--
  1099 + var good=null;
  1100 + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + g_item.goods_id, {
1122 1101  
1123   - //如果商品的配送方式和门店不匹配
1124   - if(good['distr_type']>0 && pickup['distr_type']>0 && good['distr_type']!=pickup['distr_type'] ){
1125   - err_text+= good['goods_name']+"配送方式不一致\n";
1126   - continue;
1127   - }
1128   -
1129   - var prom=null;
1130   - var b_item={}
1131   - b_item.goods_id=g_item.goods_id;
1132   - b_item.goods_name=g_item.goods_name;
1133   - b_item.goods_num=g_item.goods_num;
1134   - b_item.guide_id=g_item.guide_id;
1135   - b_item.guide_type=g_item.guide_type;
1136   - b_item.pickup_id=item.pickup_id;
1137   - b_item.price=good.shop_price;
1138   - b_item.goods_sn=good.goods_sn;
1139   - b_item.sku=good.sku;
1140   - b_item.is_integral_normal=g_item.is_integral_normal;
1141   -
1142   - //-- 如果会员是等级卡的时候,同时商品也有设置相应的卡价格 --
1143   - var card_field=th.data.card_field;
1144   - if(card_field && good[card_field]>0){
1145   - b_item.price=good[card_field];
1146   - }
  1102 + }).then(res=>{
  1103 + good=res.data.data;
  1104 + })
1147 1105  
1148   - //--判断商品当前的活动情况--
1149   - switch(good.prom_type){
1150   - //秒杀
1151   - case 1:
1152   - var flash=null;
1153   - await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + good.prom_id, {
1154   - }).then(res=>{
1155   - if (res.data.code== 0) {
1156   - flash=res.data.data;
1157   - }
1158   - })
1159   - //----活动还没有结束-----
1160   - if (flash && flash.is_end == 0 && flash.end_time>timestamp && flash.start_time<timestamp ) {
1161   - prom=flash;
1162   - b_item.price=prom.price; //
1163   - }
1164   - break;
1165   -
1166   - //拼团
1167   - case 6:
1168   - b_item.is_pd_normal=1;
1169   - break;
1170   - //组合购的再来一单
1171   - case 7:
1172   - //如果有组合购
1173   - var url="/api/weshop/prom/zhbuy/get/"+os.stoid+"/"+good.prom_id+"/"+getApp().globalData.userInfo.user_id;
1174   - await getApp().request.promiseGet(url, {}).then(res => {
1175   - if(res.data.code==0 && res.data.data){
1176   - if(res.data.data.is_show==1 && res.data.data.is_end==0
1177   - && ut.gettimestamp()<res.data.data.end_time
1178   - && ut.gettimestamp()>res.data.data.start_time
1179   - ){
1180   - b_item.prom_type=7;
1181   - b_item.prom_id=res.data.data.id;
1182   - }
1183   - }
1184   - })
1185   - break;
1186   - }
  1106 + if(!good){
  1107 + err_text+= g_item['goods_name']+"未找到商品\n";
  1108 + continue;
  1109 + }
  1110 + if (good.is_on_sale != 1) {
  1111 + err_text+= g_item['goods_name']+"已经下架\n";
  1112 + continue;
  1113 + }
1187 1114  
  1115 + var timestamp = ut.gettimestamp();
  1116 + if (good.on_time > timestamp) {
  1117 + err_text+= g_item['goods_name']+"还未上架\n";
  1118 + continue;
  1119 + }
  1120 + if (good.down_time > 0) {
  1121 + if (good.down_time < timestamp) {
  1122 + err_text+=g_item['goods_name']+"已经下架\n";
  1123 + continue;
  1124 + }
  1125 + }
1188 1126  
1189   - //如果有优惠促销的时候,要看下商品的优惠活动有没有过期
1190   - if(g_item.prom_type==3 || good.prom_type==3){
1191   - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => {
1192   - if (res.data.code == 0) {
1193   - var r_data = res.data.data;
1194   - if (r_data.promGoodsLists) {
1195   - b_item.prom_type=3;
1196   - b_item.prom_id=r_data.promGoodsLists[0].prom_id;
1197   - }
1198   - }
1199   - })
1200   - }
  1127 + //如果商品的配送方式和门店不匹配
  1128 + if(good['distr_type']>0 && pickup['distr_type']>0 && good['distr_type']!=pickup['distr_type'] ){
  1129 + err_text+= good['goods_name']+"配送方式不一致\n";
  1130 + continue;
  1131 + }
1201 1132  
1202   - //判断是不是线下库存的购买, 是不是秒杀活动
1203   - if(th.data.sales_rules==2 && !prom){
1204   - //-- 看一下购物车上有多少商品 --
1205   - var cart_num=0;
1206   - await getApp().request.promiseGet("/api/weshop/cart/page", {
1207   - data: {
1208   - store_id: os.stoid,
1209   - user_id: getApp().globalData.user_id,
1210   - state:0, is_gift:0,
1211   - goods_id:good.goods_id,
1212   - pick_id: b_item.pickup_id
1213   - }
1214   - }).then(res=>{
1215   - var num = 0;
1216   - if(res.data.code==0 && res.data.data && res.data.data.pageData) {
1217   - for (var i = 0; i < res.data.data.pageData.length; i++) {
1218   - num += res.data.data.pageData[i].goods_num;
1219   - }
1220   - }
1221   - cart_num=num;
1222   - })
  1133 + var prom=null;
  1134 + var b_item={}
  1135 + b_item.goods_id=g_item.goods_id;
  1136 + b_item.goods_name=g_item.goods_name;
  1137 + b_item.goods_num=g_item.goods_num;
  1138 + b_item.guide_id=g_item.guide_id;
  1139 + b_item.guide_type=g_item.guide_type;
  1140 + b_item.pickup_id=item.pickup_id;
  1141 + b_item.price=good.shop_price;
  1142 + b_item.goods_sn=good.goods_sn;
  1143 + b_item.sku=good.sku;
  1144 + b_item.is_integral_normal=g_item.is_integral_normal;
  1145 +
  1146 + //-- 如果会员是等级卡的时候,同时商品也有设置相应的卡价格 --
  1147 + var card_field=th.data.card_field;
  1148 + if(card_field && good[card_field]>0){
  1149 + b_item.price=good[card_field];
  1150 + }
1223 1151  
1224   - var lock=0,plist=null;
1225   -
1226   - if(b_item.prom_type!=7) {
1227   - //先读取门店的lock,
1228   - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
1229   - data: {store_id: os.stoid, wareId: good.goods_id, storageId: b_item.pickup_id, pageSize: 1000}
1230   - }).then(res => {
1231   - if (res.data.code == 0 && res.data.data.total > 0) {
1232   - for (var i in res.data.data.pageData)
1233   - lock += res.data.data.pageData[i].outQty
1234   - }
1235   - })
1236   - //---通过接口获取门店的线下库存信息--
1237   - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
1238   - data: {
1239   - storageNos: pickup.pickup_no,
1240   - wareIds: encodeURIComponent(good.erpwareid),
1241   - storeId: os.stoid
1242   - }
1243   - }).then(res => {
1244   - if (res.data.code == 0 && res.data.data.total > 0) {
1245   - plist = res.data.data.pageData[0];
1246   - }
1247   - })
1248   -
1249   - if (!plist) {
1250   - err_text += good['goods_name'] + "库存不足\n";
1251   - continue;
1252   - }
1253   - if (plist.CanOutQty - lock <= 0) {
1254   - err_text += good['goods_name'] + "库存不足\n";
1255   - continue;
1256   - }
1257   - if (b_item.goods_num > (plist.CanOutQty - lock)) {
1258   - b_item.goods_num = plist.CanOutQty - lock;
  1152 + var url="/api/weshop/activitylist/getGoodActInfo";
  1153 + var req_data={
  1154 + store_id:g_item.store_id,goodsidlist:g_item.goods_id,is_detail:1
  1155 + };
  1156 + await getApp().request.promiseGet(url, {data:req_data}).then(res=>{
  1157 + if(res.data.code==0){
  1158 + var list = res.data.data;
  1159 + for(let i in list){
  1160 + let item=list[i];
  1161 + if(item.prom_type==1){ good.prom_type=1; good.prom_id=item.act_id; }
1259 1162 }
1260 1163 }
1261   - var req_data={
1262   - store_id: os.stoid,
1263   - user_id: getApp().globalData.user_id,
1264   - goods_id: good.goods_id,
1265   - };
  1164 + })
1266 1165  
1267   - if(b_item.prom_type==7){
1268   - req_data.prom_type=7;
1269   - req_data.prom_id=b_item.prom_id;
1270   - }
1271 1166  
  1167 + if(!prom) {
  1168 + //--判断商品当前的活动情况--
  1169 + switch (good.prom_type) {
  1170 + case 1:
  1171 + var flash = null;
  1172 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + good.prom_id, {}).then(res => {
  1173 + if (res.data.code == 0) {
  1174 + flash = res.data.data;
  1175 + }
  1176 + })
  1177 + //----已经结束-----
  1178 + if (flash && flash.is_end == 0 && flash.end_time > timestamp && flash.start_time < timestamp) {
  1179 + prom = flash;
  1180 + prom.price = prom.user_price;
  1181 + b_item.price = prom.user_price;
  1182 + }
  1183 + break;
  1184 + case 6:
  1185 + b_item.is_pd_normal = 1;
  1186 + break;
  1187 + case 7:
  1188 + //如果有组合购
  1189 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id;
  1190 + await getApp().request.promiseGet(url, {}).then(res => {
  1191 + if (res.data.code == 0 && res.data.data) {
  1192 + if (res.data.data.is_show == 1 && res.data.data.is_end == 0
  1193 + && ut.gettimestamp() < res.data.data.end_time
  1194 + && ut.gettimestamp() > res.data.data.start_time
  1195 + ) {
  1196 + b_item.prom_type = 7;
  1197 + b_item.prom_id = res.data.data.id;
  1198 + good.prom_type = 7;
  1199 + good.prom_id = b_item.prom_id;
1272 1200  
1273   - var buynum=0;
1274   - var promnum=0;
1275   - //---要获得商品,该用户买了多少件,同步应用---
1276   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
1277   - data: req_data,
1278   - }).then(res => {
1279   - if(res.data.code==0){
1280   - var buy_num_data = res.data.data;
1281   - buynum = buy_num_data.goodsbuynum;
1282   - if(buy_num_data.promgoodsbuynum){
1283   - promnum=buy_num_data.promgoodsbuynum;
1284   - }
1285   - }
1286   - })
  1201 + }
  1202 + }
  1203 + })
  1204 + break;
  1205 + }
  1206 + }
1287 1207  
1288   - //---- 要计算商品的限购 -----
1289   - if(good['viplimited']>0){
1290   - if(cart_num+buynum>good['viplimited']){
1291   - err_text+= good['goods_name']+"超出限购\n";
1292   - continue;
1293   - }
1294   - good['viplimited']-=(cart_num+buynum);
1295   - if(b_item.goods_num>good['viplimited']){
1296   - b_item.goods_num=good['viplimited'];
1297   - }
1298   - }
1299   - //不算组合购的限购
1300   - back_goods_arr.push(b_item); //返回商品元素
  1208 + //如果有优惠促销的时候,要看下商品的优惠活动有没有过期
  1209 + if(g_item.prom_type==3 || good.prom_type==3){
  1210 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => {
  1211 + if (res.data.code == 0) {
  1212 + var r_data = res.data.data;
  1213 + if (r_data.promGoodsLists) {
  1214 + b_item.prom_type=3;
  1215 + b_item.prom_id=r_data.promGoodsLists[0].prom_id;
  1216 + }
  1217 + }
  1218 + })
  1219 + }
1301 1220  
1302   - }else{
1303 1221  
1304   - //-- 看一下购物车上有多少商品 --
1305   - var cart_num=0;
1306   - await getApp().request.promiseGet("/api/weshop/cart/page", {
1307   - data: {
1308   - store_id: os.stoid,
1309   - user_id: getApp().globalData.user_id,
1310   - state:0, is_gift:0,
1311   - goods_id:good.goods_id
1312   - }
1313   - }).then(res=>{
1314   - var num = 0;
1315   - if(res.data.code==0 && res.data.data && res.data.data.pageData) {
1316   - for (var i = 0; i < res.data.data.pageData.length; i++) {
1317   - num += res.data.data.pageData[i].goods_num;
1318   - }
1319   - }
1320   - cart_num=num;
1321   - })
  1222 + //判断是不是线下库存的购买, 是不是秒杀活动
  1223 + if(th.data.sales_rules==2 && !prom){
1322 1224  
  1225 + //-- 看一下购物车上有多少商品 --
  1226 + var cart_num=0;
  1227 + await getApp().request.promiseGet("/api/weshop/cart/page", {
  1228 + data: {
  1229 + store_id: os.stoid,
  1230 + user_id: getApp().globalData.user_id,
  1231 + state:0, is_gift:0,
  1232 + goods_id:good.goods_id,
  1233 + pick_id: b_item.pickup_id
  1234 + }
  1235 + }).then(res=>{
  1236 + var num = 0;
  1237 + if(res.data.code==0 && res.data.data && res.data.data.pageData) {
  1238 + for (var i = 0; i < res.data.data.pageData.length; i++) {
  1239 + num += res.data.data.pageData[i].goods_num;
  1240 + }
  1241 + }
  1242 + cart_num=num;
  1243 + })
1323 1244  
1324   - if(good.store_count<=0){
1325   - err_text+= good['goods_name']+"库存不足\n";
1326   - continue;
1327   - }
1328   - if(b_item.goods_num>good.store_count)
1329   - b_item.goods_num=good.store_count;
1330   -
1331   - var buynum=0; //商品已经购买多少件
1332   - var promgoodsbuynum=0; //活动已经购买多少件
1333   - var redis_num = 0; //redis库存
1334   -
1335   - var req_data={
1336   - store_id: os.stoid,
1337   - user_id: getApp().globalData.user_id,
1338   - goods_id: good.goods_id,
1339   - };
1340   -
1341   - if(prom){
1342   - req_data.prom_type= good.prom_type;
1343   - req_data.prom_id= good.prom_id;
1344   - b_item.prom_type=good.prom_type;
1345   - b_item.prom_id=good.prom_id;
1346   - //------判断活动是否抢光-----
1347   - await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
1348   - os.stoid + "/" + good.prom_type + "/" + good.prom_id, {
1349   - 1: 1
1350   - }).then(res => {
1351   - redis_num = res.data.data;
1352   - });
1353   - if(redis_num<=0){
1354   - err_text+= good['goods_name']+"活动不足\n";
1355   - continue;
1356   - }
  1245 + var lock=0,plist=null;
1357 1246  
1358   - }
1359   -
1360   - //---要获得商品,该用户买了多少件,同步应用---
1361   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
1362   - data: req_data,
1363   - }).then(res => {
1364   - if(res.data.code==0){
1365   - var buy_num_data = res.data.data;
1366   - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
1367   - buynum = buy_num_data.goodsbuynum;
1368   - }
1369   - })
1370   -
1371   - //---- 要计算商品的限购 -----
1372   - if(good['viplimited']>0){
1373   - if(cart_num+buynum>good['viplimited']){
1374   - err_text+= good['goods_name']+"超出限购\n";
1375   - continue;
1376   - }
1377   - good['viplimited']-=(cart_num+buynum);
1378   - if(b_item.goods_num>good['viplimited']){
1379   - b_item.goods_num=good['viplimited'];
1380   - }
  1247 + if(b_item.prom_type!=7) {
  1248 + //先读取门店的lock,
  1249 + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
  1250 + data: {store_id: os.stoid, wareId: good.goods_id, storageId: b_item.pickup_id, pageSize: 1000}
  1251 + }).then(res => {
  1252 + if (res.data.code == 0 && res.data.data.total > 0) {
  1253 + for (var i in res.data.data.pageData)
  1254 + lock += res.data.data.pageData[i].outQty
  1255 + }
  1256 + })
1381 1257  
1382   - }
  1258 + //---通过接口获取门店的线下库存信息--
  1259 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
  1260 + data: {
  1261 + storageNos: pickup.pickup_no,
  1262 + wareIds: encodeURIComponent(good.erpwareid),
  1263 + storeId: os.stoid
  1264 + }
  1265 + }).then(res => {
  1266 + if (res.data.code == 0 && res.data.data.total > 0) {
  1267 + plist = res.data.data.pageData[0];
  1268 + }
  1269 + })
1383 1270  
1384   - //-- 判断活动的库存 --
1385   - if(prom){
1386   - if(prom['goods_num']<=prom['buy_num']){
1387   - err_text+= good['goods_name']+"超出活动库存\n";continue;
1388   - }
  1271 + if (!plist) {
  1272 + err_text += good['goods_name'] + "库存不足\n";
  1273 + continue;
  1274 + }
  1275 + if (plist.CanOutQty - lock <= 0) {
  1276 + err_text += good['goods_name'] + "库存不足\n";
  1277 + continue;
  1278 + }
  1279 + if (b_item.goods_num > (plist.CanOutQty - lock)) {
  1280 + b_item.goods_num = plist.CanOutQty - lock;
  1281 + }
  1282 + }
  1283 + var req_data={
  1284 + store_id: os.stoid,
  1285 + user_id: getApp().globalData.user_id,
  1286 + goods_id: good.goods_id,
  1287 + };
  1288 + if(b_item.prom_type==7){
  1289 + req_data.prom_type=7;
  1290 + req_data.prom_id=b_item.prom_id;
  1291 + }
1389 1292  
1390   - if(b_item.goods_num>prom['goods_num']-prom['buy_num']){
1391   - b_item['goods_num']= b_item['goods_num']-b_item['buy_num'];
1392   - }
  1293 + var buynum=0;
  1294 + var promnum=0;
  1295 + //---要获得商品,该用户买了多少件,同步应用---
  1296 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  1297 + data: req_data,
  1298 + }).then(res => {
  1299 + if(res.data.code==0){
  1300 + var buy_num_data = res.data.data;
  1301 + buynum = buy_num_data.goodsbuynum;
  1302 + if(buy_num_data.promgoodsbuynum){
  1303 + promnum=buy_num_data.promgoodsbuynum;
  1304 + }
  1305 + }
  1306 + })
1393 1307  
1394   - if(b_item.goods_num>redis_num){
1395   - b_item.goods_num=redis_num;
1396   - }
  1308 + //---- 要计算商品的限购 -----
  1309 + if(good['viplimited']>0){
  1310 + if(cart_num+buynum>good['viplimited']){
  1311 + err_text+= good['goods_name']+"超出限购\n";
  1312 + continue;
  1313 + }
  1314 + good['viplimited']-=(cart_num+buynum);
  1315 + if(b_item.goods_num>good['viplimited']){
  1316 + b_item.goods_num=good['viplimited'];
  1317 + }
  1318 + }
  1319 + //不需要计算组合购的限购
1397 1320  
1398   - if(cart_num+buynum>prom['buy_limit']){
1399   - err_text+= good['goods_name']+"超出活动限购\n";continue;
1400   - }
1401   - prom['buy_limit'] -= (cart_num+buynum);
1402   - if(b_item.goods_num>prom['buy_limit']){
1403   - b_item.goods_num=prom['buy_limit'];
1404   - }
  1321 + back_goods_arr.push(b_item); //返回商品元素
1405 1322  
1406   - }
1407   - back_goods_arr.push(b_item); //返回商品元素
1408   - }
1409   - }
1410   -
1411   - //有重新购买的数据是时候,就要重新生成订单
1412   - if(back_goods_arr.length>0){
1413   - th.setData({back_goods_arr:back_goods_arr});
1414   - if(!err_text){
1415   - th.more_add_cart();
1416   - }else{
1417   - // 如果没有获取用户信息
1418   - wx.showModal({
1419   - title:'确定',
1420   - content: err_text+',确定要买其他商品码?',
1421   - success(res) {
1422   - if (res.confirm) {
1423   - //跳转到登录页
1424   - th.more_add_cart();
1425   - }else{
1426   - wx.hideLoading();
  1323 + }else{
  1324 +
  1325 + //-- 看一下购物车上有多少商品 --
  1326 + var cart_num=0;
  1327 + await getApp().request.promiseGet("/api/weshop/cart/page", {
  1328 + data: {
  1329 + store_id: os.stoid,
  1330 + user_id: getApp().globalData.user_id,
  1331 + state:0, is_gift:0,
  1332 + goods_id:good.goods_id
  1333 + }
  1334 + }).then(res=>{
  1335 + var num = 0;
  1336 + if(res.data.code==0 && res.data.data && res.data.data.pageData) {
  1337 + for (var i = 0; i < res.data.data.pageData.length; i++) {
  1338 + num += res.data.data.pageData[i].goods_num;
  1339 + }
  1340 + }
  1341 + cart_num=num;
  1342 + })
  1343 +
  1344 +
  1345 + if(good.store_count<=0){
  1346 + err_text+= good['goods_name']+"库存不足\n";
  1347 + continue;
  1348 + }
  1349 + if(b_item.goods_num>good.store_count)
  1350 + b_item.goods_num=good.store_count;
  1351 +
  1352 + var buynum=0; //商品已经购买多少件
  1353 + var promgoodsbuynum=0; //活动已经购买多少件
  1354 + var redis_num = 0; //redis库存
  1355 +
  1356 + var req_data={
  1357 + store_id: os.stoid,
  1358 + user_id: getApp().globalData.user_id,
  1359 + goods_id: good.goods_id,
  1360 + };
  1361 +
  1362 + if(prom){
  1363 + req_data.prom_type= good.prom_type;
  1364 + req_data.prom_id= good.prom_id;
  1365 + b_item.prom_type=good.prom_type;
  1366 + b_item.prom_id=good.prom_id;
  1367 +
  1368 + //------判断活动是否抢光-----
  1369 + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
  1370 + os.stoid + "/" + good.prom_type + "/" + good.prom_id, {
  1371 + 1: 1
  1372 + }).then(res => {
  1373 + redis_num = res.data.data;
  1374 + });
  1375 + if(redis_num<=0){
  1376 + err_text+= good['goods_name']+"活动不足\n";
  1377 + continue;
  1378 + }
  1379 +
  1380 + }
  1381 +
  1382 + //---要获得商品,该用户买了多少件,同步应用---
  1383 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  1384 + data: req_data,
  1385 + }).then(res => {
  1386 + if(res.data.code==0){
  1387 + var buy_num_data = res.data.data;
  1388 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  1389 + buynum = buy_num_data.goodsbuynum;
  1390 + }
  1391 + })
  1392 +
  1393 + //---- 要计算商品的限购 -----
  1394 + if(good['viplimited']>0){
  1395 + if(cart_num+buynum>good['viplimited']){
  1396 + err_text+= good['goods_name']+"超出限购\n";
  1397 + continue;
  1398 + }
  1399 + good['viplimited']-=(cart_num+buynum);
  1400 + if(b_item.goods_num>good['viplimited']){
  1401 + b_item.goods_num=good['viplimited'];
  1402 + }
  1403 +
  1404 + }
  1405 +
  1406 + //-- 判断活动的库存 --
  1407 + if(prom) {
  1408 + if (prom['goods_num'] <= prom['buy_num']) {
  1409 + err_text += good['goods_name'] + "超出活动库存\n";
  1410 + continue;
  1411 + }
  1412 +
  1413 + if (b_item.goods_num > prom['goods_num'] - prom['buy_num']) {
  1414 + b_item['goods_num'] = b_item['goods_num'] - b_item['buy_num'];
  1415 + }
  1416 +
  1417 + if (b_item.goods_num > redis_num) {
  1418 + b_item.goods_num = redis_num;
  1419 + }
  1420 +
  1421 + if (prom['buy_limit'] > 0) {
  1422 + if (cart_num + buynum > prom['buy_limit']) {
  1423 + err_text += good['goods_name'] + "超出活动限购\n";
  1424 + continue;
  1425 + }
  1426 + prom['buy_limit'] -= (cart_num + buynum);
  1427 + if (b_item.goods_num > prom['buy_limit']) {
  1428 + b_item.goods_num = prom['buy_limit'];
  1429 + }
  1430 + }
  1431 + }
  1432 +
  1433 +
  1434 + back_goods_arr.push(b_item); //返回商品元素
  1435 + }
  1436 + }
  1437 +
  1438 + //有重新购买的数据是时候,就要重新生成订单
  1439 + if(back_goods_arr.length>0){
  1440 + th.setData({back_goods_arr:back_goods_arr});
  1441 + if(!err_text){
  1442 + th.more_add_cart();
  1443 + }else{
  1444 + wx.hideLoading();
  1445 + // 如果没有获取用户信息
  1446 + wx.showModal({
  1447 + title:'确定',
  1448 + content: err_text+',确定要买其他商品码?',
  1449 + success(res) {
  1450 + if (res.confirm) {
  1451 + //跳转到登录页
  1452 + th.more_add_cart();
  1453 + }else{
  1454 + th.data.moring=0;
  1455 + wx.hideLoading();
  1456 + }
  1457 + },fail(){
1427 1458 th.data.moring=0;
  1459 + wx.hideLoading();
1428 1460 }
1429   - },
1430   - fail: function (res) {
1431   - wx.hideLoading();
1432   - th.data.moring=0;
1433   - },//接口调用失败的回调函数
1434   - });
1435   -
1436   - }
1437   - }else{
1438   - wx.hideLoading();
1439   - this.data.moring=0;
1440   - getApp().confirmBox(err_text);
1441   - }
1442   - },
  1461 + });
  1462 +
  1463 + }
  1464 + }else{
  1465 + th.data.moring=0;
  1466 + wx.hideLoading();
  1467 + getApp().confirmBox(err_text);
  1468 + }
  1469 + },
1443 1470  
1444 1471 more_add_cart:async function(){
1445 1472 var back_goods_arr=this.data.back_goods_arr;
... ...
pages/user/order_list/order_list.wxml
... ... @@ -241,7 +241,10 @@
241 241 <view class="offline-container" wx:else>
242 242 <view class="offline-list">
243 243 <view class="item" wx:for="{{list2}}">
244   - <view class="title"><text class="iconfont icon-order"></text>单号:{{item.No}}</view>
  244 + <view class="title">
  245 + <view><text class="iconfont icon-order"></text>单号:{{item.No}}</view>
  246 + <view>{{item.states}}</view>
  247 + </view>
245 248 <view class="subtitle">
246 249 <text>{{item.BillDate}}</text>
247 250 <view>消费总额:<text class="co-red fs28">¥{{item.Sum}}</text></view>
... ...
pages/user/order_list/order_list.wxss
... ... @@ -566,6 +566,7 @@ page {
566 566 padding: 20rpx;
567 567 font-size: 26rpx;
568 568 display: flex;
  569 + justify-content: space-between;
569 570 align-items: center;
570 571 }
571 572 .icon-order {
... ...
pages/user/userinfo/userinfo.js
... ... @@ -317,46 +317,57 @@ Page({
317 317 }
318 318  
319 319 //单总量超出5个的时候
320   - if (e.data.data.total > 5) {
  320 + if (e.data.data.total > 10) {
321 321 i.get("/api/weshop/storagecategory/page", {
322 322 data: {
323   - store_id: r.stoid,
324   - is_show: 1,
325   - pageSize: 300
  323 + store_id: r.stoid,
  324 + pageSize: 1000,
  325 + orderField:"sort",
  326 + orderType:'asc',
326 327 },
327 328 success: function(ee) {
328 329 if (ee.data.code == 0) {
329   - if (ee.data.data.pageData.length > 0) {
330   - var def_arr = new Array();
331   - var ishas = 0;
332   - //-- 开始就看5个门店 --
333   - for (var k = 0; k < 5; k++) {
334   - if (k == e.data.data.pageData.length) break;
335   - def_arr.push(e.data.data.pageData[k]);
336   - }
337   -
338   - th.setData({
339   - def_pickpu_list: def_arr,
340   - pickpu_list: ee.data.data.pageData
341   - });
  330 +
  331 + var check_all_cate=0;
  332 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){
  333 + for(let i in ee.data.data.pageData){
  334 + let item=ee.data.data.pageData[i];
  335 + if(item.is_show==1){
  336 + check_all_cate=1;break
  337 + }
  338 + }
  339 + }
  340 +
  341 +
  342 + if (check_all_cate) {
  343 +
342 344 var sto_cate = ee.data.data.pageData;
343 345 var sto_arr = e.data.data.pageData;
344 346 var newarr = new Array();
345 347 var qita = new Array();
346   -
  348 +
  349 + var is_del_pk=0;
347 350 //----要进行门店分组--------
348 351 for (var i = 0; i < sto_arr.length; i++) {
349 352 //找一下这个门店有没有在分类数组内
350   - var find2 = 0,
351   - find2name = "";
  353 + var find2 = 0, find2name = "",sort=0;
  354 + is_del_pk=0;
352 355 for (var m = 0; m < sto_cate.length; m++) {
353 356 if (sto_arr[i].category_id == sto_cate[m].cat_id) {
354   - find2 = sto_cate[m].cat_id;
355   - find2name = sto_cate[m].cat_name;
  357 + if(sto_cate[m].is_show!=1){
  358 + is_del_pk=1; sto_arr.splice(i,1);
  359 + i--;
  360 + }else {
  361 + find2 = sto_cate[m].cat_id;
  362 + find2name = sto_cate[m].cat_name;
  363 + sort = sto_cate[m].sort;
  364 + is_del_pk=0;
  365 + }
356 366 break;
357 367 }
358 368 }
359   -
  369 +
  370 + if(is_del_pk) continue;
360 371 if (newarr.length > 0) {
361 372 var find = 0;
362 373 //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
... ... @@ -374,6 +385,7 @@ Page({
374 385 var item = {
375 386 cat_id: find2,
376 387 name: find2name,
  388 + sort:sort,
377 389 s_arr: arr0
378 390 };
379 391 newarr.push(item);
... ... @@ -389,6 +401,7 @@ Page({
389 401 var item = {
390 402 cat_id: find2,
391 403 name: find2name,
  404 + sort:sort,
392 405 s_arr: arr0
393 406 };
394 407 newarr.push(item);
... ... @@ -397,6 +410,29 @@ Page({
397 410 }
398 411 }
399 412 }
  413 +
  414 + var def_arr = new Array();
  415 + //-- 开始就看10个门店 --
  416 + for (var k = 0; k < 10; k++) {
  417 + if (k == e.data.data.pageData.length) break;
  418 + def_arr.push(e.data.data.pageData[k]);
  419 + }
  420 +
  421 + th.setData({
  422 + def_pickpu_list: def_arr,
  423 + pickpu_list: ee.data.data.pageData
  424 + });
  425 +
  426 + //门店分类要排序下
  427 + function compare(property){
  428 + return function(a,b){
  429 + var value1 = a[property];
  430 + var value2 = b[property];
  431 + return value1 - value2;
  432 + }
  433 + }
  434 + if(newarr.length>0)
  435 + newarr.sort(compare("sort"));
400 436  
401 437 //----安排其他的分类-----
402 438 if (qita.length > 0) {
... ...
pages/user/userinfo/userinfo.wxml
... ... @@ -287,8 +287,8 @@
287 287 <view>
288 288 <icon bindtap="onclickstore" class="modal-closes" color="black" size="22" type="cancel"></icon>
289 289 </view>
290   - <view class="felx choose_more" bindtap="more_store">
291   - <text class="fs26 red-co" wx:if="{{is_show_sto_cat}}">{{choice_sort_store==0?'更多门店':'返回'}}</text>
  290 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}">
  291 + <text class="fs26 red-co">{{choice_sort_store==0?'更多门店':'返回'}}</text>
292 292 <view class="bg_rights"></view>
293 293 </view>
294 294 </view>
... ...