Commit 6bb247061e788235f955f9303c64989cffce0af3

Authored by season
2 parents 5d3ba57a 6fe1c946

Merge branch 'qa' of http://git.vipzhuang.cn/wxd/MShopWeApp

Showing 49 changed files with 4806 additions and 4142 deletions
... ... @@ -51,7 +51,7 @@ App({
51 51 config: null, //门店参数
52 52 config2: null, //门店配置
53 53 code: null,
54   - user_id:null,//6520491,// 6519913,//6520352
  54 + user_id:null, //6520509,//6520491,// 6519913,//6520352
55 55 // user_id:6520314,// qa-6519858,//
56 56 // user_id:14148118,// qa-6519858,//
57 57 buy_now: null,
... ... @@ -1582,6 +1582,15 @@ App({
1582 1582 return cx_arr;
1583 1583 },
1584 1584  
  1585 + get_has_cx_act2(act_arr){
  1586 + var cx_arr=[];
  1587 + if(act_arr && act_arr.length)
  1588 + cx_arr=act_arr.filter(function (e) {
  1589 + return e.s_time < ut.gettimestamp() && [3,5,7,10].indexOf(e.prom_type)>-1;
  1590 + })
  1591 + return cx_arr;
  1592 + },
  1593 +
1585 1594 //-- 获取判断注册成功后,是跳转等级卡,还是新人有礼 --
1586 1595 async go_to_page(is_reg,func){
1587 1596 if(!is_reg) {
... ...
app.json
... ... @@ -238,11 +238,20 @@
238 238 "pages/user/my_service/tment_details",
239 239 "pages/user/my_service/tment_eval",
240 240 "pages/user_template/index",
241   - "pages/team/team_show/team_show"
  241 + "pages/team/team_show/team_show",
  242 + "pages/user/order_detail/order_detail"
242 243 ]
243 244 }
244 245 ],
245 246  
  247 + "preloadRule": {
  248 + "pages/index/index/index": {
  249 + "network": "all",
  250 + "packages": [
  251 + "pack5"
  252 + ]
  253 + }
  254 + },
246 255  
247 256 "permission": {
248 257 "scope.userLocation": {
... ...
components/diy_floatingBox/diy_floatingBox.wxss
... ... @@ -22,7 +22,7 @@
22 22 z-index: 100;
23 23 background-color: #fff;
24 24 border: 1px solid #adadad;
25   - box-shadow: 0 0 10px 2px #adadad;
  25 + /* box-shadow: 0 0 10px 2px #adadad; */
26 26 display: flex;
27 27 align-items: center;
28 28 justify-content: center;
... ...
components/diy_goodsGroup/diy_goodsGroup.wxml
... ... @@ -11,17 +11,17 @@
11 11 <view class="{{'tabBox ' + (object.menu_style==2 ? 'tab2' :'')}}">
12 12 <!--样式一-->
13 13 <block wx:if="{{object.menu_style==1}}">
14   - <view wx:if="{{object.show_all==1}}" style="padding: 0 35rpx;" class="{{'tab ' + (title_index == 10 ? 'clor ' :'')}}" >全部<span class="tab1" wx:if="{{10==title_index}}"></span></view>
15   - <view wx:for="{{object.nav_list}}" style="padding: 0 35rpx;" data-index="{{index}}" bindtap="gr_set_nav" data-idlist="{{item.idlist}}" data-wgroup="{{item.wgroup}}" data-classstyle="{{item.classstyle}}" class="{{'tab ' + (index==title_index ? 'clor ' :'')}}">{{item.title}}<span class="tab1" wx:if="{{index==title_index}}"></span></view>
  14 + <view wx:if="{{object.show_all==1}}" style="padding: 0 35rpx;font-size: {{object.title_font_size*2}}rpx;color: {{object.title_color}};" class="{{'tab ' + (title_index == 10 ? 'clor ' :'')}}" >全部<span class="tab1" wx:if="{{10==title_index}}"></span></view>
  15 + <view wx:for="{{object.nav_list}}" style="padding: 0 35rpx;font-size: {{object.title_font_size*2}}rpx;color: {{object.title_color}};" data-index="{{index}}" bindtap="gr_set_nav" data-idlist="{{item.idlist}}" data-wgroup="{{item.wgroup}}" data-classstyle="{{item.classstyle}}" class="{{'tab ' + (index==title_index ? 'clor ' :'')}}">{{item.title}}<span class="tab1" wx:if="{{index==title_index}}"></span></view>
16 16 </block>
17 17 <!--样式二-->
18 18 <block wx:if="{{object.menu_style==2}}">
19   - <view wx:for="{{object.nav_list}}" data-index="{{index}}" bindtap="gr_set_nav" data-idlist="{{item.idlist}}" data-wgroup="{{item.wgroup}}" data-classstyle="{{item.classstyle}}" class="{{'tab ' + (index==title_index ? 'tab_action' : '')}}"> {{item.title}}</view>
  19 + <view wx:for="{{object.nav_list}}" style="font-size: {{object.title_font_size*2}}rpx;color: {{object.title_color}};" data-index="{{index}}" bindtap="gr_set_nav" data-idlist="{{item.idlist}}" data-wgroup="{{item.wgroup}}" data-classstyle="{{item.classstyle}}" class="{{'tab ' + (index==title_index ? 'tab_action' : '')}}"> {{item.title}}</view>
20 20 </block>
21 21 <!--样式三-->
22 22 <block wx:if="{{object.menu_style==3}}">
23 23 <view wx:for="{{object.nav_list}}" class="tab ">
24   - <view class="{{'tab3 ' + (index==title_index ? 'tab_action' : '')}}" data-index="{{index}}" bindtap="gr_set_nav" data-idlist="{{item.idlist}}" data-wgroup="{{item.wgroup}}" data-classstyle="{{item.classstyle}}">
  24 + <view class="{{'tab3 ' + (index==title_index ? 'tab_action' : '')}}" style="font-size: {{object.title_font_size*2}}rpx;color: {{object.title_color}};" data-index="{{index}}" bindtap="gr_set_nav" data-idlist="{{item.idlist}}" data-wgroup="{{item.wgroup}}" data-classstyle="{{item.classstyle}}">
25 25 {{item.title}}
26 26 </view>
27 27 </view>
... ... @@ -50,7 +50,7 @@
50 50 <block wx:if="{{goods_array.length > 0 }}">
51 51 <!-- 大图模式 -->
52 52 <block wx:if="{{object.style==1}}">
53   - <view style="{{'padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'}}" class="{{'new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}">
  53 + <view style="{{'padding-top:'+object.product_spacing+'px;padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'+(object.product_style==2 ? ('background-color:'+object.bg_color) :'' )}}" class="{{'new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}">
54 54 <!-- <block wx:for="{{goods_array}}"> -->
55 55 <view wx:for="{{goods_array}}" wx:for-item="aitem" wx:for-index="aind" class="{{'new_item1 ' + (object.product_style==2 ? ' boxsha ':'') + (object.product_style==3 ? ' aborder ':'') + ((object.product_style==1 || object.product_style==3 )? ' bgf ':'') + (object.chamfer_of_main_drawing==2 ? ' but_radius5 ':'') }}" style="{{'margin-bottom:'+object.product_spacing+'px;'}}">
56 56 <navigator url="{{g_filter.get_url_by_type(aitem)}}" class="s1_gk_a1">
... ... @@ -91,7 +91,7 @@
91 91 </block>
92 92 <!-- 一行两个 -->
93 93 <block wx:if="{{object.style==2}}">
94   - <view style="{{'padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'') }}">
  94 + <view style="{{'padding-top:'+object.product_spacing+'px;padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'+(object.product_style==2 ? ('background-color:'+object.bg_color) :'' )}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'') }}">
95 95 <!-- <block wx:for="{{goods_array}}"> -->
96 96 <view wx:for="{{goods_array}}" wx:for-item="aitem" wx:for-index="aind" class="{{'boxpad new_item1 ' + (object.product_style==2 ? ' boxsha ':'') + (object.product_style==3 ? ' aborder ':'') + ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')+ (object.chamfer_of_main_drawing==2 ? ' but_radius5 ':'')}}" style="{{'margin-bottom:'+object.product_spacing+'px; '+('width:calc(100%/2 - ' + object.product_spacing/2+'px)')}}">
97 97 <navigator url="{{g_filter.get_url_by_type(aitem)}}" class="s1_gk_a1">
... ... @@ -139,7 +139,7 @@
139 139 </block>
140 140 <!-- 一行三个 -->
141 141 <block wx:if="{{object.style==3}}">
142   - <view style="{{'padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}">
  142 + <view style="{{'padding-top:'+object.product_spacing+'px;padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'+(object.product_style==2 ? ('background-color:'+object.bg_color) :'' )}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}">
143 143 <!-- <block wx:for="{{goods_array}}"> -->
144 144 <view wx:for="{{goods_array}}" wx:for-item="aitem" wx:for-index="aind" class="{{'boxpad new_item1 ' + (object.product_style==2 ? ' boxsha ':'') + (object.product_style==3 ? ' aborder ':'') + ((object.product_style==1 || object.product_style==3 )? ' bgf ':'') + (object.chamfer_of_main_drawing==2 ? ' but_radius5 ':'') }}" style="{{'margin-bottom:'+object.product_spacing+'px; '+('width:calc(100%/3 - ' + (object.product_spacing*2)/3+'px)')}}">
145 145 <navigator url="{{g_filter.get_url_by_type(aitem)}}" class="s1_gk_a1">
... ... @@ -187,7 +187,7 @@
187 187 </block>
188 188 <!-- 详细列表 -->
189 189 <block wx:if="{{object.style==4}}">
190   - <view style="{{'padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'') }}">
  190 + <view style="{{'padding-top:'+object.product_spacing+'px;padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'+(object.product_style==2 ? ('background-color:'+object.bg_color) :'' )}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'') }}">
191 191 <!-- <block wx:for="{{goods_array}}"> -->
192 192 <view wx:for="{{goods_array}}" wx:for-item="aitem" wx:for-index="aind" class="{{'boxpad new_item1 ' + (object.product_style==2 ? ' boxsha ':'') + (object.product_style==3 ? ' aborder ':'') + ((object.product_style==1 || object.product_style==3 )? ' bgf ':'') + (object.chamfer_of_main_drawing==2 ? ' but_radius5 ':'') }}" style="{{'margin-bottom:'+object.product_spacing+'px;'}}">
193 193 <navigator style="display: flex;" url="{{g_filter.get_url_by_type(aitem)}}" class="s1_gk_a1">
... ... @@ -235,7 +235,7 @@
235 235 </block>
236 236 <!-- 一大一小 -->
237 237 <block wx:if="{{object.style==5}}">
238   - <view style="{{'padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}">
  238 + <view style="{{'padding-top:'+object.product_spacing+'px;padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'+(object.product_style==2 ? ('background-color:'+object.bg_color) :'' )}}" class="{{'flex2 new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}">
239 239 <block wx:for="{{goods_array}}">
240 240 <block wx:for="{{item}}" wx:for-item="aitem" wx:for-index="aind">
241 241 <view wx:if="{{aind==0}}" class="{{'new_item1 ' + (object.product_style==2 ? ' boxsha ':'') + (object.product_style==3 ? ' aborder ':'') + (object.chamfer_of_main_drawing==2 ? ' but_radius5 ':'') + ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}" style="{{'margin-bottom:'+object.product_spacing+'px;'}}">
... ... @@ -413,7 +413,7 @@
413 413  
414 414 </block>
415 415 <!-- 横向滑动 3个-->
416   - <block wx:if="{{object.style==6}}">
  416 + <view wx:if="{{object.style==6}}" style="padding-top:{{object.product_spacing}}px;{{(object.product_style==2 ? ('background-color:'+object.bg_color) :'' )}}">
417 417 <!-- <swiper indicator-dots circular> -->
418 418 <swiper indicator-dots style="{{'padding-left:'+object.page_margins+'px;padding-right:'+object.page_margins+'px;'+(swiperHeight ? ('height:'+swiperHeight+';'):'' )}}" class="{{' new_item1_box '+ ((object.product_style==1 || object.product_style==3 )? ' bgf ':'')}}">
419 419 <swiper-item wx:for="{{goods_array}}" class="flex2" style="padding: 5rpx;">
... ... @@ -459,7 +459,7 @@
459 459 </swiper>
460 460 <!-- </swiper> -->
461 461  
462   - </block>
  462 + </view>
463 463  
464 464 <block wx:if="{{object.style!=6}}">
465 465 <block wx:if="{{classstyle_id=='1' }}">
... ...
components/diy_goodsGroup/diy_goodsGroup.wxss
... ... @@ -1025,6 +1025,7 @@ top: 10rpx;
1025 1025 .boxsha{
1026 1026 /* box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.25); */
1027 1027 /* box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); */
  1028 + background-color: #fff;
1028 1029 box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
1029 1030 }
1030 1031 .but_radius85{
... ... @@ -1151,7 +1152,7 @@ top: 10rpx;
1151 1152 font-size: 28rpx;
1152 1153 font-weight: bold;
1153 1154 overflow-x: auto;
1154   - margin-bottom: 20rpx;
  1155 + /* margin-bottom: 20rpx; */
1155 1156 /* min-width: 25%; */
1156 1157 }
1157 1158  
... ... @@ -1188,7 +1189,7 @@ top: 10rpx;
1188 1189 }
1189 1190 .tab_action{
1190 1191 background-color: #f23030;
1191   - color: #fff;
  1192 + color: #fff !important;
1192 1193 border: none !important;
1193 1194 opacity: .8;
1194 1195 /* border-color: #f23030 !important; */
... ...
components/diy_service/diy_service.wxss
1 1 .custom-service{ width: 80rpx; height: 80rpx; border-radius: 50%; background-color: #fff;z-index: 100;
2   - border: 1px solid #adadad; box-shadow: 0 0 10px 2px #adadad; line-height: 28rpx;
  2 + border: 1px solid #adadad; line-height: 28rpx;
3 3 right: 2rpx; display: flex;align-items: center;justify-content: center;}
4 4  
5 5 .cs-img{ width: 36rpx; height: 36rpx;}
... ...
packageA/pages/distribution/shop/shop.js
... ... @@ -33,6 +33,7 @@ Page({
33 33 isAll: true,
34 34 is_no_plus:1,
35 35 default_img: '/miniapp/images/default_g_img.gif',
  36 + is_distribut:0, //是否是分销
36 37 },
37 38  
38 39 /**
... ... @@ -190,8 +191,8 @@ Page({
190 191 var th = this;
191 192 //更新一下会员的信息
192 193 if (getApp().globalData.user_id) {
193   - if (!getApp().globalData.userInfo['is_distribut']) {
194   - th.setData({ ishidden_comise: 1 })
  194 + if (getApp().globalData.userInfo['is_distribut']) {
  195 + th.setData({ is_distribut: 1 })
195 196 }
196 197 getApp().request.get("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.user_id, {
197 198 isShowLoading: false,
... ...
packageA/pages/distribution/shop/shop.wxml
... ... @@ -207,9 +207,9 @@
207 207 <!-- 分层金额 -->
208 208 <!-- <view hidden="{{ishidden_comise}}" class="fs24 c-a">
209 209 分成金额:
210   - <text class="money c-red">{{filter.toFix(item.commission,2)}}</text>
  210 + <text class="money c-red">{{filter.toFix(item.commission,2)}}</text>
211 211 </view> -->
212   - <view hidden="{{ishidden_comise}}">
  212 + <view wx:if="{{is_distribut || (!is_distribut && storeDistribut && storeDistribut.is_commission_displayed==1)}}">
213 213 <view class="fs24 c-a" wx:if="{{item.distribut_level >= 1 && item.new_fir_rate !=0}}">
214 214 一级分成:
215 215 <text class="money c-red">{{filter.toFix(item.new_fir_rate,2)}}</text>
... ... @@ -369,18 +369,20 @@
369 369 分成金额:
370 370 <text class="money c-red">{{filter.toFix(item.commission,2)}}</text>
371 371 </view> -->
372   - <view class="fs24 c-a" wx:if="{{item.distribut_level >= 1 && item.new_fir_rate !=0}}">
373   - 一级分成:
374   - <text class="money c-red">{{filter.toFix(item.new_fir_rate,2)}}</text>
375   - </view>
376   - <view class="fs24 c-a" wx:if="{{item.distribut_level >= 2 && item.new_sec_rate !=0}}">
377   - 二级分成:
378   - <text class="money c-red">{{filter.toFix(item.new_sec_rate,2)}}</text>
379   - </view>
380   - <view class="fs24 c-a" wx:if="{{item.distribut_level >= 3 && item.new_thi_rate !=0}}">
381   - 三级分成:
382   - <text class="money c-red">{{filter.toFix(item.new_thi_rate,2)}}</text>
383   - </view>
  372 + <block wx:if="{{is_distribut || (!is_distribut && storeDistribut && storeDistribut.is_commission_displayed==1)}}">
  373 + <view class="fs24 c-a" wx:if="{{item.distribut_level >= 1 && item.new_fir_rate !=0}}">
  374 + 一级分成:
  375 + <text class="money c-red">{{filter.toFix(item.new_fir_rate,2)}}</text>
  376 + </view>
  377 + <view class="fs24 c-a" wx:if="{{item.distribut_level >= 2 && item.new_sec_rate !=0}}">
  378 + 二级分成:
  379 + <text class="money c-red">{{filter.toFix(item.new_sec_rate,2)}}</text>
  380 + </view>
  381 + <view class="fs24 c-a" wx:if="{{item.distribut_level >= 3 && item.new_thi_rate !=0}}">
  382 + 三级分成:
  383 + <text class="money c-red">{{filter.toFix(item.new_thi_rate,2)}}</text>
  384 + </view>
  385 + </block>
384 386 </view>
385 387 </view>
386 388 </view>
... ...
packageA/pages/liveStream/liveStream.js
... ... @@ -47,7 +47,8 @@ Page({
47 47 gid: '',
48 48 shareImgPath: '',
49 49 shartitle: "",
50   - anchorname:""
  50 + anchorname:"",
  51 + share_id:0 //分享的ID
51 52 },
52 53 // list: [],
53 54 // live: {
... ... @@ -338,18 +339,22 @@ Page({
338 339  
339 340 // 分享操作表
340 341 clickShare: function (e) {
341   - var sharimg = e.currentTarget.dataset.sharimg
342   - var shartitle = e.currentTarget.dataset.shartitle
343   - var anchorname= e.currentTarget.dataset.anchorname
344   - if (!getApp().globalData.user_id) {
345   - getApp().goto("/packageE/pages/togoin/togoin");
346   - return false;
347   - }
  342 + var sharimg = e.currentTarget.dataset.sharimg;
  343 + var shartitle = e.currentTarget.dataset.shartitle;
  344 + var anchorname= e.currentTarget.dataset.anchorname;
  345 + var id= e.currentTarget.dataset.id;
  346 +
  347 + // if (!getApp().globalData.user_id) {
  348 + // getApp().goto("/packageE/pages/togoin/togoin");
  349 + // return false;
  350 + // }
  351 +
348 352 this.setData({
349 353 showActionSheet: !this.data.showActionSheet,
350 354 sharimg: sharimg,
351 355 shartitle: shartitle,
352   - anchorname:anchorname
  356 + anchorname:anchorname,
  357 + share_id:id,
353 358 })
354 359 },
355 360  
... ... @@ -429,9 +434,10 @@ Page({
429 434  
430 435  
431 436  
432   - var path2 = getApp().globalData.userInfo.head_pic;
  437 + var path2 = getApp().globalData.userInfo?getApp().globalData.userInfo.head_pic:'';
433 438 if (path2 == "") {
434 439 path2 = "../../../images/share/hui_hear_pic.png";
  440 + this.data.avatarUrl=path2;
435 441 } else {
436 442 getApp().request.promiseGet("/api/weshop/marketing/help/help/imgbase64/get", {
437 443 data: {
... ... @@ -463,11 +469,13 @@ Page({
463 469  
464 470  
465 471 // 请求二维码
  472 + // var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
  473 + // os.stoid + "?sceneValue=1012" + "&pageValue=pages/goods/goodsInfo/goodsInfo";
  474 +
466 475 var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
467   - os.stoid + "?sceneValue=1012" + "&pageValue=pages/goods/goodsInfo/goodsInfo";
  476 + os.stoid + "?sceneValue="+this.data.share_id + "&pageValue=packageA/pages/liveStreamDetails/liveStreamDetails";
468 477  
469 478 if (!this.data.ewm) {
470   -
471 479 await that.getImageInfo(path3).then(res => {
472 480 that.setData({
473 481 ewm: res.path
... ... @@ -484,9 +492,6 @@ Page({
484 492  
485 493 // console.log('----------------v', headImg);
486 494  
487   - var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
488   - os.stoid + "?sceneValue=1012" + "&pageValue=packageA/pages/liveStreamDetails/liveStreamDetails";
489   -
490 495 // 以iPhone6为例,375/750 = 0.5
491 496 // let scale = this.data.windowWidth / 375;
492 497 let scale = this.data.screenWidth / 750 * 1.35
... ... @@ -523,10 +528,13 @@ Page({
523 528 ctx.drawImage(this.data.avatarUrl, 30, 24, 56, 56);
524 529 ctx.restore();
525 530  
526   - // 绘制昵称
527   - ctx.setFontSize(22);
528   - ctx.setFillStyle('#ADADAD');
529   - ctx.fillText(app.globalData.userInfo.nickname, 106, 60);
  531 +
  532 + if(app.globalData.userInfo) {
  533 + // 绘制昵称
  534 + ctx.setFontSize(22);
  535 + ctx.setFillStyle('#ADADAD');
  536 + ctx.fillText(app.globalData.userInfo.nickname, 106, 60);
  537 + }
530 538  
531 539 // 绘制主图
532 540 ctx.setFillStyle('#f8f8f8');
... ...
packageA/pages/liveStream/liveStream.wxml
... ... @@ -85,7 +85,7 @@
85 85 {{item['anchor_name']}}</view>
86 86 </view>
87 87 <view wx:if="{{isLogin}}" style="width: 30%;height: 90rpx;align-items: center;justify-items: center;">
88   - <view bindtap="clickShare" data-sharimg="{{item.share_img}}" data-shartitle="{{item.name}}" data-anchorname="{{item['anchor_name']}}" class="display: flex;" style="width: 70%;border-radius: 25rpx;border: 1rpx solid #fc6247;height: 46rpx;margin-top: 25rpx;margin-left: 30rpx;">
  88 + <view bindtap="clickShare" data-sharimg="{{item.share_img}}" data-id="{{item.id}}" data-shartitle="{{item.name}}" data-anchorname="{{item['anchor_name']}}" class="display: flex;" style="width: 70%;border-radius: 25rpx;border: 1rpx solid #fc6247;height: 46rpx;margin-top: 25rpx;margin-left: 30rpx;">
89 89 <view class="share-image"></view>
90 90 <view class="fs26" style="color: #fc6247;margin-left: 10rpx;line-height: 46rpx;"> 分享 </view>
91 91 </view>
... ...
packageA/pages/liveStreamDetails/liveStreamDetails.js
... ... @@ -34,7 +34,8 @@ Page({
34 34 screenWidth: 0,
35 35 canvasHidden: 1,
36 36 gid: '',
37   - shareImgPath: ''
  37 + shareImgPath: '',
  38 + id:''
38 39 },
39 40  
40 41 // 点击商品
... ... @@ -55,10 +56,10 @@ Page({
55 56 // 分享操作表
56 57 clickShare: function () {
57 58  
58   - if(!getApp().globalData.user_id){
59   - getApp().goto("/packageE/pages/togoin/togoin");
60   - return false;
61   - }
  59 + // if(!getApp().globalData.user_id){
  60 + // getApp().goto("/packageE/pages/togoin/togoin");
  61 + // return false;
  62 + // }
62 63 this.setData({
63 64 showActionSheet: !this.data.showActionSheet
64 65 })
... ... @@ -172,9 +173,10 @@ drawText: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, un
172 173 });
173 174  
174 175  
175   - var path2 = getApp().globalData.userInfo.head_pic;
  176 + var path2 = getApp().globalData.userInfo?getApp().globalData.userInfo.head_pic:'';
176 177 if (path2 == "") {
177 178 path2 = "../../../images/share/hui_hear_pic.png";
  179 + that.data.avatarUrl=path2;
178 180 } else {
179 181 getApp().request.promiseGet("/api/weshop/marketing/help/help/imgbase64/get", {
180 182 data: {
... ... @@ -216,7 +218,7 @@ drawText: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, un
216 218  
217 219 // 请求二维码
218 220 var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
219   - os.stoid + "?sceneValue=1012" + "&pageValue=pages/goods/goodsInfo/goodsInfo";
  221 + os.stoid + "?sceneValue="+this.data.id + "&pageValue=packageA/pages/liveStreamDetails/liveStreamDetails";
220 222  
221 223 if(!this.data.ewm) {
222 224  
... ... @@ -236,8 +238,8 @@ drawText: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, un
236 238  
237 239 // console.log('----------------v', headImg);
238 240  
239   - var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
240   - os.stoid + "?sceneValue=1012" + "&pageValue=packageA/pages/liveStreamDetails/liveStreamDetails";
  241 + //var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
  242 + //os.stoid + "?sceneValue=1012" + "&pageValue=packageA/pages/liveStreamDetails/liveStreamDetails";
241 243  
242 244 // 以iPhone6为例,375/750 = 0.5
243 245 // let scale = this.data.windowWidth / 375;
... ... @@ -515,6 +517,14 @@ drawText: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, un
515 517 var staffId=options.staffId;
516 518 var storageId=options.storageId;
517 519  
  520 + if(!options.id){
  521 + var id = decodeURIComponent(options.scene);
  522 + if(id){
  523 + options.id=id;
  524 + }
  525 + }
  526 + this.data.id=options.id;
  527 +
518 528 if(first_leader){
519 529 //-- user_id代过来免登录 --
520 530 getApp().globalData.first_leader=first_leader;
... ...
packageA/pages/liveStreamDetails/liveStreamDetails.wxml
... ... @@ -50,7 +50,7 @@
50 50  
51 51 <!-- 分享 -->
52 52 <view class="share-container">
53   - <image wx:if="{{isLogin}}" src="/packageA/images/liveStreamDetails/share.jpg" bindtap="clickShare"></image>
  53 + <image src="/packageA/images/liveStreamDetails/share.jpg" bindtap="clickShare"></image>
54 54 <image src="/packageA/images/liveStreamDetails/home.jpg" bindtap="backHome"></image>
55 55 </view>
56 56  
... ...
packageA/pages/profile/profile.js
... ... @@ -1159,22 +1159,59 @@ Page({
1159 1159 console.log(e);
1160 1160 let b = this.getInput(e);
1161 1161 let reg=/^[0-9\-]*$/
  1162 + // let reg=/^\d{4}-\d{1,2}-\d{1,2}$/
1162 1163 if (!(reg.test(b))){
1163 1164 return this.data.oldbirthday
1164 1165 }
  1166 +
1165 1167 let length = b.length;
1166 1168 let oldBirtthDayLength=this.data.oldBirtthDayLength
1167 1169 if (length > oldBirtthDayLength) {
  1170 +
1168 1171 if (b.length==4) {
1169 1172 b+='-'
1170 1173 }
  1174 + if (b.length==5 && b[4]!='-') {
  1175 + return this.data.oldbirthday
  1176 + }
  1177 +
  1178 + if (b.length==8 && b[7]!='-') {
  1179 + return this.data.oldbirthday
  1180 + }
  1181 +
  1182 + if (b.length==6 && b[5] >1) {
  1183 + let lb = b.split('');
  1184 + lb.splice(5, 0, 0);
  1185 + b = lb.join('');
  1186 + b+='-'
  1187 + // console.log(b[5]);
  1188 + // return this.data.oldbirthday
  1189 + }
  1190 +
1171 1191 if (b.length==7) {
1172   - b+='-'
  1192 + if (b[6]=='-') {
  1193 + let lb = b.split('');
  1194 + lb.splice(5, 0, 0);
  1195 + b = lb.join('');
  1196 + }else{
  1197 + let s=b[5]+b[6]
  1198 + if (s*1>12) {
  1199 + return this.data.oldbirthday
  1200 + }
  1201 + b+='-'
  1202 + }
  1203 +
1173 1204 }
1174   - // if (b.length==6 && b[5] >1) {
1175   - // console.log(b[5]);
  1205 +
  1206 + if (b.length==10) {
  1207 + let a=b[8]+b[9];
  1208 + if (a*1>31) {
  1209 + return this.data.oldbirthday
  1210 + }
  1211 + }
  1212 +
  1213 +
1176 1214  
1177   - // }
1178 1215 }
1179 1216 this.setData({
1180 1217 datet: b,
... ...
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.js
... ... @@ -1598,12 +1598,12 @@ Page({
1598 1598 //--定义的保存图片方法,分享团---
1599 1599 saveImageToPhotosAlbum: function () {
1600 1600 //--先判断会员状态--
1601   - var user_info = getApp().globalData.userInfo;
1602   - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
1603   - //getApp().my_warnning("请先登录",0,this);
1604   - wx.navigateTo({url: '/packageE/pages/togoin/togoin',})
1605   - return false;
1606   - }
  1601 + // var user_info = getApp().globalData.userInfo;
  1602 + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
  1603 + // //getApp().my_warnning("请先登录",0,this);
  1604 + // wx.navigateTo({url: '/packageE/pages/togoin/togoin',})
  1605 + // return false;
  1606 + // }
1607 1607  
1608 1608 //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4积分购
1609 1609 var type = 2
... ... @@ -1672,6 +1672,7 @@ Page({
1672 1672  
1673 1673 context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
1674 1674  
  1675 + let nick=app.globalData.userInfo?app.globalData.userInfo.nickname:'';
1675 1676 //-- 是自定义海报的情况下 --
1676 1677 if (th.data.poster && parseInt(th.data.poster.style) == 2) {
1677 1678 //在线上分享人的情况下
... ... @@ -1684,8 +1685,8 @@ Page({
1684 1685 //--昵称---
1685 1686 context.setFontSize(24 * unit)
1686 1687 context.setFillStyle("black")
1687   - context.fillText(app.globalData.userInfo.nickname, x1, y1);
1688   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
  1688 + context.fillText(nick, x1, y1);
  1689 + var width = 24 * nick.length * unit + 4 * unit;
1689 1690 //强烈推荐 改许程
1690 1691 var tj_path = "../../../../images/share/q_tj.png";
1691 1692 context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
... ... @@ -1699,8 +1700,8 @@ Page({
1699 1700 //--昵称---
1700 1701 context.setFontSize(24 * unit)
1701 1702 context.setFillStyle("black")
1702   - context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
1703   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
  1703 + context.fillText(nick, 152 * unit, 76 * unit);
  1704 + var width = 24 * nick.length * unit + 2 * unit;
1704 1705 //强烈推荐 改许程
1705 1706 var tj_path = "../../../../images/share/q_tj.png";
1706 1707 context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit);
... ... @@ -2005,9 +2006,9 @@ Page({
2005 2006 return false;
2006 2007 }
2007 2008 //---获取分享图片的本地地址,头像和商品图片----
2008   - var path2 = getApp().globalData.userInfo.head_pic;
  2009 + var path2 = getApp().globalData.userInfo?getApp().globalData.userInfo.head_pic:'';
2009 2010 if (path2 == "") {
2010   - ee.data.share_head = "../../../images/share/hui_hear_pic.png";
  2011 + ee.data.share_head = "../../../../images/share/hui_hear_pic.png";
2011 2012 tt(func);
2012 2013 } else {
2013 2014 path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
... ... @@ -3559,10 +3560,10 @@ Page({
3559 3560  
3560 3561  
3561 3562 clickShare() {
3562   - if(!getApp().globalData.user_id){
3563   - getApp().goto("/packageE/pages/togoin/togoin");
3564   - return false;
3565   - }
  3563 + // if(!getApp().globalData.user_id){
  3564 + // getApp().goto("/packageE/pages/togoin/togoin");
  3565 + // return false;
  3566 + // }
3566 3567 this.setData({
3567 3568 share_hidden: true,
3568 3569 });
... ... @@ -3589,12 +3590,14 @@ Page({
3589 3590 context.setFillStyle('black');
3590 3591 context.fillText(shopName, 277 * unit, 60 * unit);
3591 3592  
3592   - // 3.推荐来源
3593   - let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
3594   - context.setTextAlign('center');
3595   - context.setFontSize(22 * unit);
3596   - context.setFillStyle('#96959a');
3597   - context.fillText(fromText, 277 * unit, 105 * unit);
  3593 + if(getApp().globalData.userInfo) {
  3594 + // 3.推荐来源
  3595 + let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
  3596 + context.setTextAlign('center');
  3597 + context.setFontSize(22 * unit);
  3598 + context.setFillStyle('#96959a');
  3599 + context.fillText(fromText, 277 * unit, 105 * unit);
  3600 + }
3598 3601  
3599 3602 // 4.海报背景
3600 3603 context.setFillStyle('white');
... ...
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.wxml
... ... @@ -141,7 +141,7 @@
141 141 {{data.goods_name}}
142 142 </view>
143 143 <!-- 这个是分享按钮 -->
144   - <view class="xc-share-frame t-c shrink0" bindtap="clickShare">
  144 + <view wx:if="{{isLogin}}" class="xc-share-frame t-c shrink0" bindtap="clickShare">
145 145 <view class="iconfont icon-share"></view>
146 146 <view class="fs22 c-7b">分享</view>
147 147 </view>
... ...
packageA/pages/serviceCard_pd/team_success/team_success.js
... ... @@ -482,6 +482,8 @@ Page({
482 482 } else {
483 483  
484 484 context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit);
  485 +
  486 + let nick=app.globalData.userInfo?app.globalData.userInfo.nickname:'';
485 487 //-- 是自定义海报的情况下 --
486 488 if (th.data.poster && parseInt(th.data.poster.style) == 2) {
487 489 //在线上分享人的情况下
... ... @@ -494,8 +496,8 @@ Page({
494 496 //--昵称---
495 497 context.setFontSize(24 * unit)
496 498 context.setFillStyle("black")
497   - context.fillText(app.globalData.userInfo.nickname, x1, y1);
498   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit;
  499 + context.fillText(nick, x1, y1);
  500 + var width = 24 * nick.length * unit + 4 * unit;
499 501 //强烈推荐 改许程
500 502 var tj_path = "../../../../images/share/q_tj.png";
501 503 context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit);
... ... @@ -509,8 +511,8 @@ Page({
509 511 //--昵称---
510 512 context.setFontSize(24 * unit)
511 513 context.setFillStyle("black")
512   - context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit);
513   - var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit;
  514 + context.fillText(nick, 152 * unit, 76 * unit);
  515 + var width = 24 * nick.length * unit + 2 * unit;
514 516 //强烈推荐
515 517 var tj_path = "../../../../images/share/q_tj.png";
516 518 context.drawImage(tj_path, 152 * unit + width, 54 * unit, 110 * unit, 30 * unit);
... ... @@ -806,9 +808,9 @@ Page({
806 808 return false;
807 809 }
808 810 //---获取分享图片的本地地址,头像和商品图片----
809   - var path2 = getApp().globalData.userInfo.head_pic;
  811 + var path2 = getApp().globalData.userInfo?getApp().globalData.userInfo.head_pic:'';
810 812 if(path2==""){
811   - ee.data.share_head ="../../../images/share/hui_hear_pic.png";
  813 + ee.data.share_head ="../../../../images/share/hui_hear_pic.png";
812 814 tt(func);
813 815 }else {
814 816 path2=path2.replace("http://thirdwx.qlogo.cn","https://wx.qlogo.cn");
... ... @@ -902,10 +904,10 @@ Page({
902 904 },
903 905  
904 906 clickShare() {
905   - if(!getApp().globalData.user_id){
906   - getApp().goto("/packageE/pages/togoin/togoin");
907   - return false;
908   - }
  907 + // if(!getApp().globalData.user_id){
  908 + // getApp().goto("/packageE/pages/togoin/togoin");
  909 + // return false;
  910 + // }
909 911 this.setData({
910 912 share_hidden: true,
911 913 });
... ... @@ -1053,12 +1055,14 @@ Page({
1053 1055 context.setFillStyle('black');
1054 1056 context.fillText(shopName, 277 * unit, 60 * unit);
1055 1057  
1056   - // 3.推荐来源
1057   - let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
1058   - context.setTextAlign('center');
1059   - context.setFontSize(22 * unit);
1060   - context.setFillStyle('#96959a');
1061   - context.fillText(fromText, 277 * unit, 105 * unit);
  1058 + if(getApp().globalData.userInfo) {
  1059 + // 3.推荐来源
  1060 + let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
  1061 + context.setTextAlign('center');
  1062 + context.setFontSize(22 * unit);
  1063 + context.setFillStyle('#96959a');
  1064 + context.fillText(fromText, 277 * unit, 105 * unit);
  1065 + }
1062 1066  
1063 1067 // 4.海报背景
1064 1068 context.setFillStyle('white');
... ...
packageB/pages/user/comment/comment.wxml
... ... @@ -108,7 +108,7 @@
108 108 </view>
109 109 </view>
110 110 <view class="flex">
111   - <!-- <navigator wx:if="{{item.comment_id}}" class="commodity_To_evaluate flex-level View_evaluation fs24" url="/pages/user/order_detail/order_detail?order_id={{item.order_id}}">
  111 + <!-- <navigator wx:if="{{item.comment_id}}" class="commodity_To_evaluate flex-level View_evaluation fs24" url="/packageG/pages/user/order_detail/order_detail?order_id={{item.order_id}}">
112 112 <view>查看订单</view>
113 113 </navigator> -->
114 114  
... ... @@ -198,7 +198,7 @@
198 198 </view>
199 199 </view>
200 200 <view class="flex">
201   - <navigator wx:if="{{item.comment_id}}" class="commodity_To_evaluate flex-level View_evaluation fs24" url="/pages/user/order_detail/order_detail?order_id={{item.order_id}}">
  201 + <navigator wx:if="{{item.comment_id}}" class="commodity_To_evaluate flex-level View_evaluation fs24" url="/packageG/pages/user/order_detail/order_detail?order_id={{item.order_id}}">
202 202 <view>查看订单</view>
203 203 </navigator>
204 204  
... ...
packageC/pages/luckyGo/luckyGo_activityList/luckyGo_activityList.js
... ... @@ -39,7 +39,7 @@ Page({
39 39 },
40 40  
41 41 onShow: function() {
42   - getApp().check_can_share();
  42 + getApp().check_can_share(this);
43 43 // if(app.globalData.userInfo) {
44 44 // if(!this.data.isLogin) {
45 45  
... ...
packageC/pages/luckyGo/luckyGo_details/luckyGo_details.js
... ... @@ -1016,10 +1016,10 @@ Page({
1016 1016 // },
1017 1017  
1018 1018 clickShare() {
1019   - if(!getApp().globalData.user_id){
1020   - getApp().goto("/packageE/pages/togoin/togoin");
1021   - return false;
1022   - }
  1019 + // if(!getApp().globalData.user_id){
  1020 + // getApp().goto("/packageE/pages/togoin/togoin");
  1021 + // return false;
  1022 + // }
1023 1023 this.setData({
1024 1024 share_hidden: true,
1025 1025 });
... ...
packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js
... ... @@ -2436,7 +2436,7 @@ Page({
2436 2436 duration: 2000
2437 2437 })
2438 2438 setTimeout(function () {
2439   - getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
  2439 + getApp().goto("/packageG/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
2440 2440 }, 1000)
2441 2441 }
2442 2442 //未找到相关记录
... ... @@ -4974,7 +4974,7 @@ Page({
4974 4974 //-------跳转pt商品-------
4975 4975 go_to_nopay: function () {
4976 4976 var th = this;
4977   - url = "/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
  4977 + url = "/packageG/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
4978 4978 getApp().goto(url);
4979 4979  
4980 4980 },
... ... @@ -5066,7 +5066,7 @@ Page({
5066 5066 success: function (a) {
5067 5067 if (a.confirm) {
5068 5068 wx.navigateTo({
5069   - url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
  5069 + url: "/packageG/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
5070 5070 });
5071 5071 }
5072 5072 }
... ...
packageC/pages/presell/goodsInfo/goodsInfo.js
... ... @@ -1457,7 +1457,7 @@ Page({
1457 1457 }
1458 1458  
1459 1459 if(!this.data.pre_arr){
1460   - ut.m_toast('您未达到活动条件,不能购买此活动商品商品');
  1460 + ut.m_toast('您未达到活动条件,不能购买此活动商品');
1461 1461 return false;
1462 1462 }
1463 1463  
... ... @@ -1503,7 +1503,7 @@ Page({
1503 1503 duration: 2000
1504 1504 })
1505 1505 setTimeout(function () {
1506   - getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
  1506 + getApp().goto("/packageG/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
1507 1507 }, 1000)
1508 1508 }
1509 1509 //未找到相关记录
... ... @@ -1518,8 +1518,6 @@ Page({
1518 1518 }
1519 1519 },
1520 1520  
1521   -
1522   -
1523 1521 //----获取线下价格-------
1524 1522 get_off_price() {
1525 1523 var th = this;
... ... @@ -2961,7 +2959,7 @@ Page({
2961 2959  
2962 2960 //-------跳转pt商品-------
2963 2961 go_to_nopay: function () {
2964   - var th = this, url = "/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
  2962 + var th = this, url = "/packageG/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
2965 2963 getApp().goto(url);
2966 2964  
2967 2965 },
... ...
packageC/pages/presell/pregoodsInfo/goodsInfo.js
... ... @@ -1384,7 +1384,7 @@ Page({
1384 1384 duration: 2000
1385 1385 })
1386 1386 setTimeout(function () {
1387   - getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
  1387 + getApp().goto("/packageG/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id,)
1388 1388 }, 1000)
1389 1389 }
1390 1390 //未找到相关记录
... ... @@ -2607,7 +2607,7 @@ Page({
2607 2607  
2608 2608 //-------跳转pt商品-------
2609 2609 go_to_nopay: function () {
2610   - var th =this,url = "/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
  2610 + var th =this,url = "/packageG/pages/user/order_detail/order_detail?order_id=" + th.data.buy_order.order_id;
2611 2611 getApp().goto(url);
2612 2612  
2613 2613 },
... ...
packageD/pages/AI-test-skin/success_result/success_result.js
... ... @@ -842,7 +842,7 @@ Page({
842 842 //--定义的保存图片方法,分享团---
843 843 saveImageToPhotosAlbum: function () {
844 844 var th = this;
845   - var rpx = this.data.cWidth / 750 * 4; //基础单位,
  845 + var rpx = this.data.cWidth / 750*1.7; //基础单位,
846 846 //--先判断会员状态--
847 847 // var user_info = getApp().globalData.userInfo;
848 848 // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
... ... @@ -947,8 +947,8 @@ Page({
947 947 y: 0,
948 948 width: 750,
949 949 height: 1093,
950   - destWidth: 5 * 750,
951   - destHeight: 5 * 1093,
  950 + destWidth: 1.2 * 750 * 750/that.data.cWidth,
  951 + destHeight: 1.2 * 1093 * 750/that.data.cWidth,
952 952 canvasId: 'share',
953 953 success: function (res) {
954 954 that.setData({
... ...
packageD/pages/AI-test-skin/success_result/success_result.wxml
... ... @@ -378,7 +378,7 @@
378 378  
379 379  
380 380 <!-- 二维码显示页面 -->
381   -<canvas canvas-id='share' style='width:750px;height:1093px;background-color:white;' wx:if='{{!canvasHidden}}'></canvas>
  381 +<canvas canvas-id='share' style='width:750rpx;height:1093rpx;background-color:white;' wx:if='{{!canvasHidden}}'></canvas>
382 382 <!-- 展示分享图 -->
383 383 <view id="share_show" wx:if="{{share_show}}">
384 384 <view class="cover-layer" bindtap="close_share" style="z-index: 77777"></view>
... ...
packageE/pages/cart/cart2/cart2.js
... ... @@ -170,7 +170,15 @@ Page({
170 170 showFold:true,
171 171  
172 172 ly_map:{},
173   - template_id:[]
  173 + template_id:[],
  174 +
  175 + //用于后台计算的多促销集合
  176 + show_can_cx_map:{},
  177 + //优惠促销活动的集合
  178 + yhcx_act_map: {},
  179 +
  180 + //优惠促销购买次数
  181 + yhcx_buy_map:{}
174 182 },
175 183  
176 184  
... ... @@ -795,10 +803,10 @@ Page({
795 803  
796 804 //如果是购物车的时候,
797 805 if (arr) {
798   - var idx = th.data.allsto.findIndex(function (e) {
799   - return e.pickup_id == arr[index].pick_id
800   - })
801   - pick = th.data.allsto[idx];
  806 + // var idx = th.data.allsto.findIndex(function (e) {
  807 + // return e.pickup_id == arr[index].pick_id
  808 + // })
  809 + // pick = th.data.allsto[idx];
802 810 var get_gd = null;
803 811 await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + gd.goods_id, {
804 812  
... ... @@ -807,7 +815,7 @@ Page({
807 815 get_gd = res1.data.data;
808 816 }
809 817 })
810   - distr_t = pick.distr_type || get_gd.distr_type;
  818 + distr_t = gd.pickup_distr_type || get_gd.distr_type;
811 819  
812 820 } else {
813 821 var gg = to.get_b_now();
... ... @@ -841,7 +849,6 @@ Page({
841 849 // if (item0.distr_type == 0 || item0.distr_type == distr_t) {
842 850 // new_arr.push(item0);
843 851 // }
844   -
845 852 // }
846 853  
847 854 if (!new_arr.length) return null;
... ... @@ -909,7 +916,7 @@ Page({
909 916 var th = this, app = getApp();
910 917 var state = 0;
911 918 if (th.data.state) state = 1;
912   - a.get("/api/weshop/cart/list", {
  919 + a.get("/api/weshop/cart/listNew1", {
913 920 data: {
914 921 user_id: to.globalData.user_id, selected: 1, state: state,
915 922 store_id: oo.stoid, pageSize: 600,
... ... @@ -926,18 +933,18 @@ Page({
926 933 if (pick_id_arr.length == 0 || pick_id_arr.indexOf(carr[i].pick_id) == -1)
927 934 pick_id_arr.push(carr[i].pick_id);
928 935 }
929   - var req_d = {
930   - store_id: os.stoid, ids: pick_id_arr.join(',')
931   - }
932   - //-- 获取门店的列表 --
933   - await getApp().request.promiseGet("/api/weshop/pickup/list", { data: req_d }).then(res => {
934   - if (ut.ajax_ok(res)) {
935   - th.data.allsto = res.data.data.pageData;
936   - }
937   - })
  936 + //-- 门店不在获取2024-2-3 --
  937 + // var req_d = {
  938 + // store_id: os.stoid, ids: pick_id_arr.join(',')
  939 + // }
  940 + // //-- 获取门店的列表 --
  941 + // await getApp().request.promiseGet("/api/weshop/pickup/list", { data: req_d }).then(res => {
  942 + // if (ut.ajax_ok(res)) {
  943 + // th.data.allsto = res.data.data.pageData;
  944 + // }
  945 + // })
938 946  
939 947 th.data.cartlist_y =JSON.parse(JSON.stringify(carr)); //存储原始购物车列表
940   -
941 948 wx.showLoading();
942 949  
943 950 th.get_cart_next(carr);
... ... @@ -950,7 +957,7 @@ Page({
950 957 is_last(gid,goods,map){
951 958 let last_id=0;
952 959 for (let i = 0; i <goods.length ; i++) {
953   - if(map.indexOf(goods[i].goods_id)>-1){
  960 + if(map && map.indexOf(goods[i].goods_id)>-1){
954 961 last_id=goods[i].goods_id;
955 962 }
956 963 }
... ... @@ -958,6 +965,7 @@ Page({
958 965 return false;
959 966 },
960 967  
  968 +
961 969 //-- is_change是有没有切换活动的意思 --
962 970 async get_cart_next(carr,is_change,old_prom){
963 971  
... ... @@ -973,7 +981,7 @@ Page({
973 981  
974 982 var c_ok=1;
975 983 if(old_prom && (carr[ir].prom_type!=old_prom.prom_type || carr[ir].prom_id!=old_prom.prom_id) ){
976   - c_ok=0;
  984 + c_ok=0;
977 985 }
978 986  
979 987 if(carr[ir].is_gift && carr[ir].id && c_ok) {
... ... @@ -995,22 +1003,22 @@ Page({
995 1003 var map=this.data.prom_goods_map;
996 1004 if(map){
997 1005 for (var ky in map) {
998   - if(map[ky]){
999   - var ob=map[ky];
1000   - for (var ii in ob) {
1001   - var item_map = ob[ii];
1002   - if (item_map.hasOwnProperty('cy_cx')) {
1003   - delete item_map.cy_cx;
1004   - }
1005   - }
  1006 + if(map[ky]){
  1007 + var ob=map[ky];
  1008 + for (var ii in ob) {
  1009 + var item_map = ob[ii];
  1010 + if (item_map.hasOwnProperty('cy_cx')) {
  1011 + delete item_map.cy_cx;
  1012 + }
1006 1013 }
  1014 + }
1007 1015 }
1008 1016 }
1009 1017 }
1010 1018  
1011 1019 //按门店分类的数组
1012 1020 var arr = new Array();
1013   -
  1021 +
1014 1022 var th=this;
1015 1023 th.data.in_zhact_gdmap = {};
1016 1024 //---是不是购买等级卡成功的返回---等级卡显示的判断---
... ... @@ -1018,40 +1026,44 @@ Page({
1018 1026  
1019 1027 //-- 判断组合购是总数量是不是存在 --
1020 1028 var no_zh_num={};
  1029 + //-- 多促销活动调用接口需要的参数,和商品的购买数量和活动的购买数量的请求参数 --
  1030 +
  1031 + if(!is_change){
  1032 + var dug_cx_arr = [];
  1033 + //获取 限购 和 多活动的促销---2024-2-1
  1034 + for (var i = 0; i < carr.length; i++) {
  1035 +
  1036 + let item1 = carr[i];
  1037 + //如果不是活动的时候,不是代发商品的时候,不是赠品的时候,不是阶梯商品拆分的,不是组合购拆分的
  1038 + if([1, 2, 4, 6, 8, 9].indexOf(item1.prom_type)== -1 && !item1.whsle_id
  1039 + && !item1.is_gift && !item1.is_ld_split && !item1.is_zh_split ){
  1040 + //-- 快速查找,组装查询多活动的列表 --
  1041 + let f_idx=dug_cx_arr.findIndex(function (ele) {
  1042 + return ele.goods_id == item1.goods_id
  1043 + });
  1044 + if(f_idx==-1) {
  1045 + let gd_ite={
  1046 + goods_id:carr[i].goods_id,
  1047 + goods_num:1,
  1048 + is_limit_show:1,
  1049 + is_state:0
  1050 + }
  1051 + dug_cx_arr.push(gd_ite);
  1052 + }
1021 1053  
1022   - for (var i = 0; i < carr.length; i++) {
1023   -
1024   - var item1 = carr[i];
1025   - //-- 获取一下商品的所有活动 --
1026   - await th.buy_pro_group(item1);
1027   - //把已经购买了多少见的内容填入
1028   - var goodsbuynum = 0, promgoodsbuynum = 0;
1029   - //--要获得商品,该用户买了多少件,同步应用--
1030   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
1031   - data: {
1032   - store_id: os.stoid,
1033   - user_id: getApp().globalData.user_id,
1034   - goods_id: item1.goods_id,
1035   - prom_type: item1.prom_type,
1036   - prom_id: item1.prom_id,
1037   - isnew:1
1038   - },
1039   - }).then(res => {
1040   - var buy_num_data = res.data.data;
1041   - if (buy_num_data.promgoodsbuynum) {
1042   - promgoodsbuynum = buy_num_data.promgoodsbuynum;
1043 1054 }
1044   - goodsbuynum = buy_num_data.goodsbuynum;
1045   - })
1046   - //如果有购买活动
1047   - item1.promgoodsbuynum = promgoodsbuynum;
1048 1055  
1049   - if(is_change){
1050   - carr[i].collocationList=null;
  1056 + if(is_change){
  1057 + carr[i].collocationList=null;
  1058 + }
  1059 + }
  1060 + //-- 对商品的多促销进行判断 ---2024-2-1--
  1061 + if(dug_cx_arr.length){
  1062 + await th.buy_pro_group(dug_cx_arr,carr);
1051 1063 }
1052   -
1053 1064 }
1054 1065  
  1066 +
1055 1067 //在分组的时候,就不要再调用接口,await
1056 1068 for (var i = 0; i < carr.length; i++) {
1057 1069 var item = carr[i];
... ... @@ -1079,10 +1091,9 @@ Page({
1079 1091  
1080 1092 }
1081 1093  
1082   -
1083 1094 //商品的图片不能重复的赋值
1084 1095 if(item.original_img.indexOf(oo.imghost)==-1)
1085   - item.original_img = oo.imghost + item.original_img;
  1096 + item.original_img = oo.imghost + item.original_img;
1086 1097  
1087 1098 var car_item = item;
1088 1099 /*----接口要弄出来的,先顶着-----*/
... ... @@ -1095,10 +1106,10 @@ Page({
1095 1106  
1096 1107 if (arr[j].pickup_id == pcid) {
1097 1108 if (item.is_gift != 1) {
1098   - //确定配送方式
1099   - if (arr[j].distr_t == 0) {
1100   - arr[j].distr_t = car_item.distr_type;
1101   - }
  1109 + //确定配送方式
  1110 + if (arr[j].distr_t == 0) {
  1111 + arr[j].distr_t = car_item.distr_type;
  1112 + }
1102 1113 }else{
1103 1114 item.distr_type=0; //赠品不控制物流的方式
1104 1115 }
... ... @@ -1112,10 +1123,10 @@ Page({
1112 1123 switch (dis_t) {
1113 1124 case 0:
1114 1125 if(!arr[j].exp_sure){
1115   - e_t = 1;
1116   - //-- 系统后台有设置要默认的 --
1117   - if (th.data.json_d.pickupway && th.data.json_d.pickupway == 1) e_t = 0;
1118   - arr[j].exp_type=e_t
  1126 + e_t = 1;
  1127 + //-- 系统后台有设置要默认的 --
  1128 + if (th.data.json_d.pickupway && th.data.json_d.pickupway == 1) e_t = 0;
  1129 + arr[j].exp_type=e_t
1119 1130 }
1120 1131 break;
1121 1132 case 1:
... ... @@ -1147,8 +1158,8 @@ Page({
1147 1158  
1148 1159 }
1149 1160 if(car_item.is_gift != 1){
1150   - arr[j].exp_type = e_t;
1151   - if (e_t == 0) th.setData({ is_all_zt: 0 });
  1161 + arr[j].exp_type = e_t;
  1162 + if (e_t == 0) th.setData({ is_all_zt: 0 });
1152 1163 }
1153 1164  
1154 1165 //else if (e_t == 1) th.setData({ is_all_zt: 1 });
... ... @@ -1176,13 +1187,13 @@ Page({
1176 1187 if (find == 0) {
1177 1188 var pikname = '', sto = null;
1178 1189 //----找到门店名称-----
1179   - for (var k = 0; k < th.data.allsto.length; k++) {
1180   - if (pcid == th.data.allsto[k].pickup_id) {
1181   - pikname = th.data.allsto[k].pickup_name;
1182   - sto = th.data.allsto[k];
1183   - break;
1184   - }
1185   - }
  1190 + pikname = item.pickup_name;
  1191 + sto ={
  1192 + pickup_id:item.pick_id,
  1193 + pickup_name:pikname,
  1194 + distr_type:item.pickup_distr_type,
  1195 + keyid:item.keyid
  1196 + };
1186 1197 var e_t = 0, dis_t = 0;//物流方式,配送方式
1187 1198 if (item.distr_type == 0) {
1188 1199 dis_t = sto.distr_type;
... ... @@ -1191,7 +1202,6 @@ Page({
1191 1202 }
1192 1203  
1193 1204 let exp_sure=0;
1194   -
1195 1205 switch (dis_t) {
1196 1206 case 0:
1197 1207 e_t = 1;
... ... @@ -1224,12 +1234,10 @@ Page({
1224 1234 }
1225 1235 }
1226 1236 }
1227   -
1228   -
1229 1237 if (back_data && parseFloat(back_data)) {
1230   - c_item.can_usecommise = parseFloat(parseFloat(back_data).toFixed(2));
1231   - cart_commission += c_item.can_usecommise;
1232   - }
  1238 + c_item.can_usecommise = parseFloat(parseFloat(back_data).toFixed(2));
  1239 + cart_commission += c_item.can_usecommise;
  1240 + }
1233 1241  
1234 1242 var ie = {
1235 1243 pickup_id: pcid,
... ... @@ -1285,6 +1293,8 @@ Page({
1285 1293  
1286 1294 }
1287 1295  
  1296 +
  1297 +
1288 1298 var cart_commission = 0;
1289 1299 //-- 循环计算一下线下取价 --
1290 1300 for (var k = 0; k < arr.length; k++) {
... ... @@ -1292,8 +1302,28 @@ Page({
1292 1302 if (!is_change) {
1293 1303 //-- 要进行归类一下活动 --
1294 1304 await m_cx.cart_cx_group(th, arr[k].goods, c_item, 0, 0, (show_can_cx) => {
1295   -
1296   - arr[k].show_can_cx = show_can_cx;
  1305 + //后台计算使用
  1306 + th.data.show_can_cx_map[c_item.pickup_id]=show_can_cx;
  1307 + //-- 把活动组装进去 ---
  1308 + let show_can_cx1 = ut.deep_cp(show_can_cx);
  1309 + //前端处理渲染的时,要处理一些不需要的字段属性
  1310 + if(show_can_cx1){
  1311 + for (const key in show_can_cx1) {
  1312 + let element = show_can_cx1[key];
  1313 + if(element.cur_act){
  1314 + let c_act=element.cur_act;
  1315 + delete c_act.goods;
  1316 + }
  1317 + if(element.act_arr && element.act_arr.length>0){
  1318 + for (var ij = 0; ij < element.act_arr.length; ij++) {
  1319 + var act_ite = element.act_arr[ij];
  1320 + delete act_ite.goods;
  1321 + delete act_ite.key;
  1322 + }
  1323 + }
  1324 + }
  1325 + }
  1326 + arr[k].show_can_cx = show_can_cx1;
1297 1327 },2)
1298 1328 } else {
1299 1329 var show_can_cx = this.data.cartlist[k].show_can_cx;
... ... @@ -1314,13 +1344,13 @@ Page({
1314 1344 //-- 如果初始活动在计算的时候,是不满足的时候,就要把活动清理掉 --
1315 1345 var is_no_ok=arr[k].show_can_cx[key_o].cur_act.is_no_ok;
1316 1346 if(is_no_ok==1){
1317   - item1.prom_id = 0;
1318   - item1.prom_type = 0;
  1347 + item1.prom_id = 0;
  1348 + item1.prom_type = 0;
1319 1349  
1320   - //这里要判断一下活动的最后一个商品,is_act_last
1321   - if(th.is_last(item1.goods_id,arr[k].goods,arr[k].show_can_cx[key_o].ch_map)){
1322   - item1.is_act_last=1; //这个是要在前端显示按钮切换的
1323   - }
  1350 + //这里要判断一下活动的最后一个商品,is_act_last
  1351 + if(th.is_last(item1.goods_id,arr[k].goods,arr[k].show_can_cx[key_o].ch_map)){
  1352 + item1.is_act_last=1; //这个是要在前端显示按钮切换的
  1353 + }
1324 1354  
1325 1355 }
1326 1356 }
... ... @@ -1331,14 +1361,17 @@ Page({
1331 1361 if (item1.prom_type == 3 && item1.is_gift != 1 && !item1.whsle_id) {
1332 1362 // th.check_is_youhui(item1.goods_id, item1.pick_id);
1333 1363 //增加优惠活动次数限制
1334   - let limit_num = await th.getprom(item1) //活动限制次数
  1364 + let limit_num = th.getprom(item1) //活动限制次数
1335 1365  
1336 1366 if (!limit_num) {
1337 1367 await th.add_prom_goods_map(item1);
1338 1368 // item1.prom_id=''
1339 1369 // item1.prom_type=''
1340 1370 } else {
  1371 +
1341 1372 let user_pre_buynum = await th.getUserBuyPromNum_pre(item1.prom_id) //用户已经参与次数
  1373 +
  1374 +
1342 1375 if (user_pre_buynum < limit_num) {
1343 1376 await th.add_prom_goods_map(item1);
1344 1377 } else {
... ... @@ -1431,7 +1464,7 @@ Page({
1431 1464  
1432 1465 } else {
1433 1466  
1434   -
  1467 +
1435 1468 item1.act = th.data.zhhe_act_map[item1.prom_id];
1436 1469 }
1437 1470 }
... ... @@ -1511,29 +1544,48 @@ Page({
1511 1544 //如果是秒杀,团购的时候,优惠促销和搭配购的时候
1512 1545 if([1,2,3,5,6,7,10].indexOf(item1.prom_type)>-1){
1513 1546  
  1547 + //由于是购物车购买,所以prom_type 基本不会员等于6
1514 1548 if(item1.prom_type==1 || item1.prom_type==6) {
1515 1549 item1.is_quan=0;
1516 1550 }
1517   -
1518   - var url= "/api/weshop/activitylist/getSJGoodsPriceNew/" + os.stoid
1519   - + "/" + item1.goods_id + "/"+item1.prom_type+"/" + item1.prom_id + "/" + app.globalData.user_id;
1520   - await app.request.promiseGet(url,{}).then(res=>{
1521   - if(res.data.code==0){
1522   - console.log(res.data.data,"111");
1523   - //组合促销有另外一个字段名is_orderyh,在控制订单促销的叠加
1524   -
  1551 + let t_goodsActinfo=item1.goodsActinfo;
  1552 + if(t_goodsActinfo && t_goodsActinfo.length){
  1553 + let ff_prom=t_goodsActinfo.find(function (e){
  1554 + return e.prom_type==item1.prom_type;
  1555 + })
  1556 + if(ff_prom){
1525 1557 if(item1.prom_type!=7 && item1.prom_type!=10) {
1526   - item1.is_order_yh=res.data.data.is_order_yh;
  1558 + item1.is_order_yh=ff_prom.is_order_yh;
1527 1559 }else item1.is_order_yh=0;
1528 1560  
1529   - item1.is_post_temp=res.data.data.is_post_temp;
  1561 + item1.is_post_temp=ff_prom.is_post_temp;
1530 1562  
  1563 + //由于是购物车购买,所以prom_type 基本不会员等于6
1531 1564 if(item1.prom_type==1 || item1.prom_type==6) {
1532   - item1.is_quan=res.data.data.is_quan;
  1565 + item1.is_quan=item1.cartActinfo.is_quan;
1533 1566 }
1534   -
1535 1567 }
1536   - })
  1568 + }
  1569 +
  1570 + // var url= "/api/weshop/activitylist/getSJGoodsPriceNew/" + os.stoid
  1571 + // + "/" + item1.goods_id + "/"+item1.prom_type+"/" + item1.prom_id + "/" + app.globalData.user_id;
  1572 + // await app.request.promiseGet(url,{}).then(res=>{
  1573 + // if(res.data.code==0){
  1574 + // console.log(res.data.data,"111");
  1575 + // //组合促销有另外一个字段名is_orderyh,在控制订单促销的叠加
  1576 + //
  1577 + // if(item1.prom_type!=7 && item1.prom_type!=10) {
  1578 + // item1.is_order_yh=res.data.data.is_order_yh;
  1579 + // }else item1.is_order_yh=0;
  1580 + //
  1581 + // item1.is_post_temp=res.data.data.is_post_temp;
  1582 + //
  1583 + // if(item1.prom_type==1 || item1.prom_type==6) {
  1584 + // item1.is_quan=res.data.data.is_quan;
  1585 + // }
  1586 + //
  1587 + // }
  1588 + // })
1537 1589 }
1538 1590  
1539 1591 }
... ... @@ -1556,17 +1608,17 @@ Page({
1556 1608 goods_num: item[c].goods_num,
1557 1609 prom_type: item[c].prom_type,
1558 1610 prom_id: item[c].prom_id,
1559   -
1560   - }
1561   - let req_d1 = {
1562   - user_id: getApp().globalData.user_id, goods_ids: [hr], store_id: os.stoid
1563 1611 }
  1612 + //单个就不调用了
  1613 + // let req_d1 = {
  1614 + // user_id: getApp().globalData.user_id, goods_ids: [hr], store_id: os.stoid
  1615 + // }
  1616 + // await getApp().request.promisePost("/api/weshop/order/getrebateSum", {
  1617 + // is_json: 1, data: req_d1
  1618 + // }).then(grs => {
  1619 + // if (grs.data.code == 0) item[c].use_commission = grs.data.data;
  1620 + // });
1564 1621  
1565   - await getApp().request.promisePost("/api/weshop/order/getrebateSum", {
1566   - is_json: 1, data: req_d1
1567   - }).then(grs => {
1568   - if (grs.data.code == 0) item[c].use_commission = grs.data.data;
1569   - });
1570 1622 commission_gds.push(hr);
1571 1623 }
1572 1624 }
... ... @@ -1662,12 +1714,37 @@ Page({
1662 1714 }
1663 1715 }
1664 1716 }
1665   -
1666 1717 //深拷贝
1667 1718 th.data.old_cartlist = JSON.parse(JSON.stringify(arr));
1668   - th.setData({
1669   - cartlist: arr,
1670   - });
  1719 +
  1720 + th.data.cartlist=arr;
  1721 +
  1722 + //-- 大于20使用逐步渲染 --
  1723 + if(arr.length>10){
  1724 + for (let ib = 0; ib <arr.length ; ib++) {
  1725 + //-- 都用深拷贝 --
  1726 + var ite=ut.deep_cp(th.data.old_cartlist[ib]);
  1727 + delete ite.goods;
  1728 + var txt0="cartlist["+ib+"]";
  1729 + th.setData({
  1730 + [txt0]:ite
  1731 + })
  1732 + //都用深拷贝
  1733 + var tt_goods=ut.deep_cp(th.data.old_cartlist[ib].goods);
  1734 + for (let iz = 0; iz <tt_goods.length;iz++) {
  1735 + var txt="cartlist["+ib+"].goods["+iz+"]";
  1736 + setTimeout(()=>{
  1737 + th.setData({
  1738 + [txt]:tt_goods[iz]
  1739 + })
  1740 + },ib*200+iz*300+100)
  1741 + }
  1742 + }
  1743 + }else{
  1744 + th.setData({
  1745 + cartlist: arr,
  1746 + });
  1747 + }
1671 1748  
1672 1749 //--- 获取一下看有没有优惠券 ----
1673 1750 setTimeout(function () {
... ... @@ -1684,6 +1761,7 @@ Page({
1684 1761 }, 500)
1685 1762 },
1686 1763  
  1764 +
1687 1765 //-----单个商品购买的入口判断----
1688 1766 get_buy_goods: function (e) {
1689 1767 var th = this;
... ... @@ -2202,60 +2280,68 @@ Page({
2202 2280 }
2203 2281 },
2204 2282  
  2283 +
2205 2284 //-- 立即购买的时候,获取商品优惠活动,is_state判断是不是单个商品购买,
2206 2285 // 很多活动需要判断会员的plus等级, 权益登陆,user_id调用接口是必须的 --
2207 2286 //先用着,后面会用接口来代替
2208   - async buy_pro_group(item1, is_state) {
2209   - //-- 代发商品不参与任何活动 --
2210   - if (item1.whsle_id) return false;
2211   - if (item1.is_gift) return false;
2212   - if (item1.is_collocation) return false;
2213   - if (item1.is_ld_split) return false; //是阶梯
2214   - if (item1.is_zh_split) return false;
2215   -
2216   - //-- 购物车的秒杀和团购不计算 --
2217   - var p_type=parseInt(item1.prom_type);
2218   - if([1,2].indexOf(p_type)>-1) return false;
2219   -
  2287 + async buy_pro_group(g_arr,carr) {
2220 2288 var th=this;
2221   - var req_d = {
2222   - store_id: os.stoid,
2223   - user_id: getApp().globalData.user_id,
2224   - goods_id: item1.goods_id,
2225   - goods_num: item1.goods_num,
2226   - goods_price: item1.goods_price,
2227   - }
2228   - //--- 调用接口获取活动 ---
2229   - await getApp().promiseGet('/api/weshop/goods/getGoodsPromInfo', {data:req_d}).then(res => {
2230   - if(res.data.code==0){
2231   - var more_cx=res.data.data.more_cx;
2232   - for(var i=0;i<more_cx.length;i++){
2233   - if(more_cx[i].prom_type==5){
2234   - more_cx[i].main_gid= more_cx[i].collocation.main_goods_id;
2235   - var min=more_cx[i].collocation_main_price+more_cx[i].collocation_min_price;
2236   - var max=more_cx[i].collocation_main_price+more_cx[i].collocation_max_price;
2237   - more_cx[i].show_price="¥"+min+"-"+max;
2238   - }
2239   - }
2240   - item1.more_cx=more_cx;
2241   -
2242   - if(res.data.data.zh_pro){
2243   - th.data.zhhe_act_map[res.data.data.zh_pro.id]=res.data.data.zh_pro;
2244   - }
2245   - if(res.data.data.ladder_pro){
2246   - var ladder_pro=res.data.data.ladder_pro;
2247   - th.data.ladder_map[ladder_pro.id]=ladder_pro;
2248   - var fd=res.data.data.more_cx.find(function (e){
2249   - return e.prom_type==10;
2250   - })
2251   - if(fd){
2252   - th.data.ladder_map[ladder_pro.id].ladder_list=fd.ladder_list;
2253   - }
  2289 + //获取商品参与的促销活,优惠促,搭配促,组合促,阶梯促销
  2290 + let cx_rs= await getApp().request.promisePost("/api/weshop/cart/listGoodsPromInfo",{
  2291 + is_json:1,
  2292 + data:{
  2293 + user_id:app.globalData.user_id,
  2294 + store_id:oo.stoid,
  2295 + goods:g_arr,
  2296 + }
  2297 + });
  2298 + //-- 判断返回结果有没有正确,有促销活动就要进行赋值 --
  2299 + if(cx_rs && cx_rs.data.code==0 && cx_rs.data.data && cx_rs.data.data.goods) {
  2300 + let g_list=cx_rs.data.data.goods;
  2301 + for (var ia = 0; ia < carr.length; ia++) {
  2302 + if (carr[ia].whsle_id) continue; //代发商品不进行赋值
  2303 + if (carr[ia].is_gift) continue; //赠品不进行赋值
  2304 + //有参与秒,团购之类的活动不进行赋值
  2305 + if([1, 2, 4, 6, 8, 9].indexOf(carr[ia].prom_type)> -1 ) continue;
  2306 + //再g_list中快速查找
  2307 + let i_fd=g_list.find(function (ele) {
  2308 + return ele.goods_id == carr[ia].goods_id
  2309 + });
  2310 + if(i_fd.goodsPromInfoRespDto){
  2311 + //-- 多促销活动的优化 --
  2312 + i_fd=i_fd.goodsPromInfoRespDto;
  2313 + //-- 赋值多促销活动的优化--
  2314 + carr[ia].more_cx=i_fd.more_cx;
  2315 +
  2316 + //商品优惠促销的缓存
  2317 + if (i_fd.yhcx_pro) {
  2318 + th.data.yhcx_act_map[i_fd.yhcx_pro.id] = i_fd.yhcx_pro;
  2319 + }
  2320 + //商品组合促销的缓存
  2321 + if (i_fd.zh_pro) {
  2322 + th.data.zhhe_act_map[i_fd.zh_pro.id] = i_fd.zh_pro;
  2323 + }
  2324 + //商品阶梯促销的缓存
  2325 + if (i_fd.ladder_pro) {
  2326 + var ladder_pro = i_fd.ladder_pro;
  2327 + th.data.ladder_map[ladder_pro.id] = ladder_pro;
  2328 + var fd_ite = i_fd.more_cx.find(function (e) {
  2329 + return e.prom_type == 10;
  2330 + })
  2331 + if (fd_ite) {
  2332 + th.data.ladder_map[ladder_pro.id].ladder_list = fd_ite.ladder_list;
2254 2333 }
2255   - }
2256   - })
  2334 + }
  2335 +
  2336 + }
  2337 +
  2338 + }
  2339 + }
2257 2340 },
2258 2341  
  2342 +
  2343 +
  2344 +
2259 2345 //---------------检查是否有收货地址-------------------
2260 2346 checkAddressList: function () {
2261 2347 var t = this;
... ... @@ -2395,10 +2481,10 @@ Page({
2395 2481  
2396 2482 ord_goods.splice(pos+1,0,newd);
2397 2483 th.data.old_cartlist[i].goods.splice(pos2+1,0,newd);
2398   -
2399 2484 var txt9 = "cartlist[" + i + "].goods";
2400 2485 th.setData({ [txt9]: ord_goods })
2401 2486  
  2487 +
2402 2488 }
2403 2489  
2404 2490 }
... ... @@ -3643,7 +3729,7 @@ Page({
3643 3729 }
3644 3730  
3645 3731  
3646   - if (th.data.cart_use_commission) {
  3732 + if (th.data.cart_use_commission && cart_item.can_usecommise) {
3647 3733 cart_item.order_amount -= cart_item.can_usecommise;
3648 3734 }
3649 3735  
... ... @@ -5500,7 +5586,6 @@ Page({
5500 5586 })
5501 5587 // pdata.keyid = th.data.bn_goods.keyid
5502 5588 }
5503   - // debugger
5504 5589 var str = JSON.stringify(pdata);
5505 5590  
5506 5591  
... ... @@ -6610,25 +6695,26 @@ Page({
6610 6695 }).then(res => {
6611 6696 if (res.data.code == 0) {
6612 6697 var quan_list = res.data.data.pageData;
6613   - arr[ind].quan_list = th.check_is_frozenQuan(quan_list, th.data.frozenQuan);
  6698 + //arr[ind].quan_list = th.check_is_frozenQuan(quan_list, th.data.frozenQuan);
  6699 + quan_list= th.check_is_frozenQuan(quan_list, th.data.frozenQuan);
  6700 + var set_txt = "cartlist[" + ind + "].quan_list";
  6701 + th.setData({
  6702 + [set_txt]:quan_list
  6703 + })
6614 6704 }
6615 6705 })
6616 6706 }
6617   -
6618   -
6619 6707 }
6620 6708  
6621 6709  
6622   -
6623   -
6624 6710 //如果是搭配购的立即购买的时候
6625 6711 if (th.data.is_b_now) {
6626 6712 if (arr && arr.length > 0) {
6627 6713 var quanlist = arr[0].quan_list;
6628   - th.setData({ selected_quan_list: quanlist, cartlist: arr })
  6714 + th.setData({ selected_quan_list: quanlist })
6629 6715 }
6630 6716 } else {
6631   - th.setData({ cartlist: arr })
  6717 + //th.setData({ cartlist: arr })
6632 6718 th.set_can_num();
6633 6719 }
6634 6720  
... ... @@ -6888,6 +6974,12 @@ Page({
6888 6974 },
6889 6975 //优惠促销用户参与次数
6890 6976 async getUserBuyPromNum_pre(prom_id){
  6977 +
  6978 + //如果有缓存的数据,就用缓存的数据
  6979 + if(this.data.in_yhact[prom_id] && this.data.in_yhact[prom_id].buyed!=undefined){
  6980 + let user_pre_buynum=this.data.in_yhact[prom_id].buyed;
  6981 + return user_pre_buynum;
  6982 + }
6891 6983 var userInfo = getApp().globalData.userInfo;
6892 6984 var url = `/api/weshop/ordergoods/getUserBuyPromNum?is_all=1&store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=3&prom_id=${prom_id}`;
6893 6985 let res = await getApp().request.promiseGet(url, {
... ... @@ -6899,25 +6991,38 @@ Page({
6899 6991 }
6900 6992 return user_pre_buynum
6901 6993 },
  6994 +
  6995 +
6902 6996 //获取优惠活动
6903   - async getprom(item){
6904   -
  6997 + getprom(item){
  6998 +
6905 6999 let prom_id=item.prom_id
6906 7000 let pickup_id=item.pick_id
6907 7001 let limit_num=0
6908   - await getApp().request.promiseGet("/api/weshop/promgoods/get/" + oo.stoid + "/" + prom_id, {}).then(res => {
6909   - if (res.data.code == 0) {
6910   - let prom = res.data.data;
6911   - limit_num =prom.limit_num
6912   - let yh_is_xz_yh=this.data.yh_is_xz_yh
6913   - yh_is_xz_yh[pickup_id]=prom.is_xz_yh
6914   - this.setData({
6915   - ['yh_is_xz_yh']:yh_is_xz_yh
6916   - })
6917   - }
6918   - })
  7002 + //不再调用接口活动优惠促销活动的内容
  7003 + // await getApp().request.promiseGet("/api/weshop/promgoods/get/" + oo.stoid + "/" + prom_id, {}).then(res => {
  7004 + // if (res.data.code == 0) {
  7005 + // let prom = res.data.data;
  7006 + // limit_num =prom.limit_num
  7007 + // let yh_is_xz_yh=this.data.yh_is_xz_yh
  7008 + // yh_is_xz_yh[pickup_id]=prom.is_xz_yh
  7009 + // this.setData({
  7010 + // ['yh_is_xz_yh']:yh_is_xz_yh
  7011 + // })
  7012 + // }
  7013 + // })
  7014 + if(this.data.yhcx_act_map[prom_id]){
  7015 + let prom = this.data.yhcx_act_map[prom_id];
  7016 + limit_num =prom.limit_num
  7017 + let yh_is_xz_yh=this.data.yh_is_xz_yh
  7018 + yh_is_xz_yh[pickup_id]=prom.is_xz_yh
  7019 + this.setData({
  7020 + ['yh_is_xz_yh']:yh_is_xz_yh
  7021 + })
  7022 + }
6919 7023 return limit_num
6920 7024 },
  7025 +
6921 7026 //--检查订单优惠--
6922 7027 check_is_order_prom: function (condition, func, pick) {
6923 7028 var th = this;
... ... @@ -6971,10 +7076,11 @@ Page({
6971 7076  
6972 7077 } else {
6973 7078 var prom = null;
6974   -
6975   - await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + item.prom_id, {}).then(res => {
6976   - if (res.data.code == 0) {
6977   - prom = res.data.data;
  7079 +
  7080 +
  7081 + if(th.data.yhcx_act_map[item.prom_id]){
  7082 +
  7083 + prom = th.data.yhcx_act_map[item.prom_id];
6978 7084  
6979 7085 let min_value = 0
6980 7086 if (prom && prom.is_xz_yh) {
... ... @@ -7001,7 +7107,8 @@ Page({
7001 7107 }
7002 7108 }
7003 7109 }
7004   - })
  7110 +
  7111 + if(!prom) return false;
7005 7112 var ob = {};
7006 7113 ob.prom_id = item.prom_id;
7007 7114 ob.name = prom.name;
... ... @@ -7033,11 +7140,9 @@ Page({
7033 7140 } else {
7034 7141 var ob = {};
7035 7142 var prom = null;
7036   -
7037   - await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + item.prom_id, {}).then(res => {
7038   - if (res.data.code == 0) {
7039   - prom = res.data.data;
7040 7143  
  7144 + if(th.data.yhcx_act_map[item.prom_id]){
  7145 + prom = th.data.yhcx_act_map[item.prom_id];
7041 7146 let min_value = 0
7042 7147 if (prom && prom.is_xz_yh) {
7043 7148 let arr = prom.promGoodsList || []
... ... @@ -7063,9 +7168,8 @@ Page({
7063 7168 }
7064 7169 }
7065 7170 }
7066   - })
7067   -
7068 7171  
  7172 + if(!prom) return false;
7069 7173 //优惠促销取价的优化
7070 7174 let f_price=item.goods_price;
7071 7175  
... ... @@ -8068,8 +8172,8 @@ Page({
8068 8172  
8069 8173 //有改,都强制把券选择清理一下
8070 8174 var pickup_id = this.data.cartlist[cart_index].pickup_id;
8071   - var txt='using_quan['+pickup_id+']';
8072   - th.setData({[txt]:null});
  8175 + var txt1='using_quan['+pickup_id+']';
  8176 + th.setData({[txt1]:null});
8073 8177  
8074 8178 //-- 如果是选中 --
8075 8179 if (e.selected) {
... ... @@ -8119,6 +8223,28 @@ Page({
8119 8223 }
8120 8224 }
8121 8225  
  8226 + //promise_get. 看一下有没有指定门店的限制
  8227 + let gd=null
  8228 + let gd_rs= await getApp().promiseGet('/api/weshop/goods/get/' + os.stoid + "/" + item.goods_id,{})
  8229 + if(gd_rs && gd_rs.data.code==0 && gd_rs.data.data){
  8230 + gd=gd_rs.data.data;
  8231 + }
  8232 +
  8233 + if(gd.pick_group_ids){
  8234 + var idx0=gd.pick_up_lists.findIndex(function (e){
  8235 + return e.pickup_id==pickup_id;
  8236 + })
  8237 + if(idx0<0){
  8238 + wx.showToast({
  8239 + title: item.goods_name+"的门店不可售",
  8240 + icon: 'none',
  8241 + duration: 2000
  8242 + })
  8243 + return false;
  8244 + }
  8245 + }
  8246 +
  8247 +
8122 8248 var bn_coll = th.selectComponent("#col"+cart_index); //组件的id
8123 8249 bn_coll.set_sele(index);
8124 8250  
... ... @@ -8283,6 +8409,7 @@ Page({
8283 8409 pro_pop.set_init(1,cp_arr);
8284 8410 },
8285 8411  
  8412 +
8286 8413 //--- 选择回来时候的选择 ---
8287 8414 sure_cx_group:function(e){
8288 8415 var th=this;
... ... @@ -8291,8 +8418,10 @@ Page({
8291 8418 //-- 获取到当前的show_can_cx--
8292 8419 var idx=this.data.sele_cx_group_cidx;
8293 8420 var gd_key= this.data.cx_group_gd_key;
8294   - var cx_prom_group=this.data.cartlist[idx].show_can_cx[gd_key].act_arr;
8295 8421 var pk=this.data.cartlist[idx].pickup_id;
  8422 + var cx_prom_group2= th.data.show_can_cx_map[pk][gd_key].act_arr;
  8423 +
  8424 + var cx_prom_group=this.data.cartlist[idx].show_can_cx[gd_key].act_arr;
8296 8425  
8297 8426 th.setData({
8298 8427 send_lb:{},
... ... @@ -8311,12 +8440,18 @@ Page({
8311 8440 //如果活动不是选择的
8312 8441 if(cx_prom_group[dx].prom_type!=sele_prom_type) cx_prom_group[dx].sele=0;
8313 8442 else cx_prom_group[dx].sele=1;
  8443 +
  8444 + if(cx_prom_group2[dx].prom_type!=sele_prom_type) cx_prom_group2[dx].sele=0;
  8445 + else cx_prom_group2[dx].sele=1;
8314 8446 }
8315 8447 //选择后就要把活动确定下来
8316 8448 //确定一下活动,先看一下有没有选择的活动
8317 8449 var ck_prom_type=cx_prom_group.find(function (el){
8318 8450 return el.sele;
8319 8451 })
  8452 + var ck_prom_type2=cx_prom_group2.find(function (el){
  8453 + return el.sele;
  8454 + })
8320 8455  
8321 8456 this.cx_check_ok2(function (ck_res){
8322 8457  
... ... @@ -8324,20 +8459,19 @@ Page({
8324 8459 th.data.cartlist[idx].show_can_cx[gd_key].sele_prom_type=ck_prom_type.prom_type;
8325 8460 th.data.cartlist[idx].show_can_cx[gd_key].cur_act=ck_prom_type;
8326 8461  
8327   -
8328 8462 var goods0= JSON.parse(JSON.stringify(th.data.cartlist_y));
8329 8463 var goods=[];
8330 8464 for(var ik=0;ik<goods0.length;ik++){
8331   - var item_c=goods0[ik];
8332   - if(item_c.pick_id==pk && item_c.is_collocation) continue;
8333   - goods.push(item_c);
  8465 + var item_c=goods0[ik];
  8466 + if(item_c.pick_id==pk && item_c.is_collocation) continue;
  8467 + goods.push(item_c);
8334 8468 }
8335 8469  
8336 8470 //-- 此时要把购物车中的商品确定活动 --
8337   - for (var b=0; b<ck_prom_type.goods.length;b++){
  8471 + for (var b=0; b<ck_prom_type2.goods.length;b++){
8338 8472 //-- 开始查找 --
8339 8473 var fg=goods.findIndex(function (g_item){
8340   - return g_item.goods_id==ck_prom_type.goods[b].goods_id
  8474 + return g_item.goods_id==ck_prom_type2.goods[b].goods_id
8341 8475 && [0,3,5,7,10].indexOf(g_item.prom_type)>-1
8342 8476 && g_item.pick_id==pk && g_item.is_gift==0;
8343 8477 })
... ... @@ -8352,10 +8486,10 @@ Page({
8352 8486 }
8353 8487  
8354 8488 for(var ik=0;ik< th.data.cartlist[idx].goods.length;ik++){
8355   - if(th.data.cartlist[idx].goods[ik].id==goods[fg].id){
8356   - th.data.cartlist[idx].goods[ik].prom_type= goods[fg].prom_type;
8357   - th.data.cartlist[idx].goods[ik].prom_id= goods[fg].prom_id;
8358   - }
  8489 + if(th.data.cartlist[idx].goods[ik].id==goods[fg].id){
  8490 + th.data.cartlist[idx].goods[ik].prom_type= goods[fg].prom_type;
  8491 + th.data.cartlist[idx].goods[ik].prom_id= goods[fg].prom_id;
  8492 + }
8359 8493 }
8360 8494  
8361 8495 //原始数据要有深拷贝不能有地址的牵连
... ... @@ -8502,6 +8636,11 @@ Page({
8502 8636 //--- 不参与优惠促销的开关 ---
8503 8637 no_cj_prom: function (e) {
8504 8638  
  8639 + //重新调用cart_next,进行下一步计算
  8640 + wx.showLoading({
  8641 + title: "处理中.",
  8642 + })
  8643 +
8505 8644 this.setData({
8506 8645 send_lb:{},
8507 8646 month_lb:{},
... ... @@ -8518,6 +8657,9 @@ Page({
8518 8657 let item = this.data.cartlist[pidx].show_can_cx[can_cx_idx]; //促销内容
8519 8658 let pk=this.data.cartlist[pidx].pickup_id; //门店ID
8520 8659  
  8660 + //获取到后台计算多促销的数据
  8661 + var cx_prom_group2= this.data.show_can_cx_map[pk][can_cx_idx].act_arr;
  8662 +
8521 8663 //给no_cj_prom进行赋值
8522 8664 item.no_cj_prom = !item.no_cj_prom ? 1 : 0;
8523 8665 var txt = 'cartlist[' + pidx + '].show_can_cx';
... ... @@ -8525,7 +8667,16 @@ Page({
8525 8667 [txt]: this.data.cartlist[pidx].show_can_cx,
8526 8668 })
8527 8669  
8528   - let ck_prom_type=item.cur_act;
  8670 + //使用深拷贝,生成临时的变量
  8671 + let ck_prom_type= ut.deep_cp(item.cur_act);
  8672 + var f_act=cx_prom_group2.find(function (ite){
  8673 + return ite.prom_type==ck_prom_type.prom_type
  8674 + })
  8675 + if(!ck_prom_type || !f_act){
  8676 + ut.m_toast('未找到活动');
  8677 + }
  8678 + ck_prom_type.goods=f_act.goods;
  8679 +
8529 8680 //处理一下商品
8530 8681 let goods0 = JSON.parse(JSON.stringify(th.data.cartlist_y));
8531 8682 let goods = [];
... ... @@ -8562,14 +8713,18 @@ Page({
8562 8713 }
8563 8714 }
8564 8715  
  8716 + //清理下赠品
  8717 + let n_goods=[];
  8718 + for (let ig = 0; ig <goods.length; ig++) {
  8719 + if(!goods[ig].is_gift){
  8720 + n_goods.push(goods[ig]);
  8721 + }
  8722 + }
8565 8723 //原始数据要有深拷贝不能有地址的牵连
8566   - th.data.cartlist_y = JSON.parse(JSON.stringify(goods))
  8724 + th.data.cartlist_y = JSON.parse(JSON.stringify(n_goods))
  8725 +
8567 8726  
8568 8727  
8569   - //重新调用cart_next,进行下一步计算
8570   - wx.showLoading({
8571   - title: "处理中.",
8572   - })
8573 8728 this.get_cart_next(null, 1, {prom_type: 0, prom_id: 0});
8574 8729  
8575 8730  
... ...
packageE/pages/cart/cart2/cart2.wxml
... ... @@ -122,7 +122,7 @@
122 122  
123 123  
124 124 <!-- 多个活动的时候 -->
125   - <block wx:if="{{item.show_can_cx[items.goods_id].act_arr.length>1}}">
  125 + <block wx:if="{{item.show_can_cx[items.goods_id].act_arr.length>1 && !items.is_gift}}">
126 126 <!-- 组合购和阶梯促销要特殊出来 -->
127 127 <block wx:if="{{item.show_can_cx[items.goods_id].sele_prom_type==7 || item.show_can_cx[items.goods_id].sele_prom_type==10 }}">
128 128  
... ... @@ -171,12 +171,14 @@
171 171 </block>
172 172 </block>
173 173  
174   - <view class="set-mes" wx:if="{{items.prom_type==3 || (items.prom_type==0 && item.show_can_cx[items.goods_id].no_cj_prom) }}">
175   - <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{items.goods_id}}" bindtap='no_cj_prom'>
176   - <icon color="{{!item.show_can_cx[items.goods_id].no_cj_prom?'red':'gray'}}" size="16" type="success"></icon>
177   - <view class="yu_er">参与优惠活动</view>
  174 + <block wx:if="{{!items.is_gift}}">
  175 + <view class="set-mes" wx:if="{{items.prom_type==3 || (items.prom_type==0 && item.show_can_cx[items.goods_id].no_cj_prom && item.show_can_cx[items.goods_id].sele_prom_type==3) }}">
  176 + <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{items.goods_id}}" bindtap='no_cj_prom'>
  177 + <icon color="{{!item.show_can_cx[items.goods_id].no_cj_prom?'red':'gray'}}" size="16" type="success"></icon>
  178 + <view class="yu_er">参与优惠活动</view>
  179 + </view>
178 180 </view>
179   - </view>
  181 + </block>
180 182  
181 183 </block>
182 184  
... ... @@ -210,7 +212,7 @@
210 212 </view>
211 213 </block>
212 214 <block wx:else>
213   - <view class="bdb16" wx:if="{{pitem.is_duo_gd && pitem.act_arr.length>1 && util.check_is_last(index,items.goods_id) }}" >
  215 + <view class="bdb16" wx:if="{{pitem.is_duo_gd && pitem.act_arr.length>1 && util.check_is_last(index,items.goods_id) && !items.is_gift }}" >
214 216 <view bindtap="switch_cx_group"
215 217 data-index="{{pidx}}"
216 218 data-gd_key="{{index}}"
... ... @@ -231,7 +233,8 @@
231 233 </view>
232 234 </block>
233 235  
234   - <view class="set-mes" wx:if="{{pitem.is_duo_gd && pitem.sele_prom_type==3 && util.check_is_last(index,items.goods_id) }}">
  236 +
  237 + <view class="set-mes" wx:if="{{pitem.is_duo_gd && pitem.sele_prom_type==3 && util.check_is_last(index,items.goods_id) && !items.is_gift }}">
235 238 <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{index}}" bindtap='no_cj_prom'>
236 239 <icon color="{{!pitem.no_cj_prom?'red':'gray'}}" size="16" type="success"></icon>
237 240 <view class="yu_er">参与优惠活动</view>
... ... @@ -563,7 +566,6 @@
563 566 </view>
564 567 </block>
565 568  
566   -
567 569 <block wx:if="{{collocation_goods}}">
568 570 <!-- 搭配购买的功能实现 -->
569 571 <view class="order-detail" wx:for="{{collocation_goods}}">
... ...
packageF/pages/team/team_more/team_more.js
... ... @@ -193,7 +193,7 @@ Page({
193 193 //还未支付
194 194 if (odr.pt_status == 0 && odr.order_status == 1) {
195 195 wx.navigateTo({
196   - url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
  196 + url: "/packageG/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
197 197 });
198 198 }else if (odr.pt_status == 1 && odr.order_status == 1){
199 199 wx.navigateTo({
... ...
packageG/pages/team/team_show/team_show.js
... ... @@ -499,7 +499,7 @@ Page({
499 499 //还未支付
500 500 if (odr.pt_status == 0 && odr.order_status == 1) {
501 501 wx.navigateTo({
502   - url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
  502 + url: "/packageG/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
503 503 });
504 504 is_ok=0;
505 505 }else if (odr.pt_status == 1 && odr.order_status == 1){
... ...
packageG/pages/user/order_detail/order_detail.js 0 → 100644
  1 +var e = getApp(), r = e.request,rq=r,t = require("../../../../utils/util.js"), o = require("../../../../utils/common.js"),oo=e.globalData,os=oo.setting;
  2 +var regeneratorRuntime = require('../../../../utils/runtime.js');
  3 +var ut= require('../../../../utils/util.js');
  4 +var py = require("../../../../utils/pay.js");
  5 +
  6 +
  7 +Page({
  8 + data: {
  9 + url: os.url,
  10 + resourceUrl: os.imghost,
  11 + iurl: os.imghost,
  12 + order: null,
  13 + optionIsGoup: !1,
  14 + user_note: "",
  15 + conf:null,
  16 + },
  17 + onLoad: function(e) {
  18 +
  19 + if(e.transfer){
  20 + let obj=getApp().globalData.ts_trans_data;
  21 + e= JSON.parse(JSON.stringify(obj));
  22 + getApp().globalData.ts_trans_data=null;
  23 + }
  24 +
  25 + //定义第一次进入
  26 + this.data.fir_in=1;
  27 +
  28 + var th=this;
  29 + var r = void 0 !== e.isGoup && e.isGoup;
  30 +
  31 + getApp().getConfig2(function (e) {
  32 +
  33 + th.setData({conf: e,sales_rules:e.sales_rules, userInfo: getApp().globalData.userInfo});
  34 + //--- 看后台是不是有开通等级卡 ---
  35 + if(e.switch_list){
  36 + var s_list=JSON.parse(e.switch_list);
  37 + th.setData({sys_switch: s_list,appoint_pick_keyid:s_list.appoint_pick_keyid});
  38 + var is_open_offline=s_list.is_pricing_open;
  39 + var user=getApp().globalData.userInfo;
  40 + //如果后台有开启等级价的功能
  41 + if(parseInt(s_list.rank_switch)==2 && user['card_expiredate']){
  42 + var str = user['card_expiredate'].replace(/-/g, '/');
  43 + var end = new Date(str);
  44 + end = Date.parse(end) / 1000;
  45 + var now = ut.gettimestamp();
  46 + //--- 判断是等级会员,且在有效期范围内 ---
  47 + if(user.card_field && now<end){
  48 + th.setData({card_field:user.card_field})
  49 + }
  50 + }
  51 + //-- 判断有没有过期 --
  52 + getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=6",{}).then(res=>{
  53 + //未购买
  54 + if(res.data.code!=0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length){
  55 + is_open_offline=0;
  56 + }else{
  57 + //已经过期
  58 + var item=res.data.data.pageData[0];
  59 + if(item.end_time<ut.gettimestamp()){
  60 + is_open_offline=0;
  61 + }
  62 + }
  63 +
  64 + th.data.is_open_offline=is_open_offline;
  65 + })
  66 +
  67 + }
  68 + },1)
  69 +
  70 + this.setData({
  71 + optionIsGoup: r
  72 + }), this.requestOrderDetail(e.order_id), wx.removeStorageSync("order:order_detail:update");
  73 + },
  74 + onShow: function() {
  75 +
  76 + var th=this;
  77 + this.setData({paying:0});
  78 +
  79 + //判断是不是第一次进入
  80 + if(this.data.fir_in){
  81 + this.data.fir_in=0;
  82 + }else{
  83 + //富友支付
  84 + ut.fy_back('',0)
  85 + py.set_fir();
  86 +
  87 + //通联第三方
  88 + //-- 通联的第三方支付的返回优化 --
  89 + ut.is_pay_ok(th.data.ok_order_sn,"back","none",function (){
  90 + getApp().request.promiseGet("/api/weshop/order/page",
  91 + {data:{store_id:os.stoid,order_sn:th.data.ok_order_sn}}).then(res=>{
  92 + if(ut.ajax_ok(res)){
  93 + var item=res.data.data.pageData[0];
  94 + if(item.pay_status==1){
  95 + //支付支付,返回首页
  96 + ut.m_toast('支付成功');
  97 + setTimeout(()=>{
  98 + wx.navigateBack();
  99 + },1000)
  100 +
  101 + }else{
  102 + //支付支付,返回首页
  103 + ut.m_toast('支付失败');
  104 + setTimeout(()=>{
  105 + wx.navigateBack();
  106 + },1000)
  107 + }
  108 + }
  109 + })
  110 + });
  111 + }
  112 +
  113 + wx.getStorageSync("order:order_detail:update") && (wx.removeStorageSync("order:order_detail:update"),
  114 + this.requestOrderDetail(this.data.order.order_id));
  115 + },
  116 + requestOrderDetail: function(e) {
  117 + var o = this,oid=e,th=this;
  118 + r.get(o.data.url + "/api/weshop/order/get/"+os.stoid+"/"+e, {
  119 + success: async function(e) {
  120 + var r = e.data.data;
  121 + r.addTimeFormat = t.format(r.add_time);
  122 + if (r.order_status == 0 && r.pay_status==0 ){
  123 + r.order_status_detail="待支付"; r.pay_btn=1;
  124 + }
  125 + if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status== 0)
  126 + //自提的话
  127 + if (r.exp_type==1)
  128 + {
  129 + r.order_status_detail = "待自提";
  130 + }
  131 + else
  132 + {
  133 + r.order_status_detail = "待发货";
  134 + }
  135 +
  136 + if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status == 1){
  137 + r.order_status_detail = "待收货";r.receive_btn=1;
  138 + if (r.exp_type == 0) r.shipping_btn=1;
  139 + }
  140 + if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status == 2){
  141 + r.order_status_detail = "待收货"; r.receive_btn = 1;
  142 + if (r.exp_type == 0) r.shipping_btn = 1;
  143 + }
  144 + if (r.order_status == 2){
  145 + r.order_status_detail = "待评价"; if (r.exp_type == 0) r.shipping_btn = 1;
  146 + }
  147 + if (r.order_status == 3)
  148 + r.order_status_detail = "已取消";
  149 + if (r.order_status == 4){
  150 + r.order_status_detail = "已完成"; if (r.exp_type == 0) r.shipping_btn = 1;
  151 + }
  152 + if (r.order_status == 5)
  153 + r.order_status_detail = "已作废";
  154 + if (r.order_status == 6)
  155 + r.order_status_detail = "退款完成";
  156 + if (r.pt_status == 1 && r.pt_prom_id>0)
  157 + r.order_status_detail = "组团中";
  158 +
  159 +
  160 + r['is_all_return'] = 0;
  161 +
  162 + var discount_price=r['discount_amount'];
  163 + var dis_json=r['prom_pt_json'];
  164 +
  165 + if(dis_json && discount_price){
  166 + var prom_pt_json=JSON.parse(dis_json);
  167 + var ladder_amount=0;
  168 + for (var ll_item of prom_pt_json) {
  169 + if(ll_item['ladder_prom_id']){
  170 + ladder_amount += ll_item['dis'];
  171 + }
  172 + }
  173 + r['ladder_amount']=ladder_amount;
  174 + r['discount_amount']=Math.floor((discount_price-ladder_amount)*100)/100;
  175 + }
  176 +
  177 +
  178 + r.use_commission=0;
  179 + //-- 如果有数据的话 --
  180 + await getApp().request.promiseGet("/api/weshop/orderMore/get/"+os.stoid + "/"+r.order_sn, {
  181 +
  182 + }).then(res=>{
  183 + if(res.data.code == 0 && res.data.data){
  184 + r.use_commission=res.data.data.use_commission;
  185 + r.pre_cut=res.data.data.pre_cut; //预存款
  186 + r.pre_json=res.data.data.pre_json; //预存款
  187 + r.is_user_no_yhcx = res.data.data.is_user_no_yhcx; //判断订单是不是优惠促销不参与
  188 + }
  189 + })
  190 +
  191 +
  192 + //------获取订单商品-------
  193 + rq.get("/api/weshop/ordergoods/list",{
  194 + data: { store_id: os.stoid, order_id: oid,pageSize:600},
  195 + success:async function (eb) {
  196 + r.order_goods=eb.data.data.pageData;
  197 + var glist = r.order_goods;
  198 + for(var i in glist){
  199 + if(glist[i].is_gift){
  200 + r.is_prom=1;
  201 + }
  202 + }
  203 +
  204 + //------------对比一下有没有退款记录------------
  205 + await getApp().request.promiseGet("/api/weshop/order/returngoods/page",{
  206 + data: { order_id: r.order_id, store_id: os.stoid,
  207 + user_id:oo.user_id, pageSize: 20 }
  208 + }).then(rs=>{
  209 + var ttd=rs;
  210 + //--看一下订单的总数量--
  211 + var gtype_num = r.order_goods.length;
  212 + if(ttd.data.data.pageData == undefined) return false;
  213 + var goodslist = r.order_goods;
  214 +
  215 + //----没有相关的退款记录----
  216 + if (ttd.data.data.total==0){
  217 + r['is_all_return'] = 0;
  218 +
  219 + goodslist.forEach(function (ee, ii) {
  220 + if (r['order_status'] == 1 && r['pay_status'] == 1 && gtype_num>1){
  221 + //是不是可以单个商品退款
  222 + if(th.check_for_return_btn(r) ) {
  223 + goodslist[ii]['return_btn']=1;
  224 + }
  225 + }
  226 + });
  227 + }else{
  228 + //--------整单退--------
  229 + if (ttd.data.data.pageData[0]['goods_id_list'] != null
  230 + && ttd.data.data.pageData[0]['goods_id_list'] != ''){
  231 +
  232 +
  233 + var eea = ttd.data.data.pageData[0];
  234 + //1.退款正在进行中,
  235 + //2.退款被拒绝就要显示可以退款
  236 + //3.退款已经完成
  237 + r['is_all_return']=1;
  238 + r['is_all_return_status'] = ttd.data.data.pageData[0].status;
  239 +
  240 + if (r['order_status'] == 1 && r['pay_status'] == 1) {
  241 + switch (eea.status) {
  242 + case 0:
  243 + case 1:
  244 + r.order_status_detail="退款中";
  245 + r['return_btn'] = 2; break;
  246 + case 2:
  247 + r.order_status_detail="退款完成";
  248 + r['return_btn'] = 4; break;
  249 + case 3:
  250 + r['return_btn'] = 3; break;
  251 + default:
  252 + r['return_btn'] = 0;
  253 + }
  254 + }
  255 + }else{
  256 + //1.退款正在进行中,
  257 + //2.退款被拒绝就要显示可以退款
  258 + //3.退款已经完成
  259 + r['is_all_return'] = 0;
  260 + var rt_ok_num=0;
  261 +
  262 + //if(r['order_status'] == 1 && r['pay_status'] == 1) {
  263 + goodslist.forEach(function (eeb, iii) {
  264 + if(r['order_status'] == 1 && r['pay_status'] == 1)
  265 + goodslist[iii]['return_btn'] = 1; //申请退款
  266 + ttd.data.data.pageData.forEach(function (eea, ii) {
  267 + var st = eea.status;
  268 + if (eea.goods_id == eeb.goods_id){
  269 +
  270 + switch (eea.status){
  271 + case 0:
  272 + case 1://退款处理中
  273 + r['has_rt'] = 1; //有部分退
  274 + goodslist[iii]['return_btn'] = 2; break;
  275 + case 2://退款完成
  276 + r['has_rt'] = 1; //有部分退
  277 + goodslist[iii]['return_btn'] = 4;rt_ok_num++; break;
  278 + case 3://已拒绝,重新退款
  279 + goodslist[iii]['return_btn'] = 3; break;
  280 + default:
  281 + if(r['order_status'] == 1 && r['pay_status'] == 1)
  282 + goodslist[iii]['return_btn'] = 1; //申请退款
  283 + }
  284 + return;
  285 + }
  286 + });
  287 + });
  288 + //}
  289 + }
  290 + }
  291 +
  292 + //--如果是全部退款,也就可以删除--
  293 + if(rt_ok_num==goodslist.length){
  294 + r['is_all_return_status']=2;
  295 + }
  296 + r['order_goods'] = goodslist;
  297 + var g_num = 0;
  298 + goodslist.forEach(function (ee, ii) {
  299 + if(ee.return_btn!=4)
  300 + g_num += ee.goods_num;
  301 + });
  302 + r['g_num'] = g_num;
  303 + })
  304 +
  305 +
  306 + //--------获取门店-----------
  307 + rq.get("/api/weshop/pickup/get/" + os.stoid + "/" + r.pickup_id, {
  308 + success: function (ebb) {
  309 + r.pickname = ebb.data.data.pickup_name;
  310 + o.setData({
  311 + order: r,
  312 + });
  313 + }
  314 + })
  315 +
  316 +
  317 + }
  318 + })
  319 + }
  320 + });
  321 + },
  322 + /*-----联系客户------*/
  323 + contactService: function() {
  324 + getApp().con_Service();
  325 + },
  326 +
  327 + //--------取消订单---------
  328 + cancelOrder: function(e) {
  329 + var t = this,th=t, o = e.currentTarget.dataset.id,order=this.data.order;
  330 + var is_skill=0;
  331 + var order_goods=order.order_goods;
  332 + var is_zsorder=order.is_zsorder;
  333 +
  334 + //--判断是不是秒杀--
  335 + order_goods.forEach(function (val,ind) {
  336 + if(val.prom_type==1){
  337 + is_skill=1; return false;
  338 + }
  339 + })
  340 +
  341 + wx.showModal({
  342 + title: "是否取消订单?",
  343 + success: function(e) {
  344 + if(!e.confirm) return false;
  345 + //如果是秒杀和拼单的商品,取消订单要返回redis,并取消订单
  346 + //if(is_skill==1 || is_zsorder>=2){
  347 + getApp().request.post("/api/weshop/order/cancelOrder/"+os.stoid+"/"+o+"/"+getApp().globalData.user_id,{
  348 + data:{},
  349 + success: function(t) {
  350 + if(t.data.code==0)
  351 + th.requestOrderDetail(o), wx.setStorageSync("order:order_list:update", !0);
  352 + },
  353 + })
  354 + /*----
  355 + }else{
  356 + getApp().request.put("/api/weshop/order/updatebyId", {
  357 + data: {order_id: o, order_status: 3},
  358 + success: function(e) {
  359 + th.requestOrderDetail(o), wx.setStorageSync("order:order_list:update", !0);
  360 + }
  361 + });
  362 + }--*/
  363 + }
  364 + });
  365 + },
  366 +
  367 + //--------确认收货---------
  368 + confirmOrder: function(e) {
  369 + var th=this;
  370 + var t = this, o = this.data.order.order_id,order=this.data.order;
  371 + var is_zsorder=order.is_zsorder;
  372 + wx.showModal({
  373 + title: "是否确认收货?",
  374 + success: function(t) {
  375 + t.confirm && rq.post("/api/weshop/order/confirmOrder/"+os.stoid+"/"+o+"/"+getApp().globalData.user_id,{
  376 + success:function (e) {
  377 + if(e.data.code==0){
  378 + th.requestOrderDetail(o)
  379 + }
  380 + }
  381 + })
  382 + }
  383 + });
  384 + },
  385 +
  386 + //-- 预存款判断 --
  387 + async vipadvancesum(keyid,pre_cut,pre_json){
  388 + let pre=JSON.parse(pre_json)
  389 + let listform=[]
  390 + pre.map(item=>{
  391 + let obj={
  392 + advancesum: item.advancesum,
  393 + advanceitemid: item.advanceitemid
  394 + }
  395 + listform.push(obj)
  396 + })
  397 + let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, {
  398 + data: {
  399 + accdb: getApp().globalData.config.erpid,
  400 + ApiName: 'api.pos.shop.vipadvancesum.list',
  401 + // usercode: "admin",
  402 + vipid: getApp().globalData.userInfo.erpvipid,
  403 + // oddsum: "0",
  404 + // advancesum: cartList.order_amount,
  405 + storageid: keyid,
  406 + listform
  407 + },
  408 + is_json: 1
  409 + })
  410 + return res.data
  411 + },
  412 +
  413 + //--------立即支付----------
  414 + async jumpToCart4(e) {
  415 +
  416 + if(this.data.paying) return false;
  417 + this.setData({paying:1});
  418 +
  419 + var th=this;
  420 + if(this.data.optionIsGoup)
  421 + wx.navigateTo({
  422 + url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true"
  423 + })
  424 + var order=this.data.order;
  425 +
  426 + var order_goods=order.order_goods;
  427 + var user_id=order.user_id;
  428 +
  429 +
  430 + //如果使用预存的话,要重新效验下预存金额是否足够
  431 + if(order.pre_cut && order.pre_json){
  432 + let pickup_id=order.pickup_id
  433 + let res = await r.promiseGet('/api/weshop/pickup/get/' + os.stoid + '/' + pickup_id, {})
  434 + let keyid = res.data.data.keyid
  435 + let resdata = await th.vipadvancesum(keyid,order.pre_cut,order.pre_json)
  436 + if(resdata.code !=0){
  437 + let msg=resdata.msg || "预存金额不足"
  438 + getApp().confirmBox(msg);
  439 + th.setData({ paying: 0 });
  440 + return false;
  441 + }
  442 +
  443 + var listform=[];
  444 + var adv_num=0;
  445 + order_goods.map(ite => {
  446 + //-- 不是赠品的时候 --
  447 + if(!ite.is_gift) {
  448 + let obj = {
  449 + wareno: ite.goods_sn,
  450 + price: ite.first_account, //account是平摊后的实收价格
  451 + qty: ite.goods_num,
  452 + sumprice: parseFloat(ite.account * ite.goods_num - ite.account_yu-(ite.quan_num?ite.quan_num:0)).toFixed(2)
  453 + }
  454 +
  455 + adv_num+=ite.account * ite.goods_num - ite.account_yu-(ite.quan_num?ite.quan_num:0);
  456 + listform.push(obj)
  457 + }
  458 + })
  459 +
  460 + adv_num=parseFloat(adv_num).toFixed(2);
  461 + let res1 = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, {
  462 + data: {
  463 + accdb: getApp().globalData.config.erpid,
  464 + ApiName: 'api.pos.shop.advancesum.seek',
  465 + usercode: "admin",
  466 + vipid: getApp().globalData.userInfo.erpvipid,
  467 + oddsum: "0",
  468 + advancesum: adv_num,
  469 + storageid: keyid,
  470 + listform
  471 + },
  472 + is_json: 1
  473 + })
  474 + if(!res1 && res1.data.code!=0 ){
  475 + getApp().confirmBox("获取预存的金额失败");
  476 + th.setData({ paying: 0 });
  477 + return false;
  478 + }
  479 +
  480 + if(res1.data.data.length<=0){
  481 + getApp().confirmBox("每天每人仅能使用1次预存抵扣");
  482 + th.setData({ paying: 0 });
  483 + return false;
  484 + }
  485 +
  486 + var yck=0
  487 + let resData = res1.data.data
  488 + resData.map(ite => {
  489 + yck += ite.advancesum*1
  490 + })
  491 + if(yck<=0){
  492 + getApp().confirmBox("每天每人仅能使用1次预存抵扣");
  493 + th.setData({ paying: 0 });
  494 + return false;
  495 + }
  496 +
  497 + if(order.pre_cut && yck!=order.pre_cut){
  498 + getApp().confirmBox("获取预存的金额不对");
  499 + th.setData({ paying: 0 });
  500 + return false;
  501 + }
  502 +
  503 +
  504 + }
  505 + // 幸运购检查库存量 api/weshop/activitylist/getActLen/{store_id}/{prom_type}/{prom_id}
  506 + if (parseInt(order_goods['0']['prom_type']) == 9) {
  507 + var aid = order_goods['0']['prom_id'];
  508 + var knum = 0;
  509 + await r.promiseGet('/api/weshop/activitylist/getActLen/' + os.stoid + '/9/' + aid, {
  510 + }).then(res => {
  511 + if (res.data.code == 0) {
  512 + knum = res.data.data;
  513 + }
  514 + });
  515 +
  516 + if (knum <= 0) {
  517 + getApp().confirmBox("库存为0,支付失败");
  518 + th.setData({ paying: 0 });
  519 + return false;
  520 + }
  521 +
  522 +
  523 + }
  524 +
  525 + var wlist = "";
  526 + var the_yh_map={}; //判断那种商品的prom_type为0,正在做的活动是优惠促销
  527 +
  528 +
  529 + var _pick=null;
  530 + //获取商品信息,包含线下商品ID,指定门店销售的信息
  531 + var rh=await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+order.pickup_id, {});
  532 + if(rh && rh.data.code==0){
  533 + _pick=rh.data.data;
  534 + }
  535 +
  536 + for (var i in order_goods) {
  537 + var good = order_goods[i];
  538 +
  539 +
  540 + //线下取价功能已经关闭或者过期
  541 + if (!th.data.is_open_offline && good.offline_cut > 0) {
  542 + wx.showModal({
  543 + title: '提示',
  544 + content: '线下取价功能已经关闭或者过期!'
  545 + });
  546 + th.setData({ paying: 0 });
  547 + return false;
  548 + }
  549 +
  550 + //要每件每件的商品进行检查,看有么有超出库存,超出限购
  551 + var good = order_goods[i], goodsbuynum = 0, promgoodsbuynum = 0, gg = null, presellList = null;
  552 +
  553 + //获取单品的现在的活动状态
  554 + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + good.goods_id, {}).then(res => {
  555 + gg = res.data.data;
  556 + })
  557 +
  558 + //-- 判断门店配送是不是匹配 --
  559 + if(_pick && _pick.distr_type!=0 && gg.distr_type!=0 && _pick.distr_type!= gg.distr_type){
  560 + getApp().confirmBox(gg.goods_name + "配送方式和门店不一致");
  561 + th.setData({ paying: 0 });
  562 + return false;
  563 + }
  564 +
  565 + //-- 要进行判断指定门店的判断优化,先做普通商品 --
  566 + if([0,3,5,7,10].indexOf(parseInt(good.prom_type))>-1 && gg.pick_group_ids && !good.is_gift){
  567 + var idx0=gg.pick_up_lists.findIndex(function (e){
  568 + return e.pickup_id==order.pickup_id;
  569 + })
  570 + if(idx0<0){
  571 + getApp().confirmBox(gg.goods_name + "的门店不可售");
  572 + th.setData({ paying: 0 });
  573 + return false;
  574 + }
  575 + }
  576 +
  577 + var limit = gg.viplimited;
  578 + var store_count = gg.store_count;
  579 + good.erpwareid = gg.erpwareid;
  580 +
  581 + //---要获得商品,该用户买了多少件,同步应用---
  582 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  583 + data: {
  584 + store_id: os.stoid,
  585 + user_id: user_id,
  586 + goods_id: good.goods_id,
  587 + prom_type: good.prom_type,
  588 + prom_id: good.prom_id
  589 + },
  590 + }).then(res => {
  591 + var buy_num_data = res.data.data;
  592 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  593 + goodsbuynum = buy_num_data.goodsbuynum;
  594 + })
  595 +
  596 + var buyed_mum2 = goodsbuynum + good.goods_num;
  597 + if (buyed_mum2 > limit && limit > 0) {
  598 + var content = gg.goods_name + '购买数量超出商品限购,请取消订单';
  599 + th.toast(content);
  600 + th.setData({ paying: 0 });
  601 + return false;
  602 + }
  603 +
  604 + //当是组合优惠的时候
  605 + if (good.prom_type == 7) {
  606 + //如果有组合购
  607 + var isok = 1;
  608 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id;
  609 + let zh_buy_info=null
  610 + await getApp().request.promiseGet(url, {}).then(res => {
  611 + if (res.data.code == 0 && res.data.data) {
  612 + zh_buy_info = res.data.data
  613 + if (res.data.data.is_show != 1) {
  614 + isok = 0;
  615 + }
  616 + //如果活动已经结束
  617 + if (res.data.data.is_end == 1) {
  618 + isok = 0;
  619 + }
  620 + //已经结束
  621 + if (ut.gettimestamp() > res.data.data.end_time) {
  622 + isok = 0;
  623 + }
  624 + //还未开始
  625 + if (ut.gettimestamp() < res.data.data.start_time) {
  626 + isok = 0;
  627 + }
  628 +
  629 +
  630 + } else {
  631 + //未找到商品的活动
  632 + isok = 0;
  633 + }
  634 +
  635 + })
  636 + if (!isok) {
  637 + var content = gg.goods_name + '活动已经结束,请取消订单';
  638 + th.toast(content);
  639 + th.setData({ paying: 0 });
  640 + return false;
  641 + }
  642 +
  643 + //增加组合购次数判断
  644 + let userbuynum = await th.getUserBuyPromNum(good.prom_id,1)
  645 +
  646 + if (zh_buy_info.buy_limit !=0 && zh_buy_info && userbuynum >= zh_buy_info.buy_limit) {
  647 + var content = gg.goods_name + '超出组合购限购次数,请取消订单';
  648 + th.toast(content);
  649 + th.setData({ paying: 0 });
  650 + return false;
  651 + }
  652 +
  653 + var url1 = "/api/weshop/prom/zhbuyGoods/page";
  654 + var req_data = {
  655 + page: 1,
  656 + pageSize: 1,
  657 + store_id: os.stoid,
  658 + zh_id: good.prom_id,
  659 + goods_id: good.goods_id
  660 + }
  661 + await getApp().request.promiseGet(url1, {
  662 + data: req_data
  663 + }).then(res => {
  664 + if (ut.ajax_ok(res)) {
  665 + var gdlist = res.data.data.pageData[0];
  666 + good.buyqty = gdlist.buyqty;
  667 + }
  668 + })
  669 +
  670 + var num = good['buyqty'];
  671 + //---- 要计算商品的限购 -----
  672 + if (good['buyqty'] > 0) {
  673 + if (good.goods_num + promgoodsbuynum > good['buyqty']) {
  674 + var content = good['goods_name'] + "超出活动限购\n";
  675 + th.toast(content);
  676 + th.setData({ paying: 0 });
  677 + return false;
  678 + }
  679 + }
  680 + }
  681 + //如果是预售的时候,
  682 + if (good.prom_type == 8) {
  683 + await getApp().request.promiseGet("/api/weshop/order/orderPresell/countBuyGoodsSum", {
  684 + data: { store_id: os.stoid, user_id: user_id, goods_id: good.goods_id, prom_id: good.prom_id },
  685 + }).then(e => {
  686 + if (e.data.code == 0) {
  687 + promgoodsbuynum = e.data.data.sumgoodsnum;
  688 + }
  689 + })
  690 +
  691 + var presell_id = good.prom_id;
  692 + var url = "/api/weshop/marketing/marketingPresellList/list"
  693 + var rd = {
  694 + store_id: os.stoid,
  695 + presell_id: presell_id,
  696 + goods_id: good.goods_id
  697 + }
  698 + //------获取预售从表----------
  699 + await getApp().request.promiseGet(url, {
  700 + data: rd
  701 + }).then(res => {
  702 + if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
  703 + var arr = res.data.data[0];
  704 + presellList = arr
  705 + }
  706 + })
  707 +
  708 + if(!presellList){
  709 + var content = good.goods_name + '未找到预售活动,请取消订单';
  710 + th.toast(content);
  711 + th.setData({ paying: 0 });
  712 + return false;
  713 + }
  714 +
  715 + if (presellList) {
  716 + if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) {
  717 + var content = good.goods_name + '购买数量超出商品库存,请取消订单';
  718 + th.toast(content);
  719 + th.setData({ paying: 0 });
  720 + return false;
  721 + }
  722 + var buyed_mum3 = promgoodsbuynum + good.goods_num;
  723 + if (buyed_mum3 > presellList.vip_butyqty && presellList.vip_butyqty > 0) {
  724 + var content = good.goods_name + '购买数量超出商品限购,请取消订单';
  725 + th.toast(content);
  726 + th.setData({ paying: 0 });
  727 + return false;
  728 + }
  729 +
  730 + var fres=await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/"+os.stoid+"/"+presell_id, {});
  731 + //接口调用成功的时候
  732 + if(fres && fres.data.code==0 && fres.data.data){
  733 + //如果有指定门店的时候
  734 + if(fres.data.data.pick_up_lists){
  735 + var idx0=fres.data.data.pick_up_lists.findIndex(function (e){
  736 + return e.pickup_id==order.pickup_id;
  737 + })
  738 + if(idx0<0){
  739 + getApp().confirmBox(good.goods_name+"预售活动的门店不可售");
  740 + th.setData({ paying: 0 });
  741 + return false;
  742 + }
  743 + }
  744 +
  745 + }else{
  746 + var content = good.goods_name + '未找到预售活动,请取消订单';
  747 + th.toast(content);
  748 + th.setData({ paying: 0 });
  749 + return false;
  750 + }
  751 +
  752 + }
  753 + }
  754 +
  755 + //如果优惠促销和搭配购的时候
  756 + if ((good.prom_type == 3 || good.prom_type == 5 || good.prom_type == 10) && good.is_gift != 1 && good.is_collocation != 1) {
  757 + var p_ok = 1, is_g_prom = 0;
  758 + //只读优化促销和阶梯促销
  759 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromListNew1/" + os.stoid + "/" + good.goods_id+"/0/"+user_id, {}).then(res => {
  760 + if (res.data.code == 0) {
  761 + var r_data = res.data.data;
  762 + if (!r_data.collocationPromList && good.prom_type == 5) {
  763 + var content = good.goods_name + '未找到活动,请取消订单重新购买';
  764 + th.toast(content)
  765 + p_ok = 0;
  766 + }
  767 + if (!r_data.promGoodsLists && good.prom_type == 3) {
  768 + var content = good.goods_name + '未找到活动,请取消订单重新购买';
  769 + th.toast(content);
  770 + p_ok = 0;
  771 + }else if(r_data.promGoodsLists && good.prom_type == 3){
  772 + var fir_act = r_data.promGoodsLists[0];
  773 + //如果是有限购的时候
  774 + if (fir_act.gd_limit_num>0){
  775 + if(promgoodsbuynum+good.goods_num > fir_act.gd_limit_num){
  776 + var content = good.goods_name + '超出优惠促销活动商品限购,请取消订单重新购买';
  777 + th.toast(content)
  778 + p_ok = 0;
  779 + }
  780 + }
  781 +
  782 + }
  783 +
  784 + if (!r_data.ladderLists && good.prom_type == 10) {
  785 + var content = good.goods_name + '未找到活动,请取消订单重新购买';
  786 + th.toast(content);
  787 + p_ok = 0;
  788 + }
  789 + } else {
  790 +
  791 + var content = good.goods_name + '未找到活动,请取消订单重新购买'
  792 + th.toast(content);
  793 + p_ok = 0;
  794 + }
  795 + })
  796 + if (!p_ok) {
  797 + th.setData({ paying: 0 });
  798 + return false;
  799 + }
  800 + }
  801 +
  802 + //-- 商品的普通购买 ,不要进行判断 --
  803 + if ((good.prom_type == 1 || good.prom_type == 2 || good.prom_type == 6 || good.prom_type == 4 || good.prom_type == 8 || good.prom_type == 9)
  804 + && !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal) {
  805 +
  806 + } else {
  807 +
  808 +
  809 + if(good.is_pd_normal || good.is_integral_normal){
  810 + gg.prom_type=good.prom_type;
  811 + gg.prom_id=good.prom_id;
  812 + }else {
  813 +
  814 + //因为商品的prom_type=0,所以商品的实际活动要重新获取
  815 + var url = '/api/weshop/activitylist/listGoodActInfo2New';
  816 + var req_d = {
  817 + "store_id": os.stoid,
  818 + "goods_id": good.goods_id,
  819 + "user_id": user_id,
  820 + }
  821 + await getApp().request.promiseGet(url, {
  822 + data: req_d
  823 + }).then(res => {
  824 + if (res.data.code == 0 && res.data.data) {
  825 + var arr = res.data.data;
  826 + //-- 预热也要计算 --
  827 + var arr2 = arr.filter(function (e) {
  828 + return e.s_time < ut.gettimestamp() || (e.warm_uptime && e.warm_uptime < ut.gettimestamp())
  829 + })
  830 + if (arr2.length == 1) {
  831 + gg.prom_type = arr2[0].prom_type;
  832 + gg.prom_id = arr2[0].act_id;
  833 + } else if (arr2.length > 1) {
  834 + //如果是多活动的时候,要看good参与的活动有没有结束,是不是有效
  835 + var fd = arr2.find(function (e) {
  836 + return e.prom_type == good.prom_type && e.act_id == good.prom_id
  837 + })
  838 + if (fd) {
  839 + gg.prom_type = good.prom_type;
  840 + gg.prom_id = good.prom_id;
  841 + }
  842 + }
  843 + }
  844 + })
  845 + }
  846 +
  847 + if(gg.prom_type==3){
  848 + var prom_pc=null;
  849 + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
  850 + if (res.data.code == 0) { prom_pc = res.data.data; }
  851 + })
  852 +
  853 + if(prom_pc){
  854 + gg.discount_field=prom_pc.discount_field;
  855 + }
  856 + }
  857 +
  858 + //阶梯促销获取取价规则
  859 + if(gg.prom_type==10){
  860 + var prom_ld=null;
  861 + //-- 获取阶梯规则 --
  862 + var url1 = "/api/weshop/prom/ladderList/list";
  863 + var req_data = {
  864 + store_id: os.stoid,
  865 + form_id: gg.prom_id,
  866 + }
  867 + await getApp().request.promiseGet(url1, {
  868 + data: req_data
  869 + }).then(rs1 => {
  870 + if (rs1.data.code == 0 && rs1.data.data && rs1.data.data.length ) {
  871 + prom_ld = rs1.data.data[0];
  872 + }
  873 + })
  874 +
  875 + if(prom_ld){
  876 + gg.discount_field=prom_ld.discount_field;
  877 + }
  878 + }
  879 +
  880 + if ((gg.prom_type == 1 || gg.prom_type == 2 || gg.prom_type == 4 || gg.prom_type == 6 || gg.prom_type == 8 || gg.prom_type == 9)
  881 + && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {
  882 + var prom = null;
  883 + //---如果是活动的时候---
  884 + var prom = null, th = this;
  885 + if (gg.prom_type == 1) {
  886 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + gg.prom_id, {}).then(res => {
  887 + if (res.data.code == 0) {
  888 + prom = res.data.data;
  889 + prom.price = prom.user_price;
  890 + }
  891 + })
  892 + }
  893 + if (gg.prom_type == 2) {
  894 + await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + gg.goods_id + "/" + gg.prom_id, {}).then(res => {
  895 + if (res.data.code == 0) {
  896 + prom = res.data.data;
  897 + prom.price = prom.price;
  898 + }
  899 + })
  900 + }
  901 + if (gg.prom_type == 6) {
  902 + await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
  903 + if (res.data.code == 0) {
  904 + prom = res.data.data;
  905 + }
  906 + })
  907 + }
  908 + if (gg.prom_type == 4) {
  909 + await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1&timetype=2", {
  910 + data: { store_id: os.stoid, goods_id: gg.goods_id,user_id: getApp().globalData.user_id, }
  911 + }).then(res => {
  912 + if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
  913 + prom = res.data.data.pageData[0];
  914 + }
  915 + })
  916 + }
  917 + if (prom) {
  918 + var t_now = ut.gettimestamp();
  919 + if (prom.is_end == 0 && prom.start_time < t_now && prom.end_time > t_now) {
  920 +
  921 + var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
  922 + th.toast(content);
  923 + th.setData({ paying: 0 });
  924 + return false;
  925 + }
  926 + }
  927 +
  928 + //-- 幸运购的时候 --
  929 + if(gg.prom_type==8 || gg.prom_type==9){
  930 + var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
  931 + th.toast(content);
  932 + th.setData({ paying: 0 });
  933 + return false;
  934 + }
  935 +
  936 + }
  937 + else {
  938 + var t_ok = 1;
  939 + //-- 如果是普通购买的时候,此时计算的一定是商品的prom_type==0了, (组合购在普通购买的时候,就不判断了,因为组合购本身就可以普通购买)---
  940 + if(!good.is_collocation && !good.is_gift && good.is_pd_normal!=2 && gg.prom_type!=7 ){
  941 +
  942 + var promgoodsbuynum0=0;
  943 + //---要获得商品,该用户买了多少件,同步应用---
  944 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  945 + data: {
  946 + store_id: os.stoid,
  947 + user_id: user_id,
  948 + goods_id: good.goods_id,
  949 + prom_type: gg.prom_type,
  950 + prom_id: gg.prom_id
  951 + },
  952 + }).then(res => {
  953 + var buy_num_data = res.data.data;
  954 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  955 + })
  956 +
  957 +
  958 + //商品的订单列表的活动类型,和gg参与的类型不一致
  959 + if(good.prom_type != gg.prom_type && good.prom_id != gg.prom_id){
  960 + //如果商品有单独的活动的是偶
  961 + switch (gg.prom_type){
  962 + case 10:
  963 + var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
  964 + th.toast(content);
  965 + t_ok = 0;
  966 + break;
  967 + //-- 优惠促销是有限购的 --
  968 + case 3:
  969 + var prom=null;
  970 + var yh_check=1;
  971 +
  972 +
  973 + //如果有优惠促销的普通购买的时候
  974 + if(order.is_user_no_yhcx && good.prom_type==0 && order.is_user_no_yhcx!='0' && order.is_user_no_yhcx!='null' ){
  975 + let obj=JSON.parse(order.is_user_no_yhcx);
  976 + //obj数组使用find函数快速查找
  977 + if(obj.find((item)=>{return item.prom_id==gg.prom_id && item.prom_type==3})){
  978 + yh_check=0;
  979 + }
  980 + }
  981 +
  982 + //判断优惠促销活动的限购
  983 + if(yh_check){
  984 + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
  985 + if (res.data.code == 0) { prom = res.data.data; }
  986 + })
  987 + if (prom && prom.limit_num) {
  988 + var limit_num = prom.limit_num;
  989 + var user_pre_buynum = await this.getUserBuyPromNum_pre(prom.id)
  990 + if (limit_num>0 && user_pre_buynum >= limit_num) {
  991 + yh_check=0;
  992 + }
  993 + }
  994 + }
  995 +
  996 + //--- 要判断一下优惠促销的商品的限购 ---
  997 + if(yh_check){
  998 + var pro_gd_limit_num=0;
  999 + var p_limit_rs= await getApp().request.promisePost('/api/weshop/promgoods/getPromGoodsLimitNum',{
  1000 + data:{
  1001 + store_id:os.stoid,goods_id:gg.goods_id,prom_id:gg.prom_id,prom_type:3
  1002 + }
  1003 + })
  1004 + if(p_limit_rs && p_limit_rs.data.code==0){
  1005 + pro_gd_limit_num=p_limit_rs.data.data
  1006 + }
  1007 + //-- 如果有商品限购的时候 --
  1008 + if(pro_gd_limit_num>0){
  1009 + var pro_by_num=0;
  1010 + var lrs= {
  1011 + store_id: os.stoid,user_id: getApp().globalData.user_id,
  1012 + goods_id: gg.goods_id, prom_type: 3,
  1013 + prom_id: gg.prom_id, isnew:1
  1014 + };
  1015 + var gd_limit_rs=await getApp().promiseGet('/api/weshop/ordergoods/getUserBuyGoodsNum',{data:lrs});
  1016 + if(gd_limit_rs && gd_limit_rs.data.code==0){
  1017 + pro_by_num=gd_limit_rs.data.data.promgoodsbuynum
  1018 + }
  1019 + if(pro_gd_limit_num<pro_by_num+good.goods_num){
  1020 + yh_check=0;
  1021 + }
  1022 + }
  1023 + }
  1024 +
  1025 + //-- 优惠促销活动没有超出限购的话 --
  1026 + if(yh_check){
  1027 + if(!the_yh_map[gg.prom_id]) the_yh_map[gg.prom_id]=[];
  1028 + if(prom) good.discount_field=prom.discount_field;
  1029 + good.r_shop_price=gg.shop_price;
  1030 + good.r_market_price=gg.market_price;
  1031 + the_yh_map[gg.prom_id].push(good);
  1032 + }
  1033 +
  1034 + break
  1035 + case 7:
  1036 + //获取组合购活动
  1037 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + gg.prom_id + "/" + getApp().globalData.userInfo.user_id;
  1038 + let zh_buy_info=null
  1039 + await getApp().request.promiseGet(url, {}).then(res => {
  1040 + if (res.data.code == 0 && res.data.data) {
  1041 + zh_buy_info = res.data.data
  1042 + }
  1043 + })
  1044 + //判断活动超出限购
  1045 + var is_act_ok=1;
  1046 + let userbuynum = await th.getUserBuyPromNum(gg.prom_id)
  1047 + if (zh_buy_info.buy_limit !=0 && zh_buy_info && userbuynum >= zh_buy_info.buy_limit) {
  1048 + is_act_ok=0;
  1049 + }
  1050 +
  1051 + //判断活动商品超出限购,在从表
  1052 + var url1 = "/api/weshop/prom/zhbuyGoods/page";
  1053 + var req_data = {
  1054 + page: 1,
  1055 + pageSize: 1,
  1056 + store_id: os.stoid,
  1057 + zh_id: gg.prom_id,
  1058 + goods_id: gg.goods_id
  1059 + }
  1060 + await getApp().request.promiseGet(url1, {
  1061 + data: req_data
  1062 + }).then(res => {
  1063 + if (ut.ajax_ok(res)) {
  1064 + var gdlist = res.data.data.pageData[0];
  1065 + gg.buyqty = gdlist.buyqty;
  1066 + }
  1067 + })
  1068 + var num = gg['buyqty'];
  1069 + //---- 要计算商品的限购 -----
  1070 + if (gg['buyqty'] > 0) {
  1071 + if (gg.goods_num + promgoodsbuynum0 > gg['buyqty']) {
  1072 + is_act_ok=0;
  1073 + }
  1074 + }
  1075 + if(is_act_ok){
  1076 + var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
  1077 + th.toast(content);
  1078 + t_ok = 0;
  1079 + break;
  1080 + }
  1081 + }
  1082 + }
  1083 + }
  1084 +
  1085 + //如果有普通商品要判断能不到达到优惠促销的条件
  1086 + if(Object.keys(the_yh_map).length){
  1087 + for (let rkey in the_yh_map) {
  1088 + var all_price=0;
  1089 + var all_num=0;
  1090 +
  1091 + for(var ij=0;ij<the_yh_map[rkey].length;ij++){
  1092 + var t_price=the_yh_map[rkey][ij].goods_price;
  1093 + switch (the_yh_map[rkey][ij].discount_field){
  1094 + case 1:
  1095 + t_price=the_yh_map[rkey][ij].r_shop_price;
  1096 + break;
  1097 + case 2:
  1098 + t_price=the_yh_map[rkey][ij].r_market_price;
  1099 + break;
  1100 + }
  1101 +
  1102 + all_price+=t_price * the_yh_map[rkey][ij].goods_num;
  1103 + all_num+= the_yh_map[rkey][ij].goods_num;
  1104 + }
  1105 +
  1106 + //-- 只有在单赠品的时候,才要进行计算 --
  1107 + var res= await getApp().request.promiseGet("/api/weshop/goods/getDiscount", {
  1108 + data: {
  1109 + price: parseFloat(all_price).toFixed(2),
  1110 + prom_id: rkey,
  1111 + goods_num: all_num,
  1112 + user_id: getApp().globalData.user_id,
  1113 + is_bz: prom.is_bz
  1114 + }
  1115 + })
  1116 + if (res.data.code == 0 && res.data.data && res.data.data.condition){
  1117 + var content = '商品的活动发生了变化,请取消订单重新购买';
  1118 + th.toast(content);
  1119 + t_ok = 0;
  1120 + break;
  1121 + }
  1122 + }
  1123 +
  1124 + }
  1125 + //-- 判断活动是不是OK --
  1126 + if (!t_ok) {
  1127 + th.setData({ paying: 0 }); return false;
  1128 + }
  1129 +
  1130 + // if (!good.is_gift && good.prom_type != 3) {
  1131 + // var t_ok = 1;
  1132 + // await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0" + "/" + getApp().globalData.user_id, {}).then(res => {
  1133 + // if (res.data.code == 0) {
  1134 + // var r_data = res.data.data;
  1135 + // //-- 参加了全局的优惠活动 --
  1136 + // if (r_data.promGoodsLists) {
  1137 + // var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
  1138 + // th.toast(content);
  1139 + // t_ok = 0;
  1140 + // }
  1141 + // }
  1142 + // })
  1143 + // if (!t_ok) {
  1144 + // th.setData({ paying: 0 }); return false;
  1145 + // }
  1146 + // }
  1147 + //-- 如果有参加线下取价 --
  1148 + if (good.offline_cut > 0) wlist += encodeURIComponent(gg.erpwareid) + ",";
  1149 + }
  1150 + //赠品和搭配购不判断商品金额
  1151 + var isok = 1;
  1152 + var card_field = th.data.card_field;
  1153 +
  1154 + //-- 如果会员是等级会员,商品有等级价,且不是活动商品,同时线下取价的要放在最后来判断 --
  1155 + if (!good.is_gift && !good.is_collocation && gg.prom_type != 9) {
  1156 +
  1157 + //-- 优惠促销的时候控制取价规则 --
  1158 + // gg.prom_type!=3 && gg.prom_type!=10 同时商品不是普通购买的时候,又参与优惠促销,阶梯促销
  1159 + if((gg.prom_type!=3 && gg.prom_type!=10) || gg.discount_field==undefined || gg.discount_field==0 ) {
  1160 + if (card_field && gg[card_field] > 0) {
  1161 + if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0;
  1162 + if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
  1163 +
  1164 + } else {
  1165 + if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0;
  1166 + if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
  1167 + }
  1168 + }else{
  1169 + if(good.prom_type==3 && good.prom_type==10){
  1170 + switch (gg.discount_field){
  1171 + case 1:
  1172 + if (good.goods_price != gg.shop_price) isok = 0;
  1173 + break;
  1174 + case 2:
  1175 + if (good.goods_price != gg.market_price) isok = 0;
  1176 + break;
  1177 + }
  1178 + }
  1179 + }
  1180 +
  1181 + var is_h = 0;
  1182 + if (!isok) {
  1183 + var content = gg.goods_name + '商品的价格发生了变化,请取消订单重新购买1'
  1184 + th.toast(content);
  1185 + th.setData({ paying: 0 });
  1186 + return false;
  1187 + }
  1188 + }
  1189 +
  1190 + //--如果是线下库存的时候--
  1191 + if (th.data.conf.sales_rules >= 2 && !gg.whsle_id && !good.is_gift) {
  1192 + var ob = {};
  1193 + await th.check_down_line_next(gg, good.goods_num, order.pickup_id, function (obj) {
  1194 + ob = obj;
  1195 + })
  1196 + if (ob.code == -1) {
  1197 + var content = gg.goods_name + '门店库存不足,请取消订单';
  1198 + th.toast(content);
  1199 + th.setData({ paying: 0 });
  1200 + return false;
  1201 + }
  1202 +
  1203 + } else {
  1204 + if (!good.is_gift && good.goods_num > store_count) {
  1205 +
  1206 + var content = gg.goods_name + '商品的库存不足,请取消订单';
  1207 + th.toast(content);
  1208 + th.setData({ paying: 0 });
  1209 + return false;
  1210 + }
  1211 +
  1212 + }
  1213 + }
  1214 +
  1215 + //---如果是活动的时候---
  1216 + var prom = null, goodsinfo = good, th = this;
  1217 + if (goodsinfo.prom_type == 1) {
  1218 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + goodsinfo.prom_id, {}).then(res => {
  1219 + if (res.data.code == 0) {
  1220 + prom = res.data.data;
  1221 + prom.price = prom.user_price;
  1222 + }
  1223 + })
  1224 + }
  1225 + if (goodsinfo.prom_type == 2) {
  1226 + await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + good.goods_id + "/" + goodsinfo.prom_id, {}).then(res => {
  1227 + if (res.data.code == 0) {
  1228 + prom = res.data.data;
  1229 + prom.price = prom.price;
  1230 + }
  1231 + })
  1232 + }
  1233 +
  1234 + if (goodsinfo.prom_type == 6 && !good.is_pd_normal) {
  1235 + await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => {
  1236 + if (res.data.code == 0) {
  1237 + prom = res.data.data;
  1238 + }
  1239 + })
  1240 + }
  1241 +
  1242 + if (goodsinfo.prom_type == 4 && !good.is_integral_normal) {
  1243 + await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1&timetype=2", {
  1244 + data: { store_id: os.stoid, goods_id: goodsinfo.goods_id,user_id: getApp().globalData.user_id, }
  1245 + }).then(res => {
  1246 + if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
  1247 + prom = res.data.data.pageData[0];
  1248 + }
  1249 + })
  1250 + }
  1251 + //----------如果有活动,并且在进行中,就不计算线下库存---------------
  1252 + if (prom) {
  1253 + let c_type=parseInt(goodsinfo.prom_type+'');
  1254 + var act_type='';
  1255 + switch (c_type){
  1256 + case 1:act_type='秒杀';break;
  1257 + case 2:act_type='团购';break;
  1258 + case 6:act_type='拼团';break;
  1259 + }
  1260 + //指定门店的控制
  1261 + if ([1,2,6].indexOf(c_type)>-1 && prom.pick_up_lists) {
  1262 + var idx0=prom.pick_up_lists.findIndex(function (e){
  1263 + return e.pickup_id==order.pickup_id;
  1264 + })
  1265 + if(idx0<0){
  1266 + getApp().confirmBox(goodsinfo.goods_name +act_type+"活动的门店不可售");
  1267 + th.setData({ paying: 0 });
  1268 + return false;
  1269 + }
  1270 + }
  1271 +
  1272 + var now = ut.gettimestamp();
  1273 + if (prom.is_end == 1 && prom.end_time < now) {
  1274 + var content = goodsinfo.goods_name + '商品的活动已经结束,请取消订单'
  1275 + th.toast(content);
  1276 + th.setData({ paying: 0 });
  1277 + return false;
  1278 + }
  1279 +
  1280 + buyed_mum2 = promgoodsbuynum + good.goods_num;
  1281 + if (buyed_mum2 > prom.buy_limit && prom.buy_limit > 0) {
  1282 +
  1283 + var content = goodsinfo.goods_name + '购买数量超出商品活动限购,请取消订单'
  1284 + th.toast(content);
  1285 + th.setData({ paying: 0 });
  1286 + return false;
  1287 + }
  1288 +
  1289 + // --看一下会员的秒杀价格是不是发生了变化,因为会员的身份发生了变化
  1290 + if (goodsinfo.prom_type == 1 && goodsinfo.goods_price != prom.price) {
  1291 + var content = goodsinfo.goods_name + '秒杀活动的价格发生了变化';
  1292 + th.toast(content);
  1293 + th.setData({ paying: 0 });
  1294 + return false;
  1295 + }
  1296 +
  1297 + // --看一下会员的团购价格是不是发生了变化
  1298 + if (goodsinfo.prom_type == 2 && goodsinfo.goods_price != prom.price) {
  1299 + var content = goodsinfo.goods_name + '秒杀活动的价格发生了变化';
  1300 + th.toast(content);
  1301 + th.setData({ paying: 0 });
  1302 + return false;
  1303 + }
  1304 +
  1305 + if (goodsinfo.prom_type == 4) {
  1306 + if (good.goods_num > prom.limitqty - prom.buy_num) {
  1307 +
  1308 + var content = goodsinfo.goods_name + '购买数量超出商品活动库存,请取消订单'
  1309 + th.toast(content);
  1310 + th.setData({ paying: 0 });
  1311 + return false;
  1312 + }
  1313 + } else if (goodsinfo.prom_type == 1 || goodsinfo.prom_type == 2 || goodsinfo.prom_type == 6) {
  1314 + if (order.add_time + 5 * 60 < ut.gettimestamp()) {
  1315 + var content = gg.goods_name + '该订单已经超时无法支付,请取消订单';
  1316 + th.toast(content);
  1317 + th.setData({ paying: 0 });
  1318 + return false;
  1319 + }
  1320 + }
  1321 +
  1322 + }
  1323 +
  1324 + //-- 预售和幸运购要单独计算 --
  1325 + if (goodsinfo.prom_type == 8) {
  1326 + var presell_id= goodsinfo.prom_id;
  1327 + //------获取预售主表,判断预售活动是不是到期不可以使用了----------
  1328 + var res= await getApp().request.promiseGet(`/api/weshop/marketing/marketingPresellForm/get/${os.stoid}/${presell_id}`, {})
  1329 + if (res.data.code == 0 && res.data.data) {
  1330 + var act_data = res.data.data;
  1331 + if (act_data.is_end) {
  1332 + wx.showToast({ title: "活动已经结束", icon: 'none', duration: 3000 });
  1333 + return false;
  1334 + }
  1335 + if (act_data.isuse == 0) {
  1336 + wx.showToast({ title: "活动未启用", icon: 'none', duration: 3000 });
  1337 + return false;
  1338 + }
  1339 +
  1340 + var err_txt = "活动定金时间已经结束";
  1341 + var end_time = act_data.end_time;
  1342 + if (act_data.presell_type == 1) {
  1343 + err_txt = "活动时间已经结束";
  1344 + }
  1345 + if (end_time < ut.gettimestamp()) {
  1346 + wx.showToast({ title: err_txt, icon: 'none', duration: 3000 });
  1347 + return false;
  1348 + }
  1349 +
  1350 + if (act_data.presell_type == 0) {
  1351 + end_time = act_data.pay_enddate;
  1352 + err_txt = "活动尾款时间已经结束";
  1353 + }
  1354 + if (end_time < ut.gettimestamp()) {
  1355 + wx.showToast({ title: err_txt, icon: 'none', duration: 3000 });
  1356 + return false;
  1357 + }
  1358 + }
  1359 +
  1360 + var all_pre_goods=null;
  1361 + var userInfo = getApp().globalData.userInfo;
  1362 + var pre_data = { store_id: os.stoid, is_end: 0, timetype: 1, isuse: 1, goods_id: goodsinfo.goods_id };
  1363 + if (userInfo) {
  1364 + pre_data.user_id = userInfo.user_id;
  1365 + }
  1366 + var rs_pre= await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/page", {
  1367 + data: pre_data,
  1368 + })
  1369 + if (rs_pre.data.code == 0 && rs_pre.data.data.pageData && rs_pre.data.data.pageData.length > 0) {
  1370 + all_pre_goods = rs_pre.data.data.pageData;
  1371 + }
  1372 +
  1373 + if(!all_pre_goods){
  1374 + wx.showToast({ title: "未找到活动商品", icon: 'none', duration: 3000 });
  1375 + return false;
  1376 + }
  1377 + var idx = all_pre_goods.findIndex(function (ele) {
  1378 + return ele.goods_id == goodsinfo.goods_id;
  1379 + })
  1380 +
  1381 + if(idx==-1){
  1382 + wx.showToast({ title: "未找到活动商品", icon: 'none', duration: 3000 });
  1383 + return false;
  1384 + }
  1385 + var pre_arr = all_pre_goods[idx];
  1386 + var prom_buy_limit = pre_arr.vip_butyqty;
  1387 +
  1388 + if (goodsinfo.goods_num > pre_arr.presell_sumqty - pre_arr.buy_goodnum) {
  1389 + wx.showToast({ title: "超出活动商品库存", icon: 'none', duration: 3000 });
  1390 + return false;
  1391 + }
  1392 + //--判断商品是否超出活动限购--
  1393 + if (promgoodsbuynum0 && prom_buy_limit > 0) {
  1394 + wx.showToast({ title: "超出活动商品库存", icon: 'none', duration: 3000 });
  1395 + return false;
  1396 + }
  1397 +
  1398 + }
  1399 + //幸运购的时候
  1400 + if (goodsinfo.prom_type == 9 && !good.is_pt_normal) {
  1401 +
  1402 + var lk_act=null;
  1403 + //获取单个活动成团信息
  1404 + var lk_rs= await getApp().request.promiseGet('/api/weshop/prom/luckyActivity/page', {
  1405 + data: {
  1406 + store_id: os.stoid,
  1407 + is_end: 0,
  1408 + timetype: 1,
  1409 + id: goodsinfo.prom_id,
  1410 + }
  1411 + });
  1412 +
  1413 + if(lk_rs && ut.ajax_ok(lk_rs)){
  1414 + lk_act= lk_rs.data.data.pageData[0];
  1415 + }
  1416 + if(!lk_act){
  1417 + wx.showToast({ title: "未找到活动,或者活动已结束", icon: 'none', duration: 3000 });
  1418 + th.setData({ paying: 0 });
  1419 + return false;
  1420 + }
  1421 + // 检查幸运购活动商品库存
  1422 + var lk_redis=await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/9/" + goodsinfo.prom_id,{});
  1423 + if(!lk_redis || lk_redis<goodsinfo.goods_num ){
  1424 + wx.showToast({ title: "活动商品库存不足", icon: 'none', duration: 3000 });
  1425 + th.setData({ paying: 0 });
  1426 + return false;
  1427 + }
  1428 + }
  1429 +
  1430 + }
  1431 +
  1432 + //-- 要判断一下线下取价价格是不是发生改变 --
  1433 + if (wlist != "" && th.data.is_open_offline && th.data.is_open_offline > 0) {
  1434 + wlist = ut.sub_last(wlist);
  1435 + var keyid = order.pickup_id;
  1436 + var user_info = getApp().globalData.userInfo;
  1437 + if (!keyid) {
  1438 + th.setData({ paying: 0 }); return false;
  1439 + }
  1440 + var offarr = null;
  1441 + await getApp().request.promiseGet("/api/weshop/goods/listWarePrice", {
  1442 + data: {
  1443 + VIPId: encodeURIComponent(user_info.erpvipid),
  1444 + store_id: os.stoid,
  1445 + PickupId: keyid,
  1446 + WareIds: wlist
  1447 + },
  1448 + },
  1449 + ).then(res => {
  1450 + if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
  1451 + offarr = res.data.data;
  1452 + }
  1453 + })
  1454 + if (!offarr && offarr.length <= 0) {
  1455 + th.toast('获取线下取价失败');
  1456 + }
  1457 + var newarr = ut.convert_arr_key(offarr, 'WareId');
  1458 + //-- 循环判断线下的价格 --
  1459 + for (var k in order_goods) {
  1460 + var good = order_goods[k];
  1461 + //判断线下取价是不是一样
  1462 + if (newarr[good.erpwareid] &&
  1463 + parseFloat(newarr[good.erpwareid].WarePrice) != parseFloat(good.goods_price)) {
  1464 +
  1465 + var content = good.goods_name + '商品的价格发生了变化,请取消订单重新购买';
  1466 + th.toast(content);
  1467 + th.setData({ paying: 0 });
  1468 + return false;
  1469 + }
  1470 + }
  1471 + }
  1472 +
  1473 +
  1474 + th.data.ok_order_sn=this.data.order.order_sn;
  1475 + py.pay(this.data.order.order_sn, function() {
  1476 + th.setData({paying:0});
  1477 + wx.showToast({title: '支付成功'})
  1478 + wx.navigateBack();
  1479 + },function () {
  1480 + th.setData({paying:0});
  1481 + },os.stoid,1);
  1482 +
  1483 + },
  1484 +
  1485 +
  1486 +
  1487 + checkTeam: function() {
  1488 + wx.navigateTo({
  1489 + url: "/pages/team/team_detail/team_detail?foundId=" + this.data.order.orderTeamFound.found_id
  1490 + });
  1491 + },
  1492 +
  1493 + //------图片失败,默认图片---------
  1494 + bind_bnerr: function (e) {
  1495 + var _errImg = e.target.dataset.errorimg;
  1496 + var _errObj = {};
  1497 + _errObj[_errImg] = "public/images/default_goods_image_240.gif";
  1498 + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
  1499 + },
  1500 +
  1501 + zfwk:function(){
  1502 + var url = "/packageE/pages/cart/cart_wk/cart_wk?order_id=" + this.data.order.order_id;
  1503 + wx.redirectTo({
  1504 + url:url,
  1505 + })
  1506 + },
  1507 +
  1508 + //--------跳转到退款详情-----------
  1509 + gotoreturn: function (t) {
  1510 + var e = t.currentTarget.dataset.recid;
  1511 + var oid = t.currentTarget.dataset.oid;
  1512 + var wh = "";
  1513 + if (e != undefined && e != null && e != "") {
  1514 + wh = "&goods_id=" + e;
  1515 + }
  1516 + wx.navigateTo({
  1517 + url: "/packageF/pages/user/return_goods_info/return_goods_info?order_id=" + oid + wh,
  1518 + });
  1519 + },
  1520 +
  1521 + //---判断是不是有退款-----
  1522 + checkReturnGoodsStatus: function (t) {
  1523 + var e = t.currentTarget.dataset.recid;
  1524 + var oid = t.currentTarget.dataset.oid;
  1525 + r.get("/api/weshop/order/returngoods/page", {
  1526 + data: {
  1527 + goods_id: e,
  1528 + order_id: oid,
  1529 + store_id: os.stoid
  1530 + },
  1531 + success: function (t) {
  1532 + if (t.data.code == 0) {
  1533 + var r = t.data.data.total;
  1534 + if (0 == r) return wx.navigateTo({
  1535 + url: "/packageF/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,
  1536 + });
  1537 + //--如果拒绝,就重新申请退款--
  1538 + if (t.data.data.pageData[0].status == 3) {
  1539 + return wx.navigateTo({
  1540 + url: "/packageF/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,
  1541 + });
  1542 + }
  1543 +
  1544 + wx.navigateTo({
  1545 + url: "/packageF/pages/user/return_goods_info/return_goods_info?id=" + r
  1546 + });
  1547 + }
  1548 + }
  1549 + });
  1550 + },
  1551 +
  1552 + //-----删除订单-----
  1553 + deleteOrderData: function(t) {
  1554 + var th=this;
  1555 + var order_id=t.currentTarget.dataset.order_id;
  1556 + var up_data={
  1557 + order_id: order_id,isdel:1
  1558 + };
  1559 + if(th.data.order.order_status!=6){
  1560 + up_data.order_status=5;
  1561 + }
  1562 + wx.showModal({
  1563 + title: "是否删除订单?",
  1564 + success: function(tt) {
  1565 + tt.confirm && rq.put("/api/weshop/order/updatebyId", {
  1566 + data: up_data,
  1567 + success: function (t) {
  1568 + getApp().my_warnning("删除成功",1,th);
  1569 + setTimeout(function () {
  1570 + getApp().goto("/pages/user/order_list/order_list");
  1571 + },1000);
  1572 + }
  1573 + })
  1574 + }
  1575 + });
  1576 + },
  1577 +
  1578 + //--判断是不是可以单个商品退--
  1579 + check_for_return_btn:function (item) {
  1580 + if(item.coupon_no) return false; //有用优惠券
  1581 + if(item.order_prom_id) return false; //有订单优惠
  1582 + if(item.order_status>=2) return false; //订单状态>2
  1583 + var istrue=true;
  1584 + //----判断是不是有优惠活动和赠送商品----
  1585 + for (var g in item.order_goods) {
  1586 + var g_item=item.order_goods[g];
  1587 + if ((g_item.prom_type == 3 && g_item.discount_amount> 0)
  1588 + || (g_item.prom_type== 3 && g_item.goods_price <= 0)
  1589 + ) {
  1590 + istrue=false; break
  1591 + }
  1592 + if (g_item.prom_type== 5) {
  1593 + istrue=false; break
  1594 + }
  1595 + }
  1596 + if(!istrue) return false;
  1597 + var conf=this.data.conf;
  1598 + //判断是不是原路退回
  1599 + if(conf.refund_type==1) return true;
  1600 + else{
  1601 + if(item.order_amount==0 || item.user_money==0) return true;
  1602 + }
  1603 + return false;
  1604 + },
  1605 +
  1606 +
  1607 +
  1608 + //---检验线下库存的数量的子函数---
  1609 + async check_down_line_next(gg,num,pick_id,func){
  1610 + //如果默认是商品
  1611 + if(getApp().is_virtual(gg)){
  1612 + return func(100000);
  1613 + }
  1614 +
  1615 +
  1616 + var lock=0,pick_no,plist;
  1617 + var lock_rq={store_id:os.stoid,wareId:gg.goods_id,storageId:pick_id};
  1618 + if(this.data.sales_rules==3){
  1619 + log_rq.appoint_pick_keyid=this.data.appoint_pick_keyid;
  1620 + delete log_rq.storageId
  1621 + }
  1622 +
  1623 + //先读取门店的lock
  1624 + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
  1625 + data:lock_rq
  1626 + }).then(res=>{
  1627 + if(res.data.code==0 && res.data.data.total>0){
  1628 + for(var i in res.data.data.pageData)
  1629 + lock+=res.data.data.pageData[i].outQty;
  1630 + }
  1631 + })
  1632 +
  1633 + if(this.data.sales_rules==2) {
  1634 + //先获取门店的编号
  1635 + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick_id, {
  1636 + data: {storeId: os.stoid, goodsId: gg.goods_id, pickupId: pick_id}
  1637 + }).then(res => {
  1638 + if (res.data.code == 0) {
  1639 + pick_no = res.data.data.pickup_no;
  1640 + }
  1641 + })
  1642 + }
  1643 +
  1644 + var sto_rq={storageNos:pick_no,wareIds:encodeURIComponent(gg.erpwareid),storeId:os.stoid};
  1645 + if(this.data.sales_rules==3){
  1646 + sto_rq.storageIds=this.data.appoint_pick_keyid;
  1647 + delete sto_rq.storageNos
  1648 + }
  1649 +
  1650 +
  1651 + //读取线下的门店库存
  1652 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
  1653 + data:sto_rq
  1654 + }).then(res=>{
  1655 + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
  1656 + plist=res.data.data.pageData[0];
  1657 + }
  1658 + })
  1659 + var ob={}; ob.code=1;
  1660 + if(!plist){
  1661 + ob.code=-1; ob.CanOutQty=0;
  1662 + func(ob);return false;
  1663 + }
  1664 +
  1665 + if(num>plist.CanOutQty-lock){
  1666 + ob.code=-1;
  1667 + ob.CanOutQty=plist.CanOutQty-lock
  1668 + if(ob.CanOutQty<0) ob.CanOutQty=0;
  1669 + }
  1670 + func(ob)
  1671 + },
  1672 + //获取用户参与组合购的次数
  1673 + async getUserBuyPromNum(prom_id){
  1674 + var userInfo = getApp().globalData.userInfo;
  1675 + var url = `/api/weshop/ordergoods/getUserBuyPromNum?store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=7&prom_id=${prom_id}`;
  1676 + let res = await getApp().request.promiseGet(url, {
  1677 + data:{}
  1678 + });
  1679 + let userbuynum=0
  1680 + if(res.data.code==0 && res.data.data){
  1681 + userbuynum=res.data.data.userbuynum
  1682 + }
  1683 + return userbuynum
  1684 + },
  1685 +
  1686 + //再来一单的功能的实现
  1687 + moreOrder:function(e){
  1688 + var th=this;
  1689 + var item=th.data.order;
  1690 +
  1691 + if(this.data.moring) return false;
  1692 + this.data.moring=1;
  1693 +
  1694 + th.check_more_order(item);
  1695 + },
  1696 +
  1697 + check_more_order:async function(item){
  1698 + var pickup=null,th=this;
  1699 + var user_id=getApp().globalData.userInfo.user_id;
  1700 + wx.showLoading();
  1701 + //--------获取门店-----------
  1702 + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + item.pickup_id, {
  1703 +
  1704 + }).then(res=>{
  1705 + pickup = res.data.data;
  1706 + })
  1707 + if(!pickup){
  1708 + wx.hideLoading();
  1709 + getApp().confirmBox("找不到门店");
  1710 + this.data.moring=0;
  1711 + return false;
  1712 + }
  1713 +
  1714 + if(pickup.isstop){
  1715 + wx.hideLoading();
  1716 + getApp().confirmBox("门店已停用");
  1717 + this.data.moring=0;
  1718 + return false;
  1719 + }
  1720 +
  1721 + if(!pickup.is_pos){
  1722 + wx.hideLoading();
  1723 + getApp().confirmBox("门店不允许销售");
  1724 + this.data.moring=0;
  1725 + return false;
  1726 + }
  1727 +
  1728 + //--------获取商品----------
  1729 + var goods_list=item.order_goods;
  1730 + //--- 返回的内容 ---
  1731 + var back_goods_arr=[];
  1732 + var err_text="";
  1733 + for(var i in goods_list){
  1734 + var g_item=goods_list[i];
  1735 + var b_item={};
  1736 + //--如果是赠品,不加入购物车--
  1737 + if(g_item['is_gift']) continue;
  1738 + if(g_item['prom_type']==4 ){
  1739 + err_text+= g_item['goods_name']+"积分购商品不加入购物车\n";
  1740 + continue;
  1741 + }
  1742 + if(g_item['prom_type']==5){
  1743 + err_text+= g_item['goods_name']+"搭配购商品不加入购物车\n";
  1744 + continue;
  1745 + }
  1746 + if(g_item['prom_type']==6 ){
  1747 + err_text+= g_item['goods_name']+"拼团商品不加入购物车\n";
  1748 + continue;
  1749 + }
  1750 +
  1751 + //--获取商品--
  1752 + var good=null;
  1753 + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + g_item.goods_id, {
  1754 +
  1755 + }).then(res=>{
  1756 + good=res.data.data;
  1757 + })
  1758 +
  1759 + //调用接口判断订单优惠,
  1760 + const res = await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + g_item.goods_id + "/0"+"/"+getApp().globalData.user_id, {})
  1761 + if (res.data.code == 0 && res.data.data) {
  1762 + var r_data = res.data.data;
  1763 + if (r_data.ladderLists) {
  1764 + var act_id = r_data.ladderLists[0].form_id;
  1765 + //-- 判断会员能不能参与阶梯促销 --
  1766 + const data = await getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid + "/" + user_id + "/" + act_id, {})
  1767 + if (data.data.code == 0 && data.data.data && data.data.data.isuse && data.data.data.is_end == 0) {
  1768 + b_item.prom_type = 10;
  1769 + b_item.prom_id = data.data.data.id;
  1770 + }
  1771 + }
  1772 + }
  1773 +
  1774 + if(!good){
  1775 + err_text+= g_item['goods_name']+"未找到商品\n";
  1776 + continue;
  1777 + }
  1778 + if (good.is_on_sale != 1) {
  1779 + err_text+= g_item['goods_name']+"已经下架\n";
  1780 + continue;
  1781 + }
  1782 +
  1783 + var timestamp = ut.gettimestamp();
  1784 + if (good.on_time > timestamp) {
  1785 + err_text+= g_item['goods_name']+"还未上架\n";
  1786 + continue;
  1787 + }
  1788 + if (good.down_time > 0) {
  1789 + if (good.down_time < timestamp) {
  1790 + err_text+=g_item['goods_name']+"已经下架\n";
  1791 + continue;
  1792 + }
  1793 + }
  1794 +
  1795 + //如果商品的配送方式和门店不匹配
  1796 + if(good['distr_type']>0 && pickup['distr_type']>0 && good['distr_type']!=pickup['distr_type'] ){
  1797 + err_text+= good['goods_name']+"配送方式不一致\n";
  1798 + continue;
  1799 + }
  1800 +
  1801 + var prom=null;
  1802 + let user_id = getApp().globalData.userInfo.user_id;
  1803 +
  1804 + b_item.goods_id=g_item.goods_id;
  1805 + b_item.goods_name=g_item.goods_name;
  1806 + b_item.goods_num=g_item.goods_num;
  1807 + b_item.guide_id=g_item.guide_id;
  1808 + b_item.guide_type=g_item.guide_type;
  1809 + b_item.pickup_id=item.pickup_id;
  1810 + b_item.price=good.shop_price;
  1811 + b_item.goods_sn=good.goods_sn;
  1812 + b_item.sku=good.sku;
  1813 + b_item.is_integral_normal=g_item.is_integral_normal;
  1814 +
  1815 + //-- 如果会员是等级卡的时候,同时商品也有设置相应的卡价格 --
  1816 + var card_field=th.data.card_field;
  1817 + if(card_field && good[card_field]>0){
  1818 + b_item.price=good[card_field];
  1819 + }
  1820 +
  1821 + var url = "/api/weshop/activitylist/listGoodActInfo2New";
  1822 + var req_data = {
  1823 + store_id: g_item.store_id, goods_id: g_item.goods_id, user_id: user_id
  1824 + };
  1825 + await getApp().request.promiseGet(url, { data: req_data }).then(res => {
  1826 + if (res.data.code == 0) {
  1827 +
  1828 + var arr = res.data.data;
  1829 + //-- 预热也要计算 --
  1830 + var arr2 = arr.filter(function (e) {
  1831 + return e.s_time < ut.gettimestamp();
  1832 + })
  1833 +
  1834 + if (arr2.length == 1) {
  1835 + good.prom_type = 1;
  1836 + good.prom_id = item.act_id;
  1837 +
  1838 +
  1839 +
  1840 + }
  1841 + else if (arr2.length > 1) {
  1842 + good.prom_type = g_item.prom_type; good.prom_id = g_item.prom_id;
  1843 + }
  1844 + }
  1845 + })
  1846 +
  1847 + //--判断商品当前的活动情况--
  1848 + switch (good.prom_type) {
  1849 + case 1:
  1850 + var flash = null;
  1851 + await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + good.prom_id, {}).then(res => {
  1852 + if (res.data.code == 0) {
  1853 + flash = res.data.data;
  1854 + }
  1855 + })
  1856 + //----已经结束-----
  1857 + if (flash && flash.is_end == 0) {
  1858 +
  1859 + if( flash.end_time > timestamp && flash.start_time < timestamp){
  1860 + prom = flash;
  1861 + prom.price = prom.user_price;
  1862 + b_item.price = prom.price;
  1863 + good.prom_type = 1;
  1864 + good.prom_id = prom.id;
  1865 + }else{
  1866 + if(g_item.prom_type==0 && !flash.is_shop_buy ){
  1867 + err_text+=g_item['goods_name']+"秒杀活动不允许普通价\n";
  1868 + continue;
  1869 + }
  1870 + }
  1871 +
  1872 + }
  1873 + break;
  1874 + case 2:
  1875 + var group = null;
  1876 + await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + good.goods_id + "/" + good.prom_id, {}).then(res => {
  1877 + if (res.data.code == 0) {
  1878 + group = res.data.data;
  1879 + }
  1880 + })
  1881 + //----已经结束-----
  1882 + if (group && group.is_end == 0 && group.end_time > timestamp && group.start_time < timestamp) {
  1883 + prom = group;
  1884 + prom.price = prom.price;
  1885 + b_item.price = prom.price;
  1886 + }
  1887 + break;
  1888 + case 6:
  1889 + b_item.is_pd_normal = 1;
  1890 + break;
  1891 + case 7:
  1892 + //如果有组合购
  1893 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id;
  1894 + await getApp().request.promiseGet(url, {}).then(res => {
  1895 + if (res.data.code == 0 && res.data.data) {
  1896 +
  1897 + var t_act=res.data.data;
  1898 + if(!t_act.zh_num || t_act.zh_num>t_act.zh_buy_num) {
  1899 +
  1900 + if (res.data.data.is_show == 1 && res.data.data.is_end == 0
  1901 + && ut.gettimestamp() < res.data.data.end_time
  1902 + && ut.gettimestamp() > res.data.data.start_time
  1903 + ) {
  1904 + b_item.prom_type = 7;
  1905 + b_item.prom_id = res.data.data.id;
  1906 + good.prom_type = 7;
  1907 + good.prom_id = res.data.data.id;
  1908 + }
  1909 + }
  1910 + }
  1911 + })
  1912 + break;
  1913 + case 10:
  1914 +
  1915 + var url = `/api/weshop/prom/ladderForm/getNew/${os.stoid}/${user_id}/${good.prom_id}`;
  1916 + await getApp().request.promiseGet(url, {}).then(res => {
  1917 + if (res.data.code == 0 && res.data.data && res.data.data.isuse && res.data.data.is_end == 0) {
  1918 + b_item.prom_type = 10;
  1919 + b_item.prom_id = res.data.data.id;
  1920 + }
  1921 + })
  1922 + break;
  1923 + }
  1924 +
  1925 +
  1926 + //如果有优惠促销的时候,要看下商品的优惠活动有没有过期
  1927 + if((g_item.prom_type==3 || good.prom_type==3) && good.whsle_id<=0){
  1928 + var is_g_prom=0;
  1929 + //因为有全场优惠活动,商品参加的活动还未开始
  1930 + var url="/api/weshop/activitylist/getGoodActInfo";
  1931 + var req_data={
  1932 + store_id:os.stoid,goodsidlist:good.goods_id,is_detail:1,user_id:user_id
  1933 + };
  1934 + await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) {
  1935 + if(res.data.code==0 && res.data.data && res.data.data.length){
  1936 + for(let i in res.data.data){
  1937 + let item=res.data.data[i];
  1938 + if(item.prom_type==3) {
  1939 + is_g_prom=1; break;
  1940 + }
  1941 + }
  1942 + }
  1943 + })
  1944 + if(is_g_prom) {
  1945 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1"+"/"+getApp().globalData.user_id, {}).then(res => {
  1946 + if (res.data.code == 0) {
  1947 + var r_data = res.data.data;
  1948 + if (r_data.promGoodsLists) {
  1949 + b_item.prom_type = 3;
  1950 + b_item.prom_id = r_data.promGoodsLists[0].prom_id;
  1951 + }
  1952 + }
  1953 + })
  1954 + }else{
  1955 + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + good.goods_id, {}).then(res => {
  1956 + if (res.data.code == 0) {
  1957 + var r_data = res.data.data;
  1958 + if (r_data.promGoodsLists) {
  1959 + b_item.prom_type = 3;
  1960 + b_item.prom_id = r_data.promGoodsLists[0].prom_id;
  1961 + }
  1962 + }
  1963 + })
  1964 + }
  1965 + }
  1966 +
  1967 +
  1968 + //判断是不是线下库存的购买, 是不是秒杀活动
  1969 + if(th.data.sales_rules>=2 && !prom && !good.whsle_id){
  1970 +
  1971 + //-- 看一下购物车上有多少商品 --
  1972 + var cart_num=0;
  1973 + await getApp().request.promiseGet("/api/weshop/cart/page", {
  1974 + data: {
  1975 + store_id: os.stoid,
  1976 + user_id: getApp().globalData.user_id,
  1977 + state:0, is_gift:0,
  1978 + goods_id:good.goods_id,
  1979 + pick_id: b_item.pickup_id
  1980 + }
  1981 + }).then(res=>{
  1982 + var num = 0;
  1983 + if(res.data.code==0 && res.data.data && res.data.data.pageData) {
  1984 + for (var i = 0; i < res.data.data.pageData.length; i++) {
  1985 + num += res.data.data.pageData[i].goods_num;
  1986 + }
  1987 + }
  1988 + cart_num=num;
  1989 + })
  1990 +
  1991 + var lock=0,plist=null;
  1992 +
  1993 + if(b_item.prom_type!=7) {
  1994 +
  1995 +
  1996 + var lock_rq={store_id: os.stoid, wareId: good.goods_id, storageId: b_item.pickup_id, pageSize: 1000};
  1997 + if(th.data.sales_rules==3){
  1998 + lock_rq.appoint_pick_keyid=th.data.appoint_pick_keyid;
  1999 + delete lock_rq.storageId;
  2000 + }
  2001 +
  2002 + //先读取门店的lock,
  2003 + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
  2004 + data:lock_rq
  2005 + }).then(res => {
  2006 + if (res.data.code == 0 && res.data.data.total > 0) {
  2007 + for (var i in res.data.data.pageData)
  2008 + lock += res.data.data.pageData[i].outQty
  2009 + }
  2010 + })
  2011 +
  2012 + var sto_rq={storageNos: pickup.pickup_no,wareIds: encodeURIComponent(good.erpwareid),storeId: os.stoid };
  2013 + if(th.data.sales_rules==3){
  2014 + sto_rq.storageIds=th.data.appoint_pick_keyid;
  2015 + delete sto_rq.storageNos;
  2016 + }
  2017 +
  2018 +
  2019 +
  2020 + //---通过接口获取门店的线下库存信息--
  2021 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
  2022 + data: sto_rq
  2023 + }).then(res => {
  2024 + if (res.data.code == 0 && res.data.data.total > 0) {
  2025 + plist = res.data.data.pageData[0];
  2026 + }
  2027 + })
  2028 +
  2029 + if (!plist) {
  2030 + err_text += good['goods_name'] + "库存不足\n";
  2031 + continue;
  2032 + }
  2033 + if (plist.CanOutQty - lock <= 0) {
  2034 + err_text += good['goods_name'] + "库存不足\n";
  2035 + continue;
  2036 + }
  2037 + if (b_item.goods_num > (plist.CanOutQty - lock)) {
  2038 + b_item.goods_num = plist.CanOutQty - lock;
  2039 + }
  2040 + }
  2041 + var req_data={
  2042 + store_id: os.stoid,
  2043 + user_id: getApp().globalData.user_id,
  2044 + goods_id: good.goods_id,
  2045 + };
  2046 + if(b_item.prom_type==7){
  2047 + req_data.prom_type=7;
  2048 + req_data.prom_id=b_item.prom_id;
  2049 + }
  2050 +
  2051 + var buynum=0;
  2052 + var promnum=0;
  2053 + //---要获得商品,该用户买了多少件,同步应用---
  2054 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  2055 + data: req_data,
  2056 + }).then(res => {
  2057 + if(res.data.code==0){
  2058 + var buy_num_data = res.data.data;
  2059 + buynum = buy_num_data.goodsbuynum;
  2060 + if(buy_num_data.promgoodsbuynum){
  2061 + promnum=buy_num_data.promgoodsbuynum;
  2062 + }
  2063 + }
  2064 + })
  2065 +
  2066 + //---- 要计算商品的限购 -----
  2067 + if(good['viplimited']>0){
  2068 + if(cart_num+buynum>good['viplimited']){
  2069 + err_text+= good['goods_name']+"超出限购\n";
  2070 + continue;
  2071 + }
  2072 + good['viplimited']-=(cart_num+buynum);
  2073 + if(b_item.goods_num>good['viplimited']){
  2074 + b_item.goods_num=good['viplimited'];
  2075 + }
  2076 + }
  2077 + //不需要计算组合购的限购
  2078 +
  2079 + back_goods_arr.push(b_item); //返回商品元素
  2080 +
  2081 + }else{
  2082 + //-- 看一下购物车上有多少商品 --
  2083 + var cart_num=0;
  2084 + await getApp().request.promiseGet("/api/weshop/cart/page", {
  2085 + data: {
  2086 + store_id: os.stoid,
  2087 + user_id: getApp().globalData.user_id,
  2088 + state:0, is_gift:0,
  2089 + goods_id:good.goods_id
  2090 + }
  2091 + }).then(res=>{
  2092 + var num = 0;
  2093 + if(res.data.code==0 && res.data.data && res.data.data.pageData) {
  2094 + for (var i = 0; i < res.data.data.pageData.length; i++) {
  2095 + num += res.data.data.pageData[i].goods_num;
  2096 + }
  2097 + }
  2098 + cart_num=num;
  2099 + })
  2100 +
  2101 + if(good.store_count<=0){
  2102 + err_text+= good['goods_name']+"库存不足\n";
  2103 + continue;
  2104 + }
  2105 + if(b_item.goods_num>good.store_count)
  2106 + b_item.goods_num=good.store_count;
  2107 +
  2108 + var buynum=0; //商品已经购买多少件
  2109 + var promgoodsbuynum=0; //活动已经购买多少件
  2110 + var redis_num = 0; //redis库存
  2111 +
  2112 + var req_data={
  2113 + store_id: os.stoid,
  2114 + user_id: getApp().globalData.user_id,
  2115 + goods_id: good.goods_id,
  2116 + };
  2117 +
  2118 + if(prom){
  2119 + req_data.prom_type= good.prom_type;
  2120 + req_data.prom_id= good.prom_id;
  2121 + b_item.prom_type=good.prom_type;
  2122 + b_item.prom_id=good.prom_id;
  2123 +
  2124 + //------判断活动是否抢光-----
  2125 + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
  2126 + os.stoid + "/" + good.prom_type + "/" + good.prom_id, {
  2127 + 1: 1
  2128 + }).then(res => {
  2129 + redis_num = res.data.data;
  2130 + });
  2131 + if(redis_num<=0){
  2132 + //不允许商品普通价格修改
  2133 + if(!prom.is_shop_buy && prom.is_shop_buy!=undefined) {
  2134 + err_text += good['goods_name'] + "活动不足\n";
  2135 + continue;
  2136 + }
  2137 + }
  2138 +
  2139 + }
  2140 +
  2141 + //---要获得商品,该用户买了多少件,同步应用---
  2142 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  2143 + data: req_data,
  2144 + }).then(res => {
  2145 + if(res.data.code==0){
  2146 + var buy_num_data = res.data.data;
  2147 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  2148 + buynum = buy_num_data.goodsbuynum;
  2149 + }
  2150 + })
  2151 +
  2152 + //---- 要计算商品的限购 -----
  2153 + if(good['viplimited']>0){
  2154 + if(cart_num+buynum>good['viplimited']){
  2155 + err_text+= good['goods_name']+"超出限购\n";
  2156 + continue;
  2157 + }
  2158 + good['viplimited']-=(cart_num+buynum);
  2159 + if(b_item.goods_num>good['viplimited']){
  2160 + b_item.goods_num=good['viplimited'];
  2161 + }
  2162 +
  2163 + }
  2164 +
  2165 + //-- 判断活动的库存 --
  2166 + if(prom){
  2167 + if(prom['goods_num']<=prom['buy_num']){
  2168 + err_text+= good['goods_name']+"超出活动库存\n";continue;
  2169 + }
  2170 +
  2171 + if(b_item.goods_num>prom['goods_num']-prom['buy_num']){
  2172 + b_item['goods_num']= b_item['goods_num']-b_item['buy_num'];
  2173 + }
  2174 +
  2175 + if(b_item.goods_num>redis_num){
  2176 + b_item.goods_num=redis_num;
  2177 + }
  2178 +
  2179 + if(prom['buy_limit']>0){
  2180 + if(cart_num+promgoodsbuynum>=prom['buy_limit'] ){
  2181 + err_text+= good['goods_name']+"超出活动限购\n";continue;
  2182 + }
  2183 + prom['buy_limit'] -= (cart_num+buynum);
  2184 + if(b_item.goods_num>prom['buy_limit']){
  2185 + b_item.goods_num=prom['buy_limit'];
  2186 + }
  2187 + }
  2188 +
  2189 +
  2190 + }
  2191 + back_goods_arr.push(b_item); //返回商品元素
  2192 + }
  2193 + }
  2194 +
  2195 + //有重新购买的数据是时候,就要重新生成订单
  2196 + if(back_goods_arr.length>0){
  2197 + th.setData({back_goods_arr:back_goods_arr});
  2198 + if(!err_text){
  2199 + th.more_add_cart();
  2200 + }else{
  2201 + wx.hideLoading();
  2202 + // 如果没有获取用户信息
  2203 + wx.showModal({
  2204 + title:'确定',
  2205 + content: err_text+',确定要买其他商品码?',
  2206 + success(res) {
  2207 + if (res.confirm) {
  2208 + //跳转到登录页
  2209 + th.more_add_cart();
  2210 + }else{
  2211 + th.data.moring=0;
  2212 + wx.hideLoading();
  2213 + }
  2214 + },fail(){
  2215 + th.data.moring=0;
  2216 + wx.hideLoading();
  2217 + }
  2218 + });
  2219 +
  2220 + }
  2221 + }else{
  2222 + th.data.moring=0;
  2223 + wx.hideLoading();
  2224 + getApp().confirmBox(err_text);
  2225 + }
  2226 + },
  2227 +
  2228 + more_add_cart:async function(){
  2229 + var back_goods_arr=this.data.back_goods_arr;
  2230 + var err_text="";
  2231 + var ok_num=0;
  2232 +
  2233 + for(var i in back_goods_arr){
  2234 + //商品ID
  2235 + var g_item=back_goods_arr[i];
  2236 + var newd = {
  2237 + goods_id: g_item.goods_id,
  2238 + goods_num: g_item.goods_num,
  2239 + pick_id: g_item.pickup_id,
  2240 + user_id: oo.user_id,
  2241 + store_id: os.stoid,
  2242 + goods_price: g_item.price,
  2243 + member_goods_price: g_item.price,
  2244 + goods_name: g_item.goods_name,
  2245 + goods_sn: g_item.goods_sn,
  2246 + sku: g_item.sku,
  2247 + };
  2248 +
  2249 + if(g_item.guide_id){
  2250 + newd['guide_id']=g_item.guide_id;
  2251 + newd['guide_type']=g_item.guide_type;
  2252 + }
  2253 +
  2254 + if(g_item.is_integral_normal){
  2255 + newd['is_integral_normal']=g_item.is_integral_normal;
  2256 + }
  2257 + if(g_item.is_pd_normal){
  2258 + newd['is_pd_normal']=g_item.is_pd_normal;
  2259 + }
  2260 + if(g_item.prom_type){
  2261 + //3,5,7,10加入购物车,统一prom_type为0
  2262 + if([3,5,7,10].indexOf(g_item.prom_type)>-1){
  2263 + g_item.prom_type=0;
  2264 + g_item.prom_id=0;
  2265 + }
  2266 + newd['prom_type']=g_item.prom_type;
  2267 + newd['prom_id']=g_item.prom_id;
  2268 + }
  2269 +
  2270 +
  2271 + var b_cart_goods=null;
  2272 + await getApp().request.promiseGet("/api/weshop/cart/page", {
  2273 + data: {
  2274 + store_id: os.stoid,
  2275 + user_id: oo.user_id,
  2276 + goods_id: g_item.goods_id,
  2277 + pick_id: g_item.pickup_id,
  2278 + },
  2279 + }).then(res=>{
  2280 + //-------如果购物车中有相关的数据-------
  2281 + if (res.data.data.total > 0) {
  2282 + b_cart_goods= res.data.data.pageData;
  2283 + }
  2284 + })
  2285 +
  2286 +
  2287 + //-- 判断购物车是不是有重复 --
  2288 + var is_has=0;
  2289 + if(b_cart_goods) {
  2290 + for (let jr = 0; jr < b_cart_goods.length; jr++) {
  2291 + var b_cart_item = b_cart_goods[jr];
  2292 + if (!g_item.prom_type || g_item.prom_type == 0) {
  2293 + if ([0, 3, 5, 7, 10].indexOf(b_cart_item.prom_type) > -1) {
  2294 + is_has = b_cart_item;
  2295 + break
  2296 + }
  2297 + } else {
  2298 + if (b_cart_goods.prom_type == g_item.prom_type && b_cart_goods.prom_id == g_item.prom_id) {
  2299 + is_has = b_cart_item;
  2300 + break
  2301 + }
  2302 + }
  2303 + }
  2304 + }
  2305 +
  2306 +
  2307 + //-- 如果就加入过购物车 --
  2308 + if(is_has){
  2309 + var updata = {
  2310 + id: is_has.id,
  2311 + goods_num: newd.goods_num + is_has.goods_num,
  2312 + goods_price: newd.goods_price,
  2313 + member_goods_price:newd.goods_price,
  2314 + store_id: os.stoid,
  2315 + };
  2316 + if(newd.guide_id){
  2317 + updata.guide_id=newd.guide_id;
  2318 + updata.guide_type=newd.guide_type;
  2319 + }
  2320 + await getApp().request.promisePut("/api/weshop/cart/update", {
  2321 + data: updata
  2322 + }).then(res=>{
  2323 + if(res.data.code==0) {
  2324 + ok_num++;
  2325 + }else{
  2326 + err_text+=newd.goods_name+"加入购物车失败\n";
  2327 + }
  2328 + })
  2329 +
  2330 + }else{
  2331 + await getApp().request.promisePost("/api/weshop/cart/save", {
  2332 + data: newd
  2333 + }).then(res=>{
  2334 + if(res.data.code==0) {
  2335 + ok_num++;
  2336 + }else{
  2337 + err_text+=newd.goods_name+"加入购物车失败\n";
  2338 + }
  2339 + })
  2340 + }
  2341 + }
  2342 +
  2343 + wx.hideLoading();
  2344 + this.data.moring=0;
  2345 + if(ok_num==0){
  2346 + //-- 如果没有获取用户信息 --
  2347 + wx.showModal({
  2348 + title:'提示',
  2349 + content: err_text,
  2350 + success(res) {}
  2351 + });
  2352 + }else{
  2353 + if(err_text==""){
  2354 + getApp().goto("/pages/cart/cart/cart");
  2355 + }else{
  2356 + // 如果没有获取用户信息
  2357 + wx.showModal({
  2358 + title:'提示',
  2359 + content: err_text,
  2360 + success(res) {
  2361 + if (res.confirm) {
  2362 + //跳转到登录页
  2363 + getApp().goto("/pages/cart/cart/cart");
  2364 + }
  2365 + }
  2366 + });
  2367 +
  2368 + }
  2369 +
  2370 + }
  2371 + },
  2372 +
  2373 + toast(msg){
  2374 + wx.showToast({
  2375 + title: msg,
  2376 + icon: 'none',
  2377 + duration: 3000
  2378 + })
  2379 + },
  2380 +
  2381 + con_weixin:function () {
  2382 + getApp().con_wx(this);
  2383 + },
  2384 +
  2385 + //跳转到商品
  2386 + go_gd:function (e) {
  2387 + var user_id=getApp().globalData.user_id;
  2388 + if(!user_id) user_id=0;
  2389 +
  2390 + var gd_item= e.currentTarget.dataset.gd;
  2391 + var gd=gd_item.goods_id;
  2392 +
  2393 + if(gd_item.prom_type>0){
  2394 + good_url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gd + "&prom_id=" + gd_item.prom_id + "&prom_type="+gd_item.prom_type;
  2395 + getApp().goto(good_url);
  2396 + return false;
  2397 + }
  2398 +
  2399 + var good_url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + gd;
  2400 + var url="/api/weshop/activitylist/getGoodActInfo";
  2401 + var req_data={
  2402 + store_id:os.stoid,goodsidlist:gd,is_detail:1,user_id:user_id
  2403 + };
  2404 + //获取秒杀的多规格
  2405 + getApp().request.promiseGet(url, {data:req_data}).then(res=>{
  2406 + if(res.data.code==0 && res.data.data){
  2407 + if(res.data.data.length==1){
  2408 + var item=res.data.data[0];
  2409 + switch (item.prom_type){
  2410 + case 9:
  2411 + good_url= '/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo?goods_id=' + gd + '&group_id=' + item.act_id;
  2412 + break;
  2413 + case 8:
  2414 + good_url="/packageC/pages/presell/goodsInfo/goodsInfo?goods_id="+gd+"&prom_id="+item.act_id
  2415 + break;
  2416 + default:
  2417 + good_url="/pages/goods/goodsInfo/goodsInfo?goods_id="+gd+"&prom_id="+item.act_id+"&prom_type="+item.prom_type;
  2418 + break
  2419 + }
  2420 + }
  2421 + getApp().goto(good_url);
  2422 +
  2423 + }else{
  2424 + getApp().goto(good_url);
  2425 + }
  2426 + })
  2427 + },
  2428 +
  2429 +
  2430 +
  2431 + click_contact:function () {
  2432 + getApp().globalData.no_clear=1;
  2433 + },
  2434 +
  2435 +
  2436 + //-- 查看物流 --
  2437 + go_wuliu:function (e) {
  2438 + getApp().go_wuliu(e);
  2439 + },
  2440 +
  2441 + //优惠促销用户参与次数,is_buy=1,表示只获取支付了的
  2442 + async getUserBuyPromNum_pre(prom_id,is_buy) {
  2443 + var userInfo = getApp().globalData.userInfo;
  2444 + var url = `/api/weshop/ordergoods/getUserBuyPromNum?is_all=1&store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=3&prom_id=${prom_id}`;
  2445 + if(is_buy){
  2446 + url = `/api/weshop/ordergoods/getUserBuyPromNum?store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=3&prom_id=${prom_id}`;
  2447 + }
  2448 + let res = await getApp().request.promiseGet(url, {
  2449 + data: {}
  2450 + });
  2451 + let user_pre_buynum = 0
  2452 + if (res.data.code == 0 && res.data.data) {
  2453 + user_pre_buynum = res.data.data.userbuynum
  2454 + }
  2455 + return user_pre_buynum
  2456 + }
  2457 +
  2458 +
  2459 +
  2460 +
  2461 +
  2462 +});
0 2463 \ No newline at end of file
... ...
packageG/pages/user/order_detail/order_detail.json 0 → 100644
  1 +{
  2 + "navigationBarTitleText": "订单详情",
  3 + "enablePullDownRefresh": false,
  4 + "usingComponents": {
  5 + "warn": "/components/long_warn/long_warn"
  6 + }
  7 +}
0 8 \ No newline at end of file
... ...
packageG/pages/user/order_detail/order_detail.wxml 0 → 100644
  1 +<wxs module="filters" src="../../../../utils/filter.wxs"></wxs>
  2 +<view class="container">
  3 + <view class="user-mes" wx:if="{{order.exp_type==0 || order.exp_type==2 }}">
  4 + <view class="user-contact">
  5 + {{order.consignee}}{{'  '}}{{order.mobile}}
  6 + </view>
  7 + <view class="location" wx:if="{{order.order_prom_type!=5}}">
  8 + <view class="address">{{order.more_address}} {{order.address}}</view>
  9 + <view class="pos-icon">
  10 + <image class="wh100" src="{{iurl}}/miniapp/images/iconfont-shouhuodizhi.png"></image>
  11 + </view>
  12 + </view>
  13 + <view class="border-img">
  14 + <image class="wh100" src="{{iurl}}/miniapp/images/tt.png"></image>
  15 + </view>
  16 + </view>
  17 + <view class="order-meg">
  18 + <view class="order-state"><view class="shop_name">门店:{{order.pickname}}</view>
  19 + <view>{{order.order_status_detail}}</view>
  20 + </view>
  21 + <!--wx:if="{{item.return_btn!=4}}" -->
  22 + <view class="order-detail" wx:for="{{order.order_goods}}" wx:key="{{index}}" >
  23 + <view class="goods-img" bindtap="go_gd" data-gd="{{item}}">
  24 + <image class="wh100" src="{{resourceUrl+item.original_img}}" binderror="bind_bnerr" lazy-load="true"
  25 + data-errorimg="order.order_goods[{{index}}].original_img"></image>
  26 + </view>
  27 + <!-- 跳转到商品 -->
  28 + <navigator class="order-cont" bindtap="go_gd" data-gd="{{item}}">
  29 + <view class="goods-name">{{item.goods_name}}</view>
  30 + <!--<view class="goods-color">{{item.goods_spec}} {{item.goods_color}}</view>-->
  31 + <view class="goods-color">{{filters.show_gui_ge(item.goods_spec,item.goods_color)}}</view>
  32 + </navigator>
  33 +
  34 + <view class="order-num">
  35 + <view class="goods-price">¥{{item.member_goods_price}}<text wx:if="{{item.prom_type==10}}" style="margin-left: 5rpx">({{item.ladder_discount}}折)</text> </view>
  36 + <view class="goods-num">×{{item.goods_num}}</view>
  37 +
  38 + <!-- 不是整单退的时候 -->
  39 + <block wx:if="{{!order.pre_cut && order.is_all_return!=1 && order.discount<=0 && order.coupon_price<=0 && order.order_prom_amount<=0 && order.discount_amount<=0 && item.prom_type!=5 && !order.is_prom && item.is_whsle_goods!=1}}">
  40 + <view bindtap="checkReturnGoodsStatus" class="goods-num" data-oid="{{item.order_id}}"
  41 + data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==1 && !order.is_bedistri}}">申请退款</view>
  42 + <view bindtap="gotoreturn" class="return-btn" data-oid="{{item.order_id}}"
  43 + data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==2}}">退款中</view>
  44 + <view bindtap="checkReturnGoodsStatus" class="goods-num" data-oid="{{item.order_id}}"
  45 + data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==3}}">重新退款</view>
  46 + <view bindtap="gotoreturn" class="goods-num" data-oid="{{item.order_id}}"
  47 + data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==4}}">退款完成</view>
  48 + </block>
  49 +
  50 +
  51 + </view>
  52 + </view>
  53 + <view class="order-operate">
  54 + <view bindtap="checkTeam" class="contact-us check-btn" wx:if="{{optionIsGoup}}">查看拼团详情</view>
  55 + <view>
  56 +
  57 + <button wx:if="{{sys_switch.weapp_customertype==1}}" class="contact-us goods-btn" bindtap="click_contact" 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>
  60 + <view wx:else bindtap="contactService" class="contact-us goods-btn">联系客服</view>
  61 + </view>
  62 + <!-- <view bindtap="contactService" class="contact-us goods-btn">联系客服</view> -->
  63 + <view bindtap="cancelOrder" class="cancel-order goods-btn" data-id="{{order.order_id}}"
  64 + hidden="{{!(order.order_status==0&&order.pay_status==0)}}">取消订单</view>
  65 + </view>
  66 + </view>
  67 + <view class="basic-information information">
  68 + <view class="title">基本信息</view>
  69 + <view class="item">
  70 + <view>订单编号</view>
  71 + <view>{{order.order_sn}}</view>
  72 + </view>
  73 + <view class="item">
  74 + <view>下单时间</view>
  75 + <view>{{order.addTimeFormat}}</view>
  76 + </view>
  77 +
  78 + <view class="item" wx:if="{{order.order_prom_type!=5}}">
  79 + <view>配送方式</view>
  80 + <view wx:if="{{order.pt_status<4 && order.is_zsorder==4}}">
  81 + --
  82 + </view>
  83 +
  84 + <view wx:if="{{order.exp_type==2}}">同城配送</view>
  85 + <view wx:elif="{{order.exp_type==1}}">自提</view>
  86 + <view wx:else>物流({{order.shipping_name}})</view>
  87 + </view>
  88 + <view class="item">
  89 + <view>买家留言</view>
  90 + <view class="leave-word">{{order.user_note!=''?order.user_note:'无'}}</view>
  91 + </view>
  92 + </view>
  93 + <view class="price-information information" style="margin-bottom: 120rpx;">
  94 + <view class="title" style="margin-bottom:10rpx" >价格信息</view>
  95 + <view class="item pnew" wx:if="{{order.is_zsorder==4}}">
  96 + <view>商品总价</view>
  97 + <view>¥ {{filters.toFix(order.order_goods[0].member_goods_price*order.order_goods[0].goods_num,2)}}元</view>
  98 + </view>
  99 + <view class="item pnew" wx:else>
  100 + <view>商品总价</view>
  101 + <view>¥ {{order.goods_price}}元</view>
  102 + </view>
  103 +
  104 + <view class="item pnew" wx:if="{{order.is_zsorder==4}}">
  105 + <view>定金金额</view>
  106 + <view>¥ {{filters.toFix(order.order_amount+order.user_money,2)}}元</view>
  107 + </view>
  108 + <view class="item pnew" wx:if="{{order.pt_tail_money>0}}">
  109 + <view>尾款金额</view>
  110 + <view>¥ {{filters.toFix(order.pt_tail_money-order.shipping_price,2)}}元</view>
  111 + </view>
  112 +
  113 + <view class="item pnew" wx:if="{{order.shipping_price>0}}">
  114 + <view>配送费用</view>
  115 + <view>¥ {{order.shipping_price}}元</view>
  116 + </view>
  117 + <view class="item pnew" wx:if="{{order.coupon_price>0}}">
  118 + <view>优惠券</view>
  119 + <view> ¥ {{order.coupon_price}}元</view>
  120 + </view>
  121 + <view class="item pnew" wx:if="{{order.pre_cut>0}}">
  122 + <view>使用预存</view>
  123 + <view> ¥ {{order.pre_cut}}元</view>
  124 + </view>
  125 + <view class="item pnew" wx:if="{{order.integral>0}}">
  126 + <view>积分</view>
  127 + <view>{{order.integral}}积分</view>
  128 + </view>
  129 +
  130 + <view class="item pnew" wx:if="{{order.discount_amount>0}}">
  131 + <view>优惠活动</view>
  132 + <view>¥ {{filters.toFix(order.discount_amount,2)}}元</view>
  133 + </view>
  134 +
  135 + <view class="item pnew" wx:if="{{order.ladder_amount>0}}">
  136 + <view>阶梯优惠活动</view>
  137 + <view>¥ {{filters.toFix(order.ladder_amount,2)}}元</view>
  138 + </view>
  139 +
  140 + <view class="item pnew" wx:if="{{order.order_prom_amount>0}}">
  141 + <view>订单优惠</view>
  142 + <view>¥ {{order.order_prom_amount}}元</view>
  143 + </view>
  144 +
  145 + <view class="item">
  146 + <view>订单总价</view>
  147 + <view>¥ {{filters.toFix(order.order_amount+order.user_money+order.pt_tail_money+order.use_commission+order.pre_cut,2)}}元</view>
  148 + </view>
  149 +
  150 + <view class="item-line"></view>
  151 +
  152 + <view class="item" wx:if="{{order.use_commission>0}}">
  153 + <view>使用佣金</view>
  154 + <view>¥ {{filters.toFix(order.use_commission,2)}}元</view>
  155 + </view>
  156 +
  157 + <view class="item" wx:if="{{order.user_money>0}}">
  158 + <view>使用余额</view>
  159 + <view wx:if="{{order.tail_pay_type==1}}">¥ {{filters.toFix(order.user_money+order.pt_tail_money,2)}}元</view>
  160 + <view wx:else>¥ {{filters.toFix(order.user_money,2)}}元</view>
  161 + </view>
  162 + <view style="height:10rpx"></view>
  163 + </view>
  164 +
  165 + <view class="btn-wrap">
  166 +
  167 + <view bindtap="zfwk" class="tips-btn" wx:if="{{order.pt_tail_money>0 && order.pt_status==2 }}">支付尾款</view>
  168 + <view bindtap="jumpToCart4" class="tips-btn" hidden="{{!order.pay_btn}}">
  169 + <text wx:if="{{paying}}">支付中</text>
  170 + <text wx:else>立即付款</text>
  171 + </view>
  172 +
  173 + <block wx:if="{{!(order.has_rt || order.return_btn==2 || order.return_btn==4)}}">
  174 + <navigator bindtap="confirmOrder" class="tips-btn" hidden="{{!order.receive_btn}}">收货确认</navigator>
  175 + </block>
  176 +
  177 + <view class="tips-btn" wx:if="{{order.order_status==3}}" bindtap="deleteOrderData" data-order_id="{{order.order_id}}" >删除订单</view>
  178 +
  179 +
  180 + <navigator bindtap="go_wuliu" class="tips-btn" hidden="{{!order.shipping_btn}}"
  181 + data-order_id="{{order.order_id}}"
  182 + data-url="/packageG/pages/user/express/express?order_id={{order.order_id}}">查看物流</navigator>
  183 +
  184 + <!---has_rt部分退---->
  185 + <block wx:if="{{order.return_btn==undefined && order.is_all_return!=1 && order.has_rt!=1}}">
  186 + <navigator class="tips-btn" wx:if="{{(order.order_status==0&&order.pay_status==1) && !order.is_bedistri}}" url="/packageG/pages/order/refund_order/refund_order?order_id={{order.order_id}}">申请退款</navigator>
  187 + <navigator class="tips-btn" wx:if="{{(order.order_status==1&&order.pay_status==1) && !order.is_bedistri}}" url="/packageG/pages/order/refund_order/refund_order?order_id={{order.order_id}}">申请退款</navigator>
  188 + </block>
  189 + <block wx:else>
  190 + <view class="tips-btn" wx:if="{{order.is_all_return_status==2 && order.isdel==0}}" bindtap="deleteOrderData" data-order_id="{{order.order_id}}" >删除订单</view>
  191 + <navigator class="tips-btn" wx:if="{{order.is_all_return_status==3 && order.order_status<2}}" url="/packageG/pages/order/refund_order/refund_order?order_id={{order.order_id}}">重新退款</navigator>
  192 + <navigator class="tips-btn" wx:if="{{order.is_all_return_status==0 || order.is_all_return_status==1}}"
  193 + url="/packageF/pages/user/return_goods_info/return_goods_info?order_id={{order.order_id}}">退款详情</navigator>
  194 + </block>
  195 +
  196 +
  197 + <block wx:if="{{order.order_status==2 && order.is_zsorder!=4}}">
  198 + <navigator wx:if="{{order.order_goods.length>1}}" class="tips-btn"
  199 + url="/packageB/pages/user/comment/comment?status=0&order_id={{order.order_id}}">评价</navigator>
  200 + <navigator wx:else class="tips-btn"
  201 + url="/packageB/pages/user/add_comment/add_comment?goods_id={{order.order_goods[0].goods_id}}&order_id={{order.order_id}}">去评价</navigator>
  202 + </block>
  203 + <!-- 积分购 拼团 搭配购没有有再来一单 -->
  204 + <block wx:if="{{ (order.pay_status==1 || order.order_status==3) && order.pt_prom_id<=0 && order.integral<=0 && order.order_goods[0].prom_type!=5}}">
  205 + <view style="background-color: #feca53;" class="tips-btn" bindtap="moreOrder" >再来一单</view>
  206 + </block>
  207 + </view>
  208 +</view>
  209 +
  210 +<warn id="warn"></warn>
... ...
packageG/pages/user/order_detail/order_detail.wxss 0 → 100644
  1 +.user-mes {
  2 + background-color: #fff;
  3 + font-size: 32rpx;
  4 + color: #333;
  5 +}
  6 +
  7 +.user-contact {
  8 + padding: 24rpx 80rpx;
  9 +}
  10 +
  11 +.location {
  12 + position: relative;
  13 + padding: 0 80rpx 24rpx;
  14 +}
  15 +
  16 +.pos-icon {
  17 + position: absolute;
  18 + left: 30rpx;
  19 + top: 0;
  20 + width: 32rpx;
  21 + height: 32.5rpx;
  22 +}
  23 +
  24 +.border-img {
  25 + width: 100%;
  26 + height: 16rpx;
  27 +}
  28 +
  29 +.order-meg {
  30 + margin-bottom: 20rpx;
  31 + font-size: 30rpx;
  32 + margin-top: 20rpx;
  33 +}
  34 +
  35 +.order-state {
  36 + height: 100rpx;
  37 + line-height: 100rpx;
  38 + padding-right: 40rpx;
  39 + padding-left: 40rpx;
  40 + background-color: #fff;
  41 + color: #f23030;
  42 + justify-content: space-between;
  43 + display: flex;
  44 +}
  45 +.shop_name{color: #333}
  46 +.order-detail {
  47 + padding: 30rpx 0;
  48 + border-bottom: 1px solid #ddd;
  49 + color: #666;
  50 + min-height: 115rpx;
  51 +}
  52 +.goods-img {
  53 + float: left;
  54 + width: 100rpx;
  55 + height: 100rpx;
  56 + margin: 0 30rpx;
  57 +}
  58 +
  59 +.order-cont {
  60 + float: left;
  61 + width: 410rpx;
  62 +}
  63 +
  64 +.goods-name {
  65 + height: 60rpx;
  66 + line-height: 30rpx;
  67 + overflow: hidden;
  68 + margin-bottom: 16rpx;
  69 +}
  70 +
  71 +.goods-color {
  72 + font-size: 24rpx;
  73 +}
  74 +
  75 +.order-num {
  76 + float: right;
  77 + font-size: 24rpx;
  78 + margin-top: 10rpx;
  79 + margin-right: 20rpx;
  80 + text-align: right;
  81 + line-height: 42rpx;
  82 +}
  83 +
  84 +.order-operate {
  85 + height: 100rpx;
  86 + padding-right: 20rpx;
  87 + background-color: #fff;
  88 + display: flex;
  89 + align-items: center;
  90 + justify-content: flex-end;
  91 +}
  92 +
  93 +.check-btn {
  94 + width: 180rpx;
  95 + height: 60rpx;
  96 + line-height: 60rpx;
  97 + text-align: center;
  98 + margin-right: 10rpx;
  99 + border: 1px solid #eee;
  100 +}
  101 +
  102 +.goods-btn {
  103 + width: 150rpx;
  104 + height: 60rpx;
  105 + line-height: 60rpx;
  106 + text-align: center;
  107 + border: 1px solid #eee;
  108 +}
  109 +
  110 +.cancel-order {
  111 + margin-left: 20rpx;
  112 +}
  113 +
  114 +.information {
  115 + padding: 0 20rpx;
  116 + background-color: #fff;
  117 + margin-bottom: 20rpx;
  118 +}
  119 +
  120 +.information .title {
  121 + height: 70rpx;
  122 + line-height: 70rpx;
  123 + border-bottom: 1rpx solid #ddd;
  124 + font-size: 34rpx;
  125 + color: #333;
  126 +}
  127 +
  128 +.information .item {
  129 + display: flex;
  130 + justify-content: space-between;
  131 + height: 60rpx;
  132 + line-height: 60rpx;
  133 + font-size: 30rpx;
  134 + color: #333;
  135 +}
  136 +
  137 +.information .item.pnew{
  138 + height: 50rpx;
  139 + line-height: 50rpx;
  140 + color: #999;
  141 +}
  142 +.item-line{ margin: 5rpx 0; height: 1rpx; border-bottom:1rpx solid #ddd }
  143 +
  144 +.delivery-address,.leave-word {
  145 + width: 500rpx;
  146 + text-align: right;
  147 + overflow: hidden;
  148 + white-space: nowrap;
  149 + text-overflow: ellipsis;
  150 +}
  151 +
  152 +.pay-amount {
  153 + color: #f23030;
  154 +}
  155 +
  156 +.btn-wrap {
  157 + height: 100rpx;
  158 + background-color: #fff;
  159 + text-align: right;
  160 + position: fixed; width: 100%; bottom: 0; border-top: 1rpx solid #ddd
  161 +}
  162 +
  163 +.tips-btn {
  164 + display: inline-block;
  165 + width: 200rpx;
  166 + height: 100rpx;
  167 + line-height: 100rpx;
  168 + text-align: center;
  169 + font-size: 30rpx;
  170 + color: #fff;
  171 + background-color: #f23030;
  172 + /* margin-left: 2rpx; */
  173 + margin-right: 8rpx
  174 +}
  175 +
  176 +
  177 +.contact-us.goods-btn::after {
  178 + content: none;
  179 +}
0 180 \ No newline at end of file
... ...
pages/cart/cart/cart.js
... ... @@ -59,57 +59,17 @@ Page({
59 59  
60 60 is_cart:1, //标记是购物车计算的时候
61 61  
  62 + //送赠品的优化
  63 + cart_zp:{},
  64 + //-- dp_cart深拷贝的缓存 --
  65 + dp_cart:null,
  66 +
  67 + //优惠促销活动的集合
  68 + yhcx_act_map: {},
  69 + //-- 活动的购买数量的map --
  70 + act_buy_map:{}
62 71 },
63 72  
64   - //-- 立即购买的时候,获取商品优惠活动,is_state判断是不是单个商品购买,
65   - // 很多活动需要判断会员的plus等级, 权益登陆,user_id调用接口是必须的 --
66   - //先用着,后面会用接口来代替
67   - async buy_pro_group(item1, is_state) {
68   - //-- 代发商品不参与任何活动 --
69   - if (item1.whsle_id) return false;
70   - if (item1.is_gift) return false;
71   -
72   - var th = this;
73   - var req_d = {
74   - store_id: os.stoid,
75   - user_id: getApp().globalData.user_id,
76   - goods_id: item1.goods_id,
77   - goods_num: item1.goods_num,
78   - goods_price: item1.goods_price,
79   - }
80   - //--- 调用接口获取活动 ---
81   - await getApp().promiseGet('/api/weshop/goods/getGoodsPromInfo', {
82   - data: req_d
83   - }).then(res => {
84   - if (res.data.code == 0) {
85   -
86   - var more_cx = res.data.data.more_cx;
87   - for (var i = 0; i < more_cx.length; i++) {
88   - if (more_cx[i].prom_type == 5) {
89   - more_cx[i].main_gid = more_cx[i].collocation.main_goods_id;
90   - var min = more_cx[i].collocation_main_price + more_cx[i].collocation_min_price;
91   - var max = more_cx[i].collocation_main_price + more_cx[i].collocation_max_price;
92   - more_cx[i].show_price = "¥" + min + "-" + max;
93   - }
94   - }
95   - item1.more_cx = more_cx
96   - if (res.data.data.zh_pro) {
97   - th.data.zuhe_map[res.data.data.zh_pro.id] = res.data.data.zh_pro;
98   - }
99   - if (res.data.data.ladder_pro) {
100   - var ladder_pro = res.data.data.ladder_pro;
101   - th.data.ladder_map[ladder_pro.id] = ladder_pro;
102   - var fd = res.data.data.more_cx.find(function (e) {
103   - return e.prom_type == 10;
104   - })
105   - if (fd) {
106   - th.data.ladder_map[ladder_pro.id].ladder_list = fd.ladder_list;
107   - }
108   - }
109   - }
110   - })
111   -
112   - },
113 73  
114 74 onLoad: function () {
115 75 var a = this,
... ... @@ -118,6 +78,7 @@ Page({
118 78 wx.setNavigationBarTitle({
119 79 title: "购物车",
120 80 })
  81 +
121 82 //判断是否有登录
122 83 t.auth.hadAuth() && t.getUserInfo(function () {
123 84 //a.getCardList();
... ... @@ -126,6 +87,9 @@ Page({
126 87 },
127 88 onShow: function () {
128 89  
  90 + //-- 清空 checkouting 结算的标记 --
  91 + this.data.checkouting=0;
  92 +
129 93 if(getApp().globalData.from_act_link){
130 94 this.data.from_act_link= ut.deep_cp(getApp().globalData.from_act_link);
131 95 getApp().globalData.from_act_link=null;
... ... @@ -140,7 +104,8 @@ Page({
140 104 //每次显示都清空
141 105 this.data.in_zhact_gdmap = {};
142 106 this.setData({
143   - invalidList: []
  107 + invalidList: [],
  108 + cart_zp:{} //-- 赠品也要清理显示 --
144 109 });
145 110  
146 111 if (typeof this.getTabBar === 'function' && this.getTabBar()) {
... ... @@ -290,7 +255,6 @@ Page({
290 255 var user = getApp().globalData.userInfo;
291 256 //如果后台有开启等级价的功能
292 257 if (user && parseInt(s_list.rank_switch) == 2 && user['card_expiredate']) {
293   -
294 258 var str = user['card_expiredate'].replace(/-/g, '/');
295 259 var end = new Date(str);
296 260 end = Date.parse(end) / 1000;
... ... @@ -517,7 +481,18 @@ Page({
517 481  
518 482 wx.showLoading();
519 483  
520   - getApp().request.get("/api/weshop/cart/list", {
  484 + //一次性把购物车selected状态变成0
  485 + var url = '/api/weshop/cart/updateUserCart';
  486 + getApp().request.put(url, {
  487 + data: {
  488 + user_id: app.globalData.user_id,
  489 + store_id: oo.stoid,
  490 + selected: 0,
  491 + state:0
  492 + }
  493 + });
  494 +
  495 + getApp().request.get("/api/weshop/cart/listNew1", {
521 496 data: {
522 497 user_id: app.globalData.user_id,
523 498 rd: rd,
... ... @@ -534,65 +509,87 @@ Page({
534 509  
535 510 if (carr && carr.length > 0) {
536 511 var g_arr = [];
  512 + var by_map = null;
  513 +
537 514 for (var i = 0; i < carr.length; i++) {
538   - //-- 清理购物车的选中状态 --
539   - var url = '/api/weshop/cart/update';
540   - getApp().request.put(url, {
541   - data: {
542   - id: carr[i].id,
543   - store_id: oo.stoid,
544   - selected: 0,
545   - }
546   - });
  515 + //填充一下已经买了多少件,只有在商品是有限购条件的时候才进行计算good.viplimited>0
  516 + if(carr[i].viplimited>0){
  517 + if(!by_map) by_map={};
  518 + by_map[carr[i].goods_id] = carr[i].goodsbuynum?carr[i].goodsbuynum:0;
  519 + }
  520 +
  521 + //如果不是活动的时候,不是代发商品的时候,不是赠品的时候
  522 + if([1, 2, 4, 6, 8, 9].indexOf(carr[i].prom_type)== -1 && !carr[i].whsle_id && !carr[i].is_gift ){
547 523  
548   - if (g_arr.length == 0) g_arr.push(carr[i].goods_id);
549   - else {
550   - var ind = g_arr.findIndex(function (ele) {
  524 + //快速查找
  525 + let f_idx=g_arr.findIndex(function (ele) {
551 526 return ele.goods_id == carr[i].goods_id
552   - })
553   - if (ind > -1) continue;
554   - g_arr.push(carr[i].goods_id)
  527 + });
  528 + if(f_idx>-1) continue;
  529 +
  530 + let gd_ite={
  531 + goods_id:carr[i].goods_id,
  532 + goods_num:1,
  533 + is_limit_show:1,
  534 + is_state:0
  535 + }
  536 + g_arr.push(gd_ite);
555 537 }
556 538 }
557 539  
558   - var by_map = null;
559   -
560   - // //--要获得商品,该用户买了多少件,同步应用--
561   - // await getApp().request.promiseGet("/api/weshop/ordergoods/listUserBuyGoodsNum", {
562   - // data: {
563   - // store_id: oo.stoid,
564   - // user_id: user_id,
565   - // goods_ids: g_arr.join(','),
566   - //
567   - // },
568   - // }).then(res => {
569   - // if (ut.ajax_ok2(res)) {
570   - // by_map = {};
571   - // for (let i in res.data.data) {
572   - // let item = res.data.data[i];
573   - // by_map[item.goods_id] = item;
574   - // }
575   - // }
576   - // })
577   -
578   - for (let ir = 0; ir < g_arr.length; ir++) {
579   - let gg_it=g_arr[ir];
580   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
581   - data: {
582   - store_id: oo.stoid,
583   - user_id: user_id,
584   - goods_id: gg_it,
585   - isnew:1
586   - },
587   - }).then(tt => {
588   - if (tt.data.code == 0) {
589   - if(!by_map) by_map={};
590   - by_map[gg_it] = tt.data.data;
  540 + //获取商品参与的促销活,优惠促,搭配促,组合促,阶梯促销
  541 + let cx_rs= await getApp().request.promisePost("/api/weshop/cart/listGoodsPromInfo",{
  542 + is_json:1,
  543 + data:{
  544 + user_id:app.globalData.user_id,
  545 + store_id:oo.stoid,
  546 + goods:g_arr,
  547 + }
  548 + });
  549 + //-- 判断返回结果有没有正确,有促销活动就要进行赋值 --
  550 + if(cx_rs && cx_rs.data.code==0 && cx_rs.data.data && cx_rs.data.data.goods) {
  551 + let g_list=cx_rs.data.data.goods;
  552 + for (var ia = 0; ia < carr.length; ia++) {
  553 + if (carr[ia].whsle_id) continue; //代发商品不进行赋值
  554 + if (carr[ia].is_gift) continue; //赠品不进行赋值
  555 + //有参与秒,团购之类的活动不进行赋值
  556 + if([1, 2, 4, 6, 8, 9].indexOf(carr[ia].prom_type)> -1 ) continue;
  557 + //再g_list中快速查找
  558 + let i_fd=g_list.find(function (ele) {
  559 + return ele.goods_id == carr[ia].goods_id
  560 + });
  561 + if(i_fd.goodsPromInfoRespDto){
  562 + //-- 多促销活动的优化 --
  563 + i_fd=i_fd.goodsPromInfoRespDto;
  564 + //-- 赋值多促销活动的优化--
  565 + carr[ia].more_cx=i_fd.more_cx;
  566 + //商品优惠促销的缓存
  567 + if (i_fd.yhcx_pro) {
  568 + th.data.yhcx_act_map[i_fd.yhcx_pro.id] = i_fd.yhcx_pro;
  569 + }
  570 + //商品组合促销的缓存
  571 + if (i_fd.zh_pro) {
  572 + th.data.zuhe_map[i_fd.zh_pro.id] = i_fd.zh_pro;
  573 + }
  574 + //商品阶梯促销的缓存
  575 + if (i_fd.ladder_pro) {
  576 + var ladder_pro = i_fd.ladder_pro;
  577 + th.data.ladder_map[ladder_pro.id] = ladder_pro;
  578 + var fd_ite = i_fd.more_cx.find(function (e) {
  579 + return e.prom_type == 10;
  580 + })
  581 + if (fd_ite) {
  582 + th.data.ladder_map[ladder_pro.id].ladder_list = fd_ite.ladder_list;
591 583 }
592   - })
  584 + }
  585 + }
  586 +
  587 + }
593 588 }
594 589  
595 590  
  591 +
  592 + let cart_up_data=[];
596 593 for (var i = 0; i < carr.length; i++) {
597 594 var item = carr[i];
598 595 var good = item;
... ... @@ -622,7 +619,7 @@ Page({
622 619 promgoodsbuynum = 0,
623 620 limit = 0;
624 621 if (by_map && by_map[good.goods_id]) {
625   - goodsbuynum = by_map[good.goods_id].goodsbuynum;
  622 + goodsbuynum = by_map[good.goods_id];
626 623 //promgoodsbuynum = by_map[good.goods_id].promgoodsbuynum;
627 624 }
628 625  
... ... @@ -650,7 +647,7 @@ Page({
650 647 }
651 648  
652 649 //-- 如果有优惠促销,和阶梯促销,要看下有没有组合购,搭配购,看一下优惠促销和阶梯促销谁是指定商品参与的 --
653   - if (item.prom_type == 3 || item.prom_type == 5 || item.prom_type == 7 || item.prom_type == 10) {
  650 + if (item.prom_type == 0 || item.prom_type == 3 || item.prom_type == 5 || item.prom_type == 7 || item.prom_type == 10) {
654 651 var c_prom_type = 0;
655 652 var c_prom_id = 0;
656 653  
... ... @@ -662,19 +659,19 @@ Page({
662 659 } else {
663 660 item.goods_price = good.shop_price;
664 661 }
665   -
666 662 //-- 购物车更新 --
667 663 var updata1 = {
668   - id: item.id,
669   - prom_type: c_prom_type,
670   - prom_id: c_prom_id,
671   - store_id: os.stoid,
672   - user_id: getApp().globalData.userInfo.user_id
  664 + id: item.id,
  665 + prom_type: c_prom_type,
  666 + prom_id: c_prom_id,
  667 + store_id: os.stoid,
  668 + user_id: getApp().globalData.userInfo.user_id,
  669 + goods_price:item.goods_price
673 670 };
674   - getApp().request.put("/api/weshop/cart/update", {
675   - data: updata1,
676   - })
677   -
  671 + // getApp().request.put("/api/weshop/cart/update", {
  672 + // data: updata1,
  673 + // })
  674 + cart_up_data.push(updata1);
678 675 }
679 676  
680 677 //判断如果是普通商品,后面参加活动了,变成失效商品
... ... @@ -682,24 +679,16 @@ Page({
682 679  
683 680 var prom = null;
684 681 var now = ut.gettimestamp();
685   - await getApp().request.promiseGet(`/api/weshop/activitylist/listGoodActInfo2New`, {
686   - data: {
687   - "store_id": oo.stoid,
688   - "goods_id": item.goods_id,
689   - "user_id": user_id,
690   - }
691   - }).then(res => {
692   - if (res.data.code == 0) {
693   - //开始时间已经开始的情况
694   - for (var i = 0; i < res.data.data.length; i++) {
695   - var a_item = res.data.data[i];
696   - if (a_item.s_time < now) {
697   - if (!prom) prom = [];
698   - prom.push(a_item);
699   - }
  682 + let prom_arr = item.goodsActinfo;
  683 + if(prom_arr && prom_arr.length){
  684 + for (var im = 0; im <prom_arr.length; im++) {
  685 + var a_item = prom_arr[im];
  686 + if (a_item.s_time < now) {
  687 + if (!prom) prom = [];
  688 + prom.push(a_item);
700 689 }
701 690 }
702   - })
  691 + }
703 692  
704 693 //只有一种活动,但是又是秒杀之类是互动,就要失效。不能是普通购买
705 694 if (prom && prom.length == 1 && [1, 2, 4, 6, 8, 9].indexOf(prom[0].prom_type) > -1 && !item.is_integral_normal && !item.is_pd_normal) {
... ... @@ -720,41 +709,23 @@ Page({
720 709 th.disInvalid(item);
721 710 continue;
722 711 }
723   -
724 712 }
725 713  
726 714 }
727 715  
728   -
729 716 //优化获取商品的活动购买了几件
730 717 if (item.prom_type == 1 || item.prom_type == 2) {
731   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyPromNum", {
732   - data: {
733   - store_id: oo.stoid,
734   - user_id: user_id,
735   - goods_id: item.goods_id,
736   - prom_type: item.prom_type,
737   - prom_id: item.prom_id
738   - },
739   - }).then(res => {
740   - if (res.data.code == 0) {
741   - promgoodsbuynum = res.data.data.userbuynum;
742   - }
743   - })
  718 + if(item.promgoodsbuynum){
  719 + promgoodsbuynum=item.promgoodsbuynum;
  720 + }
744 721 }
745   -
746 722 //如果秒杀活动都去掉了,或者结束了,那么这个商品也没有必要留着
747 723 if (item.prom_type == 1) {
748   - var prom = null;
  724 + var prom = item.cartActinfo;
749 725 var now = ut.gettimestamp();
750   - await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + '/' + user_id + "/" + item.prom_id, {}).then(res => {
751   - console.log('活动情况----------------')
752   - console.log(res)
753   - if (res.data.code == 0 && res.data.data) {
754   - prom = res.data.data;
755   - prom.price = prom.user_price;
756   - }
757   - })
  726 + if(prom){
  727 + prom.price = prom.user_price;
  728 + }
758 729 //---如果互动都已经过期,或者还未开始,或者无活动
759 730 if (!prom || prom.is_end == 1 || prom.end_time < now || prom.start_time > now) {
760 731 // var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
... ... @@ -807,14 +778,12 @@ Page({
807 778 }
808 779 // 判断团购活动都去掉了,或者结束了,那么这个商品也没有必要留着
809 780 else if (item.prom_type == 2) {
810   - var prom = null;
  781 + var prom = item.cartActinfo;
811 782 var now = ut.gettimestamp();
812   - await getApp().request.promiseGet('/api/weshop/goods/groupBuy/getActInfo/' + oo.stoid + '/' + item.goods_id + '/' + item.prom_id, {}).then(res => {
813   - if (res.data.code == 0) {
814   - prom = res.data.data;
815   - prom.price = prom.user_price;
816   - }
817   - });
  783 + if(prom){
  784 + prom.price = prom.user_price;
  785 + }
  786 +
818 787 //---如果互动都已经过期,或者还未开始,或者无活动
819 788 if (!prom || prom.is_end == 1 || prom.end_time < now || prom.start_time > now) {
820 789 // var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
... ... @@ -863,8 +832,7 @@ Page({
863 832 item.init_goods_price=good.goods_price;
864 833  
865 834 //-- 读出每一种商品的所有的活动,方便后面的活动切换使用 --
866   - if (item.prom_type == 0)
867   - th.buy_pro_group(item, 0);
  835 + //if (item.prom_type == 0) th.buy_pro_group(item, 0);
868 836  
869 837 var pcid = item.pick_id;
870 838 var find = 0;
... ... @@ -900,8 +868,15 @@ Page({
900 868 arr.push(ie);
901 869 }
902 870 }
903   - }
904 871  
  872 + //更新一下购物车商品的活动信息
  873 + if(cart_up_data.length>0){
  874 + getApp().request.promisePost('/api/weshop/cart/updateCartPromInfo',{
  875 + is_json:1,
  876 + data:cart_up_data
  877 + })
  878 + }
  879 + }
905 880 if (th.data.is_open_offline && th.data.is_open_offline > 0 && th.data.sales_rules == 2) {
906 881 //-- 此时要实时更新线下取价价格 --
907 882 for (var i = 0; i < arr.length; i++) {
... ... @@ -920,11 +895,14 @@ Page({
920 895 }
921 896 }
922 897  
  898 + //-- 2024-2-3 深拷贝数据缓存 --
  899 + th.data.dp_car=ut.deep_cp(arr);
923 900 th.setData({
924 901 requestData: arr,
925 902 all_num: all_num,
926 903 is_load: 1,
927   - is_edit: 0
  904 + is_edit: 0,
  905 + checkAllToggle:0
928 906 }),
929 907 th.doCheckAll(), wx.stopPullDownRefresh();
930 908  
... ... @@ -1214,37 +1192,40 @@ Page({
1214 1192 // if (this.data.btn_click) {
1215 1193 // return false;
1216 1194 // }
1217   - this.data.btn_click = 1;
1218   -
1219   - var a = t.currentTarget.dataset.item;
1220   - var b = t.currentTarget.dataset.pitems;
1221   - a = this.data.requestData[b].goods[a];
1222   - var e = a;
1223   - var th = this;
1224   -
1225   - if (a = isNaN(t.detail.value) || t.detail.value < 1 ? 1 : parseInt(t.detail.value)) {
1226   - //this.clear_req();
  1195 + setTimeout(() => {
  1196 + if (this.data.up_dating == 1) return false;
  1197 + this.data.up_dating=1
  1198 +
  1199 + this.data.btn_click = 1;
  1200 + var a = t.currentTarget.dataset.item;
  1201 + var b = t.currentTarget.dataset.pitems;
  1202 + a = this.data.requestData[b].goods[a];
  1203 + var e = a;
  1204 + var th = this;
1227 1205  
1228   - var s = {
1229   - goods_num: a,
1230   - goods_id: e.goods_id,
1231   - id: e.id,
1232   - store_id: oo.stoid
1233   - };
1234   - th.postCardList(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
1235   - }
  1206 + if (a = isNaN(t.detail.value) || t.detail.value < 1 ? 1 : parseInt(t.detail.value)) {
  1207 + //this.clear_req();
  1208 + var s = {
  1209 + goods_num: a,
  1210 + goods_id: e.goods_id,
  1211 + id: e.id,
  1212 + store_id: oo.stoid
  1213 + };
  1214 + th.postCardList(s, t.currentTarget.dataset.item, t.currentTarget.dataset.pitems);
  1215 + }
  1216 + },200)
1236 1217 },
1237 1218  
1238 1219 //-------------加减数量的时候,要把show_can_cx清理掉,
1239 1220 // 同时应该记录一下当前是什么活动那个,如果切换后的活动有跟切换前的活动一样是,就要让切换后的活动的值匹配选中-------------
1240   -
1241 1221 clear_req: function () {
1242 1222 var carr = this.data.requestData;
1243 1223 for (var i = 0; i < carr.length; i++) {
1244   - var txt = 'requestData[' + i + '].show_can_cx'
1245   - this.setData({
1246   - [txt]: null
1247   - });
  1224 + var txt = 'requestData[' + i + '].show_can_cx1'
  1225 + this.setData({
  1226 + [txt]: null
  1227 + });
  1228 + this.data.requestData[i].show_can_cx=null;
1248 1229 }
1249 1230 },
1250 1231  
... ... @@ -1282,7 +1263,7 @@ Page({
1282 1263 var add_num = 1;
1283 1264 //调用接口判断是不是促销活动的商品
1284 1265 if ([0, 3, 5, 7, 10].indexOf(a.prom_type) > -1) {
1285   - var cx_arr = await getApp().get_has_cx_act(a.goods_id);
  1266 + var cx_arr = getApp().get_has_cx_act2(a.goodsActinfo);
1286 1267 var steep = getApp().get_limit_qty(a, cx_arr.length, 1);
1287 1268 if (steep > 1) {
1288 1269 add_num = steep;
... ... @@ -1321,7 +1302,7 @@ Page({
1321 1302 //this.clear_req();
1322 1303 var add_num = 1;
1323 1304 if ([0, 3, 5, 7, 10].indexOf(a.prom_type) > -1) {
1324   - var cx_arr = await getApp().get_has_cx_act(a.goods_id);
  1305 + var cx_arr = getApp().get_has_cx_act2(a.goodsActinfo);
1325 1306 var steep = getApp().get_limit_qty(a, cx_arr.length, 1);
1326 1307 if (steep > 1) {
1327 1308 add_num = steep;
... ... @@ -1477,36 +1458,44 @@ Page({
1477 1458 }
1478 1459 },
1479 1460  
1480   -
1481 1461 //---------------全选,全选的时候要判断是否门店的匹配方式一致--------------
1482 1462 checkAll: async function () {
  1463 +
  1464 + console.log('1111');
  1465 + console.log(this.data.clicking);
  1466 +
  1467 + //防止重复点击,弹出加载动画,转圈圈
  1468 + if(this.data.clicking) return false;
  1469 + this.data.clicking=1;
  1470 + this.set_clicking();
  1471 +
1483 1472 var e = this,
1484   - th = this,
1485   - dda = e.data.requestData,
1486   - sdda = e.data.service_data,
1487   - tfeel = 0,
1488   - t_num = 0,
1489   - text_arr = "";
  1473 + th = this,
  1474 + dda = e.data.requestData,
  1475 + sdda = e.data.service_data,
  1476 + tfeel = 0,
  1477 + t_num = 0,
  1478 + text_arr = "";
1490 1479  
1491 1480  
1492 1481 if(this.data.is_edit){
1493 1482 let val=!e.data.checkAllToggle;
1494 1483 if (dda && dda.length > 0) {
1495   - for (var i = 0; i < dda.length; i++) {
1496   - var item = dda[i].goods;
  1484 + for (var i = 0; i < dda.length; i++) {
  1485 + var item = dda[i].goods;
1497 1486  
1498   - var txt0 = "requestData[" + i + "].selected";
1499   - this.setData({
1500   - [txt0]: val,
1501   - });
  1487 + var txt0 = "requestData[" + i + "].selected";
  1488 + this.setData({
  1489 + [txt0]: val,
  1490 + });
1502 1491  
1503   - for (var j = 0; j < item.length; j++) {
1504   - let txt = "requestData[" + i + "].goods[" + j + "].selected";
1505   - e.setData({
1506   - [txt]: val,
1507   - });
1508   - }
  1492 + for (var j = 0; j < item.length; j++) {
  1493 + let txt = "requestData[" + i + "].goods[" + j + "].selected";
  1494 + e.setData({
  1495 + [txt]: val,
  1496 + });
1509 1497 }
  1498 + }
1510 1499 }
1511 1500 if (sdda && sdda.length > 0) {
1512 1501 for (i = 0; i < sdda.length; i++) {
... ... @@ -1529,15 +1518,18 @@ Page({
1529 1518 e.setData({
1530 1519 checkAllToggle: val,
1531 1520 })
  1521 +
  1522 + th.clear_clicking();
1532 1523 return false;
1533 1524 }
1534 1525  
1535 1526 if (e.data.requestData && e.data.requestData.length > 0 &&
1536   - e.data.service_data && e.data.service_data.length > 0) {
  1527 + e.data.service_data && e.data.service_data.length > 0) {
1537 1528 wx.showModal({
1538 1529 title: '提示',
1539 1530 content: '服务卡项目不能和商品一起选择'
1540 1531 });
  1532 + th.clear_clicking();
1541 1533 return false;
1542 1534 }
1543 1535  
... ... @@ -1550,10 +1542,11 @@ Page({
1550 1542 if (dda && dda.length > 0) {
1551 1543 for (var i = 0; i < dda.length; i++) {
1552 1544 var item = dda[i].goods;
1553   - var txt0 = "requestData[" + i + "].show_can_cx";
  1545 + var txt0 = "requestData[" + i + "].show_can_cx1";
1554 1546 e.setData({
1555 1547 [txt0]: {},
1556 1548 });
  1549 + th.data.requestData[i].show_can_cx=null; //清空需要的
1557 1550  
1558 1551 if (e.data.checkAllToggle) {
1559 1552 var txt = "requestData[" + i + "].selected";
... ... @@ -1579,43 +1572,44 @@ Page({
1579 1572 });
1580 1573  
1581 1574 if (ob.code == -1) {
1582   -
1583 1575 wx.showToast({
1584 1576 title: gd_info.goods_name+'购买数量超出商品库存',
1585 1577 icon: 'none',
1586 1578 });
1587 1579  
  1580 + th.clear_clicking();
1588 1581 return false;
1589   - } else {
1590   - if (th.data.sales_rules == 3) {
1591   - var goods_id = gd_info.goods_id;
1592   - var num = 0;
1593   -
1594   - for (let ii = 0; ii< th.data.requestData.length; ii++) {
1595   - if (i == ii) continue;
1596   - var it = th.data.requestData[ii].goods.find((e) => {
1597   - return e.goods_id == goods_id;
1598   - })
1599   - if (it && it.selected) num += it.goods_num
1600   - }
  1582 + }
1601 1583  
1602   - if (num > ob.CanOutQty) {
1603   - wx.showToast({
1604   - title: gd_info.goods_name+'购买数量超出商品库存',
1605   - icon: 'none',
1606   - });
1607   - return false;
1608   - }
  1584 + if (th.data.sales_rules == 3) {
  1585 + var goods_id = gd_info.goods_id;
  1586 + var num = 0;
  1587 +
  1588 + for (let ii = 0; ii< th.data.requestData.length; ii++) {
  1589 + if (i == ii) continue;
  1590 + var it = th.data.requestData[ii].goods.find((e) => {
  1591 + return e.goods_id == goods_id;
  1592 + })
  1593 + if (it && it.selected) num += it.goods_num
  1594 + }
  1595 +
  1596 + if (num > ob.CanOutQty) {
  1597 + wx.showToast({
  1598 + title: gd_info.goods_name+'购买数量超出商品库存',
  1599 + icon: 'none',
  1600 + });
  1601 + th.clear_clicking();
  1602 + return false;
1609 1603 }
1610 1604 }
1611   - }
1612 1605  
  1606 + }
1613 1607  
1614 1608  
1615 1609 //-- 判断起购数量 --
1616 1610 if (!e.data.checkAllToggle) {
1617 1611 //判断是不是有促销活动
1618   - var act = await getApp().get_has_cx_act(obj.goods_id);
  1612 + var act = getApp().get_has_cx_act2(obj.goodsActinfo);
1619 1613 th.click_set_limit(obj, i, j, act);
1620 1614 }
1621 1615  
... ... @@ -1652,34 +1646,29 @@ Page({
1652 1646 // if (obj.prom_type == 10) ladder_calc.add_ladder_prom(dda, i, obj);
1653 1647  
1654 1648 //多门店,多优惠次数控制
1655   - let pro_off1 = false
1656   - if (!e.data.checkAllToggle) {
1657   - //判断多店优惠促销次数控制
1658   - if (th.data.requestData.length > 1) {
1659   - if (obj.prom_type == 3) {
1660   -
1661   - pro_off1 = await th.multiple_stores_pro(i, j)
1662   - }
1663   - }
1664   - }
1665   -
1666   - if (pro_off1) {
1667   - pro_off = true
1668   - let txt1 = "requestData[" + i + "].pro_off";
1669   - e.setData({
1670   - [txt1]: true,
1671   - [txt]: 0,
1672   - });
1673   -
1674   - wx.showToast({
1675   - title: '已超出优惠促销次数',
1676   - icon: 'none',
1677   - });
  1649 + // let pro_off1 = false
  1650 + // if (!e.data.checkAllToggle) {
  1651 + // //判断多店优惠促销次数控制
  1652 + // if (th.data.requestData.length > 1) {
  1653 + // if (obj.prom_type == 3) {
  1654 + // pro_off1 = await th.multiple_stores_pro(i, j)
  1655 + // }
  1656 + // }
  1657 + // }
  1658 + // if (pro_off1) {
  1659 + // pro_off = true
  1660 + // let txt1 = "requestData[" + i + "].pro_off";
  1661 + // e.setData({
  1662 + // [txt1]: true,
  1663 + // [txt]: 0,
  1664 + // });
  1665 + //
  1666 + // wx.showToast({
  1667 + // title: '已超出优惠促销次数',
  1668 + // icon: 'none',
  1669 + // });
1678 1670  
1679   - } else {
1680   - e.setData({
1681   - [txt]: !e.data.checkAllToggle,
1682   - })
  1671 + // } else {
1683 1672  
1684 1673 if (!e.data.checkAllToggle) {
1685 1674 //组合购的金额要另外算
... ... @@ -1693,10 +1682,16 @@ Page({
1693 1682 offline_price += (item[j].goods_price - item[j].offline_price) * item[j].goods_num;
1694 1683 offline_num += item[j].goods_num;
1695 1684 }
1696   - }
1697   - e.setData({
1698   - [txt]: !e.data.checkAllToggle,
1699   - })
  1685 +
  1686 + e.setData({
  1687 + [txt]: !e.data.checkAllToggle,
  1688 + })
  1689 +
  1690 + //}
  1691 +
  1692 +
  1693 +
  1694 +
1700 1695 // if (!e.data.checkAllToggle) {
1701 1696 // //组合购的金额要另外算
1702 1697 // if (item[j].prom_type != 7 && item[j].prom_type != 10)
... ... @@ -1720,79 +1715,79 @@ Page({
1720 1715 title: '提示',
1721 1716 content: text_arr + '不能与门店中其他商品一起结算,配送方式不一致'
1722 1717 });
  1718 + th.clear_clicking();
1723 1719 return false;
1724   - } else {
  1720 + }
1725 1721  
1726   - for (var i = 0; i < dda.length; i++) {
1727 1722  
1728   - // if (!e.data.checkAllToggle) {
1729   - //多门店优惠促销次数控制
1730   - if (dda[i].pro_off || e.data.checkAllToggle) {
1731   - var txt = "requestData[" + i + "].selected";
1732   - e.setData({
1733   - [txt]: 0,
1734   - });
1735   - } else {
1736   - var txt = "requestData[" + i + "].selected";
1737   - e.setData({
1738   - [txt]: 1,
1739   - });
1740   - }
1741   - // }
  1723 + for (var i = 0; i < dda.length; i++) {
1742 1724  
1743   - //总的价格,把组合商品的价格拿出来
1744   - // var zh_calc_res = zh_calc.calculate_zh(dda, i, this);
1745   - // tfeel += zh_calc_res.tfeel;
1746   - // offline_price += zh_calc_res.offline_price;
1747   - // offline_num += zh_calc_res.offline_num;
1748   - //
1749   - // //总的价格,把阶梯促销的商品的价格拿出来
1750   - // var ladder_calc_res = ladder_calc.calculate_ladder(dda, i, this);
1751   - // tfeel += ladder_calc_res.tfeel;
1752   - // offline_price += ladder_calc_res.offline_price;
1753   - // offline_num += ladder_calc_res.offline_num;
1754   - //
1755   - // //当有线下取价的时候
1756   - // if (offline_price) {
1757   - // var txt1 = "requestData[" + i + "].offline_price";
1758   - // var txt2 = "requestData[" + i + "].offline_num";
1759   - // th.setData({
1760   - // [txt1]: offline_price.toFixed(2),
1761   - // [txt2]: offline_num,
1762   - // });
1763   - // } else {
1764   - // if (dda[i].offline_price > 0) {
1765   - // var txt1 = "requestData[" + i + "].offline_price";
1766   - // var txt2 = "requestData[" + i + "].offline_num";
1767   - // th.setData({
1768   - // [txt1]: 0,
1769   - // [txt2]: 0
1770   - // });
1771   - // }
1772   - // }
1773   - }
1774   - //多门店优惠次数控制
1775   - if (pro_off) {
  1725 + // if (!e.data.checkAllToggle) {
  1726 + //多门店优惠促销次数控制
  1727 + if (dda[i].pro_off || e.data.checkAllToggle) {
  1728 + var txt = "requestData[" + i + "].selected";
1776 1729 e.setData({
1777   - checkAllToggle: false,
  1730 + [txt]: 0,
1778 1731 });
1779 1732 } else {
  1733 + var txt = "requestData[" + i + "].selected";
1780 1734 e.setData({
1781   - checkAllToggle: !e.data.checkAllToggle,
  1735 + [txt]: 1,
1782 1736 });
1783 1737 }
1784   - e.setData({
1785   - checkAllToggle: !e.data.checkAllToggle,
1786   - // total_fee: tfeel.toFixed(2),
1787   - // total_num: t_num,
  1738 + // }
1788 1739  
1789   - });
  1740 + //总的价格,把组合商品的价格拿出来
  1741 + // var zh_calc_res = zh_calc.calculate_zh(dda, i, this);
  1742 + // tfeel += zh_calc_res.tfeel;
  1743 + // offline_price += zh_calc_res.offline_price;
  1744 + // offline_num += zh_calc_res.offline_num;
  1745 + //
  1746 + // //总的价格,把阶梯促销的商品的价格拿出来
  1747 + // var ladder_calc_res = ladder_calc.calculate_ladder(dda, i, this);
  1748 + // tfeel += ladder_calc_res.tfeel;
  1749 + // offline_price += ladder_calc_res.offline_price;
  1750 + // offline_num += ladder_calc_res.offline_num;
  1751 + //
  1752 + // //当有线下取价的时候
  1753 + // if (offline_price) {
  1754 + // var txt1 = "requestData[" + i + "].offline_price";
  1755 + // var txt2 = "requestData[" + i + "].offline_num";
  1756 + // th.setData({
  1757 + // [txt1]: offline_price.toFixed(2),
  1758 + // [txt2]: offline_num,
  1759 + // });
  1760 + // } else {
  1761 + // if (dda[i].offline_price > 0) {
  1762 + // var txt1 = "requestData[" + i + "].offline_price";
  1763 + // var txt2 = "requestData[" + i + "].offline_num";
  1764 + // th.setData({
  1765 + // [txt1]: 0,
  1766 + // [txt2]: 0
  1767 + // });
  1768 + // }
  1769 + // }
  1770 + }
1790 1771  
1791   - this.doCheckAll(function () {
1792   - e.all_check_prom_activity();
1793   - });
  1772 + //e.setData({
  1773 + //checkAllToggle: !e.data.checkAllToggle,
  1774 + // total_fee: tfeel.toFixed(2),
  1775 + // total_num: t_num,
  1776 + //});
  1777 +
  1778 + this.doCheckAll(async function () {
  1779 + await e.all_check_prom_activity();
  1780 +
  1781 + //多门店优惠次数控制
  1782 + if (pro_off) {
  1783 + e.setData({
  1784 + checkAllToggle: false,
  1785 + });
  1786 + }
  1787 + th.clear_clicking();
  1788 +
  1789 + });
1794 1790  
1795   - }
1796 1791 }
1797 1792  
1798 1793 if (sdda && sdda.length > 0) {
... ... @@ -1822,28 +1817,40 @@ Page({
1822 1817 total_fee: tfeel.toFixed(2),
1823 1818 total_num: t_num,
1824 1819 });
1825   - }
1826 1820  
  1821 + th.clear_clicking();
  1822 +
  1823 + }
1827 1824 },
  1825 +
  1826 +
1828 1827 //------门店全选按钮,要判断是否门店的匹配方式一致---------
1829 1828 check_th_all_item: async function (ele) {
  1829 +
  1830 + //防止重复点击
  1831 + if(this.data.clicking) return false;
  1832 + this.data.clicking=1;
  1833 + //加载动画
  1834 + this.set_clicking();
  1835 +
1830 1836 var e = this,
1831   - th = this,
1832   - pitems = ele.currentTarget.dataset.pitems,
1833   - item = this.data.requestData[pitems].goods,
1834   - sele = this.data.requestData[pitems].selected;
  1837 + th = this,
  1838 + pitems = ele.currentTarget.dataset.pitems,
  1839 + item = this.data.requestData[pitems].goods,
  1840 + sele = this.data.requestData[pitems].selected;
1835 1841 this.data.btn_click = 1;
1836 1842 var garr = e.data.service_data;
1837 1843  
1838 1844 var isok = 1,
1839   - fir = 0,
1840   - iarr = item;
  1845 + fir = 0,
  1846 + iarr = item;
1841 1847  
1842 1848 //清空-- 多个促销的切换 --
1843   - var txt0 = "requestData[" + pitems + "].show_can_cx";
  1849 + var txt0 = "requestData[" + pitems + "].show_can_cx1";
1844 1850 e.setData({
1845 1851 [txt0]: {},
1846 1852 });
  1853 + th.data.requestData[pitems].show_can_cx=null; //清空需要的
1847 1854  
1848 1855 if (!sele) {
1849 1856  
... ... @@ -1857,6 +1864,8 @@ Page({
1857 1864  
1858 1865 var txt0 = "requestData[" + pitems + "].selected";
1859 1866 this.setData({[txt0]:1})
  1867 +
  1868 + th.clear_clicking();
1860 1869 return false;
1861 1870 }
1862 1871  
... ... @@ -1875,6 +1884,7 @@ Page({
1875 1884 title: '提示',
1876 1885 content: '服务卡项目不能和商品一起选择'
1877 1886 });
  1887 + th.clear_clicking();
1878 1888 return false;
1879 1889 }
1880 1890 }
... ... @@ -1900,6 +1910,7 @@ Page({
1900 1910 title: '提示',
1901 1911 content: '同一门店自提和物流的商品不能同时结算'
1902 1912 });
  1913 + th.clear_clicking();
1903 1914 return false;
1904 1915 }
1905 1916  
... ... @@ -1910,7 +1921,7 @@ Page({
1910 1921 var gd_info = item[i];
1911 1922  
1912 1923 if (!sele) {
1913   - var act = await getApp().get_has_cx_act(gd_info.goods_id);
  1924 + var act =getApp().get_has_cx_act2(gd_info.goodsActinfo);
1914 1925 th.click_set_limit(gd_info, pitems, i, act)
1915 1926 }
1916 1927  
... ... @@ -1927,62 +1938,73 @@ Page({
1927 1938 icon: 'none',
1928 1939 });
1929 1940  
  1941 + th.clear_clicking();
1930 1942 return false;
1931   - } else {
1932   - if (th.data.sales_rules == 3) {
1933   - var goods_id = gd_info.goods_id;
1934   - var num = 0;
1935   -
1936   - for (let i = 0; i < th.data.requestData.length; i++) {
1937   - if (pitems == i) continue;
1938   - var it = th.data.requestData[i].goods.find((e) => {
1939   - return e.goods_id == goods_id;
1940   - })
1941   - if (it && it.selected) num += it.goods_num
1942   - }
  1943 + }
1943 1944  
1944   - if (num > ob.CanOutQty) {
1945   - wx.showToast({
1946   - title: gd_info.goods_name+'购买数量超出商品库存',
1947   - icon: 'none',
1948   - });
1949   - return false;
1950   - }
  1945 + if (th.data.sales_rules == 3) {
  1946 + var goods_id = gd_info.goods_id;
  1947 + var num = 0;
  1948 +
  1949 + for (let i = 0; i < th.data.requestData.length; i++) {
  1950 + if (pitems == i) continue;
  1951 + var it = th.data.requestData[i].goods.find((e) => {
  1952 + return e.goods_id == goods_id;
  1953 + })
  1954 + if (it && it.selected) num += it.goods_num
  1955 + }
  1956 +
  1957 + if (num > ob.CanOutQty) {
  1958 + wx.showToast({
  1959 + title: gd_info.goods_name+'购买数量超出商品库存',
  1960 + icon: 'none',
  1961 + });
  1962 + th.clear_clicking();
  1963 + return false;
1951 1964 }
1952 1965 }
  1966 +
1953 1967 }
1954 1968  
1955 1969 //判断多店优惠促销次数控制
1956   - if (th.data.requestData.length > 1) {
1957   - if (gd_info.prom_type == 3) {
1958   - pro_off1 = await th.multiple_stores_pro(pitems, i)
1959   - }
1960   - }
1961   - if (pro_off1) {
1962   - pro_off = true
1963   - e.setData({
1964   - [txt]: 0,
1965   - });
1966   - } else {
1967   - e.setData({
1968   - [txt]: Number(!sele),
1969   - });
1970   - }
1971   - }
1972   - var txt = "requestData[" + pitems + "].selected";
1973   - if (pro_off) {
1974   - wx.showToast({
1975   - title: '已超出优惠促销次数',
1976   - icon: 'none',
1977   - });
1978   - e.setData({
1979   - [txt]: 0,
1980   - });
1981   - } else {
  1970 + // if (th.data.requestData.length > 1) {
  1971 + // if (gd_info.prom_type == 3) {
  1972 + // pro_off1 = await th.multiple_stores_pro(pitems, i)
  1973 + // }
  1974 + // }
  1975 + // if (pro_off1) {
  1976 + // pro_off = true
  1977 + // e.setData({
  1978 + // [txt]: 0,
  1979 + // });
  1980 + // } else {
  1981 + // e.setData({
  1982 + // [txt]: Number(!sele),
  1983 + // });
  1984 + // }
1982 1985 e.setData({
1983 1986 [txt]: Number(!sele),
1984 1987 });
  1988 +
1985 1989 }
  1990 + var txt = "requestData[" + pitems + "].selected";
  1991 + // if (pro_off) {
  1992 + // wx.showToast({
  1993 + // title: '已超出优惠促销次数',
  1994 + // icon: 'none',
  1995 + // });
  1996 + // e.setData({
  1997 + // [txt]: 0,
  1998 + // });
  1999 + // } else {
  2000 + // e.setData({
  2001 + // [txt]: Number(!sele),
  2002 + // });
  2003 + // }
  2004 +
  2005 + e.setData({
  2006 + [txt]: Number(!sele),
  2007 + });
1986 2008  
1987 2009 //-- 选择了什么商品,就用什么商品来判断 --
1988 2010 var sele_arr = {};
... ... @@ -2023,12 +2045,17 @@ Page({
2023 2045 if (sele && i == pitems) continue;
2024 2046 await e.check_prom_activity(i);
2025 2047 }
  2048 +
  2049 + th.clear_clicking();
  2050 +
2026 2051 });
2027 2052 } else {
  2053 + th.clear_clicking();
2028 2054 wx.showToast({
2029 2055 title: the_res.msg,
2030 2056 icon: 'none',
2031 2057 });
  2058 +
2032 2059 }
2033 2060 })
2034 2061  
... ... @@ -2036,6 +2063,7 @@ Page({
2036 2063  
2037 2064 //判断多门店,优惠促销次数的控制
2038 2065 async multiple_stores_pro(pitems, item) {
  2066 +
2039 2067 let a = this.data.requestData[pitems].goods[item];
2040 2068 let th = this
2041 2069 let arr_pro = []
... ... @@ -2045,21 +2073,31 @@ Page({
2045 2073 }
2046 2074 })
2047 2075 let prom = null
2048   - await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + a.prom_id, {}).then(res => {
2049   - if (res.data.code == 0) {
2050   - prom = res.data.data;
2051   - }
2052   - })
2053   - let user_pre_buynum = await this.getUserBuyPromNum_pre(a.prom_id)
  2076 + //使用缓存,不在调用接口
  2077 + if(!prom && th.data.yhcx_act_map && th.data.yhcx_act_map[a.prom_id] ){
  2078 + prom=th.data.yhcx_act_map[a.prom_id];
  2079 + }
  2080 + if(!prom) {
  2081 + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + a.prom_id, {}).then(res => {
  2082 + if (res.data.code == 0) {
  2083 + prom = res.data.data;
  2084 + }
  2085 + })
  2086 + }
2054 2087  
  2088 + let user_pre_buynum = await this.getUserBuyPromNum_pre(a.prom_id);
2055 2089 if (user_pre_buynum >= prom.limit_num) {
2056 2090 return false
2057 2091 } else {
  2092 +
2058 2093 let action_num = user_pre_buynum + 1;
2059 2094 arr_pro.map(item => {
  2095 + let found = false;
2060 2096 item.goods.map(ite => {
  2097 + if(found) return;
2061 2098 if (ite.prom_type == 3 && ite.prom_id == a.prom_id && !ite.is_gift && ite.selected) {
2062 2099 action_num += 1;
  2100 + found=true;
2063 2101 }
2064 2102 })
2065 2103 })
... ... @@ -2074,16 +2112,35 @@ Page({
2074 2112 },
2075 2113  
2076 2114  
2077   -
  2115 + //清理防止重复点击的状态函数---2024-2-1
  2116 + set_clicking(){
  2117 + wx.showLoading({
  2118 + mark:true
  2119 + });
  2120 + },
  2121 + //清理防止重复点击的状态函数---2024-2-1
  2122 + clear_clicking(){
  2123 + var th=this;
  2124 + wx.hideLoading({
  2125 + complete:function (){
  2126 + th.data.clicking=0;
  2127 + }
  2128 + });
  2129 + },
2078 2130 //---------------单选,也要判断门店的配送方式是否一致--------------
2079 2131 check_th_item: async function (t) {
  2132 +
  2133 + //防止重复点击
  2134 + if(this.data.clicking) return false;
  2135 + this.data.clicking=1;
  2136 +
2080 2137 var e = this,
2081   - th = this,
2082   - item = t.currentTarget.dataset.item,
2083   - pitems = t.currentTarget.dataset.pitems;
  2138 + th = this,
  2139 + item = t.currentTarget.dataset.item,
  2140 + pitems = t.currentTarget.dataset.pitems;
2084 2141 a = this.data.requestData[pitems].goods[item];
2085 2142 var isok = 1,
2086   - fir = 0;
  2143 + fir = 0;
2087 2144 var iarr = e.data.requestData[pitems].goods;
2088 2145 this.data.btn_click = 1;
2089 2146 var garr = e.data.service_data;
... ... @@ -2093,9 +2150,10 @@ Page({
2093 2150  
2094 2151 //如果是标记的时候
2095 2152 if(this.data.is_edit){
2096   - var txt = "requestData[" + pitems + "].goods[" + item + "].selected";
2097   - this.setData({[txt]:1})
2098   - return false;
  2153 + var txt = "requestData[" + pitems + "].goods[" + item + "].selected";
  2154 + this.setData({[txt]:1});
  2155 + th.clear_clicking();
  2156 + return false;
2099 2157 }
2100 2158  
2101 2159  
... ... @@ -2113,6 +2171,7 @@ Page({
2113 2171 title: '提示',
2114 2172 content: '服务卡项目不能和商品一起选择'
2115 2173 });
  2174 + th.clear_clicking();
2116 2175 return false;
2117 2176 }
2118 2177 }
... ... @@ -2142,113 +2201,120 @@ Page({
2142 2201 title: '提示',
2143 2202 content: '同一门店自提和物流的商品不能同时结算'
2144 2203 });
2145   - } else {
2146   - var txt = "requestData[" + pitems + "].goods[" + item + "].selected";
2147   - var gd_info = a;
  2204 + th.clear_clicking();
  2205 + return false;
  2206 + }
  2207 +
2148 2208  
2149   - var erpwareid = gd_info.erpwareid;
  2209 + var txt = "requestData[" + pitems + "].goods[" + item + "].selected";
  2210 + var gd_info = a;
2150 2211  
2151   - //-- 如果是选中的时候 --
2152   - if (!a.selected) {
  2212 + var erpwareid = gd_info.erpwareid;
2153 2213  
2154   - th.data.pitems=pitems;
  2214 + //-- 如果是选中的时候 --
  2215 + if (!a.selected) {
2155 2216  
2156   - //判断是不是有促销活动
2157   - var act = await getApp().get_has_cx_act(gd_info.goods_id);
2158   - //-- 专门来设置商品订购数量 --
2159   - th.click_set_limit(gd_info, pitems, item, act)
2160   - if (th.data.sales_rules >= 2 && !gd_info.whsle_id && [1, 2, 4, 6, 8, 9].indexOf(gd_info.prom_type) == -1) {
  2217 + th.data.pitems=pitems;
2161 2218  
2162   - var ob = {};
2163   - await th.check_down_line_next(gd_info, pitems, item, erpwareid, function (res) {
2164   - ob = res;
  2219 + //判断是不是有促销活动
  2220 + var act = getApp().get_has_cx_act2(gd_info.goodsActinfo);
  2221 + //-- 专门来设置商品订购数量 --
  2222 + th.click_set_limit(gd_info, pitems, item, act)
  2223 + if (th.data.sales_rules >= 2 && !gd_info.whsle_id && [1, 2, 4, 6, 8, 9].indexOf(gd_info.prom_type) == -1) {
  2224 +
  2225 + var ob = {};
  2226 + await th.check_down_line_next(gd_info, pitems, item, erpwareid, function (res) {
  2227 + ob = res;
  2228 + });
  2229 + if (ob.code == -1) {
  2230 + wx.showToast({
  2231 + title: '购买数量超出商品库存',
  2232 + icon: 'none',
2165 2233 });
2166   - if (ob.code == -1) {
  2234 + th.clear_clicking();
  2235 + return false;
  2236 + }
  2237 +
  2238 + if (th.data.sales_rules == 3) {
  2239 + var goods_id = gd_info.goods_id;
  2240 + var num = 0;
  2241 +
  2242 + for (let i = 0; i < th.data.requestData.length; i++) {
  2243 + if (pitems == i) continue;
  2244 + var it = th.data.requestData[i].goods.find((e) => {
  2245 + return e.goods_id == goods_id;
  2246 + })
  2247 + if (it && it.selected) num += it.goods_num
  2248 + }
2167 2249  
  2250 + if (num > ob.CanOutQty) {
2168 2251 wx.showToast({
2169 2252 title: '购买数量超出商品库存',
2170 2253 icon: 'none',
2171 2254 });
2172   -
  2255 + th.clear_clicking();
2173 2256 return false;
2174   - } else {
2175   - if (th.data.sales_rules == 3) {
2176   - var goods_id = gd_info.goods_id;
2177   - var num = 0;
2178   -
2179   - for (let i = 0; i < th.data.requestData.length; i++) {
2180   - if (pitems == i) continue;
2181   - var it = th.data.requestData[i].goods.find((e) => {
2182   - return e.goods_id == goods_id;
2183   - })
2184   - if (it && it.selected) num += it.goods_num
2185   - }
2186   -
2187   - if (num > ob.CanOutQty) {
2188   - wx.showToast({
2189   - title: '购买数量超出商品库存',
2190   - icon: 'none',
2191   - });
2192   -
2193   - return false;
2194   - }
2195   - }
2196 2257 }
2197   -
2198 2258 }
  2259 +
2199 2260 }
  2261 + }
  2262 +
  2263 + // let pro_off = false
  2264 + // //判断多店优惠促销次数控制
  2265 + // if (th.data.requestData.length > 1) {
  2266 + // if (a.prom_type == 3 && !a.selected) {
  2267 + // pro_off = await th.multiple_stores_pro(pitems, item)
  2268 + // }
  2269 + // }
  2270 + //
  2271 + // if (pro_off) {
  2272 + // wx.showToast({
  2273 + // title: '已超出优惠促销次数',
  2274 + // icon: 'none',
  2275 + // });
  2276 + // th.clear_clicking();
  2277 + // return false;
  2278 + // }
2200 2279  
  2280 + var txt0 = "requestData[" + pitems + "].show_can_cx";
  2281 + e.setData({
  2282 + [txt0]: {},
  2283 + });
  2284 + th.data.requestData[pitems].show_can_cx=null;
2201 2285  
2202   - let pro_off = false
2203   - //判断多店优惠促销次数控制
2204   - if (th.data.requestData.length > 1) {
2205   - if (a.prom_type == 3 && !a.selected) {
2206   - //pro_off = await th.multiple_stores_pro(pitems, item)
2207   - }
2208   - }
  2286 + //-- 选择了什么商品,就用什么商品来判断 --
  2287 + var sele_arr = {};
  2288 + sele_arr[item] = !a.selected;
  2289 + //回调判断活动有没有冲突
  2290 + this.cx_check_ok(pitems, sele_arr, function (the_res) {
  2291 + if (the_res.code == 0) {
  2292 + th.setData({
  2293 + [txt]: Number(!a.selected),
  2294 + });
  2295 + //要先处理了,再来判断要不要显示凑单
  2296 + th.doCheckAll(async function () {
  2297 + th.data.duo_zp_num_arr={};
  2298 + //判断商品是不是优惠活动
  2299 + for (var i in e.data.requestData) {
  2300 + await e.check_prom_activity(i);
  2301 + }
  2302 + //清理一下点击防止重复点击
  2303 + th.clear_clicking();
2209 2304  
2210   - if (pro_off) {
  2305 + });
  2306 + } else {
2211 2307 wx.showToast({
2212   - title: '已超出优惠促销次数',
  2308 + title: the_res.msg,
2213 2309 icon: 'none',
2214 2310 });
2215   - return false;
2216 2311 }
  2312 + })
2217 2313  
2218   - var txt0 = "requestData[" + pitems + "].show_can_cx";
2219   - e.setData({
2220   - [txt0]: {},
2221   - });
2222   -
2223   - //-- 选择了什么商品,就用什么商品来判断 --
2224   - var sele_arr = {};
2225   - sele_arr[item] = !a.selected;
2226   - //回调判断活动有没有冲突
2227   - this.cx_check_ok(pitems, sele_arr, function (the_res) {
2228   - if (the_res.code == 0) {
2229   - th.setData({
2230   - [txt]: Number(!a.selected),
2231   - });
2232   - //要先处理了,再来判断要不要显示凑单
2233   - th.doCheckAll(async function () {
2234   - th.data.duo_zp_num_arr={};
2235   - //判断商品是不是优惠活动
2236   - for (var i in e.data.requestData) {
2237   - await e.check_prom_activity(i);
2238   - }
2239   -
2240   - });
2241   - } else {
2242   - wx.showToast({
2243   - title: the_res.msg,
2244   - icon: 'none',
2245   - });
2246   - }
2247   - })
2248   -
2249   - }
2250 2314 },
2251 2315  
  2316 +
  2317 +
2252 2318 //------门店全选按钮,要判断是否门店的匹配方式一致---------
2253 2319 check_th_all_item_ser: async function (ele) {
2254 2320 var e = this,
... ... @@ -2386,6 +2452,9 @@ Page({
2386 2452 th.data.pitems=-1;
2387 2453 }
2388 2454  
  2455 +
  2456 +
  2457 + var cur_car_cp=ut.deep_cp(car);
2389 2458 for (var a = 0; a < car.length; a++) {
2390 2459 var ite1 = car[a].goods;
2391 2460 if(car.length>1 && c_ind>-1 && a==c_ind ){
... ... @@ -2410,6 +2479,29 @@ Page({
2410 2479 for (var a = 0; a < car.length; a++) {
2411 2480 //-- 把活动组装进去 ---
2412 2481 var show_can_cx = rd_arr[a];
  2482 + //-- 把活动组装进去 ---
  2483 + let show_can_cx1 = ut.deep_cp(rd_arr[a]);
  2484 + //前端处理渲染的时,要处理一些不需要的字段属性
  2485 + if(show_can_cx1){
  2486 + for (const key in show_can_cx1) {
  2487 + let element = show_can_cx1[key];
  2488 + if(element.cur_act ){
  2489 + delete element.cur_act;
  2490 + }
  2491 + if(element.ch_map){
  2492 + delete element.ch_map;
  2493 + }
  2494 + if(element.act_arr && element.act_arr.length>0){
  2495 + for (var ij = 0; ij < element.act_arr.length; ij++) {
  2496 + var act_ite = element.act_arr[ij];
  2497 + delete act_ite.goods;
  2498 + delete act_ite.act;
  2499 + delete act_ite.key;
  2500 + }
  2501 + }
  2502 + }
  2503 + }
  2504 +
2413 2505  
2414 2506 car[a].zh_map = null;
2415 2507 car[a].ladder_map = null;
... ... @@ -2433,6 +2525,9 @@ Page({
2433 2525 //-- 先批量判断一下活动的类型,同时要同步跟新 --
2434 2526 var offline_price = 0;
2435 2527 var offline_num = 0;
  2528 +
  2529 + //-- 优惠促销活动限购次数的优化 --
  2530 + var ch_yc_map={};
2436 2531 for (var c = 0; c < item.length; c++) {
2437 2532 //清理一下赠品
2438 2533 if (item[c].is_gift) {
... ... @@ -2445,6 +2540,20 @@ Page({
2445 2540 continue;
2446 2541 }
2447 2542  
  2543 + let pro_off1 = false;
  2544 + //-- 判断活动超出限购,要有选中的情况 --
  2545 + if (item[c].prom_type == 3 && item[c].selected && !ch_yc_map[a.prom_id]) {
  2546 + //一个门店一个优惠促销就判断一次
  2547 + ch_yc_map[a.prom_id]=1;
  2548 + pro_off1 = await th.multiple_stores_pro(a, c)
  2549 + }
  2550 + if (pro_off1) {
  2551 + wx.showToast({
  2552 + title: '已超出优惠促销次数',
  2553 + icon: 'none',
  2554 + });
  2555 + }
  2556 +
2448 2557 all_num += item[c].goods_num;
2449 2558  
2450 2559 if (item[c].prom_type == 7) {
... ... @@ -2487,6 +2596,7 @@ Page({
2487 2596 zh_calc.remove_zhprom(car, a, obj);
2488 2597 ladder_calc.remove_ladder_prom(car, a, obj);
2489 2598  
  2599 + //-- 如果是未选中的时候 --
2490 2600 if (item[c].selected == 0) {
2491 2601 ischeck = 0;
2492 2602 is_s_sele = 0;
... ... @@ -2500,9 +2610,18 @@ Page({
2500 2610 ladder_calc.add_ladder_prom(car, a, obj);
2501 2611 }
2502 2612  
  2613 + if( cur_car_cp[a].goods[c].goods_price!=th.data.dp_car[a].goods[c].goods_price) {
  2614 + //-- 如果价格有发生变动,要更新界面中的价格显示,还原价格 --
  2615 + let txt = 'requestData[' + a + '].goods[' + c + '].goods_price';
  2616 + th.setData({
  2617 + [txt]: th.data.dp_car[a].goods[c].goods_price
  2618 + })
  2619 + }
  2620 +
2503 2621  
2504 2622 } else {
2505 2623  
  2624 + //-- 如果是选中的时候 --
2506 2625 if (item[c].prom_type == 7) {
2507 2626 //先把商品放入组合计算的专用的区域
2508 2627 console.log('是组合商品---')
... ... @@ -2514,11 +2633,26 @@ Page({
2514 2633 } else if (item[c].prom_type == 10) {
2515 2634 ladder_calc.add_ladder_prom(car, a, obj);
2516 2635 } else {
  2636 + //console.log("索引:"+c+",数量:"+item[c].goods_num+",单价:"+item[c].goods_price+",合计:"+item[c].goods_num * item[c].goods_price+",商品:"+item[c].goods_name);
2517 2637 tfeel += item[c].goods_num * item[c].goods_price;
  2638 + //console.log("累计:"+tfeel);
  2639 +
  2640 + //-- 如果价格有发生变动,要更新界面中的价格显示 --
  2641 + if(th.data.dp_car && th.data.dp_car[a] && th.data.dp_car[a].goods) {
  2642 + if (item[c].goods_price != th.data.dp_car[a].goods[c].goods_price) {
  2643 + let txt = 'requestData[' + a + '].goods[' + c + '].goods_price';
  2644 + th.setData({
  2645 + [txt]: item[c].goods_price
  2646 + })
  2647 + }
  2648 + }
  2649 +
2518 2650 }
2519 2651 t_num += item[c].goods_num;
2520 2652 }
2521 2653  
  2654 +
  2655 +
2522 2656 //-- 如果这个商品是线下取价的时候 --
2523 2657 if (item[c].is_offline && item[c].prom_type != 7) {
2524 2658 offline_price += (item[c].goods_price - item[c].offline_price) * item[c].goods_num;
... ... @@ -2526,6 +2660,13 @@ Page({
2526 2660 }
2527 2661 }
2528 2662  
  2663 +
  2664 +
  2665 +
  2666 +
  2667 +
  2668 +
  2669 +
2529 2670 //总的价格,把组合商品的价格拿出来
2530 2671 var zh_calc_res = zh_calc.calculate_zh(car, a, th);
2531 2672 console.log('.组合价-----------')
... ... @@ -2546,11 +2687,11 @@ Page({
2546 2687 [txt]: Number(is_s_sele)
2547 2688 });
2548 2689  
2549   - var txt1 = "requestData[" + a + "].show_can_cx";
2550   - var txt_g = "requestData[" + a + "].goods";
  2690 + var txt1 = "requestData[" + a + "].show_can_cx1";
  2691 + //-- 赋值不渲染 ,只后台计算 --
  2692 + th.data.requestData[a].show_can_cx=show_can_cx;
2551 2693 th.setData({
2552   - [txt1]: show_can_cx,
2553   - [txt_g]:item
  2694 + [txt1]: show_can_cx1,
2554 2695 });
2555 2696  
2556 2697 //-- var et={show_can_cx:show_can_cx};
... ... @@ -2859,7 +3000,7 @@ Page({
2859 3000 //-- 这个函数在计算的时候,要包含限购的那一部分 --
2860 3001 async normal_check(t, item, pitem, store_count, limit, goodsinfo, wareIds) {
2861 3002  
2862   - var cx_arr = await getApp().get_has_cx_act(goodsinfo.goods_id);
  3003 + var cx_arr = getApp().get_has_cx_act2(goodsinfo.goodsActinfo);
2863 3004  
2864 3005 var th = this;
2865 3006 // getApp().my_warnning('购买数量超出商品库存', 0, th);
... ... @@ -3386,6 +3527,12 @@ Page({
3386 3527 this.getCardList();
3387 3528 },
3388 3529  
  3530 +
  3531 + clear_checkouting(){
  3532 + wx.hideLoading();
  3533 + this.data.checkouting=0;
  3534 + },
  3535 +
3389 3536 //--------------去结算------------
3390 3537 async checkout() {
3391 3538 if (getApp().is_sp_hao()) {
... ... @@ -3397,13 +3544,24 @@ Page({
3397 3544 return false;
3398 3545 }
3399 3546  
3400   - if (!this.data.total_num || this.data.total_num <= 0) return false;
  3547 + if (!this.data.total_num || this.data.total_num <= 0) {
  3548 + wx.showToast({
  3549 + title: "请选择商品",
  3550 + icon: 'none',
  3551 + duration: 2000
  3552 + });
  3553 + return false;
  3554 + }
3401 3555 if (!this.data.is_load) return false;
3402 3556 if (this.data.up_dating) {
3403 3557 wx.showLoading({
3404 3558 title: "计算中"
3405 3559 })
3406 3560 }
  3561 + //--- 避免重复点击 ---
  3562 + if(this.data.checkouting) return false;
  3563 + this.data.checkouting=1;
  3564 +
3407 3565 var garr = this.data.requestData;
3408 3566 var check_is_goods_selected = 0;
3409 3567  
... ... @@ -3422,7 +3580,8 @@ Page({
3422 3580 //-- 如果是商品的结算 --
3423 3581 if (check_is_goods_selected) {
3424 3582 var glist = []; //商品数组
3425   - var map = new Map(); //使用map值键进行运算
  3583 + var map = new Map(); //使用map值键进行运算
  3584 + this.data.act_buy_map={}; //使用map值键进行运算活动商品的购买数量
3426 3585  
3427 3586 var g_arr = new Array(); //已选的商品列表
3428 3587 var user_id = getApp().globalData.user_id;
... ... @@ -3445,14 +3604,14 @@ Page({
3445 3604  
3446 3605 var pid=this.data.requestData[i].pid;
3447 3606 var _pick=null;
3448   - //获取商品信息,包含线下商品ID,指定门店销售的信息
3449   - var rh=await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+pid, {});
3450   - if(rh && rh.data.code==0){
3451   - _pick=rh.data.data;
3452   - }
3453   -
3454 3607 var i_arr = this.data.requestData[i].goods;
3455 3608  
  3609 + //-- 优化不用调用接口 --
  3610 + _pick={
  3611 + pickup_id:pid,
  3612 + distr_type:i_arr[0].pickup_distr_type
  3613 + };
  3614 +
3456 3615 //判断一下商品能不能满足优惠促销的条件
3457 3616 await th.check_can_yh_pro(i_arr);
3458 3617  
... ... @@ -3462,7 +3621,7 @@ Page({
3462 3621 //-- 判断门店配送是不是匹配 --
3463 3622 if(_pick && _pick.distr_type!=0 && i_arr[j].distr_type!=0 && _pick.distr_type!= i_arr[j].distr_type){
3464 3623 getApp().confirmBox(i_arr[j].goods_name + "配送方式和门店不一致");
3465   - wx.hideLoading();
  3624 + th.clear_checkouting();
3466 3625 return false;
3467 3626 }
3468 3627  
... ... @@ -3498,15 +3657,14 @@ Page({
3498 3657 if(yh_by_map[ky]){
3499 3658 ky_n+=yh_by_map[ky];
3500 3659 }
3501   -
3502 3660 //-- 判断优惠促销活动的商品的限购,can_yh 表示商品满足优惠促销的条件 --
3503 3661 if(i_arr[j].prom_type==3 && fd1.act.goodslimit>0 && i_arr[j].can_yh ){
3504   - var p_can_by=fd1.act.goodslimit-fd1.act.goodslimited;
3505   - if(i_arr[j].goods_num+ky_n>p_can_by){
3506   - getApp().confirmBox(i_arr[j].goods_name + "超出活动限购数量"+fd1.act.goodslimit+"件");
3507   - wx.hideLoading();
3508   - return false;
3509   - }
  3662 + var p_can_by=fd1.act.goodslimit-fd1.act.goodslimited;
  3663 + if(i_arr[j].goods_num+ky_n>p_can_by){
  3664 + getApp().confirmBox(i_arr[j].goods_name + "超出活动限购数量"+fd1.act.goodslimit+"件");
  3665 + th.clear_checkouting();
  3666 + return false;
  3667 + }
3510 3668 }
3511 3669 //-- 把购物数量记录到map表中 --
3512 3670 if(!yh_by_map[ky]) yh_by_map[ky]=0;
... ... @@ -3516,10 +3674,8 @@ Page({
3516 3674 }
3517 3675  
3518 3676  
3519   -
3520   -
3521   -
3522 3677 if (i_arr[j].prom_type == 7 && i_arr[j].act && (i_arr[j].act.buy_limit>0 || i_arr[j].act.zh_num>0) ) {
  3678 +
3523 3679 let userbuynum = await this.getUserBuyPromNum(i_arr[j].prom_id);
3524 3680  
3525 3681 if(!zh_buyed_m[i_arr[j].prom_id]) zh_buyed_m[i_arr[j].prom_id]=userbuynum;
... ... @@ -3537,10 +3693,10 @@ Page({
3537 3693 checkArr7.push(i_arr[j])
3538 3694 }else{
3539 3695 if (zh_all_ck[i_arr[j].prom_id]) {
3540   - //相同门店只记录一单
  3696 + //相同门店只记录一单
3541 3697 if(zh_all_ck[i_arr[j].prom_id].indexOf(i)==-1) zh_all_ck[i_arr[j].prom_id].push(i);
3542 3698 } else {
3543   - zh_all_ck[i_arr[j].prom_id] = [i];
  3699 + zh_all_ck[i_arr[j].prom_id] = [i];
3544 3700 }
3545 3701  
3546 3702 }
... ... @@ -3548,7 +3704,7 @@ Page({
3548 3704 //-- 优惠活动次数限制,相同门店的相同prom_id只能算一次 --
3549 3705 if (i_arr[j].prom_type == 3) {
3550 3706 if (checkObj3[i_arr[j].prom_id]) {
3551   - if(checkObj3[i_arr[j].prom_id].indexOf(i)==-1) checkObj3[i_arr[j].prom_id].push(i);
  3707 + if(checkObj3[i_arr[j].prom_id].indexOf(i)==-1) checkObj3[i_arr[j].prom_id].push(i);
3552 3708 } else {
3553 3709 checkObj3[i_arr[j].prom_id] = [i];
3554 3710 }
... ... @@ -3556,11 +3712,11 @@ Page({
3556 3712  
3557 3713 //如果是普通购买的时候。
3558 3714 if(i_arr[j].is_integral_normal || i_arr[j].is_pd_normal ){
3559   - //-- 四大促销 --
3560   - if([3,5,7,10].indexOf(i_arr[j].prom_tyoe)==-1){
3561   - i_arr[j].prom_id=0;
3562   - i_arr[j].prom_type=0;
3563   - }
  3715 + //-- 四大促销 --
  3716 + if([3,5,7,10].indexOf(i_arr[j].prom_tyoe)==-1){
  3717 + i_arr[j].prom_id=0;
  3718 + i_arr[j].prom_type=0;
  3719 + }
3564 3720 }
3565 3721  
3566 3722 //map 的key是不会重复,会覆盖,,
... ... @@ -3570,6 +3726,7 @@ Page({
3570 3726 goods_price: i_arr[j].goods_price,
3571 3727 prom_id: i_arr[j].prom_id,
3572 3728 prom_type: i_arr[j].prom_type,
  3729 + g_num:i_arr[j].goods_num //新增
3573 3730 };
3574 3731 //判断是不是线下取价
3575 3732 if (i_arr[j].is_offline) {
... ... @@ -3579,35 +3736,42 @@ Page({
3579 3736 }
3580 3737 g_arr.push(ie);
3581 3738  
3582   - if (map.has(i_arr[j].goods_id + "")) {
3583   - var num11 = map.get(i_arr[j].goods_id + "");
3584   - var num22 = parseInt(i_arr[j].goods_num) + parseInt(num11);
3585   - map.set(i_arr[j].goods_id + "", num22);
3586   - } else {
3587   - map.set(i_arr[j].goods_id + "", i_arr[j].goods_num);
  3739 + //赠品不拿来计算库存
  3740 + if(!i_arr[j].is_gift) {
  3741 + if (map.has(i_arr[j].goods_id + "")) {
  3742 + var num11 = map.get(i_arr[j].goods_id + "");
  3743 + var num22 = parseInt(i_arr[j].goods_num) + parseInt(num11);
  3744 + map.set(i_arr[j].goods_id + "", num22);
  3745 + } else {
  3746 + map.set(i_arr[j].goods_id + "", i_arr[j].goods_num);
  3747 + }
  3748 +
  3749 + var ky_0=i_arr[j].prom_type + "-"+i_arr[j].prom_id;
  3750 + if(th.data.act_buy_map[ky_0]){
  3751 + var n11 = th.data.act_buy_map[ky_0];
  3752 + var n22 = parseInt(i_arr[j].goods_num) + parseInt(num11);
  3753 + th.data.act_buy_map[ky_0]=n22
  3754 + }else{
  3755 + th.data.act_buy_map[ky_0]=i_arr[j].goods_num
  3756 + }
  3757 +
3588 3758 }
3589 3759 //glist += i_arr[j].goods_id + ",";
3590   -
3591 3760 if(!i_arr[j].is_gift){
3592   - var et= {"prom_type":i_arr[j].prom_type,"prom_id":i_arr[j].prom_id,"goods_id":i_arr[j].goods_id};
3593   - glist.push(et);
  3761 + var et= {"prom_type":i_arr[j].prom_type,"prom_id":i_arr[j].prom_id,"goods_id":i_arr[j].goods_id};
  3762 + glist.push(et);
3594 3763 }
3595 3764 ab = 1;
3596 3765  
3597 3766 //-- 获取促销活动是不是有参与 --
3598   - var act = await getApp().get_has_cx_act(i_arr[j].goods_id);
  3767 + var act = getApp().get_has_cx_act2(i_arr[j].goodsActinfo);
3599 3768 //-- 判断商品的起订数量 --
3600 3769 var mo_num = getApp().get_limit_qty(i_arr[j], act.length);
3601 3770 var steep = getApp().get_limit_qty(i_arr[j], act.length, 1);
3602 3771 var py_type = parseInt(i_arr[j].prom_type + '');
3603 3772  
3604   - //商品只查一次。看一下有没有
3605   - var gd = null;
3606   - //获取商品信息,包含线下商品ID,指定门店销售的信息
3607   - await getApp().request.promiseGet("/api/weshop/goods/get/" + oo.stoid + "/" + i_arr[j].goods_id, {}).then(res => {
3608   - if (res.data.code == 0) gd = res.data.data;
3609   - })
3610   -
  3773 + //-- 商品只查一次。看一下有没有,门店之前第一次就赋值了 --
  3774 + var gd = i_arr[j];
3611 3775 //判断秒杀的指定门店和团购的指定门店
3612 3776 if([1,2].indexOf(py_type)>-1 && i_arr[j].prom && i_arr[j].prom.pick_up_lists){
3613 3777 var idx0=i_arr[j].prom.pick_up_lists.findIndex(function (e){
... ... @@ -3620,7 +3784,7 @@ Page({
3620 3784 if(py_type==2) act_type='团购';
3621 3785  
3622 3786 getApp().confirmBox(i_arr[j].goods_name + act_type+"活动的门店不可售");
3623   - wx.hideLoading();
  3787 + th.clear_checkouting();
3624 3788 return false;
3625 3789 }
3626 3790 }
... ... @@ -3628,19 +3792,19 @@ Page({
3628 3792 if ([0, 3, 5, 7, 10].indexOf(py_type) > -1) {
3629 3793 //如果是指定门店,就要判断
3630 3794 if(gd.pick_group_ids){
3631   - var idx0=gd.pick_up_lists.findIndex(function (e){
3632   - return e.pickup_id==i_arr[j].pick_id;
3633   - })
3634   - if(idx0<0){
3635   - getApp().confirmBox(i_arr[j].goods_name + "的门店不可售");
3636   - wx.hideLoading();
3637   - return false;
3638   - }
  3795 + var idx0=gd.pick_up_lists.findIndex(function (e){
  3796 + return e.pickup_id==i_arr[j].pick_id;
  3797 + })
  3798 + if(idx0<0){
  3799 + getApp().confirmBox(i_arr[j].goods_name + "的门店不可售");
  3800 + th.clear_checkouting();
  3801 + return false;
  3802 + }
3639 3803 }
3640 3804  
3641 3805 if (mo_num > i_arr[j].goods_num) {
3642 3806 getApp().confirmBox(i_arr[j].goods_name + "的未达到起订数量");
3643   - wx.hideLoading();
  3807 + th.clear_checkouting();
3644 3808 return false;
3645 3809 }
3646 3810 if (steep > 1 && (i_arr[j].goods_num - mo_num) % steep != 0) {
... ... @@ -3655,7 +3819,7 @@ Page({
3655 3819  
3656 3820 th.postCardList(e, j, i);
3657 3821  
3658   - wx.hideLoading();
  3822 + th.clear_checkouting();
3659 3823 return false;
3660 3824 }
3661 3825  
... ... @@ -3672,7 +3836,7 @@ Page({
3672 3836 });
3673 3837 if (ob.code == -1) {
3674 3838 t.my_warnning(gd.goods_name + "门店库存不足", 0, th);
3675   - wx.hideLoading();
  3839 + th.clear_checkouting();
3676 3840 return false;
3677 3841 }
3678 3842  
... ... @@ -3685,7 +3849,7 @@ Page({
3685 3849 if (res.data.code == 0) {
3686 3850 if (!res.data.data.promGoodsLists) {
3687 3851 t.my_warnning(i_arr[j].goods_name + "优惠活动已经过期", 0, th);
3688   - wx.hideLoading();
  3852 + th.clear_checkouting();
3689 3853 is_ok = 0;
3690 3854 }
3691 3855 }
... ... @@ -3698,20 +3862,21 @@ Page({
3698 3862  
3699 3863 } else {
3700 3864 if (i_arr[j].is_gift == 1) continue;
3701   - rq.put("/api/weshop/cart/update", {
3702   - data: {
3703   - id: i_arr[j].id,
3704   - selected: 0,
3705   - store_id: oo.stoid
3706   - },
3707   - success: function (ee) {
3708   - console.log(ee);
3709   - }
3710   - });
  3865 + // rq.put("/api/weshop/cart/update", {
  3866 + // data: {
  3867 + // id: i_arr[j].id,
  3868 + // selected: 0,
  3869 + // store_id: oo.stoid
  3870 + // },
  3871 + // success: function (ee) {
  3872 + // console.log(ee);
  3873 + // }
  3874 + // });
3711 3875 }
3712 3876 }
3713 3877 }
3714 3878  
  3879 +
3715 3880 console.log(checkObj3);
3716 3881 let checkObj3_off = false
3717 3882  
... ... @@ -3761,7 +3926,7 @@ Page({
3761 3926  
3762 3927 if (checkObj3_off) {
3763 3928 t.my_warnning("已超出优惠促销次数", 0, th);
3764   - wx.hideLoading();
  3929 + th.clear_checkouting();
3765 3930 return false
3766 3931 }
3767 3932  
... ... @@ -3770,23 +3935,23 @@ Page({
3770 3935 let zh_ck_arr = Object.keys(zh_limit_m);
3771 3936 if(zh_ck_arr && zh_ck_arr.length ){
3772 3937 for (let xg = 0; xg < zh_ck_arr.length; xg++) {
3773   - var ky=zh_ck_arr[xg];
3774   - var zh_buyed=zh_buyed_m[ky]?zh_buyed_m[ky]:0;
3775   - var zh_limit=zh_limit_m[ky]?zh_limit_m[ky]:0;
3776   - var zh_all=zh_all_ck[ky]?zh_all_ck[ky].length:0;
3777   - if(zh_limit<=0) continue;
3778   -
3779   - if(zh_all+zh_buyed>zh_limit){
3780   - zh_off=true;
3781   - break;
3782   - }
  3938 + var ky=zh_ck_arr[xg];
  3939 + var zh_buyed=zh_buyed_m[ky]?zh_buyed_m[ky]:0;
  3940 + var zh_limit=zh_limit_m[ky]?zh_limit_m[ky]:0;
  3941 + var zh_all=zh_all_ck[ky]?zh_all_ck[ky].length:0;
  3942 + if(zh_limit<=0) continue;
  3943 +
  3944 + if(zh_all+zh_buyed>zh_limit){
  3945 + zh_off=true;
  3946 + break;
  3947 + }
3783 3948 }
3784 3949 }
3785 3950  
3786 3951 if (zh_off) {
3787   - t.my_warnning("已超出组合购优惠次数", 0, th);
3788   - wx.hideLoading();
3789   - return false
  3952 + t.my_warnning("已超出组合购优惠次数", 0, th);
  3953 + th.clear_checkouting();
  3954 + return false
3790 3955 }
3791 3956  
3792 3957  
... ... @@ -3839,16 +4004,15 @@ Page({
3839 4004 })
3840 4005 if (ab == 0) {
3841 4006 t.my_warnning("未选择商品", 0, th);
3842   - wx.hideLoading();
  4007 + th.clear_checkouting();
3843 4008 return false;
3844 4009 }
3845 4010  
3846 4011 //进行到下一步
3847 4012 th.cart_buy_next(glist,map,g_arr,checkArr7)
3848 4013  
3849   -
3850 4014 } else if (res.cancel) {
3851   - wx.hideLoading();
  4015 + th.clear_checkouting();
3852 4016 console.log('用户点击取消')
3853 4017 }
3854 4018 }
... ... @@ -3871,7 +4035,7 @@ Page({
3871 4035 })
3872 4036 if (ab == 0) {
3873 4037 t.my_warnning("未选择商品", 0, th);
3874   - wx.hideLoading();
  4038 + th.clear_checkouting();
3875 4039 return false;
3876 4040 }
3877 4041  
... ... @@ -3903,7 +4067,7 @@ Page({
3903 4067 })
3904 4068 if(idx0<0){
3905 4069 getApp().confirmBox(i_arr[j].service_name + "秒杀活动的门店不可售");
3906   - wx.hideLoading();
  4070 + th.clear_checkouting();
3907 4071 return false;
3908 4072 }
3909 4073 }
... ... @@ -3923,8 +4087,6 @@ Page({
3923 4087 }
3924 4088 })
3925 4089  
3926   -
3927   - wx.hideLoading();
3928 4090 getApp().goto("/packageA/pages/cart2_ser/cart2_ser?is_cart=1");
3929 4091 }
3930 4092 },
... ... @@ -3932,191 +4094,199 @@ Page({
3932 4094  
3933 4095 cart_buy_next(glist,map,g_arr,checkArr7){
3934 4096 var th=this;
3935   - var map_limit = new Map(); //使用map值键进行存储限购
  4097 + var map_limit = new Map(); //使用map值键进行存储限购,这里存的是活动的
  4098 + var act_buyed_map={}; //活动当前购买数量的map
  4099 + var up_cart_data=[];
  4100 +
  4101 + //获取活动的购买的数量
  4102 + for (let ig = 0; ig <g_arr.length ; ig++) {
  4103 + var t_iter = g_arr[ig];
  4104 + var ky=t_iter.goods_id + "-"+t_iter.prom_type + "-"+t_iter.prom_id;
  4105 + var obj = act_buyed_map[ky];
  4106 + if (obj){
  4107 + obj.g_num+=t_iter.g_num;
  4108 + continue;
  4109 + }
  4110 + var ie = { g_num:t_iter.g_num};
  4111 + act_buyed_map[ky]= ie;
  4112 + }
  4113 +
3936 4114 //--取一下商品的限购 以及活动的限购,redis数量--
3937 4115 getApp().request.promisePost("/api/weshop/goods/listGoodsListNumNew", {
3938 4116 is_json:1,
3939 4117 data: {
3940 4118 listNumNewDtos: glist,
3941   - store_id: oo.stoid
  4119 + store_id: oo.stoid,
  4120 + user_id:getApp().globalData.user_id,
3942 4121 }
3943 4122 }).then(async ee=>{
3944   - if (ee.data.code == 0) {
3945   - var ddata = ee.data.data,
3946   - isok = 1,
3947   - gname = "",
3948   - err = "";
3949   - //--组装--
3950   - for (var ij = 0; ij < ddata.length; ij++) {
3951   - var val = ddata[ij];
3952   -
3953   - var ky=val.goods_id + "-"+val.prom_type + "-"+val.prom_id;
3954   - var obj = map_limit.get(ky);
3955   - if (obj) continue;
3956   -
3957   - var promgoodsbuynum = 0;
3958   - var goodsbuynum = 0;
3959   -
3960   - //--要获得商品,该用户买了多少件,同步应用--
3961   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
3962   - data: {
3963   - store_id: oo.stoid,
3964   - user_id:getApp().globalData.user_id,
3965   - goods_id: val.goods_id,
3966   - prom_type: val.prom_type,
3967   - prom_id: val.prom_id,
3968   - isnew:1
3969   - },
3970   - }).then(res => {
3971   - var buy_num_data = res.data.data;
3972   - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
3973   - goodsbuynum = buy_num_data.goodsbuynum;
3974   - })
3975   - var ie = {
3976   - promgoodsbuynum: promgoodsbuynum,
3977   - goodsbuynum: goodsbuynum
3978   - };
3979   - map_limit.set(ky, ie);
  4123 + if (ee.data.code == 0 && ee.data.data && ee.data.data.length) {
  4124 + var ddata = ee.data.data,
  4125 + isok = 1,
  4126 + gname = "",
  4127 + err = "";
  4128 +
  4129 + //--组装活动购买的限购--
  4130 + for (var ij = 0; ij < ddata.length; ij++) {
  4131 + var val = ddata[ij];
  4132 + var ky=val.goods_id + "-"+val.prom_type + "-"+val.prom_id;
  4133 + var obj = map_limit.get(ky);
  4134 + if (obj){
  4135 + obj.g_num+=val.goods_num;
  4136 + continue;
3980 4137 }
  4138 + var promgoodsbuynum =val.promgoodsbuynum || 0;
  4139 + var goodsbuynum =val.goodsbuynum || 0;
  4140 + var ie = {
  4141 + promgoodsbuynum: promgoodsbuynum,
  4142 + goodsbuynum:goodsbuynum
  4143 + };
  4144 + map_limit.set(ky, ie);
  4145 + }
3981 4146  
3982   - //try {
3983   - for (var ind in ddata) {
3984   - var val = ddata[ind];
3985   - var num = map.get(val.goods_id + "");
  4147 + //try {
  4148 + for (var ind in ddata) {
  4149 + var val = ddata[ind];
  4150 + var num = map.get(val.goods_id + "");
3986 4151  
3987   - var ky=val.goods_id + "-"+val.prom_type + "-"+val.prom_id;
3988   - var buyed = map_limit.get(ky);
  4152 + var ky=val.goods_id + "-"+val.prom_type + "-"+val.prom_id;
  4153 + var ky2=val.prom_type + "-"+val.prom_id;
3989 4154  
3990   - if (num <= 0) {
3991   - isok = 0;
3992   - gname = val.goods_name;
3993   - throw "购买数量不能为0";
3994   - return false;
3995   - }
  4155 + var num = map.get(val.goods_id + "");
  4156 + var num2 = th.data.act_buy_map[ky2];
3996 4157  
3997   - if (val.prom_type == 1 || val.prom_type == 2) {
  4158 + var buyed = map_limit.get(ky);
  4159 + var cur_buyed=act_buyed_map[ky]
3998 4160  
3999   - var s_num=num;
4000   - if(th.data.sales_rules> 1) s_num=buyed;
4001   - if (s_num > val.store_count) {
4002   - isok = 0;
4003   - gname = val.goods_name;
4004   - throw "超出库存";
4005   - return false;
4006   - }
  4161 + if (num <= 0) {
  4162 + isok = 0;
  4163 + gname = val.goods_name;
  4164 + err= "购买数量不能为0";
  4165 + return false;
  4166 + }
4007 4167  
4008   - if (buyed > val.redisnum && val.redisnum) {
4009   - isok = 0;
4010   - gname = val.goods_name;
4011   - err="超出活动库存";
4012   - break;
4013   - }
4014   - if (buyed > val.goods_num - val.buy_num && val.goods_num) {
4015   - isok = 0;
4016   - gname = val.goods_name;
4017   - err="超出活动库存";
4018   - break;
4019   - }
  4168 + if (val.prom_type == 1 || val.prom_type == 2) {
  4169 + var s_num=num;
  4170 + if(th.data.sales_rules> 1) s_num=buyed;
  4171 + if (s_num > val.store_count) {
  4172 + isok = 0;
  4173 + gname = val.goods_name;
  4174 + err="超出库存";
  4175 + return false;
  4176 + }
4020 4177  
4021   - }
  4178 + if(cur_buyed && cur_buyed.g_num > val.redisnum && val.redisnum) {
  4179 + isok = 0;
  4180 + gname = val.goods_name;
  4181 + err="超出活动库存";
  4182 + break;
  4183 + }
  4184 +
  4185 + if(cur_buyed && buyed.g_num > val.goods_num - val.buy_num && val.goods_num) {
  4186 + isok = 0;
  4187 + gname = val.goods_name;
  4188 + err="超出活动库存";
  4189 + break;
  4190 + }
  4191 + }
  4192 +
  4193 + if (th.data.sales_rules == 1 || val.prom_type == 1 || val.prom_type == 2) {
  4194 + if (num > val.store_count) {
  4195 + isok = 0;
  4196 + gname = val.goods_name;
  4197 + err="超出库存";
  4198 + break;
  4199 + }
  4200 + }
  4201 +
  4202 + if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) {
  4203 + isok = 0;
  4204 + gname = val.goods_name;
  4205 + err="超出商品限购";
  4206 + break;
  4207 + }
  4208 +
  4209 + if (num2 + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0) {
  4210 + isok = 0;
  4211 + gname = val.goods_name;
  4212 + err="超出活动限购";
  4213 + break;
  4214 + }
4022 4215  
4023   - if (th.data.sales_rules == 1) {
4024   - if (num > val.store_count) {
  4216 + var card_field = th.data.card_field;
  4217 + for (var i = 0; i < g_arr.length; i++) {
  4218 + if (g_arr[i].goods_id == val.goods_id) {
  4219 +
  4220 + //如果会员是等级会员,商品有等级价,且不是活动商品
  4221 + if (card_field && val[card_field] > 0 &&
  4222 + ((val.prom_type == 0 && g_arr[i].prom_type == 0) || g_arr[i].prom_type == 5 || g_arr[i].prom_type == 7 || g_arr[i].prom_type == 10)) {
  4223 + if (g_arr[i].goods_price != val[card_field]) {
4025 4224 isok = 0;
4026 4225 gname = val.goods_name;
4027   - err="超出库存";
  4226 + err="商品价格已经变化";
  4227 + break;
  4228 + }
  4229 + } else {
  4230 + if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price && val.prom_price > 0 && (g_arr[i].prom_type==1 && g_arr[i].prom_type==2) ) {
  4231 + isok = 0;
  4232 + gname = val.goods_name;
  4233 + err="商品价格已经变化";
4028 4234 break;
4029 4235 }
4030 4236 }
4031 4237  
  4238 + //-- 数据的更新 --
  4239 + var data = {
  4240 + id: g_arr[i].id,
  4241 + selected: 1,
  4242 + store_id: oo.stoid,
  4243 + prom_type: g_arr[i].prom_type,
  4244 + prom_id: g_arr[i].prom_id,
  4245 + };
4032 4246  
  4247 + // let gitem = checkArr7.find(item => item.goods_id == g_arr[i].goods_id)
  4248 + // if (gitem) {
  4249 + // data.prom_type = 0
  4250 + // data.prom_id = 0
  4251 + // }
4033 4252  
4034   - if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) {
4035   - isok = 0;
4036   - gname = val.goods_name;
4037   - err="超出商品限购";
4038   - break;
4039   - }
4040   -
4041   - if (num + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0) {
4042   - isok = 0;
4043   - gname = val.goods_name;
4044   - err="超出活动限购";
4045   - break;
4046   - }
4047   -
4048   - var card_field = th.data.card_field;
4049   - for (var i = 0; i < g_arr.length; i++) {
4050   - if (g_arr[i].goods_id == val.goods_id) {
4051   -
4052   - //如果会员是等级会员,商品有等级价,且不是活动商品
4053   - if (card_field && val[card_field] > 0 &&
4054   - ((val.prom_type == 0 && g_arr[i].prom_type == 0) || g_arr[i].prom_type == 5 || g_arr[i].prom_type == 7 || g_arr[i].prom_type == 10)) {
4055   - if (g_arr[i].goods_price != val[card_field]) {
4056   - isok = 0;
4057   - gname = val.goods_name;
4058   - err="商品价格已经变化";
4059   - break;
4060   - }
4061   - } else {
4062   - if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price && val.prom_price > 0) {
4063   - isok = 0;
4064   - gname = val.goods_name;
4065   - err="商品价格已经变化";
4066   - break;
4067   - }
4068   - }
4069   -
4070   - //-- 数据的更新 --
4071   - var data = {
4072   - id: g_arr[i].id,
4073   - selected: 1,
4074   - store_id: oo.stoid,
4075   - prom_type: g_arr[i].prom_type,
4076   - prom_id: g_arr[i].prom_id,
4077   - };
4078   -
4079   - // let gitem = checkArr7.find(item => item.goods_id == g_arr[i].goods_id)
4080   - // if (gitem) {
4081   - // data.prom_type = 0
4082   - // data.prom_id = 0
4083   - // }
4084   -
4085   - //-- 如果有线下取价的时候 --
4086   - if (g_arr[i].is_offline) {
4087   - data.pricing_type = g_arr[i].pricing_type;
4088   - data.offline_price = g_arr[i].offline_price;
4089   - }
4090   - rq.put("/api/weshop/cart/update", {
4091   - data: data,
4092   - success: function (ee) {
4093   - console.log(ee);
4094   - }
4095   - });
4096   - }
  4253 + //-- 如果有线下取价的时候 --
  4254 + if (g_arr[i].is_offline) {
  4255 + data.pricing_type = g_arr[i].pricing_type;
  4256 + data.offline_price = g_arr[i].offline_price;
4097 4257 }
4098   -
4099   - if(!isok) break;
  4258 + //把更新数组存起来
  4259 + up_cart_data.push(data);
4100 4260  
4101 4261 }
4102   - // } catch (e) {
4103   - // err = e;
4104   - // }
4105   - if (isok == 0) {
4106   - t.confirmBox(gname + ":" + err);
4107   - wx.hideLoading();
4108   - return false;
4109 4262 }
4110 4263  
  4264 + if(!isok) break;
4111 4265  
4112   - wx.hideLoading();
4113   - wx.navigateTo({
4114   - url: "/packageE/pages/cart/cart2/cart2"
4115   - });
4116 4266 }
  4267 + // } catch (e) {
  4268 + // err = e;
  4269 + // }
  4270 + if (isok == 0) {
  4271 + t.confirmBox(gname + ":" + err);
  4272 + th.clear_checkouting();
  4273 + return false;
  4274 + }
  4275 +
  4276 + getApp().request.promisePost("/api/weshop/cart/updateCartPromInfo", {
  4277 + is_json: 1,
  4278 + data: up_cart_data,
  4279 + });
  4280 +
  4281 + wx.navigateTo({
  4282 + url: "/packageE/pages/cart/cart2/cart2"
  4283 + });
  4284 + }
4117 4285 })
4118 4286 },
4119 4287  
  4288 +
  4289 +
4120 4290 //结算到最后一个商品
4121 4291 set_last: function (ab, isok, gname) {
4122 4292 if (isok == 0) {
... ... @@ -4312,10 +4482,20 @@ Page({
4312 4482  
4313 4483 //-- 所有的购物车的数据,要用拷贝的赖进行计算 --
4314 4484 var alllist = JSON.parse(JSON.stringify(this.data.requestData));
4315   - var list2 = alllist[cindex];
  4485 + //var list2 = alllist[cindex];
4316 4486 var no_gift_arr = [];
4317 4487  
  4488 + //用来存销赠品的--2024-2-1
  4489 + let cart_zp=this.data.cart_zp;
  4490 + //要清空一下门店下的赠品
  4491 + if(cart_zp[list.pid] && cart_zp[list.pid].goods && cart_zp[list.pid].goods.length){
  4492 + let ids = cart_zp[list.pid].goods.map(obj => obj.id);
  4493 + //-- 批量把赠品删掉 --
  4494 + var url = '/api/weshop/cart/delIds/' + oo.stoid + '/' +getApp().globalData.user_id + '/' + ids.join(',');
  4495 + getApp().request.delete(url, {});
4318 4496  
  4497 + cart_zp[list.pid]={};
  4498 + }
4319 4499 //主要判断有没有促销活动
4320 4500 var is_sele_prom = 0;
4321 4501 var is_gift_del = 0;
... ... @@ -4343,17 +4523,24 @@ Page({
4343 4523 map.set(item.prom_id + "", ob);
4344 4524 }
4345 4525 }
4346   - if (item.is_gift == 1) {
4347   - var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
4348   - //getApp().request.delete(url, {});
4349   - await getApp().request.promiseDelete(url, {}) // 要用同步让赠品删除
4350   - list2.goods.splice(i, 1);
4351   - list.goods.splice(i--, 1);
4352   - is_gift_del = 1;
4353   - }
  4526 + //-- list中不再添加和删除赠品,优化list不再添加赠品,2024-02-01 --
  4527 + // if (item.is_gift == 1) {
  4528 + // var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  4529 + // //getApp().request.delete(url, {});
  4530 + // await getApp().request.promiseDelete(url, {}) // 要用同步让赠品删除
  4531 + // list2.goods.splice(i, 1);
  4532 + // list.goods.splice(i--, 1);
  4533 + // is_gift_del = 1;
  4534 + // }
4354 4535 }
4355 4536 //--如果没有选中的促销活动的,直接退出 --
4356 4537 if (!is_sele_prom) {
  4538 +
  4539 + //--- 设置单赠品的显示---2024-2-1
  4540 + this.setData({
  4541 + cart_zp
  4542 + })
  4543 +
4357 4544 //如果有赠品,要重新更新购物车的前台渲染--
4358 4545 if (is_gift_del) {
4359 4546 var rq_text = "requestData[" + cindex + "]";
... ... @@ -4374,6 +4561,10 @@ Page({
4374 4561  
4375 4562 return false;
4376 4563 }
  4564 +
  4565 +
  4566 + //用来判断有没有list大小发生变化
  4567 + let is_change_list=0;
4377 4568 //-- 循环判断活动 --
4378 4569 for (let p_item of map.entries()) {
4379 4570 var prom = null;
... ... @@ -4398,12 +4589,15 @@ Page({
4398 4589 //如果活动已经结束
4399 4590 if (!prom || prom.is_end || prom.end_time < ut.gettimestamp()) {
4400 4591 for (var ii in list.goods) {
4401   - var item = list.goods[ii];
4402   - list.goods.splice(ii, 1);
  4592 +
4403 4593 if (item.prom_id == p_item[0] && item.prom_type == 3) {
4404 4594 // var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
4405 4595 // getApp().request.delete(url, {});
4406 4596 th.disInvalid(item);
  4597 +
  4598 + var item = list.goods[ii];
  4599 + list.goods.splice(ii, 1);
  4600 + is_change_list=1;
4407 4601 }
4408 4602 }
4409 4603 continue;
... ... @@ -4479,7 +4673,7 @@ Page({
4479 4673  
4480 4674 if (discount) {
4481 4675 if (!discount.zp_num || parseInt(discount.zp_num) == 0) discount.zp_num = 1;
4482   - //判断一下赠品的模式
  4676 + //判断一下赠品的模式,如果是多赠品的时候
4483 4677 if (parseInt(discount.zp_mode) == 1) {
4484 4678  
4485 4679 var can_zp_num = 0;
... ... @@ -4514,7 +4708,7 @@ Page({
4514 4708 } else {
4515 4709 //---如果有打折的信息,赠送的信息,赠送的时候要判断是不是限购数量---
4516 4710 if (discount && discount['goods_id'] && (!discount.limit_num || discount.limit_num >= discount.bs * discount.zp_num) &&
4517   - discount.gift_storecount >= discount.bs * discount.zp_num) {
  4711 + discount.gift_storecount >= discount.bs * discount.zp_num) {
4518 4712 //如果这礼品超了情况下
4519 4713 if (no_gift_arr.indexOf(discount.gift_id) != -1) continue;
4520 4714 var o = discount.goodsinfo;
... ... @@ -4541,7 +4735,7 @@ Page({
4541 4735 original_img: th.data.imgUrl + o.original_img
4542 4736 };
4543 4737  
4544   - list2.goods.push(newd);
  4738 + //list2.goods.push(newd);
4545 4739 var all_num = 0;
4546 4740 var all_limit_num = 0;
4547 4741  
... ... @@ -4568,7 +4762,7 @@ Page({
4568 4762 }
4569 4763  
4570 4764 var url = "/api/weshop/cart/delGift?store_id=" + newd.store_id + "&user_id=" +
4571   - newd.user_id + "&goods_id=" + newd.goods_id + "&is_gift=1&pick_id=" + newd.pick_id + "&prom_id=" + newd.prom_id
  4765 + newd.user_id + "&goods_id=" + newd.goods_id + "&is_gift=1&pick_id=" + newd.pick_id + "&prom_id=" + newd.prom_id
4572 4766 await getApp().request.promiseDelete(url, {})
4573 4767  
4574 4768 var add_data = null;
... ... @@ -4581,18 +4775,30 @@ Page({
4581 4775 })
4582 4776 if (add_data) {
4583 4777 newd.id = add_data.id;
4584   - list.goods.push(newd);
  4778 + //list.goods.push(newd);
  4779 + if(!cart_zp[list.pid]) cart_zp[list.pid]={};
  4780 + if(!cart_zp[list.pid].goods) cart_zp[list.pid].goods=[];
  4781 + cart_zp[list.pid].goods.push(newd);
4585 4782 }
4586 4783 }
4587 4784 }
4588 4785 }
4589 4786  
4590 4787 }
4591   - //--更新购物车的前台渲染--
4592   - var rq_text = "requestData[" + cindex + "]";
  4788 +
  4789 + //--- 设置单赠品的显示---2024-2-1
4593 4790 this.setData({
4594   - [rq_text]: list
4595   - });
  4791 + cart_zp
  4792 + })
  4793 +
  4794 + //list大小有变换,才会渲染list
  4795 + if(is_change_list) {
  4796 + //--更新购物车的前台渲染--
  4797 + var rq_text = "requestData[" + cindex + "]";
  4798 + this.setData({
  4799 + [rq_text]: list
  4800 + });
  4801 + }
4596 4802  
4597 4803 var diff_text = "requestData[" + cindex + "].make_up_arr";
4598 4804 //-- 如果有凑单的话 --
... ... @@ -4620,6 +4826,8 @@ Page({
4620 4826  
4621 4827 },
4622 4828  
  4829 +
  4830 +
4623 4831 //优惠促销用户参与次数
4624 4832 async getUserBuyPromNum_pre(prom_id) {
4625 4833 var userInfo = getApp().globalData.userInfo;
... ... @@ -4634,8 +4842,30 @@ Page({
4634 4842 return user_pre_buynum
4635 4843 },
4636 4844  
  4845 +
4637 4846 async all_check_prom_activity() {
4638 4847 this.data.duo_zp_num_arr = {};
  4848 + //用来存销赠品的--2024-2-1
  4849 + let cart_zp=this.data.cart_zp;
  4850 +
  4851 + if(cart_zp){
  4852 + let ids=[];
  4853 + for (const Ky in cart_zp) {
  4854 + if(cart_zp[Ky].goods && cart_zp[Ky].goods.length) {
  4855 + let ids0 = cart_zp[Ky].goods.map(obj => obj.id);
  4856 + ids = [...ids, ...ids0];
  4857 + }
  4858 + }
  4859 + //调用接口把赠品删除
  4860 + if(ids.length>0){
  4861 + //-- 批量把赠品删掉 --
  4862 + var url = '/api/weshop/cart/delIds/' + oo.stoid + '/' + getApp().globalData.user_id + '/' + ids.join(',');
  4863 + getApp().request.delete(url, {});
  4864 + }
  4865 + }
  4866 + //要清空一下赠品数组
  4867 + cart_zp={};
  4868 +
4639 4869 for (var i in this.data.requestData) {
4640 4870 var cindex = i;
4641 4871 var make_up_arr = new Array();
... ... @@ -4647,9 +4877,9 @@ Page({
4647 4877  
4648 4878 //-- 所有的购物车的数据,要用拷贝的赖进行计算 --
4649 4879 var alllist = JSON.parse(JSON.stringify(this.data.requestData));
4650   - var list2 = alllist[cindex];
4651   - var no_gift_arr = [];
  4880 + //var list2 = alllist[cindex];
4652 4881  
  4882 + var no_gift_arr = [];
4653 4883  
4654 4884 //主要判断有没有促销活动
4655 4885 var is_sele_prom = 0;
... ... @@ -4677,25 +4907,30 @@ Page({
4677 4907 map.set(item.prom_id + "", ob);
4678 4908 }
4679 4909 }
4680   - if (item.is_gift == 1) {
4681   - var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
4682   - //getApp().request.delete(url, {});
4683   - await getApp().request.promiseDelete(url, {}) // 要用同步让赠品删除
4684   - list2.goods.splice(i, 1);
4685   - list.goods.splice(i--, 1);
4686   - is_gift_del = 1;
4687   - }
  4910 +
  4911 + //-- list中不再添加和删除赠品,优化list不再添加赠品,2024-02-01 --
  4912 + // if (item.is_gift == 1) {
  4913 + // var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
  4914 + // //getApp().request.delete(url, {});
  4915 + // await getApp().request.promiseDelete(url, {}) // 要用同步让赠品删除
  4916 + // list2.goods.splice(i, 1);
  4917 + // list.goods.splice(i--, 1);
  4918 + // is_gift_del = 1;
  4919 + // }
4688 4920 }
4689 4921 //--如果没有选中的促销活动的,直接退出 --
4690 4922 if (!is_sele_prom) {
4691   - //如果有赠品,要重新更新购物车的前台渲染--
4692   - if (is_gift_del) {
4693   - var rq_text = "requestData[" + cindex + "]";
4694   - this.setData({
4695   - [rq_text]: list
4696   - });
4697   - }
4698   -
  4923 + //如果有赠品,要重新更新购物车的前台渲,list中不再显示--
  4924 + // if (is_gift_del) {
  4925 + // var rq_text = "requestData[" + cindex + "]";
  4926 + // this.setData({
  4927 + // [rq_text]: list
  4928 + // });
  4929 + // }
  4930 + //--- 设置单赠品的显示---2024-2-1
  4931 + this.setData({
  4932 + cart_zp
  4933 + })
4699 4934 var rq_text2 = "requestData[" + cindex + "].make_up_arr";
4700 4935 this.setData({
4701 4936 [rq_text2]: null,
... ... @@ -4707,6 +4942,9 @@ Page({
4707 4942 })
4708 4943 continue;
4709 4944 }
  4945 +
  4946 + //用来判断有没有list大小发生变化
  4947 + let is_change_list=0;
4710 4948 //-- 循环判断活动 --
4711 4949 for (let p_item of map.entries()) {
4712 4950 var prom = null;
... ... @@ -4714,11 +4952,20 @@ Page({
4714 4952 if (th.data.promgoods_map[p_item[0]]) {
4715 4953 prom = th.data.promgoods_map[p_item[0]];
4716 4954 } else {
4717   - await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + p_item[0], {}).then(res => {
4718   - if (res.data.code == 0) {
4719   - prom = res.data.data;
4720   - }
4721   - })
  4955 +
  4956 + //使用缓存,不在调用接口
  4957 + if(!prom && th.data.yhcx_act_map && th.data.yhcx_act_map[p_item[0]] ){
  4958 + prom=th.data.yhcx_act_map[p_item[0]];
  4959 + }
  4960 + if(!prom){
  4961 + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + p_item[0], {}).then(res => {
  4962 + if (res.data.code == 0) {
  4963 + prom = res.data.data;
  4964 + }
  4965 + })
  4966 + }
  4967 +
  4968 +
4722 4969 }
4723 4970 let limit_num = 0
4724 4971 let user_pre_buynum = 0
... ... @@ -4728,13 +4975,17 @@ Page({
4728 4975 }
4729 4976 //如果活动已经结束
4730 4977 if (!prom || prom.is_end || prom.end_time < ut.gettimestamp()) {
  4978 +
4731 4979 for (var ii in list.goods) {
4732   - var item = list.goods[ii];
4733   - list.goods.splice(ii, 1);
  4980 +
4734 4981 if (item.prom_id == p_item[0] && item.prom_type == 3) {
4735 4982 // var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id;
4736 4983 // getApp().request.delete(url, {});
4737 4984 th.disInvalid(item);
  4985 +
  4986 + var item = list.goods[ii];
  4987 + list.goods.splice(ii, 1);
  4988 + is_change_list=1;
4738 4989 }
4739 4990 }
4740 4991 continue;
... ... @@ -4763,6 +5014,7 @@ Page({
4763 5014 if (!promgoods_list) continue;
4764 5015 th.data.promgoods_list[p_item[0]] = promgoods_list;
4765 5016 }
  5017 +
4766 5018 if (!limit_num || user_pre_buynum < limit_num) {
4767 5019 for (var i in promgoods_list) {
4768 5020 var item = promgoods_list[i];
... ... @@ -4792,8 +5044,6 @@ Page({
4792 5044 }
4793 5045 }
4794 5046  
4795   -
4796   -
4797 5047 //-- 只有在单赠品的时候,才要进行计算 --
4798 5048 await getApp().request.promiseGet("/api/weshop/goods/getDiscount", {
4799 5049 data: {
... ... @@ -4810,7 +5060,7 @@ Page({
4810 5060 if (discount) {
4811 5061  
4812 5062 if (!discount.zp_num || parseInt(discount.zp_num) == 0) discount.zp_num = 1;
4813   - //判断一下赠品的模式
  5063 + //-- 判断一下赠品的模式,如果是多赠品的模式 --
4814 5064 if (parseInt(discount.zp_mode) == 1) {
4815 5065  
4816 5066 var can_zp_num = 0;
... ... @@ -4843,7 +5093,7 @@ Page({
4843 5093 } else {
4844 5094 //---如果有打折的信息,赠送的信息,赠送的时候要判断是不是限购数量,因为增加了限购数量不限的情况---
4845 5095 if (discount && discount['goods_id'] && (!discount.limit_num || discount.limit_num >= discount.bs * discount.zp_num) &&
4846   - discount.gift_storecount >= discount.bs * discount.zp_num) {
  5096 + discount.gift_storecount >= discount.bs * discount.zp_num) {
4847 5097 //如果这礼品超了情况下
4848 5098 if (no_gift_arr.indexOf(discount.gift_id) != -1) continue;
4849 5099 var o = discount.goodsinfo;
... ... @@ -4870,7 +5120,7 @@ Page({
4870 5120 original_img: th.data.imgUrl + o.original_img
4871 5121 };
4872 5122  
4873   - list2.goods.push(newd);
  5123 + //list2.goods.push(newd);
4874 5124 var all_num = 0;
4875 5125 var all_limit_num = 0;
4876 5126  
... ... @@ -4888,7 +5138,6 @@ Page({
4888 5138  
4889 5139 }
4890 5140 }
4891   -
4892 5141 //-- 赠品的数量超出库存数量和会员的限制,这里是保证所有的赠品部会超出 --
4893 5142 if (discount.gift_storecount < all_num + newd.goods_num || (discount.limit_num && discount.limit_num < all_limit_num + newd.goods_num)) {
4894 5143 no_gift_arr.push(discount.gift_id);
... ... @@ -4898,7 +5147,7 @@ Page({
4898 5147  
4899 5148  
4900 5149 var url = "/api/weshop/cart/delGift?store_id=" + newd.store_id + "&user_id=" +
4901   - newd.user_id + "&goods_id=" + newd.goods_id + "&is_gift=1&pick_id=" + newd.pick_id + "&prom_id=" + newd.prom_id
  5150 + newd.user_id + "&goods_id=" + newd.goods_id + "&is_gift=1&pick_id=" + newd.pick_id + "&prom_id=" + newd.prom_id
4902 5151 await getApp().request.promiseDelete(url, {})
4903 5152  
4904 5153 var add_data = null;
... ... @@ -4911,18 +5160,29 @@ Page({
4911 5160 })
4912 5161 if (add_data) {
4913 5162 newd.id = add_data.id;
4914   - list.goods.push(newd);
  5163 + //list.goods.push(newd);
  5164 + if(!cart_zp[list.pid]) cart_zp[list.pid]={};
  5165 + if(!cart_zp[list.pid].goods) cart_zp[list.pid].goods=[];
  5166 + cart_zp[list.pid].goods.push(newd);
4915 5167 }
4916 5168 }
4917 5169 }
4918 5170 }
4919   -
4920 5171 }
4921   - //--更新购物车的前台渲染--
4922   - var rq_text = "requestData[" + cindex + "]";
  5172 +
  5173 + //--- 设置单赠品的显示---2024-2-1
4923 5174 this.setData({
4924   - [rq_text]: list
4925   - });
  5175 + cart_zp
  5176 + })
  5177 +
  5178 + //list大小有变换,才会渲染list
  5179 + if(is_change_list) {
  5180 + //--更新购物车的前台渲染--
  5181 + var rq_text = "requestData[" + cindex + "]";
  5182 + this.setData({
  5183 + [rq_text]: list
  5184 + });
  5185 + }
4926 5186  
4927 5187 var diff_text = "requestData[" + cindex + "].make_up_arr";
4928 5188 //-- 如果有凑单的话 --
... ... @@ -4952,6 +5212,8 @@ Page({
4952 5212 }
4953 5213 },
4954 5214  
  5215 +
  5216 +
4955 5217 //去凑单
4956 5218 go_cou_dang: function (e) {
4957 5219 var prom_id = e.currentTarget.dataset.prom_id;
... ...
pages/cart/cart/cart.wxml
... ... @@ -60,7 +60,7 @@
60 60  
61 61 </view>
62 62  
63   - <block wx:for="{{item.goods}}" wx:for-item="items" wx:for-index="idx" wx:key="{{idx}}">
  63 + <block wx:for="{{item.goods}}" wx:for-item="items" wx:for-index="idx" wx:key="{{idx}}">
64 64 <view class="order-item" data-item="{{idx}}">
65 65 <block wx:if="{{!items.is_gift}}">
66 66 <view bindtap="check_th_item" class="order-raido flex-vertical " data-check="{{items.selected}}" data-item="{{idx}}" data-pitems="{{pidx}}">
... ... @@ -134,7 +134,7 @@
134 134  
135 135 <!-- 验证活动是不是多个,要不要显示切换 -->
136 136 <!-- 新增促销多活动的排版 -->
137   - <block wx:if="{{g_filter.is_more_act(items,item.show_can_cx) && item.show_can_cx[items.goods_id] && item.show_can_cx[items.goods_id].act_arr.length>1}}">
  137 + <block wx:if="{{g_filter.is_more_act(items,item.show_can_cx1) && item.show_can_cx1[items.goods_id] && item.show_can_cx1[items.goods_id].act_arr.length>1}}">
138 138 <view class="bdb16">
139 139 <view bindtap="switch_cx_group"
140 140 data-index="{{pidx}}"
... ... @@ -142,7 +142,7 @@
142 142 class="cx-frame flex" style="position: relative">
143 143 <view class="cx-sizs fs30">可参促销</view>
144 144 <view class="flex ai_c f1 pdh20">
145   - <view class="xc-coupon-fram" wx:for="{{item.show_can_cx[items.goods_id].act_arr}}" >
  145 + <view class="xc-coupon-fram" wx:for="{{item.show_can_cx1[items.goods_id].act_arr}}" >
146 146 <view wx:if="{{item.prom_type==3}}" class="xc-coupon t-c four-level-word {{!item.sele?'gray':'' }}">优惠促销</view>
147 147 <view wx:if="{{item.prom_type==5}}" class="xc-coupon t-c four-level-word {{!item.sele?'gray':'' }} ">搭配促销</view>
148 148 <view wx:if="{{item.prom_type==7}}" class="xc-coupon t-c four-level-word {{!item.sele?'gray':'' }} ">组合购</view>
... ... @@ -159,11 +159,35 @@
159 159  
160 160 </block >
161 161  
  162 + <!-- 判断有没有赠品2024-2-1 -->
  163 + <block wx:if="{{cart_zp[item.pid] && cart_zp[item.pid].goods.length>0 }}">
  164 + <block wx:for="{{cart_zp[item.pid].goods}}" wx:for-item="items" wx:for-index="idx" wx:key="{{idx}}">
  165 + <view class="order-item" data-item="{{idx}}">
  166 + <view class="order-raido flex-vertical " style="width: 45rpx"></view>
  167 + <navigator class="goods-img rel" bindtap="go_gd" data-item="{{items}}" data-gd="{{items.goods_id}}">
  168 + <image class="wh100" src="{{items.original_img}}" binderror="bind_bnerr2" data-errorimg="requestData[{{pidx}}].goods[{{idx}}].original_img" data-url="{{items.original_img}}"></image>
  169 + <view style="background-color:red" class="abs flex-center fs26" wx:if="{{items.is_gift==1}}">赠品</view>
  170 + </navigator>
  171 + <view class="goods-cont">
  172 + <view class="goods-name">
  173 + <navigator bindtap="go_gd" class="ellipsis-2 fs30" data-item="{{items}}" data-gd="{{items.goods_id}}">{{items.goods_name}}</navigator>
  174 +
  175 + <view class="specifications ellipsis-1">
  176 + <view wx:if="{{items.goods_color || items.goods_spec}}">
  177 + {{items.goods_color}}{{items.goods_color?"/":''}}{{items.goods_spec}}</view>
  178 + <view wx:else>规格1</view>
  179 + </view>
  180 + <view>{{items.goods_num}}件</view>
  181 + </view>
  182 + </view>
  183 + </view>
  184 + </block>
  185 + </block>
162 186  
163 187 <!--此时是多个商品参与活动的切换 验证活动是不是多个,要不要显示切换 -->
164 188 <!-- 新增促销多活动的排版 -->
165   - <block wx:if="{{item.show_can_cx}}">
166   - <block wx:for="{{item.show_can_cx}}" wx:for-item="pitem">
  189 + <block wx:if="{{item.show_can_cx1}}">
  190 + <block wx:for="{{item.show_can_cx1}}" wx:for-item="pitem">
167 191 <view class="bdb16" wx:if="{{pitem.is_duo_gd && pitem.act_arr.length>1}}" >
168 192 <view bindtap="switch_cx_group"
169 193 data-index="{{pidx}}"
... ...
pages/goods/categoryList/categoryList.js
... ... @@ -75,8 +75,8 @@ Page({
75 75 load: 0,
76 76 xmlist: null,
77 77  
78   - is_retail_price:0 //是否显示零售价
79   -
  78 + is_retail_price:0, //是否显示零售价
  79 + banner: null, //分类广告
80 80  
81 81 },
82 82  
... ... @@ -173,7 +173,7 @@ Page({
173 173 if (0 != this.data.cat_id) {
174 174 url += "&cat_id=" + this.data.cat_id;
175 175 }
176   -
  176 +
177 177 // this.requestGoodsList(url);
178 178 getApp().getConfig2(function (rs) {
179 179 //计算等级价相关
... ... @@ -202,9 +202,9 @@ Page({
202 202 //调用底部导航
203 203 //t.editTabBar(that,getApp().globalData.setting.stoid,getApp().globalData.url);
204 204 //this.requestFirstCategoris();
205   - setTimeout(function () {
  205 + // setTimeout(function () {
206 206 //if (getApp().globalData.user_id) getApp().requestCardNum(that);
207   - }, 500)
  207 + // }, 500)
208 208  
209 209 if (this.data.load) return false;
210 210  
... ... @@ -228,11 +228,17 @@ Page({
228 228 if (e.categoryset.indexOf("," + 2 + ",") != -1) { that.setData({ is_show_gb: 1 }); }
229 229 if (e.categoryset.indexOf("," + 4 + ",") != -1) { that.setData({ is_show_xm: 1 }); }
230 230 that.setData({ store_config: e, is_do: 1 });
231   -
  231 + //请求自定义分类数据
  232 + // that.requestFirstCategoris_diy()
232 233 //---有勾品类---
233 234 if (that.data.is_show_pl) {
234   - that.requestFirstCategoris();
  235 + if (is_newsgoodstype==1) { //如果是风格2,则请求自定义分类
  236 + that.requestFirstCategoris_diy();
  237 + }else{
  238 + that.requestFirstCategoris();
  239 + }
235 240 }
  241 +
236 242 if (that.data.is_show_xm != 1 && that.data.is_show_gb != 1 && that.data.is_show_pp != 1 && that.data.is_show_pl) {
237 243 that.data.pl_timer = setInterval(function () {
238 244 if (that.data.one_level_classify.length > 0) {
... ... @@ -300,17 +306,159 @@ Page({
300 306  
301 307 },
302 308  
  309 +
  310 + //---------------自定义分类请求接口,数据进行拼装------------------
  311 + requestFirstCategoris_diy: function () {
  312 + var t = this;
  313 + let that=this;
  314 + e.get("/api/weshop/customizeCategory/page", {
  315 + data: { store_id: oo.stoid, pageSize: 6600, is_show: 1 },
  316 + success: function (e) {
  317 +
  318 + if (e.data.code !=0) {
  319 + that.requestFirstCategoris();
  320 + return
  321 + }
  322 + var arr = new Array();
  323 + var dda = e.data.data.pageData;
  324 + if (dda != null && dda != "" && dda != undefined) {
  325 + t.setData({ is_pl_time: 1 });
  326 + }
  327 +
  328 + if (t.data.is_used_share == 0) {//is_used_share控制新旧版本
  329 + for (var i = 0; i < dda.length; i++) {
  330 + if (parseInt(dda[i].level) == 1) {
  331 + var item = { items: dda[i], array: new Array(),diy_class:1 } //增加一个diy_class 标识表示为自定义分类
  332 + arr.push(item);
  333 + } else if (parseInt(dda[i].level) == 2) {
  334 + for (var j = 0; j < arr.length; j++) {
  335 + if (parseInt(dda[i].parent_id) == parseInt(arr[j].items.id)) {
  336 + arr[j].array.push(dda[i]); break;
  337 + }
  338 + }
  339 + } else {
  340 + continue;
  341 + }
  342 + }
  343 + t.setData({ catelist: arr });
  344 + } else if (t.data.is_used_share == 1 || t.data.is_used_share == 2) {
  345 +
  346 + //---------新的版本----------------
  347 + for (var i = 0; i < dda.length; i++) {
  348 + //--要排队的元素---
  349 + var need_to_insert = dda[i];
  350 + if (parseInt(need_to_insert.level) == 1) {
  351 + //判断数组的长度看看有没有2级菜单
  352 + var item = { items: need_to_insert, array: new Array(),diy_class:1 } //增加一个diy_class 标识表示为自定义分类
  353 + arr.push(item);
  354 + } else if (parseInt(need_to_insert.level) == 2) {
  355 +
  356 + for (var j = 0; j < arr.length; j++) {
  357 +
  358 +
  359 + if (parseInt(need_to_insert.parent_id) == parseInt(arr[j].items.id)) {
  360 +
  361 + var ishaf_two = { items: need_to_insert, arrays: new Array(),diy_class:1 };
  362 + arr[j].array.push(ishaf_two); arr.ishaf_two = 0;
  363 + }
  364 + }
  365 + } else if (parseInt(need_to_insert.level) == 3) {//判断有3级的时候在二级里添加一个数组
  366 +
  367 + for (var dd = 0; dd < arr.length; dd++) {
  368 + for (var pp = 0; pp < arr[dd].array.length; pp++) {
  369 + //--判断二级--
  370 + var two_item = arr[dd].array;
  371 +
  372 + if (two_item && two_item.length > 0) {
  373 +
  374 + if (parseInt(need_to_insert.parent_id) == parseInt(two_item[pp].items.id)) {
  375 +
  376 + arr[dd].array[pp].arrays.push(need_to_insert); arr.ishaf_three = 0; break;
  377 + }
  378 + }
  379 + }
  380 + }
  381 + }
  382 + }
  383 + for (var i = 0; i < arr.length; i++) {
  384 + arr[i]['items']['is_show_class'] = false;
  385 + var mobile_name = arr[i]['items']['name']
  386 + //if(mobile_name.length > 4){
  387 + //arr[i]['items']['name'] = mobile_name.substring(0, 4)
  388 + //}
  389 + }
  390 + if (t.data.is_show_pl == 1 && t.data.is_show_pp != 1 && t.data.is_show_gb != 1) {
  391 + arr[0]['items']['is_show_class'] = true;
  392 + }
  393 + //console.log(arr)
  394 + t.setData({ one_level_classify: arr });
  395 + //---有勾品类---
  396 + // if (that.data.is_show_pl) {
  397 + that.requestFirstCategoris();
  398 + // }
  399 + if (t.data.select_classify_on == 0) {
  400 + var item = arr[0];
  401 +
  402 + var name = item.items.name;
  403 + var cid = item.items.id;
  404 + var arr = item.array;
  405 +
  406 + console.log("11111", item);
  407 + console.log(arr.length);
  408 +
  409 + if (arr.length == 0) {
  410 + t.setData({
  411 + select_classify_on: 0, index: 0, classify_name: name, cat_id: cid,
  412 + goodslist: null, is_level_three: 0
  413 + });
  414 +
  415 + if (t.data.is_used_share == 2)
  416 + t.style(t.data.stylePage, cid)
  417 +
  418 + return false;
  419 + }
  420 + if (arr.length != 0) {
  421 + var is_lev_thr = 0
  422 + for (var i = 0; i < arr.length; i++) {
  423 + if (arr[i].arrays.length > 0) { is_lev_thr = 1; break; }
  424 + }
  425 + t.setData({ is_level_three: is_lev_thr ,cat_id:cid});
  426 +
  427 + if (this.data.is_level_three != 1) {
  428 + t.setData({ index: 0, classify_name: name, goodslist: arr });
  429 + // t.setData({ index: 0, classify_name: name });
  430 + } else {
  431 + // t.setData({ index: 0});
  432 + t.setData({ index: 0, goodslist: arr });
  433 + }
  434 + }
  435 +
  436 + if (t.data.is_used_share == 2){
  437 + t.style(t.data.stylePage, cid)
  438 + }
  439 +
  440 + }
  441 +
  442 + }
  443 + }
  444 + });
  445 + },
  446 +
303 447 //---------------分类请求接口,数据进行拼装------------------
304 448 requestFirstCategoris: function () {
  449 +
305 450 var t = this;
306 451 e.get("/api/weshop/goodscategory/page", {
307 452 data: { store_id: oo.stoid, pageSize: 6600, is_show: 1 },
308 453 success: function (e) {
  454 + if (e.data.code !=0) {
  455 + return
  456 + }
309 457 var arr = new Array();
310 458 var dda = e.data.data.pageData;
311 459 if (dda != null && dda != "" && dda != undefined) {
312 460 t.setData({ is_pl_time: 1 });
313   - }
  461 + }
314 462  
315 463 if (t.data.is_used_share == 0) {//is_used_share控制新旧版本
316 464 for (var i = 0; i < dda.length; i++) {
... ... @@ -377,46 +525,53 @@ Page({
377 525 arr[0]['items']['is_show_class'] = true;
378 526 }
379 527 //console.log(arr)
380   - t.setData({ one_level_classify: arr });
381   - if (t.data.select_classify_on == 0) {
382   - var item = arr[0];
383   -
384   - var name = item.items.name;
385   - var cid = item.items.id;
386   - var arr = item.array;
387   -
388   - console.log("11111", item);
389   - console.log(arr.length);
390   -
391   - if (arr.length == 0) {
392   - t.setData({
393   - select_classify_on: 0, index: 0, classify_name: name, cat_id: cid,
394   - goodslist: null, is_level_three: 0
395   - });
396   -
397   - if (t.data.is_used_share == 2)
398   - t.style(t.data.stylePage, cid)
399   -
400   - return false;
401   - }
402   - if (arr.length != 0) {
403   - var is_lev_thr = 0
404   - for (var i = 0; i < arr.length; i++) {
405   - if (arr[i].arrays.length > 0) { is_lev_thr = 1; break; }
  528 + if (t.data.one_level_classify.length>0) {
  529 + let one_level_classify = t.data.one_level_classify;
  530 + one_level_classify.push(...arr)
  531 + t.setData({ one_level_classify: one_level_classify });
  532 + }else{
  533 + t.setData({ one_level_classify: arr });
  534 + if (t.data.select_classify_on == 0) {
  535 + var item = arr[0];
  536 +
  537 + var name = item.items.name;
  538 + var cid = item.items.id;
  539 + var arr = item.array;
  540 +
  541 + console.log("11111", item);
  542 + console.log(arr.length);
  543 +
  544 + if (arr.length == 0) {
  545 + t.setData({
  546 + select_classify_on: 0, index: 0, classify_name: name, cat_id: cid,
  547 + goodslist: null, is_level_three: 0
  548 + });
  549 +
  550 + if (t.data.is_used_share == 2)
  551 + t.style(t.data.stylePage, cid)
  552 +
  553 + return false;
  554 + }
  555 + if (arr.length != 0) {
  556 + var is_lev_thr = 0
  557 + for (var i = 0; i < arr.length; i++) {
  558 + if (arr[i].arrays.length > 0) { is_lev_thr = 1; break; }
  559 + }
  560 + t.setData({ is_level_three: is_lev_thr ,cat_id:cid});
  561 +
  562 + if (this.data.is_level_three != 1) {
  563 + t.setData({ index: 0, classify_name: name, goodslist: arr });
  564 + } else {
  565 + t.setData({ index: 0, goodslist: arr });
  566 + }
406 567 }
407   - t.setData({ is_level_three: is_lev_thr ,cat_id:cid});
  568 + if (t.data.is_used_share == 2){
408 569  
409   - if (this.data.is_level_three != 1) {
410   - t.setData({ index: 0, classify_name: name, goodslist: arr });
411   - } else {
412   - t.setData({ index: 0, goodslist: arr });
  570 + t.style(t.data.stylePage, cid)
413 571 }
  572 +
414 573 }
415   -
416   - t.style(t.data.stylePage, cid)
417   -
418 574 }
419   -
420 575 }
421 576 }
422 577 });
... ... @@ -842,6 +997,14 @@ Page({
842 997 }
843 998 this.setData({ select_classify_on: indexs, index: indexs, classify_name: name, cat_id: cid, stylePage: 1, lastMsg: false, });
844 999 }
  1000 + //==1的时候,样式2的时候分类广告切换
  1001 + if (this.data.is_used_share==1) {
  1002 + let banner=null;
  1003 +
  1004 + this.setData({
  1005 + banner
  1006 + })
  1007 + }
845 1008  
846 1009 },
847 1010  
... ... @@ -906,6 +1069,7 @@ Page({
906 1069 requestGoodsList: function (t) {
907 1070 var that = this;
908 1071 that.data.requestUrl = t;
  1072 + console.error(666666);
909 1073 e.get("/api/weshop/goods/page?1=1", {
910 1074 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 },
911 1075 success: function (data) {
... ... @@ -1202,7 +1366,12 @@ Page({
1202 1366 resetData: function () {
1203 1367 a.resetConfig(), this.data.requestData = null, this.data.currentPage = 1;
1204 1368 },
1205   -
  1369 + go_ad: function (e) {
  1370 + var url = e.currentTarget.dataset.url;
  1371 + if (!url || url == '') return;
  1372 + if (url[0] != '/') url = '/' + url;
  1373 + getApp().goto(url);
  1374 + },
1206 1375 //---回复最初的设置---
1207 1376 restoreData: function () {
1208 1377 this.setData({
... ...
pages/goods/categoryList/categoryList.wxml
... ... @@ -296,11 +296,19 @@
296 296 <!-- 品类-->
297 297 <block wx:if="{{is_show_pl&&select_classify_on!=221&&select_classify_on!=220&&select_classify_on!=223}}">
298 298 <!-- <block wx:if="{{select_classify_on!=221&&select_classify_on!=220&&select_classify_on!=223&&is_level_three!=1}}"> -->
299   -
  299 + <view wx:if="{{one_level_classify && one_level_classify[select_classify_on] && one_level_classify[select_classify_on].items && one_level_classify[select_classify_on].items.ad_list && one_level_classify[select_classify_on].items.ad_list.length>0}}" style="width: 515rpx;height: 200rpx;margin: 0 auto;">
  300 + <swiper circular="true" indicator-dots indicator-active-color="#fff" autoplay="true" class="swiper_box" duration="1000" interval="3000" vertical="" bindchange="bannerSwiperChange" style="height:200rpx;min-height: 200rpx;">
  301 + <swiper-item wx:for="{{one_level_classify[select_classify_on].items.ad_list}}" wx:key="banner" class="swiperItem">
  302 + <view class="slide-image-frame">
  303 + <image bindtap='go_ad' data-url="{{item.ad_weapplink}}" style="width: 100%;height:200rpx;" class="slide-image" src="{{ iurl + item.ad_code}}" data-index="{{index}}" lazy-load="true" ></image>
  304 + </view>
  305 + </swiper-item>
  306 + </swiper>
  307 + </view>
300 308 <view class="my-container">
301   - <view class="classify_name fs28 flex-space-between ai-center" data-pid="0" data-cid="{{cat_id}}" bindtap='select_more'>
  309 + <view class="classify_name fs28 flex-space-between ai-center" data-pid="0" data-cid="{{cat_id}}" bindtap="{{(one_level_classify[select_classify_on].diy_class) ? '' :'select_more'}}">
302 310 <view class="classify_title ellipsis-1">{{classify_name}}</view>
303   - <view class="flex select_more ai-center">
  311 + <view class="flex select_more ai-center" wx:if="{{!(one_level_classify[select_classify_on].diy_class)}}">
304 312 <view class="red-co fs24">更多</view>
305 313 <view class="bg_right width_height" style="margin-top: 0;"></view>
306 314 </view>
... ... @@ -332,10 +340,10 @@
332 340 <block wx:for="{{goodslist}}" wx:for-item="goods" wx:for-index="inds">
333 341 <view>
334 342  
335   - <view class="classify_name fs28 flex-space-between ai-center" data-pid="{{goods.items.parent_id}}" data-cid="{{goods.items.id}}" bindtap='select_more'>
  343 + <view class="classify_name fs28 flex-space-between ai-center" data-pid="{{goods.items.parent_id}}" data-cid="{{goods.items.id}}" bindtap="{{one_level_classify[select_classify_on][diy_class] ? '' :'select_more'}}">
336 344  
337 345 <view class="classify_title ellipsis-1" style="margin-left: 25rpx;">{{goods.items.name}}</view>
338   - <view class="flex select_more ai-center">
  346 + <view class="flex select_more ai-center" wx:if="{{!one_level_classify[select_classify_on].diy_class}}">
339 347 <view class="red-co fs24">更多</view>
340 348 <view class="bg_right width_height" style="margin-top: 0;"></view>
341 349 </view>
... ... @@ -343,7 +351,7 @@
343 351  
344 352 <block wx:if="{{goods.arrays.length>0}}">
345 353 <view class="classify_content-frame flex-wrap" style="margin-left: 50rpx;">
346   - <view class="type_img_frame t-c ib" data-cid="{{item.id}}" data-pid="three" wx:for="{{goods.arrays}}" wx:for-index="index" wx:for-item="item" bindtap="go_cate">
  354 + <view class="type_img_frame t-c ib" data-cid="{{item.id}}" data-pid="three" wx:for="{{goods.arrays}}" data-url="{{item.weapp_path_url}}" wx:for-index="index" wx:for-item="item" bindtap="{{goods.diy_class ? 'go_ad':'go_cate'}}">
347 355 <image class=" type_img" src="{{item.icoimg==null||item.icoimg==''?iurl+'/miniapp/images/no_cate_def.png':item.icoimg}}" binderror="goods_bnerr" data-err="goodslist[{{index}}].logo"></image>
348 356 <view class="brand_img_name fs24 ellipsis-1 pdh10">{{item.name}}</view>
349 357 </view>
... ... @@ -357,7 +365,7 @@
357 365  
358 366 <block wx:else>
359 367 <view class="classify_content-frame flex-wrap" style="margin-left: 50rpx;">
360   - <view class="type_img_frame t-c ib" data-cid="{{item.items.id}}" data-pid="three" wx:for="{{goodslist}}" wx:for-index="index" wx:for-item="item" bindtap="go_cate">
  368 + <view class="type_img_frame t-c ib" data-cid="{{item.items.id}}" data-pid="three" wx:for="{{goodslist}}" data-url="{{item.items.weapp_path_url}}" wx:for-index="index" wx:for-item="item" bindtap="{{item.diy_class ? 'go_ad':'go_cate'}}">
361 369 <image class=" type_img" src="{{item.items.icoimg==null||item.items.icoimg==''?iurl+'/miniapp/images/no_cate_def.png':item.items.icoimg}}" binderror="goods_bnerr" data-err="goodslist[{{index}}].logo"></image>
362 370 <view class="brand_img_name fs24 ellipsis-1 pdh10">{{item.items.name}}</view>
363 371 </view>
... ...
pages/goods/categoryList/categoryList.wxss
... ... @@ -194,7 +194,7 @@ line-height: 50rpx;
194 194 z-index: 10;
195 195 background: #fff;
196 196 /* border-top: 4rpx solid #eee; */
197   - border-bottom: 1rpx solid #f4f4f4;
  197 + /* border-bottom: 1rpx solid #f4f4f4; */
198 198 padding: 20rpx;
199 199 }
200 200  
... ...
pages/goods/goodsInfo/goodsInfo.js
... ... @@ -2899,7 +2899,7 @@ Page({
2899 2899 duration: 2000
2900 2900 })
2901 2901 setTimeout(function () {
2902   - getApp().goto("/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id, )
  2902 + getApp().goto("/packageG/pages/user/order_detail/order_detail?order_id=" + res.data.data.order_id, )
2903 2903 }, 1000)
2904 2904 }
2905 2905 //未找到相关记录
... ... @@ -5575,7 +5575,7 @@ Page({
5575 5575 success: function (a) {
5576 5576 if (a.confirm) {
5577 5577 wx.navigateTo({
5578   - url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
  5578 + url: "/packageG/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
5579 5579 });
5580 5580 }
5581 5581 }
... ... @@ -6077,7 +6077,7 @@ Page({
6077 6077 success: function (a) {
6078 6078 if (a.confirm) {
6079 6079 wx.navigateTo({
6080   - url: "/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
  6080 + url: "/packageG/pages/user/order_detail/order_detail?order_id=" + odr.order_id,
6081 6081 });
6082 6082 }
6083 6083 }
... ...
pages/goods/goodsInfo/goodsInfo.wxss
... ... @@ -73,11 +73,8 @@ image {
73 73 position: fixed;
74 74 top: 0;
75 75 z-index: 999;
76   - /* height: 80rpx; */
77   - /* margin-bottom: 20rpx; */
78 76 background-color: #fff;
79 77 border-top: 2rpx solid #ebedf0;
80   - /* border-bottom: 1rpx #fafafa solid; */
81 78 }
82 79  
83 80 .type-box {
... ... @@ -92,7 +89,6 @@ image {
92 89 }
93 90  
94 91 .type-navbar-item {
95   - /* border-bottom: 4rpx solid #fff; */
96 92 display: flex;
97 93 justify-content: center;
98 94 width: 100%;
... ... @@ -102,7 +98,6 @@ image {
102 98 .type-item-on {
103 99 color: #F95D74;
104 100 font-weight: bold;
105   - /* border-bottom: 4rpx solid #F95D74; */
106 101 position: relative;
107 102 font-size: 30rpx;
108 103 }
... ... @@ -129,18 +124,12 @@ image {
129 124 justify-content: space-between;
130 125 align-items: center;
131 126 vertical-align: middle;
132   - /* overflow: hidden; */
133   - /* height: 108rpx; */
134 127 }
135 128  
136 129 .goods-name {
137   - /* width: 560rpx; */
138   - /* line-height: 46rpx; */
139 130 font-size: 32rpx;
140 131 font-weight: bold;
141 132 color: #333;
142   - /* margin-top: 30rpx;
143   - margin-bottom:30rpx; */
144 133 flex: 1;
145 134 text-align: justify;
146 135 margin: 10rpx 0 20rpx;
... ... @@ -166,14 +155,8 @@ image {
166 155  
167 156 .goods-price {
168 157 font-size: 60rpx;
169   - /* padding: 20rpx 34rpx; */
170   - /* padding:0rpx 34rpx; */
171   - /* line-height: 60rpx; */
172 158 color: #999;
173 159 padding: 20rpx;
174   - /* margin-top: 46rpx; */
175   - /* margin-top:26rpx;
176   - padding-bottom:20rpx; */
177 160 }
178 161  
179 162 .prom-info {
... ... @@ -190,12 +173,9 @@ image {
190 173 }
191 174  
192 175 .market-price {
193   - /* display: flex;
194   - margin-left: -5rpx; */
195 176 }
196 177  
197 178 .market-price .yuan {
198   - /* top:24rpx; */
199 179 font-size: 30rpx
200 180 }
201 181  
... ... @@ -206,7 +186,6 @@ image {
206 186 .market-price>.yj {
207 187 color: #999999;
208 188 font-size: 24rpx;
209   - /* margin-left: 16rpx;position: relative;top:30rpx; */
210 189 display: inline-block;
211 190 }
212 191  
... ... @@ -248,7 +227,6 @@ image {
248 227 justify-content: space-between;
249 228 align-items: center;
250 229 height: 90rpx;
251   - /*border-bottom: 1px solid #f5f5f5;*/
252 230 font-size: 32rpx;
253 231 color: #666;
254 232 }
... ... @@ -663,11 +641,9 @@ view.cart-btn-lg {
663 641 z-index: 20;
664 642 background: white;
665 643 width: 100%;
666   - /* padding: 0 30rpx; */
667 644 font-size: 32rpx;
668 645 box-sizing: border-box;
669 646 border-radius: 20rpx 20rpx 0 0;
670   - /* height: 72%; */
671 647 }
672 648  
673 649 .spec-model .pding {
... ... @@ -676,9 +652,7 @@ view.cart-btn-lg {
676 652  
677 653 .spec-goods {
678 654 padding: 30rpx 0 20rpx;
679   - /* float: left; */
680 655 width: 100%;
681   - /* border-bottom:2rpx solid #eee; */
682 656 }
683 657  
684 658 .spec-img {
... ... @@ -708,7 +682,6 @@ view.cart-btn-lg {
708 682 color: #d60021;
709 683 font-size: 33rpx;
710 684 font-weight: bold;
711   - /* display: flex; */
712 685 }
713 686  
714 687 .spec-goods-stock {
... ... @@ -785,13 +758,11 @@ view.cart-btn-lg {
785 758 .sub,
786 759 .add,
787 760 .count>input {
788   - /* border-right: 1px solid #000; */
789 761 background-color: #f8f8f8;
790 762 border-radius: 8rpx;
791 763 }
792 764  
793 765 .sub.active {
794   - /* background-color: #ddd; */
795 766 color: #ccc;
796 767 }
797 768  
... ... @@ -800,8 +771,6 @@ view.cart-btn-lg {
800 771 }
801 772  
802 773 .add {
803   - /* background-color: #f8f8f8; */
804   - /* border-left: 1px solid #000; */
805 774 }
806 775  
807 776 .spec-btn {
... ... @@ -823,14 +792,7 @@ view.cart-btn-lg {
823 792 }
824 793  
825 794 .spec-cart-btns {
826   - /* width: 92%; */
827 795 line-height: 70rpx;
828   - /* margin: 0rpx auto;
829   - margin-top: 160rpx; */
830   - /* border-radius: 20rpx; */
831   - /* position: fixed; */
832   - /* bottom: 50rpx; */
833   - /* left: 4%; */
834 796 padding: 20rpx;
835 797 }
836 798  
... ... @@ -853,7 +815,6 @@ view.cart-btn-lg {
853 815  
854 816 .spec-buy {
855 817 background-color: #f23030;
856   - /* margin-left: 34rpx; */
857 818 }
858 819  
859 820 .spec-cart-disable {
... ... @@ -1031,9 +992,7 @@ view.cart-btn-lg {
1031 992 }
1032 993  
1033 994 .prom_show .timeac.right view .tui-conutdown-box {
1034   - /* background: #6b6b6b; */
1035 995 width: auto;
1036   - /* min-width: 45rpx; */
1037 996 height: 45rpx;
1038 997 color: #c4182e;
1039 998 font-size: 27rpx;
... ... @@ -1066,13 +1025,11 @@ view.cart-btn-lg {
1066 1025  
1067 1026 .pt_fir {
1068 1027 background: #fff;
1069   - /* margin-bottom: 10rpx; */
1070 1028 }
1071 1029  
1072 1030 .pt_fir .pt_fir_title {
1073 1031 display: flex;
1074 1032 align-items: center;
1075   - /* margin-left: 10rpx; margin-top: 20rpx; */
1076 1033 font-size: 28rpx;
1077 1034 position: relative;
1078 1035 }
... ... @@ -1187,7 +1144,6 @@ view.cart-btn-lg {
1187 1144 .pt_fir.se2 {
1188 1145 height: auto;
1189 1146 margin: 0;
1190   - /* border-top:6rpx solid #eeeeee;border-bottom:2rpx solid #eeeeee; */
1191 1147 }
1192 1148  
1193 1149 .pt_hb {
... ... @@ -1282,7 +1238,6 @@ view.cart-btn-lg {
1282 1238 }
1283 1239  
1284 1240 .jie_price {
1285   - /* padding: 10rpx 30rpx; */
1286 1241 }
1287 1242  
1288 1243 .jie_price_title {
... ... @@ -1303,19 +1258,14 @@ view.cart-btn-lg {
1303 1258 }
1304 1259  
1305 1260 .pt_fir.se2 .zzk-1 {
1306   - /* margin-top: 23rpx; */
1307 1261 font-size: 30rpx;
1308 1262 position: relative;
1309   - /* margin-bottom: 30rpx; */
1310 1263 border-left: 4rpx solid red;
1311   - /* margin-left:14rpx; */
1312 1264 height: 30rpx;
1313 1265 line-height: 30rpx;
1314   - /* padding-left:5rpx; */
1315 1266 }
1316 1267  
1317 1268 .ckgd {
1318   - /* position: absolute;top:0;right:57rpx; */
1319 1269 color: #d70025;
1320 1270 font-size: 26rpx;
1321 1271 }
... ... @@ -1324,7 +1274,6 @@ view.cart-btn-lg {
1324 1274 width: 14rpx;
1325 1275 height: 14rpx;
1326 1276 border-color: #da0b31;
1327   - /* margin-top:5rpx; */
1328 1277 margin: auto;
1329 1278 }
1330 1279  
... ... @@ -1377,7 +1326,6 @@ view.cart-btn-lg {
1377 1326 }
1378 1327  
1379 1328 .pt_qd {
1380   - /* margin-top: 40rpx; height: auto; */
1381 1329 padding: 20rpx;
1382 1330 }
1383 1331  
... ... @@ -1405,7 +1353,6 @@ view.cart-btn-lg {
1405 1353 padding-top: 20rpx;
1406 1354 padding-bottom: 20rpx;
1407 1355 width: 100%;
1408   - /* min-height: 92rpx; */
1409 1356 border-bottom: 2rpx solid #ebedf0;
1410 1357  
1411 1358 }
... ... @@ -1414,20 +1361,11 @@ view.cart-btn-lg {
1414 1361 display: flex;
1415 1362 align-items: center;
1416 1363 justify-content: space-around;
1417   - /* height: 90rpx; */
1418   - /* padding: 0 130rpx 0 100rpx; */
1419   - /* width: 470rpx;
1420   -
1421   - position: absolute; */
1422 1364 }
1423 1365  
1424 1366 .group .group-list .gtou {
1425 1367 width: 70rpx;
1426 1368 height: 70rpx;
1427   - /* float: left;
1428   - position: relative;
1429   - top: 6rpx;
1430   - left: -96rpx; */
1431 1369 }
1432 1370  
1433 1371 .group .group-list .gtou image {
... ... @@ -1441,32 +1379,18 @@ view.cart-btn-lg {
1441 1379 .group .group-list .gdn {
1442 1380 width: 140rpx;
1443 1381 text-align: center;
1444   - /* float: left; */
1445 1382 font-size: 26rpx;
1446   - /* padding-left: 20rpx; */
1447   - /* line-height: 48rpx;
1448   - height: 48rpx;
1449   - width: 168rpx;
1450   - position: relative;
1451   - left: -80rpx;
1452   - top:20rpx; */
1453 1383 font-weight: bold;
1454 1384 }
1455 1385  
1456 1386 .group .group-list .ghaicha {
1457   - /* width:300rpx; */
1458 1387 font-size: 27rpx;
1459   - /* margin-left:180rpx;
1460   - top:13rpx;
1461   - left:-3rpx; */
1462 1388 font-weight: bold;
1463 1389  
1464 1390  
1465 1391 }
1466 1392  
1467 1393 .group .group-list .ghaicha .gred {
1468   - /* height: 48rpx;
1469   - width: 300rpx; */
1470 1394 }
1471 1395  
1472 1396 .gsj {
... ... @@ -1477,9 +1401,6 @@ view.cart-btn-lg {
1477 1401 .group .group-list .cjt {
1478 1402 height: 42rpx;
1479 1403 width: 137rpx;
1480   - /* position: absolute;
1481   - right: 4rpx;
1482   - top:25rpx; */
1483 1404 line-height: 42rpx;
1484 1405 font-size: 24rpx;
1485 1406 color: #fff;
... ... @@ -1494,11 +1415,8 @@ view.cart-btn-lg {
1494 1415 }
1495 1416  
1496 1417 .t_show {
1497   - /* overflow: hidden; */
1498 1418 display: flex;
1499   - /* width: 300rpx; */
1500 1419 color: #292929;
1501   - /* line-height: 36rpx; */
1502 1420 font-size: 26rpx;
1503 1421 }
1504 1422  
... ... @@ -1531,9 +1449,7 @@ view.cart-btn-lg {
1531 1449 }
1532 1450  
1533 1451 .tuwen_title {
1534   - /* height: 86rpx; */
1535 1452 background-color: #eeeeee;
1536   - /* margin-bottom: 32rpx; */
1537 1453 position: relative;
1538 1454 display: flex;
1539 1455 justify-content: center;
... ... @@ -1566,7 +1482,6 @@ view.cart-btn-lg {
1566 1482 }
1567 1483  
1568 1484 .t_g_info {
1569   - /* margin: 0 34rpx;margin-bottom: 20rpx; */
1570 1485 display: flex;
1571 1486 align-items: center;
1572 1487 padding: 20rpx;
... ... @@ -1580,7 +1495,6 @@ view.cart-btn-lg {
1580 1495 }
1581 1496  
1582 1497 .tb-l {
1583   - /* line-height: 96rpx; */
1584 1498 }
1585 1499  
1586 1500 .table_s {
... ... @@ -1591,7 +1505,6 @@ view.cart-btn-lg {
1591 1505  
1592 1506 .tb_item {
1593 1507 display: flex;
1594   - /* height: 96rpx; */
1595 1508 border-bottom: 1rpx solid #e4e4e4
1596 1509 }
1597 1510  
... ... @@ -1606,7 +1519,6 @@ view.cart-btn-lg {
1606 1519 }
1607 1520  
1608 1521 .item_left text {
1609   - /* margin-left: 44rpx; */
1610 1522 }
1611 1523  
1612 1524 .item_right {
... ... @@ -1619,7 +1531,6 @@ view.cart-btn-lg {
1619 1531 }
1620 1532  
1621 1533 .item_right text {
1622   - /* margin-left: 66rpx; */
1623 1534 }
1624 1535  
1625 1536 .table_s .tb-l:last-child {
... ... @@ -1629,23 +1540,17 @@ view.cart-btn-lg {
1629 1540 .bzfu_img {
1630 1541 width: 164rpx;
1631 1542 height: 34rpx;
1632   - /* margin-right: 18rpx; margin-left: 12rpx */
1633 1543 }
1634 1544  
1635 1545 .bz_view {
1636   - /* height:100rpx; padding: 0 34rpx 0 13rpx; */
1637 1546 color: #333;
1638 1547 font-size: 28rpx;
1639 1548 padding: 20rpx 20rpx 20rpx 10rpx;
1640   - /* border-bottom: 3rpx solid #eee; */
1641   - /* border-top: 3rpx solid #eee; */
1642 1549 }
1643 1550  
1644 1551 .bz_view view {
1645 1552 width: 520rpx;
1646 1553 word-break: break-all;
1647   - /* max-height: 70rpx; */
1648   - /* overflow: hidden; */
1649 1554 }
1650 1555  
1651 1556 .bb_view {
... ... @@ -1654,13 +1559,11 @@ view.cart-btn-lg {
1654 1559 justify-content: space-between;
1655 1560 padding: 20rpx;
1656 1561 color: #333;
1657   - font-size: 30rpx;
1658   - /* height: 104rpx; line-height: 104rpx; overflow: hidden; padding-right:26rpx */
  1562 + font-size: 30rpx;
1659 1563 }
1660 1564  
1661 1565 .red_bb {
1662 1566 color: #d70026;
1663   - /* min-width:158rpx;width: auto; */
1664 1567 }
1665 1568  
1666 1569 .bg_jj {
... ...
pages/template/index.js
... ... @@ -27,6 +27,7 @@ Page({
27 27 // nav_bg_color:'#e823e8', //导航按钮颜色
28 28 //----------------
29 29 is_show_top: 0, //是否置顶显示
  30 + is_fixed_nav:0,//是否显示固定底部导航
30 31 },
31 32  
32 33 onLoad: function (e) {
... ... @@ -192,7 +193,8 @@ Page({
192 193 share_title: temp_data.page_title,
193 194 template_arr: t_arr,
194 195 isTemplate: 1,
195   - bgcolor_t: temp_data.bkcolor
  196 + bgcolor_t: temp_data.bkcolor,
  197 + is_fixed_nav:temp_data.is_fixed_nav
196 198 });
197 199 setTimeout(() => {
198 200 th.newGoodsGroup()
... ...
pages/template/index.json
... ... @@ -26,6 +26,7 @@
26 26 "scan": "/components/diy_scan/diy_scan",
27 27 "floatingWindow": "/components/diy_floatingWindow/diy_floatingWindow",
28 28 "floatingBox": "/components/diy_floatingBox/diy_floatingBox",
  29 + "div_tab_bar": "/custom-tab-bar/index",
29 30 "presell": "/components/diy_pregoods/diy_pregoods"
30 31 },
31 32 "enablePullDownRefresh": false,
... ...
pages/template/index.wxml
1   -<view class="container" style="background-color:{{bgcolor_t}}">
  1 +<view class="container" style="background-color:{{bgcolor_t}};{{is_fixed_nav==1?'padding-bottom:110rpx;':'padding-bottom:10rpx;'}}">
2 2  
3 3  
4 4 <block wx:if="{{is_full_screen_navigation}}">
... ... @@ -178,8 +178,16 @@
178 178 <diy_public object="{{item.content}}" prom_type="9"></diy_public>
179 179 </block>
180 180 </view>
  181 +
181 182 </block>
  183 + <!-- 技术支持 -->
  184 + <view class="logo-container t-c">
  185 + <view class="flex ai_c fs24 jc-center pdv20 white">
  186 + <image src="{{url + 'miniapp/images/luckDraw/logo.png?v=3'}}" class="logo" style="border-radius: 0;" lazy-load></image>提供技术支持
  187 + </view>
  188 + </view>
182 189 </view>
  190 +<div_tab_bar wx:if="{{is_fixed_nav==1}}"></div_tab_bar>
183 191 <!-- 蒙尘 -->
184 192 <block wx:if="{{is_disgraceful}}">
185 193 <view class="disgraceful">
... ...
pages/template/index.wxss
... ... @@ -916,4 +916,14 @@
916 916 height: 250rpx;
917 917 padding-bottom:30rpx;
918 918 }
919   -.container{ overflow: hidden;}
920 919 \ No newline at end of file
  920 +.container{ overflow: hidden;}
  921 +.logo-container {
  922 + -webkit-filter: brightness(80%);
  923 + filter: brightness(80%);
  924 +}
  925 +
  926 +.logo {
  927 + width: 132rpx;
  928 + height: 37rpx;
  929 + margin-right: 10rpx;
  930 +}
... ...
pages/user/order_detail/order_detail.js
1   -var e = getApp(), r = e.request,rq=r,t = require("../../../utils/util.js"), o = require("../../../utils/common.js"),oo=e.globalData,os=oo.setting;
2   -var regeneratorRuntime = require('../../../utils/runtime.js');
3   -var ut= require('../../../utils/util.js');
4   -var py = require("../../../utils/pay.js");
5   -
6   -
7 1 Page({
8   - data: {
9   - url: os.url,
10   - resourceUrl: os.imghost,
11   - iurl: os.imghost,
12   - order: null,
13   - optionIsGoup: !1,
14   - user_note: "",
15   - conf:null,
16   - },
17   - onLoad: function(e) {
18   -
19   - //定义第一次进入
20   - this.data.fir_in=1;
21   -
22   - var th=this;
23   - var r = void 0 !== e.isGoup && e.isGoup;
24   -
25   - getApp().getConfig2(function (e) {
26   -
27   - th.setData({conf: e,sales_rules:e.sales_rules, userInfo: getApp().globalData.userInfo});
28   - //--- 看后台是不是有开通等级卡 ---
29   - if(e.switch_list){
30   - var s_list=JSON.parse(e.switch_list);
31   - th.setData({sys_switch: s_list,appoint_pick_keyid:s_list.appoint_pick_keyid});
32   - var is_open_offline=s_list.is_pricing_open;
33   - var user=getApp().globalData.userInfo;
34   - //如果后台有开启等级价的功能
35   - if(parseInt(s_list.rank_switch)==2 && user['card_expiredate']){
36   - var str = user['card_expiredate'].replace(/-/g, '/');
37   - var end = new Date(str);
38   - end = Date.parse(end) / 1000;
39   - var now = ut.gettimestamp();
40   - //--- 判断是等级会员,且在有效期范围内 ---
41   - if(user.card_field && now<end){
42   - th.setData({card_field:user.card_field})
43   - }
44   - }
45   - //-- 判断有没有过期 --
46   - getApp().request.promiseGet("/store/storemoduleendtime/page?store_id=" +os.stoid + "&type=6",{}).then(res=>{
47   - //未购买
48   - if(res.data.code!=0 || !res.data.data || !res.data.data.pageData || !res.data.data.pageData.length){
49   - is_open_offline=0;
50   - }else{
51   - //已经过期
52   - var item=res.data.data.pageData[0];
53   - if(item.end_time<ut.gettimestamp()){
54   - is_open_offline=0;
55   - }
56   - }
57   -
58   - th.data.is_open_offline=is_open_offline;
59   - })
60   -
61   - }
62   - },1)
63   -
64   - this.setData({
65   - optionIsGoup: r
66   - }), this.requestOrderDetail(e.order_id), wx.removeStorageSync("order:order_detail:update");
67   - },
68   - onShow: function() {
69   -
70   - var th=this;
71   - this.setData({paying:0});
72   -
73   - //判断是不是第一次进入
74   - if(this.data.fir_in){
75   - this.data.fir_in=0;
76   - }else{
77   - //富友支付
78   - ut.fy_back('',0)
79   - py.set_fir();
80   -
81   - //通联第三方
82   - //-- 通联的第三方支付的返回优化 --
83   - ut.is_pay_ok(th.data.ok_order_sn,"back","none",function (){
84   - getApp().request.promiseGet("/api/weshop/order/page",
85   - {data:{store_id:os.stoid,order_sn:th.data.ok_order_sn}}).then(res=>{
86   - if(ut.ajax_ok(res)){
87   - var item=res.data.data.pageData[0];
88   - if(item.pay_status==1){
89   - //支付支付,返回首页
90   - ut.m_toast('支付成功');
91   - setTimeout(()=>{
92   - wx.navigateBack();
93   - },1000)
94   -
95   - }else{
96   - //支付支付,返回首页
97   - ut.m_toast('支付失败');
98   - setTimeout(()=>{
99   - wx.navigateBack();
100   - },1000)
101   - }
102   - }
103   - })
104   - });
105   - }
106   -
107   - wx.getStorageSync("order:order_detail:update") && (wx.removeStorageSync("order:order_detail:update"),
108   - this.requestOrderDetail(this.data.order.order_id));
109   - },
110   - requestOrderDetail: function(e) {
111   - var o = this,oid=e,th=this;
112   - r.get(o.data.url + "/api/weshop/order/get/"+os.stoid+"/"+e, {
113   - success: async function(e) {
114   - var r = e.data.data;
115   - r.addTimeFormat = t.format(r.add_time);
116   - if (r.order_status == 0 && r.pay_status==0 ){
117   - r.order_status_detail="待支付"; r.pay_btn=1;
118   - }
119   - if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status== 0)
120   - //自提的话
121   - if (r.exp_type==1)
122   - {
123   - r.order_status_detail = "待自提";
124   - }
125   - else
126   - {
127   - r.order_status_detail = "待发货";
128   - }
129   -
130   - if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status == 1){
131   - r.order_status_detail = "待收货";r.receive_btn=1;
132   - if (r.exp_type == 0) r.shipping_btn=1;
133   - }
134   - if (r.order_status == 1 && r.pay_status == 1 && r.shipping_status == 2){
135   - r.order_status_detail = "待收货"; r.receive_btn = 1;
136   - if (r.exp_type == 0) r.shipping_btn = 1;
137   - }
138   - if (r.order_status == 2){
139   - r.order_status_detail = "待评价"; if (r.exp_type == 0) r.shipping_btn = 1;
140   - }
141   - if (r.order_status == 3)
142   - r.order_status_detail = "已取消";
143   - if (r.order_status == 4){
144   - r.order_status_detail = "已完成"; if (r.exp_type == 0) r.shipping_btn = 1;
145   - }
146   - if (r.order_status == 5)
147   - r.order_status_detail = "已作废";
148   - if (r.order_status == 6)
149   - r.order_status_detail = "退款完成";
150   - if (r.pt_status == 1 && r.pt_prom_id>0)
151   - r.order_status_detail = "组团中";
152   -
153   -
154   - r['is_all_return'] = 0;
155   -
156   - var discount_price=r['discount_amount'];
157   - var dis_json=r['prom_pt_json'];
158   -
159   - if(dis_json && discount_price){
160   - var prom_pt_json=JSON.parse(dis_json);
161   - var ladder_amount=0;
162   - for (var ll_item of prom_pt_json) {
163   - if(ll_item['ladder_prom_id']){
164   - ladder_amount += ll_item['dis'];
165   - }
166   - }
167   - r['ladder_amount']=ladder_amount;
168   - r['discount_amount']=Math.floor((discount_price-ladder_amount)*100)/100;
169   - }
170   -
171   -
172   - r.use_commission=0;
173   - //-- 如果有数据的话 --
174   - await getApp().request.promiseGet("/api/weshop/orderMore/get/"+os.stoid + "/"+r.order_sn, {
175   -
176   - }).then(res=>{
177   - if(res.data.code == 0 && res.data.data){
178   - r.use_commission=res.data.data.use_commission;
179   - r.pre_cut=res.data.data.pre_cut; //预存款
180   - r.pre_json=res.data.data.pre_json; //预存款
181   - r.is_user_no_yhcx = res.data.data.is_user_no_yhcx; //判断订单是不是优惠促销不参与
182   - }
183   - })
184   -
185   -
186   - //------获取订单商品-------
187   - rq.get("/api/weshop/ordergoods/list",{
188   - data: { store_id: os.stoid, order_id: oid,pageSize:600},
189   - success:async function (eb) {
190   - r.order_goods=eb.data.data.pageData;
191   - var glist = r.order_goods;
192   - for(var i in glist){
193   - if(glist[i].is_gift){
194   - r.is_prom=1;
195   - }
196   - }
197   -
198   - //------------对比一下有没有退款记录------------
199   - await getApp().request.promiseGet("/api/weshop/order/returngoods/page",{
200   - data: { order_id: r.order_id, store_id: os.stoid,
201   - user_id:oo.user_id, pageSize: 20 }
202   - }).then(rs=>{
203   - var ttd=rs;
204   - //--看一下订单的总数量--
205   - var gtype_num = r.order_goods.length;
206   - if(ttd.data.data.pageData == undefined) return false;
207   - var goodslist = r.order_goods;
208   -
209   - //----没有相关的退款记录----
210   - if (ttd.data.data.total==0){
211   - r['is_all_return'] = 0;
212   -
213   - goodslist.forEach(function (ee, ii) {
214   - if (r['order_status'] == 1 && r['pay_status'] == 1 && gtype_num>1){
215   - //是不是可以单个商品退款
216   - if(th.check_for_return_btn(r) ) {
217   - goodslist[ii]['return_btn']=1;
218   - }
219   - }
220   - });
221   - }else{
222   - //--------整单退--------
223   - if (ttd.data.data.pageData[0]['goods_id_list'] != null
224   - && ttd.data.data.pageData[0]['goods_id_list'] != ''){
225   -
226   -
227   - var eea = ttd.data.data.pageData[0];
228   - //1.退款正在进行中,
229   - //2.退款被拒绝就要显示可以退款
230   - //3.退款已经完成
231   - r['is_all_return']=1;
232   - r['is_all_return_status'] = ttd.data.data.pageData[0].status;
233   -
234   - if (r['order_status'] == 1 && r['pay_status'] == 1) {
235   - switch (eea.status) {
236   - case 0:
237   - case 1:
238   - r.order_status_detail="退款中";
239   - r['return_btn'] = 2; break;
240   - case 2:
241   - r.order_status_detail="退款完成";
242   - r['return_btn'] = 4; break;
243   - case 3:
244   - r['return_btn'] = 3; break;
245   - default:
246   - r['return_btn'] = 0;
247   - }
248   - }
249   - }else{
250   - //1.退款正在进行中,
251   - //2.退款被拒绝就要显示可以退款
252   - //3.退款已经完成
253   - r['is_all_return'] = 0;
254   - var rt_ok_num=0;
255   -
256   - //if(r['order_status'] == 1 && r['pay_status'] == 1) {
257   - goodslist.forEach(function (eeb, iii) {
258   - if(r['order_status'] == 1 && r['pay_status'] == 1)
259   - goodslist[iii]['return_btn'] = 1; //申请退款
260   - ttd.data.data.pageData.forEach(function (eea, ii) {
261   - var st = eea.status;
262   - if (eea.goods_id == eeb.goods_id){
263   -
264   - switch (eea.status){
265   - case 0:
266   - case 1://退款处理中
267   - r['has_rt'] = 1; //有部分退
268   - goodslist[iii]['return_btn'] = 2; break;
269   - case 2://退款完成
270   - r['has_rt'] = 1; //有部分退
271   - goodslist[iii]['return_btn'] = 4;rt_ok_num++; break;
272   - case 3://已拒绝,重新退款
273   - goodslist[iii]['return_btn'] = 3; break;
274   - default:
275   - if(r['order_status'] == 1 && r['pay_status'] == 1)
276   - goodslist[iii]['return_btn'] = 1; //申请退款
277   - }
278   - return;
279   - }
280   - });
281   - });
282   - //}
283   - }
284   - }
285   -
286   - //--如果是全部退款,也就可以删除--
287   - if(rt_ok_num==goodslist.length){
288   - r['is_all_return_status']=2;
289   - }
290   - r['order_goods'] = goodslist;
291   - var g_num = 0;
292   - goodslist.forEach(function (ee, ii) {
293   - if(ee.return_btn!=4)
294   - g_num += ee.goods_num;
295   - });
296   - r['g_num'] = g_num;
297   - })
298   -
299   -
300   - //--------获取门店-----------
301   - rq.get("/api/weshop/pickup/get/" + os.stoid + "/" + r.pickup_id, {
302   - success: function (ebb) {
303   - r.pickname = ebb.data.data.pickup_name;
304   - o.setData({
305   - order: r,
306   - });
307   - }
308   - })
309   -
310   -
311   - }
312   - })
313   - }
314   - });
315   - },
316   - /*-----联系客户------*/
317   - contactService: function() {
318   - getApp().con_Service();
319   - },
320   -
321   - //--------取消订单---------
322   - cancelOrder: function(e) {
323   - var t = this,th=t, o = e.currentTarget.dataset.id,order=this.data.order;
324   - var is_skill=0;
325   - var order_goods=order.order_goods;
326   - var is_zsorder=order.is_zsorder;
327   -
328   - //--判断是不是秒杀--
329   - order_goods.forEach(function (val,ind) {
330   - if(val.prom_type==1){
331   - is_skill=1; return false;
332   - }
333   - })
334   -
335   - wx.showModal({
336   - title: "是否取消订单?",
337   - success: function(e) {
338   - if(!e.confirm) return false;
339   - //如果是秒杀和拼单的商品,取消订单要返回redis,并取消订单
340   - //if(is_skill==1 || is_zsorder>=2){
341   - getApp().request.post("/api/weshop/order/cancelOrder/"+os.stoid+"/"+o+"/"+getApp().globalData.user_id,{
342   - data:{},
343   - success: function(t) {
344   - if(t.data.code==0)
345   - th.requestOrderDetail(o), wx.setStorageSync("order:order_list:update", !0);
346   - },
347   - })
348   - /*----
349   - }else{
350   - getApp().request.put("/api/weshop/order/updatebyId", {
351   - data: {order_id: o, order_status: 3},
352   - success: function(e) {
353   - th.requestOrderDetail(o), wx.setStorageSync("order:order_list:update", !0);
354   - }
355   - });
356   - }--*/
357   - }
358   - });
359   - },
360   -
361   - //--------确认收货---------
362   - confirmOrder: function(e) {
363   - var th=this;
364   - var t = this, o = this.data.order.order_id,order=this.data.order;
365   - var is_zsorder=order.is_zsorder;
366   - wx.showModal({
367   - title: "是否确认收货?",
368   - success: function(t) {
369   - t.confirm && rq.post("/api/weshop/order/confirmOrder/"+os.stoid+"/"+o+"/"+getApp().globalData.user_id,{
370   - success:function (e) {
371   - if(e.data.code==0){
372   - th.requestOrderDetail(o)
373   - }
374   - }
375   - })
376   - }
377   - });
378   - },
379   -
380   - //-- 预存款判断 --
381   - async vipadvancesum(keyid,pre_cut,pre_json){
382   - let pre=JSON.parse(pre_json)
383   - let listform=[]
384   - pre.map(item=>{
385   - let obj={
386   - advancesum: item.advancesum,
387   - advanceitemid: item.advanceitemid
388   - }
389   - listform.push(obj)
390   - })
391   - let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, {
392   - data: {
393   - accdb: getApp().globalData.config.erpid,
394   - ApiName: 'api.pos.shop.vipadvancesum.list',
395   - // usercode: "admin",
396   - vipid: getApp().globalData.userInfo.erpvipid,
397   - // oddsum: "0",
398   - // advancesum: cartList.order_amount,
399   - storageid: keyid,
400   - listform
401   - },
402   - is_json: 1
403   - })
404   - return res.data
405   - },
406   -
407   - //--------立即支付----------
408   - async jumpToCart4(e) {
409   -
410   - if(this.data.paying) return false;
411   - this.setData({paying:1});
412   -
413   - var th=this;
414   - if(this.data.optionIsGoup)
415   - wx.navigateTo({
416   - url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true"
417   - })
418   - var order=this.data.order;
419   -
420   - var order_goods=order.order_goods;
421   - var user_id=order.user_id;
422   -
423   -
424   - //如果使用预存的话,要重新效验下预存金额是否足够
425   - if(order.pre_cut && order.pre_json){
426   - let pickup_id=order.pickup_id
427   - let res = await r.promiseGet('/api/weshop/pickup/get/' + os.stoid + '/' + pickup_id, {})
428   - let keyid = res.data.data.keyid
429   - let resdata = await th.vipadvancesum(keyid,order.pre_cut,order.pre_json)
430   - if(resdata.code !=0){
431   - let msg=resdata.msg || "预存金额不足"
432   - getApp().confirmBox(msg);
433   - th.setData({ paying: 0 });
434   - return false;
435   - }
436   -
437   - var listform=[];
438   - var adv_num=0;
439   - order_goods.map(ite => {
440   - //-- 不是赠品的时候 --
441   - if(!ite.is_gift) {
442   - let obj = {
443   - wareno: ite.goods_sn,
444   - price: ite.first_account, //account是平摊后的实收价格
445   - qty: ite.goods_num,
446   - sumprice: parseFloat(ite.account * ite.goods_num - ite.account_yu-(ite.quan_num?ite.quan_num:0)).toFixed(2)
447   - }
448   -
449   - adv_num+=ite.account * ite.goods_num - ite.account_yu-(ite.quan_num?ite.quan_num:0);
450   - listform.push(obj)
451   - }
452   - })
453   -
454   - adv_num=parseFloat(adv_num).toFixed(2);
455   - let res1 = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, {
456   - data: {
457   - accdb: getApp().globalData.config.erpid,
458   - ApiName: 'api.pos.shop.advancesum.seek',
459   - usercode: "admin",
460   - vipid: getApp().globalData.userInfo.erpvipid,
461   - oddsum: "0",
462   - advancesum: adv_num,
463   - storageid: keyid,
464   - listform
465   - },
466   - is_json: 1
467   - })
468   - if(!res1 && res1.data.code!=0 ){
469   - getApp().confirmBox("获取预存的金额失败");
470   - th.setData({ paying: 0 });
471   - return false;
472   - }
473   -
474   - if(res1.data.data.length<=0){
475   - getApp().confirmBox("每天每人仅能使用1次预存抵扣");
476   - th.setData({ paying: 0 });
477   - return false;
478   - }
479   -
480   - var yck=0
481   - let resData = res1.data.data
482   - resData.map(ite => {
483   - yck += ite.advancesum*1
484   - })
485   - if(yck<=0){
486   - getApp().confirmBox("每天每人仅能使用1次预存抵扣");
487   - th.setData({ paying: 0 });
488   - return false;
489   - }
490   -
491   - if(order.pre_cut && yck!=order.pre_cut){
492   - getApp().confirmBox("获取预存的金额不对");
493   - th.setData({ paying: 0 });
494   - return false;
495   - }
496   -
497   -
498   - }
499   - // 幸运购检查库存量 api/weshop/activitylist/getActLen/{store_id}/{prom_type}/{prom_id}
500   - if (parseInt(order_goods['0']['prom_type']) == 9) {
501   - var aid = order_goods['0']['prom_id'];
502   - var knum = 0;
503   - await r.promiseGet('/api/weshop/activitylist/getActLen/' + os.stoid + '/9/' + aid, {
504   - }).then(res => {
505   - if (res.data.code == 0) {
506   - knum = res.data.data;
507   - }
508   - });
509   -
510   - if (knum <= 0) {
511   - getApp().confirmBox("库存为0,支付失败");
512   - th.setData({ paying: 0 });
513   - return false;
514   - }
515   -
516   -
517   - }
518   -
519   - var wlist = "";
520   - var the_yh_map={}; //判断那种商品的prom_type为0,正在做的活动是优惠促销
521   -
522   -
523   - var _pick=null;
524   - //获取商品信息,包含线下商品ID,指定门店销售的信息
525   - var rh=await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+order.pickup_id, {});
526   - if(rh && rh.data.code==0){
527   - _pick=rh.data.data;
528   - }
529   -
530   - for (var i in order_goods) {
531   - var good = order_goods[i];
532   -
533   -
534   - //线下取价功能已经关闭或者过期
535   - if (!th.data.is_open_offline && good.offline_cut > 0) {
536   - wx.showModal({
537   - title: '提示',
538   - content: '线下取价功能已经关闭或者过期!'
539   - });
540   - th.setData({ paying: 0 });
541   - return false;
542   - }
543   -
544   - //要每件每件的商品进行检查,看有么有超出库存,超出限购
545   - var good = order_goods[i], goodsbuynum = 0, promgoodsbuynum = 0, gg = null, presellList = null;
546   -
547   - //获取单品的现在的活动状态
548   - await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + good.goods_id, {}).then(res => {
549   - gg = res.data.data;
550   - })
551   -
552   - //-- 判断门店配送是不是匹配 --
553   - if(_pick && _pick.distr_type!=0 && gg.distr_type!=0 && _pick.distr_type!= gg.distr_type){
554   - getApp().confirmBox(gg.goods_name + "配送方式和门店不一致");
555   - th.setData({ paying: 0 });
556   - return false;
557   - }
558   -
559   - //-- 要进行判断指定门店的判断优化,先做普通商品 --
560   - if([0,3,5,7,10].indexOf(parseInt(good.prom_type))>-1 && gg.pick_group_ids && !good.is_gift){
561   - var idx0=gg.pick_up_lists.findIndex(function (e){
562   - return e.pickup_id==order.pickup_id;
563   - })
564   - if(idx0<0){
565   - getApp().confirmBox(gg.goods_name + "的门店不可售");
566   - th.setData({ paying: 0 });
567   - return false;
568   - }
569   - }
570   -
571   - var limit = gg.viplimited;
572   - var store_count = gg.store_count;
573   - good.erpwareid = gg.erpwareid;
574   -
575   - //---要获得商品,该用户买了多少件,同步应用---
576   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
577   - data: {
578   - store_id: os.stoid,
579   - user_id: user_id,
580   - goods_id: good.goods_id,
581   - prom_type: good.prom_type,
582   - prom_id: good.prom_id
583   - },
584   - }).then(res => {
585   - var buy_num_data = res.data.data;
586   - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
587   - goodsbuynum = buy_num_data.goodsbuynum;
588   - })
589   -
590   - var buyed_mum2 = goodsbuynum + good.goods_num;
591   - if (buyed_mum2 > limit && limit > 0) {
592   - var content = gg.goods_name + '购买数量超出商品限购,请取消订单';
593   - th.toast(content);
594   - th.setData({ paying: 0 });
595   - return false;
596   - }
597   -
598   - //当是组合优惠的时候
599   - if (good.prom_type == 7) {
600   - //如果有组合购
601   - var isok = 1;
602   - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id;
603   - let zh_buy_info=null
604   - await getApp().request.promiseGet(url, {}).then(res => {
605   - if (res.data.code == 0 && res.data.data) {
606   - zh_buy_info = res.data.data
607   - if (res.data.data.is_show != 1) {
608   - isok = 0;
609   - }
610   - //如果活动已经结束
611   - if (res.data.data.is_end == 1) {
612   - isok = 0;
613   - }
614   - //已经结束
615   - if (ut.gettimestamp() > res.data.data.end_time) {
616   - isok = 0;
617   - }
618   - //还未开始
619   - if (ut.gettimestamp() < res.data.data.start_time) {
620   - isok = 0;
621   - }
622   -
623   -
624   - } else {
625   - //未找到商品的活动
626   - isok = 0;
627   - }
628   -
629   - })
630   - if (!isok) {
631   - var content = gg.goods_name + '活动已经结束,请取消订单';
632   - th.toast(content);
633   - th.setData({ paying: 0 });
634   - return false;
635   - }
636   -
637   - //增加组合购次数判断
638   - let userbuynum = await th.getUserBuyPromNum(good.prom_id,1)
639   -
640   - if (zh_buy_info.buy_limit !=0 && zh_buy_info && userbuynum >= zh_buy_info.buy_limit) {
641   - var content = gg.goods_name + '超出组合购限购次数,请取消订单';
642   - th.toast(content);
643   - th.setData({ paying: 0 });
644   - return false;
645   - }
646   -
647   - var url1 = "/api/weshop/prom/zhbuyGoods/page";
648   - var req_data = {
649   - page: 1,
650   - pageSize: 1,
651   - store_id: os.stoid,
652   - zh_id: good.prom_id,
653   - goods_id: good.goods_id
654   - }
655   - await getApp().request.promiseGet(url1, {
656   - data: req_data
657   - }).then(res => {
658   - if (ut.ajax_ok(res)) {
659   - var gdlist = res.data.data.pageData[0];
660   - good.buyqty = gdlist.buyqty;
661   - }
662   - })
663   -
664   - var num = good['buyqty'];
665   - //---- 要计算商品的限购 -----
666   - if (good['buyqty'] > 0) {
667   - if (good.goods_num + promgoodsbuynum > good['buyqty']) {
668   - var content = good['goods_name'] + "超出活动限购\n";
669   - th.toast(content);
670   - th.setData({ paying: 0 });
671   - return false;
672   - }
673   - }
674   - }
675   - //如果是预售的时候,
676   - if (good.prom_type == 8) {
677   - await getApp().request.promiseGet("/api/weshop/order/orderPresell/countBuyGoodsSum", {
678   - data: { store_id: os.stoid, user_id: user_id, goods_id: good.goods_id, prom_id: good.prom_id },
679   - }).then(e => {
680   - if (e.data.code == 0) {
681   - promgoodsbuynum = e.data.data.sumgoodsnum;
682   - }
683   - })
684   -
685   - var presell_id = good.prom_id;
686   - var url = "/api/weshop/marketing/marketingPresellList/list"
687   - var rd = {
688   - store_id: os.stoid,
689   - presell_id: presell_id,
690   - goods_id: good.goods_id
691   - }
692   - //------获取预售从表----------
693   - await getApp().request.promiseGet(url, {
694   - data: rd
695   - }).then(res => {
696   - if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
697   - var arr = res.data.data[0];
698   - presellList = arr
699   - }
700   - })
701   -
702   - if(!presellList){
703   - var content = good.goods_name + '未找到预售活动,请取消订单';
704   - th.toast(content);
705   - th.setData({ paying: 0 });
706   - return false;
707   - }
708   -
709   - if (presellList) {
710   - if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) {
711   - var content = good.goods_name + '购买数量超出商品库存,请取消订单';
712   - th.toast(content);
713   - th.setData({ paying: 0 });
714   - return false;
715   - }
716   - var buyed_mum3 = promgoodsbuynum + good.goods_num;
717   - if (buyed_mum3 > presellList.vip_butyqty && presellList.vip_butyqty > 0) {
718   - var content = good.goods_name + '购买数量超出商品限购,请取消订单';
719   - th.toast(content);
720   - th.setData({ paying: 0 });
721   - return false;
722   - }
723   -
724   - var fres=await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/"+os.stoid+"/"+presell_id, {});
725   - //接口调用成功的时候
726   - if(fres && fres.data.code==0 && fres.data.data){
727   - //如果有指定门店的时候
728   - if(fres.data.data.pick_up_lists){
729   - var idx0=fres.data.data.pick_up_lists.findIndex(function (e){
730   - return e.pickup_id==order.pickup_id;
731   - })
732   - if(idx0<0){
733   - getApp().confirmBox(good.goods_name+"预售活动的门店不可售");
734   - th.setData({ paying: 0 });
735   - return false;
736   - }
737   - }
738   -
739   - }else{
740   - var content = good.goods_name + '未找到预售活动,请取消订单';
741   - th.toast(content);
742   - th.setData({ paying: 0 });
743   - return false;
744   - }
745   -
746   - }
747   - }
748   -
749   - //如果优惠促销和搭配购的时候
750   - if ((good.prom_type == 3 || good.prom_type == 5 || good.prom_type == 10) && good.is_gift != 1 && good.is_collocation != 1) {
751   - var p_ok = 1, is_g_prom = 0;
752   - //只读优化促销和阶梯促销
753   - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromListNew1/" + os.stoid + "/" + good.goods_id+"/0/"+user_id, {}).then(res => {
754   - if (res.data.code == 0) {
755   - var r_data = res.data.data;
756   - if (!r_data.collocationPromList && good.prom_type == 5) {
757   - var content = good.goods_name + '未找到活动,请取消订单重新购买';
758   - th.toast(content)
759   - p_ok = 0;
760   - }
761   - if (!r_data.promGoodsLists && good.prom_type == 3) {
762   - var content = good.goods_name + '未找到活动,请取消订单重新购买';
763   - th.toast(content);
764   - p_ok = 0;
765   - }else if(r_data.promGoodsLists && good.prom_type == 3){
766   - var fir_act = r_data.promGoodsLists[0];
767   - //如果是有限购的时候
768   - if (fir_act.gd_limit_num>0){
769   - if(promgoodsbuynum+good.goods_num > fir_act.gd_limit_num){
770   - var content = good.goods_name + '超出优惠促销活动商品限购,请取消订单重新购买';
771   - th.toast(content)
772   - p_ok = 0;
773   - }
774   - }
775   -
776   - }
777   -
778   - if (!r_data.ladderLists && good.prom_type == 10) {
779   - var content = good.goods_name + '未找到活动,请取消订单重新购买';
780   - th.toast(content);
781   - p_ok = 0;
782   - }
783   - } else {
784   -
785   - var content = good.goods_name + '未找到活动,请取消订单重新购买'
786   - th.toast(content);
787   - p_ok = 0;
788   - }
789   - })
790   - if (!p_ok) {
791   - th.setData({ paying: 0 });
792   - return false;
793   - }
794   - }
795   -
796   - //-- 商品的普通购买 ,不要进行判断 --
797   - if ((good.prom_type == 1 || good.prom_type == 2 || good.prom_type == 6 || good.prom_type == 4 || good.prom_type == 8 || good.prom_type == 9)
798   - && !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal) {
799   -
800   - } else {
801   -
802   -
803   - if(good.is_pd_normal || good.is_integral_normal){
804   - gg.prom_type=good.prom_type;
805   - gg.prom_id=good.prom_id;
806   - }else {
807   -
808   - //因为商品的prom_type=0,所以商品的实际活动要重新获取
809   - var url = '/api/weshop/activitylist/listGoodActInfo2New';
810   - var req_d = {
811   - "store_id": os.stoid,
812   - "goods_id": good.goods_id,
813   - "user_id": user_id,
814   - }
815   - await getApp().request.promiseGet(url, {
816   - data: req_d
817   - }).then(res => {
818   - if (res.data.code == 0 && res.data.data) {
819   - var arr = res.data.data;
820   - //-- 预热也要计算 --
821   - var arr2 = arr.filter(function (e) {
822   - return e.s_time < ut.gettimestamp() || (e.warm_uptime && e.warm_uptime < ut.gettimestamp())
823   - })
824   - if (arr2.length == 1) {
825   - gg.prom_type = arr2[0].prom_type;
826   - gg.prom_id = arr2[0].act_id;
827   - } else if (arr2.length > 1) {
828   - //如果是多活动的时候,要看good参与的活动有没有结束,是不是有效
829   - var fd = arr2.find(function (e) {
830   - return e.prom_type == good.prom_type && e.act_id == good.prom_id
831   - })
832   - if (fd) {
833   - gg.prom_type = good.prom_type;
834   - gg.prom_id = good.prom_id;
835   - }
836   - }
837   - }
838   - })
839   - }
840   -
841   - if(gg.prom_type==3){
842   - var prom_pc=null;
843   - await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
844   - if (res.data.code == 0) { prom_pc = res.data.data; }
845   - })
846   -
847   - if(prom_pc){
848   - gg.discount_field=prom_pc.discount_field;
849   - }
850   - }
851   -
852   - //阶梯促销获取取价规则
853   - if(gg.prom_type==10){
854   - var prom_ld=null;
855   - //-- 获取阶梯规则 --
856   - var url1 = "/api/weshop/prom/ladderList/list";
857   - var req_data = {
858   - store_id: os.stoid,
859   - form_id: gg.prom_id,
860   - }
861   - await getApp().request.promiseGet(url1, {
862   - data: req_data
863   - }).then(rs1 => {
864   - if (rs1.data.code == 0 && rs1.data.data && rs1.data.data.length ) {
865   - prom_ld = rs1.data.data[0];
866   - }
867   - })
868   -
869   - if(prom_ld){
870   - gg.discount_field=prom_ld.discount_field;
871   - }
872   - }
873   -
874   - if ((gg.prom_type == 1 || gg.prom_type == 2 || gg.prom_type == 4 || gg.prom_type == 6 || gg.prom_type == 8 || gg.prom_type == 9)
875   - && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {
876   - var prom = null;
877   - //---如果是活动的时候---
878   - var prom = null, th = this;
879   - if (gg.prom_type == 1) {
880   - await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + gg.prom_id, {}).then(res => {
881   - if (res.data.code == 0) {
882   - prom = res.data.data;
883   - prom.price = prom.user_price;
884   - }
885   - })
886   - }
887   - if (gg.prom_type == 2) {
888   - await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + gg.goods_id + "/" + gg.prom_id, {}).then(res => {
889   - if (res.data.code == 0) {
890   - prom = res.data.data;
891   - prom.price = prom.price;
892   - }
893   - })
894   - }
895   - if (gg.prom_type == 6) {
896   - await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
897   - if (res.data.code == 0) {
898   - prom = res.data.data;
899   - }
900   - })
901   - }
902   - if (gg.prom_type == 4) {
903   - await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1&timetype=2", {
904   - data: { store_id: os.stoid, goods_id: gg.goods_id,user_id: getApp().globalData.user_id, }
905   - }).then(res => {
906   - if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
907   - prom = res.data.data.pageData[0];
908   - }
909   - })
910   - }
911   - if (prom) {
912   - var t_now = ut.gettimestamp();
913   - if (prom.is_end == 0 && prom.start_time < t_now && prom.end_time > t_now) {
914   -
915   - var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
916   - th.toast(content);
917   - th.setData({ paying: 0 });
918   - return false;
919   - }
920   - }
921   -
922   - //-- 幸运购的时候 --
923   - if(gg.prom_type==8 || gg.prom_type==9){
924   - var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
925   - th.toast(content);
926   - th.setData({ paying: 0 });
927   - return false;
928   - }
929   -
930   - }
931   - else {
932   - var t_ok = 1;
933   - //-- 如果是普通购买的时候,此时计算的一定是商品的prom_type==0了, (组合购在普通购买的时候,就不判断了,因为组合购本身就可以普通购买)---
934   - if(!good.is_collocation && !good.is_gift && good.is_pd_normal!=2 && gg.prom_type!=7 ){
935   -
936   - var promgoodsbuynum0=0;
937   - //---要获得商品,该用户买了多少件,同步应用---
938   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
939   - data: {
940   - store_id: os.stoid,
941   - user_id: user_id,
942   - goods_id: good.goods_id,
943   - prom_type: gg.prom_type,
944   - prom_id: gg.prom_id
945   - },
946   - }).then(res => {
947   - var buy_num_data = res.data.data;
948   - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
949   - })
950   -
951   -
952   - //商品的订单列表的活动类型,和gg参与的类型不一致
953   - if(good.prom_type != gg.prom_type && good.prom_id != gg.prom_id){
954   - //如果商品有单独的活动的是偶
955   - switch (gg.prom_type){
956   - case 10:
957   - var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
958   - th.toast(content);
959   - t_ok = 0;
960   - break;
961   - //-- 优惠促销是有限购的 --
962   - case 3:
963   - var prom=null;
964   - var yh_check=1;
965   -
966   -
967   - //如果有优惠促销的普通购买的时候
968   - if(order.is_user_no_yhcx && good.prom_type==0 && order.is_user_no_yhcx!='0' && order.is_user_no_yhcx!='null' ){
969   - let obj=JSON.parse(order.is_user_no_yhcx);
970   - //obj数组使用find函数快速查找
971   - if(obj.find((item)=>{return item.prom_id==gg.prom_id && item.prom_type==3})){
972   - yh_check=0;
973   - }
974   - }
975   -
976   - //判断优惠促销活动的限购
977   - if(yh_check){
978   - await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + gg.prom_id, {}).then(res => {
979   - if (res.data.code == 0) { prom = res.data.data; }
980   - })
981   - if (prom && prom.limit_num) {
982   - var limit_num = prom.limit_num;
983   - var user_pre_buynum = await this.getUserBuyPromNum_pre(prom.id)
984   - if (limit_num>0 && user_pre_buynum >= limit_num) {
985   - yh_check=0;
986   - }
987   - }
988   - }
989   -
990   - //--- 要判断一下优惠促销的商品的限购 ---
991   - if(yh_check){
992   - var pro_gd_limit_num=0;
993   - var p_limit_rs= await getApp().request.promisePost('/api/weshop/promgoods/getPromGoodsLimitNum',{
994   - data:{
995   - store_id:os.stoid,goods_id:gg.goods_id,prom_id:gg.prom_id,prom_type:3
996   - }
997   - })
998   - if(p_limit_rs && p_limit_rs.data.code==0){
999   - pro_gd_limit_num=p_limit_rs.data.data
1000   - }
1001   - //-- 如果有商品限购的时候 --
1002   - if(pro_gd_limit_num>0){
1003   - var pro_by_num=0;
1004   - var lrs= {
1005   - store_id: os.stoid,user_id: getApp().globalData.user_id,
1006   - goods_id: gg.goods_id, prom_type: 3,
1007   - prom_id: gg.prom_id, isnew:1
1008   - };
1009   - var gd_limit_rs=await getApp().promiseGet('/api/weshop/ordergoods/getUserBuyGoodsNum',{data:lrs});
1010   - if(gd_limit_rs && gd_limit_rs.data.code==0){
1011   - pro_by_num=gd_limit_rs.data.data.promgoodsbuynum
1012   - }
1013   - if(pro_gd_limit_num<pro_by_num+good.goods_num){
1014   - yh_check=0;
1015   - }
1016   - }
1017   - }
1018   -
1019   - //-- 优惠促销活动没有超出限购的话 --
1020   - if(yh_check){
1021   - if(!the_yh_map[gg.prom_id]) the_yh_map[gg.prom_id]=[];
1022   - if(prom) good.discount_field=prom.discount_field;
1023   - good.r_shop_price=gg.shop_price;
1024   - good.r_market_price=gg.market_price;
1025   - the_yh_map[gg.prom_id].push(good);
1026   - }
1027   -
1028   - break
1029   - case 7:
1030   - //获取组合购活动
1031   - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + gg.prom_id + "/" + getApp().globalData.userInfo.user_id;
1032   - let zh_buy_info=null
1033   - await getApp().request.promiseGet(url, {}).then(res => {
1034   - if (res.data.code == 0 && res.data.data) {
1035   - zh_buy_info = res.data.data
1036   - }
1037   - })
1038   - //判断活动超出限购
1039   - var is_act_ok=1;
1040   - let userbuynum = await th.getUserBuyPromNum(gg.prom_id)
1041   - if (zh_buy_info.buy_limit !=0 && zh_buy_info && userbuynum >= zh_buy_info.buy_limit) {
1042   - is_act_ok=0;
1043   - }
1044   -
1045   - //判断活动商品超出限购,在从表
1046   - var url1 = "/api/weshop/prom/zhbuyGoods/page";
1047   - var req_data = {
1048   - page: 1,
1049   - pageSize: 1,
1050   - store_id: os.stoid,
1051   - zh_id: gg.prom_id,
1052   - goods_id: gg.goods_id
1053   - }
1054   - await getApp().request.promiseGet(url1, {
1055   - data: req_data
1056   - }).then(res => {
1057   - if (ut.ajax_ok(res)) {
1058   - var gdlist = res.data.data.pageData[0];
1059   - gg.buyqty = gdlist.buyqty;
1060   - }
1061   - })
1062   - var num = gg['buyqty'];
1063   - //---- 要计算商品的限购 -----
1064   - if (gg['buyqty'] > 0) {
1065   - if (gg.goods_num + promgoodsbuynum0 > gg['buyqty']) {
1066   - is_act_ok=0;
1067   - }
1068   - }
1069   - if(is_act_ok){
1070   - var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
1071   - th.toast(content);
1072   - t_ok = 0;
1073   - break;
1074   - }
1075   - }
1076   - }
1077   - }
1078   -
1079   - //如果有普通商品要判断能不到达到优惠促销的条件
1080   - if(Object.keys(the_yh_map).length){
1081   - for (let rkey in the_yh_map) {
1082   - var all_price=0;
1083   - var all_num=0;
1084   -
1085   - for(var ij=0;ij<the_yh_map[rkey].length;ij++){
1086   - var t_price=the_yh_map[rkey][ij].goods_price;
1087   - switch (the_yh_map[rkey][ij].discount_field){
1088   - case 1:
1089   - t_price=the_yh_map[rkey][ij].r_shop_price;
1090   - break;
1091   - case 2:
1092   - t_price=the_yh_map[rkey][ij].r_market_price;
1093   - break;
1094   - }
1095   -
1096   - all_price+=t_price * the_yh_map[rkey][ij].goods_num;
1097   - all_num+= the_yh_map[rkey][ij].goods_num;
1098   - }
1099   -
1100   - //-- 只有在单赠品的时候,才要进行计算 --
1101   - var res= await getApp().request.promiseGet("/api/weshop/goods/getDiscount", {
1102   - data: {
1103   - price: parseFloat(all_price).toFixed(2),
1104   - prom_id: rkey,
1105   - goods_num: all_num,
1106   - user_id: getApp().globalData.user_id,
1107   - is_bz: prom.is_bz
1108   - }
1109   - })
1110   - if (res.data.code == 0 && res.data.data && res.data.data.condition){
1111   - var content = '商品的活动发生了变化,请取消订单重新购买';
1112   - th.toast(content);
1113   - t_ok = 0;
1114   - break;
1115   - }
1116   - }
1117   -
1118   - }
1119   - //-- 判断活动是不是OK --
1120   - if (!t_ok) {
1121   - th.setData({ paying: 0 }); return false;
1122   - }
1123   -
1124   - // if (!good.is_gift && good.prom_type != 3) {
1125   - // var t_ok = 1;
1126   - // await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0" + "/" + getApp().globalData.user_id, {}).then(res => {
1127   - // if (res.data.code == 0) {
1128   - // var r_data = res.data.data;
1129   - // //-- 参加了全局的优惠活动 --
1130   - // if (r_data.promGoodsLists) {
1131   - // var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
1132   - // th.toast(content);
1133   - // t_ok = 0;
1134   - // }
1135   - // }
1136   - // })
1137   - // if (!t_ok) {
1138   - // th.setData({ paying: 0 }); return false;
1139   - // }
1140   - // }
1141   - //-- 如果有参加线下取价 --
1142   - if (good.offline_cut > 0) wlist += encodeURIComponent(gg.erpwareid) + ",";
1143   - }
1144   - //赠品和搭配购不判断商品金额
1145   - var isok = 1;
1146   - var card_field = th.data.card_field;
1147   -
1148   - //-- 如果会员是等级会员,商品有等级价,且不是活动商品,同时线下取价的要放在最后来判断 --
1149   - if (!good.is_gift && !good.is_collocation && gg.prom_type != 9) {
1150   -
1151   - //-- 优惠促销的时候控制取价规则 --
1152   - // gg.prom_type!=3 && gg.prom_type!=10 同时商品不是普通购买的时候,又参与优惠促销,阶梯促销
1153   - if((gg.prom_type!=3 && gg.prom_type!=10) || gg.discount_field==undefined || gg.discount_field==0 ) {
1154   - if (card_field && gg[card_field] > 0) {
1155   - if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0;
1156   - if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
1157   -
1158   - } else {
1159   - if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0;
1160   - if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
1161   - }
1162   - }else{
1163   - if(good.prom_type==3 && good.prom_type==10){
1164   - switch (gg.discount_field){
1165   - case 1:
1166   - if (good.goods_price != gg.shop_price) isok = 0;
1167   - break;
1168   - case 2:
1169   - if (good.goods_price != gg.market_price) isok = 0;
1170   - break;
1171   - }
1172   - }
1173   - }
1174   -
1175   - var is_h = 0;
1176   - if (!isok) {
1177   - var content = gg.goods_name + '商品的价格发生了变化,请取消订单重新购买1'
1178   - th.toast(content);
1179   - th.setData({ paying: 0 });
1180   - return false;
1181   - }
1182   - }
1183   -
1184   - //--如果是线下库存的时候--
1185   - if (th.data.conf.sales_rules >= 2 && !gg.whsle_id && !good.is_gift) {
1186   - var ob = {};
1187   - await th.check_down_line_next(gg, good.goods_num, order.pickup_id, function (obj) {
1188   - ob = obj;
1189   - })
1190   - if (ob.code == -1) {
1191   - var content = gg.goods_name + '门店库存不足,请取消订单';
1192   - th.toast(content);
1193   - th.setData({ paying: 0 });
1194   - return false;
1195   - }
1196   -
1197   - } else {
1198   - if (!good.is_gift && good.goods_num > store_count) {
1199   -
1200   - var content = gg.goods_name + '商品的库存不足,请取消订单';
1201   - th.toast(content);
1202   - th.setData({ paying: 0 });
1203   - return false;
1204   - }
1205   -
1206   - }
1207   - }
1208   -
1209   - //---如果是活动的时候---
1210   - var prom = null, goodsinfo = good, th = this;
1211   - if (goodsinfo.prom_type == 1) {
1212   - await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + goodsinfo.prom_id, {}).then(res => {
1213   - if (res.data.code == 0) {
1214   - prom = res.data.data;
1215   - prom.price = prom.user_price;
1216   - }
1217   - })
1218   - }
1219   - if (goodsinfo.prom_type == 2) {
1220   - await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + good.goods_id + "/" + goodsinfo.prom_id, {}).then(res => {
1221   - if (res.data.code == 0) {
1222   - prom = res.data.data;
1223   - prom.price = prom.price;
1224   - }
1225   - })
1226   - }
1227   -
1228   - if (goodsinfo.prom_type == 6 && !good.is_pd_normal) {
1229   - await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {}).then(res => {
1230   - if (res.data.code == 0) {
1231   - prom = res.data.data;
1232   - }
1233   - })
1234   - }
1235   -
1236   - if (goodsinfo.prom_type == 4 && !good.is_integral_normal) {
1237   - await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1&timetype=2", {
1238   - data: { store_id: os.stoid, goods_id: goodsinfo.goods_id,user_id: getApp().globalData.user_id, }
1239   - }).then(res => {
1240   - if (res.data.code == 0 && res.data.data && res.data.data.pageData) {
1241   - prom = res.data.data.pageData[0];
1242   - }
1243   - })
1244   - }
1245   - //----------如果有活动,并且在进行中,就不计算线下库存---------------
1246   - if (prom) {
1247   - let c_type=parseInt(goodsinfo.prom_type+'');
1248   - var act_type='';
1249   - switch (c_type){
1250   - case 1:act_type='秒杀';break;
1251   - case 2:act_type='团购';break;
1252   - case 6:act_type='拼团';break;
1253   - }
1254   - //指定门店的控制
1255   - if ([1,2,6].indexOf(c_type)>-1 && prom.pick_up_lists) {
1256   - var idx0=prom.pick_up_lists.findIndex(function (e){
1257   - return e.pickup_id==order.pickup_id;
1258   - })
1259   - if(idx0<0){
1260   - getApp().confirmBox(goodsinfo.goods_name +act_type+"活动的门店不可售");
1261   - th.setData({ paying: 0 });
1262   - return false;
1263   - }
1264   - }
1265   -
1266   - var now = ut.gettimestamp();
1267   - if (prom.is_end == 1 && prom.end_time < now) {
1268   - var content = goodsinfo.goods_name + '商品的活动已经结束,请取消订单'
1269   - th.toast(content);
1270   - th.setData({ paying: 0 });
1271   - return false;
1272   - }
1273   -
1274   - buyed_mum2 = promgoodsbuynum + good.goods_num;
1275   - if (buyed_mum2 > prom.buy_limit && prom.buy_limit > 0) {
1276   -
1277   - var content = goodsinfo.goods_name + '购买数量超出商品活动限购,请取消订单'
1278   - th.toast(content);
1279   - th.setData({ paying: 0 });
1280   - return false;
1281   - }
1282   -
1283   - // --看一下会员的秒杀价格是不是发生了变化,因为会员的身份发生了变化
1284   - if (goodsinfo.prom_type == 1 && goodsinfo.goods_price != prom.price) {
1285   - var content = goodsinfo.goods_name + '秒杀活动的价格发生了变化';
1286   - th.toast(content);
1287   - th.setData({ paying: 0 });
1288   - return false;
1289   - }
1290   -
1291   - // --看一下会员的团购价格是不是发生了变化
1292   - if (goodsinfo.prom_type == 2 && goodsinfo.goods_price != prom.price) {
1293   - var content = goodsinfo.goods_name + '秒杀活动的价格发生了变化';
1294   - th.toast(content);
1295   - th.setData({ paying: 0 });
1296   - return false;
1297   - }
1298   -
1299   - if (goodsinfo.prom_type == 4) {
1300   - if (good.goods_num > prom.limitqty - prom.buy_num) {
1301   -
1302   - var content = goodsinfo.goods_name + '购买数量超出商品活动库存,请取消订单'
1303   - th.toast(content);
1304   - th.setData({ paying: 0 });
1305   - return false;
1306   - }
1307   - } else if (goodsinfo.prom_type == 1 || goodsinfo.prom_type == 2 || goodsinfo.prom_type == 6) {
1308   - if (order.add_time + 5 * 60 < ut.gettimestamp()) {
1309   - var content = gg.goods_name + '该订单已经超时无法支付,请取消订单';
1310   - th.toast(content);
1311   - th.setData({ paying: 0 });
1312   - return false;
1313   - }
1314   - }
1315   -
1316   - }
1317   -
1318   - //-- 预售和幸运购要单独计算 --
1319   - if (goodsinfo.prom_type == 8) {
1320   - var presell_id= goodsinfo.prom_id;
1321   - //------获取预售主表,判断预售活动是不是到期不可以使用了----------
1322   - var res= await getApp().request.promiseGet(`/api/weshop/marketing/marketingPresellForm/get/${os.stoid}/${presell_id}`, {})
1323   - if (res.data.code == 0 && res.data.data) {
1324   - var act_data = res.data.data;
1325   - if (act_data.is_end) {
1326   - wx.showToast({ title: "活动已经结束", icon: 'none', duration: 3000 });
1327   - return false;
1328   - }
1329   - if (act_data.isuse == 0) {
1330   - wx.showToast({ title: "活动未启用", icon: 'none', duration: 3000 });
1331   - return false;
1332   - }
1333   -
1334   - var err_txt = "活动定金时间已经结束";
1335   - var end_time = act_data.end_time;
1336   - if (act_data.presell_type == 1) {
1337   - err_txt = "活动时间已经结束";
1338   - }
1339   - if (end_time < ut.gettimestamp()) {
1340   - wx.showToast({ title: err_txt, icon: 'none', duration: 3000 });
1341   - return false;
1342   - }
1343   -
1344   - if (act_data.presell_type == 0) {
1345   - end_time = act_data.pay_enddate;
1346   - err_txt = "活动尾款时间已经结束";
1347   - }
1348   - if (end_time < ut.gettimestamp()) {
1349   - wx.showToast({ title: err_txt, icon: 'none', duration: 3000 });
1350   - return false;
1351   - }
1352   - }
1353   -
1354   - var all_pre_goods=null;
1355   - var userInfo = getApp().globalData.userInfo;
1356   - var pre_data = { store_id: os.stoid, is_end: 0, timetype: 1, isuse: 1, goods_id: goodsinfo.goods_id };
1357   - if (userInfo) {
1358   - pre_data.user_id = userInfo.user_id;
1359   - }
1360   - var rs_pre= await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/page", {
1361   - data: pre_data,
1362   - })
1363   - if (rs_pre.data.code == 0 && rs_pre.data.data.pageData && rs_pre.data.data.pageData.length > 0) {
1364   - all_pre_goods = rs_pre.data.data.pageData;
1365   - }
1366   -
1367   - if(!all_pre_goods){
1368   - wx.showToast({ title: "未找到活动商品", icon: 'none', duration: 3000 });
1369   - return false;
1370   - }
1371   - var idx = all_pre_goods.findIndex(function (ele) {
1372   - return ele.goods_id == goodsinfo.goods_id;
1373   - })
1374   -
1375   - if(idx==-1){
1376   - wx.showToast({ title: "未找到活动商品", icon: 'none', duration: 3000 });
1377   - return false;
1378   - }
1379   - var pre_arr = all_pre_goods[idx];
1380   - var prom_buy_limit = pre_arr.vip_butyqty;
1381   -
1382   - if (goodsinfo.goods_num > pre_arr.presell_sumqty - pre_arr.buy_goodnum) {
1383   - wx.showToast({ title: "超出活动商品库存", icon: 'none', duration: 3000 });
1384   - return false;
1385   - }
1386   - //--判断商品是否超出活动限购--
1387   - if (promgoodsbuynum0 && prom_buy_limit > 0) {
1388   - wx.showToast({ title: "超出活动商品库存", icon: 'none', duration: 3000 });
1389   - return false;
1390   - }
1391   -
1392   - }
1393   - //幸运购的时候
1394   - if (goodsinfo.prom_type == 9 && !good.is_pt_normal) {
1395   -
1396   - var lk_act=null;
1397   - //获取单个活动成团信息
1398   - var lk_rs= await getApp().request.promiseGet('/api/weshop/prom/luckyActivity/page', {
1399   - data: {
1400   - store_id: os.stoid,
1401   - is_end: 0,
1402   - timetype: 1,
1403   - id: goodsinfo.prom_id,
1404   - }
1405   - });
1406   -
1407   - if(lk_rs && ut.ajax_ok(lk_rs)){
1408   - lk_act= lk_rs.data.data.pageData[0];
1409   - }
1410   - if(!lk_act){
1411   - wx.showToast({ title: "未找到活动,或者活动已结束", icon: 'none', duration: 3000 });
1412   - th.setData({ paying: 0 });
1413   - return false;
1414   - }
1415   - // 检查幸运购活动商品库存
1416   - var lk_redis=await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/9/" + goodsinfo.prom_id,{});
1417   - if(!lk_redis || lk_redis<goodsinfo.goods_num ){
1418   - wx.showToast({ title: "活动商品库存不足", icon: 'none', duration: 3000 });
1419   - th.setData({ paying: 0 });
1420   - return false;
1421   - }
1422   - }
1423   -
1424   - }
1425   -
1426   - //-- 要判断一下线下取价价格是不是发生改变 --
1427   - if (wlist != "" && th.data.is_open_offline && th.data.is_open_offline > 0) {
1428   - wlist = ut.sub_last(wlist);
1429   - var keyid = order.pickup_id;
1430   - var user_info = getApp().globalData.userInfo;
1431   - if (!keyid) {
1432   - th.setData({ paying: 0 }); return false;
1433   - }
1434   - var offarr = null;
1435   - await getApp().request.promiseGet("/api/weshop/goods/listWarePrice", {
1436   - data: {
1437   - VIPId: encodeURIComponent(user_info.erpvipid),
1438   - store_id: os.stoid,
1439   - PickupId: keyid,
1440   - WareIds: wlist
1441   - },
1442   - },
1443   - ).then(res => {
1444   - if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
1445   - offarr = res.data.data;
1446   - }
1447   - })
1448   - if (!offarr && offarr.length <= 0) {
1449   - th.toast('获取线下取价失败');
1450   - }
1451   - var newarr = ut.convert_arr_key(offarr, 'WareId');
1452   - //-- 循环判断线下的价格 --
1453   - for (var k in order_goods) {
1454   - var good = order_goods[k];
1455   - //判断线下取价是不是一样
1456   - if (newarr[good.erpwareid] &&
1457   - parseFloat(newarr[good.erpwareid].WarePrice) != parseFloat(good.goods_price)) {
1458   -
1459   - var content = good.goods_name + '商品的价格发生了变化,请取消订单重新购买';
1460   - th.toast(content);
1461   - th.setData({ paying: 0 });
1462   - return false;
1463   - }
1464   - }
1465   - }
1466   -
1467   -
1468   - th.data.ok_order_sn=this.data.order.order_sn;
1469   - py.pay(this.data.order.order_sn, function() {
1470   - th.setData({paying:0});
1471   - wx.showToast({title: '支付成功'})
1472   - wx.navigateBack();
1473   - },function () {
1474   - th.setData({paying:0});
1475   - },os.stoid,1);
1476   -
1477   - },
1478   -
1479   -
1480   -
1481   - checkTeam: function() {
1482   - wx.navigateTo({
1483   - url: "/pages/team/team_detail/team_detail?foundId=" + this.data.order.orderTeamFound.found_id
1484   - });
1485   - },
1486   -
1487   - //------图片失败,默认图片---------
1488   - bind_bnerr: function (e) {
1489   - var _errImg = e.target.dataset.errorimg;
1490   - var _errObj = {};
1491   - _errObj[_errImg] = "public/images/default_goods_image_240.gif";
1492   - this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ;
1493   - },
1494   -
1495   - zfwk:function(){
1496   - var url = "/packageE/pages/cart/cart_wk/cart_wk?order_id=" + this.data.order.order_id;
1497   - wx.redirectTo({
1498   - url:url,
1499   - })
1500   - },
1501   -
1502   - //--------跳转到退款详情-----------
1503   - gotoreturn: function (t) {
1504   - var e = t.currentTarget.dataset.recid;
1505   - var oid = t.currentTarget.dataset.oid;
1506   - var wh = "";
1507   - if (e != undefined && e != null && e != "") {
1508   - wh = "&goods_id=" + e;
1509   - }
1510   - wx.navigateTo({
1511   - url: "/packageF/pages/user/return_goods_info/return_goods_info?order_id=" + oid + wh,
1512   - });
1513   - },
1514   -
1515   - //---判断是不是有退款-----
1516   - checkReturnGoodsStatus: function (t) {
1517   - var e = t.currentTarget.dataset.recid;
1518   - var oid = t.currentTarget.dataset.oid;
1519   - r.get("/api/weshop/order/returngoods/page", {
1520   - data: {
1521   - goods_id: e,
1522   - order_id: oid,
1523   - store_id: os.stoid
1524   - },
1525   - success: function (t) {
1526   - if (t.data.code == 0) {
1527   - var r = t.data.data.total;
1528   - if (0 == r) return wx.navigateTo({
1529   - url: "/packageF/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,
1530   - });
1531   - //--如果拒绝,就重新申请退款--
1532   - if (t.data.data.pageData[0].status == 3) {
1533   - return wx.navigateTo({
1534   - url: "/packageF/pages/user/return_goods/return_goods?rec_id=" + e + "&order_id=" + oid,
1535   - });
1536   - }
1537   -
1538   - wx.navigateTo({
1539   - url: "/packageF/pages/user/return_goods_info/return_goods_info?id=" + r
1540   - });
1541   - }
1542   - }
1543   - });
1544   - },
1545   -
1546   - //-----删除订单-----
1547   - deleteOrderData: function(t) {
1548   - var th=this;
1549   - var order_id=t.currentTarget.dataset.order_id;
1550   - var up_data={
1551   - order_id: order_id,isdel:1
1552   - };
1553   - if(th.data.order.order_status!=6){
1554   - up_data.order_status=5;
1555   - }
1556   - wx.showModal({
1557   - title: "是否删除订单?",
1558   - success: function(tt) {
1559   - tt.confirm && rq.put("/api/weshop/order/updatebyId", {
1560   - data: up_data,
1561   - success: function (t) {
1562   - getApp().my_warnning("删除成功",1,th);
1563   - setTimeout(function () {
1564   - getApp().goto("/pages/user/order_list/order_list");
1565   - },1000);
1566   - }
1567   - })
1568   - }
1569   - });
1570   - },
1571   -
1572   - //--判断是不是可以单个商品退--
1573   - check_for_return_btn:function (item) {
1574   - if(item.coupon_no) return false; //有用优惠券
1575   - if(item.order_prom_id) return false; //有订单优惠
1576   - if(item.order_status>=2) return false; //订单状态>2
1577   - var istrue=true;
1578   - //----判断是不是有优惠活动和赠送商品----
1579   - for (var g in item.order_goods) {
1580   - var g_item=item.order_goods[g];
1581   - if ((g_item.prom_type == 3 && g_item.discount_amount> 0)
1582   - || (g_item.prom_type== 3 && g_item.goods_price <= 0)
1583   - ) {
1584   - istrue=false; break
1585   - }
1586   - if (g_item.prom_type== 5) {
1587   - istrue=false; break
1588   - }
1589   - }
1590   - if(!istrue) return false;
1591   - var conf=this.data.conf;
1592   - //判断是不是原路退回
1593   - if(conf.refund_type==1) return true;
1594   - else{
1595   - if(item.order_amount==0 || item.user_money==0) return true;
1596   - }
1597   - return false;
1598   - },
1599   -
1600   -
1601   -
1602   - //---检验线下库存的数量的子函数---
1603   - async check_down_line_next(gg,num,pick_id,func){
1604   - //如果默认是商品
1605   - if(getApp().is_virtual(gg)){
1606   - return func(100000);
1607   - }
1608   -
1609   -
1610   - var lock=0,pick_no,plist;
1611   - var lock_rq={store_id:os.stoid,wareId:gg.goods_id,storageId:pick_id};
1612   - if(this.data.sales_rules==3){
1613   - log_rq.appoint_pick_keyid=this.data.appoint_pick_keyid;
1614   - delete log_rq.storageId
1615   - }
1616   -
1617   - //先读取门店的lock
1618   - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page",{
1619   - data:lock_rq
1620   - }).then(res=>{
1621   - if(res.data.code==0 && res.data.data.total>0){
1622   - for(var i in res.data.data.pageData)
1623   - lock+=res.data.data.pageData[i].outQty;
1624   - }
1625   - })
1626   -
1627   - if(this.data.sales_rules==2) {
1628   - //先获取门店的编号
1629   - await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick_id, {
1630   - data: {storeId: os.stoid, goodsId: gg.goods_id, pickupId: pick_id}
1631   - }).then(res => {
1632   - if (res.data.code == 0) {
1633   - pick_no = res.data.data.pickup_no;
1634   - }
1635   - })
1636   - }
1637   -
1638   - var sto_rq={storageNos:pick_no,wareIds:encodeURIComponent(gg.erpwareid),storeId:os.stoid};
1639   - if(this.data.sales_rules==3){
1640   - sto_rq.storageIds=this.data.appoint_pick_keyid;
1641   - delete sto_rq.storageNos
1642   - }
1643   -
1644   -
1645   - //读取线下的门店库存
1646   - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages",{
1647   - data:sto_rq
1648   - }).then(res=>{
1649   - if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){
1650   - plist=res.data.data.pageData[0];
1651   - }
1652   - })
1653   - var ob={}; ob.code=1;
1654   - if(!plist){
1655   - ob.code=-1; ob.CanOutQty=0;
1656   - func(ob);return false;
1657   - }
1658   -
1659   - if(num>plist.CanOutQty-lock){
1660   - ob.code=-1;
1661   - ob.CanOutQty=plist.CanOutQty-lock
1662   - if(ob.CanOutQty<0) ob.CanOutQty=0;
1663   - }
1664   - func(ob)
1665   - },
1666   - //获取用户参与组合购的次数
1667   - async getUserBuyPromNum(prom_id){
1668   - var userInfo = getApp().globalData.userInfo;
1669   - var url = `/api/weshop/ordergoods/getUserBuyPromNum?store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=7&prom_id=${prom_id}`;
1670   - let res = await getApp().request.promiseGet(url, {
1671   - data:{}
1672   - });
1673   - let userbuynum=0
1674   - if(res.data.code==0 && res.data.data){
1675   - userbuynum=res.data.data.userbuynum
1676   - }
1677   - return userbuynum
  2 + data: {},
  3 + onLoad: async function(options) {
  4 + getApp().globalData.ts_trans_data=options;
  5 + getApp().goto('/packageG/pages/user/order_detail/order_detail?transfer=1');
1678 6 },
1679   -
1680   - //再来一单的功能的实现
1681   - moreOrder:function(e){
1682   - var th=this;
1683   - var item=th.data.order;
1684   -
1685   - if(this.data.moring) return false;
1686   - this.data.moring=1;
1687   -
1688   - th.check_more_order(item);
1689   - },
1690   -
1691   - check_more_order:async function(item){
1692   - var pickup=null,th=this;
1693   - var user_id=getApp().globalData.userInfo.user_id;
1694   - wx.showLoading();
1695   - //--------获取门店-----------
1696   - await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + item.pickup_id, {
1697   -
1698   - }).then(res=>{
1699   - pickup = res.data.data;
1700   - })
1701   - if(!pickup){
1702   - wx.hideLoading();
1703   - getApp().confirmBox("找不到门店");
1704   - this.data.moring=0;
1705   - return false;
1706   - }
1707   -
1708   - if(pickup.isstop){
1709   - wx.hideLoading();
1710   - getApp().confirmBox("门店已停用");
1711   - this.data.moring=0;
1712   - return false;
1713   - }
1714   -
1715   - if(!pickup.is_pos){
1716   - wx.hideLoading();
1717   - getApp().confirmBox("门店不允许销售");
1718   - this.data.moring=0;
1719   - return false;
1720   - }
1721   -
1722   - //--------获取商品----------
1723   - var goods_list=item.order_goods;
1724   - //--- 返回的内容 ---
1725   - var back_goods_arr=[];
1726   - var err_text="";
1727   - for(var i in goods_list){
1728   - var g_item=goods_list[i];
1729   - var b_item={};
1730   - //--如果是赠品,不加入购物车--
1731   - if(g_item['is_gift']) continue;
1732   - if(g_item['prom_type']==4 ){
1733   - err_text+= g_item['goods_name']+"积分购商品不加入购物车\n";
1734   - continue;
1735   - }
1736   - if(g_item['prom_type']==5){
1737   - err_text+= g_item['goods_name']+"搭配购商品不加入购物车\n";
1738   - continue;
1739   - }
1740   - if(g_item['prom_type']==6 ){
1741   - err_text+= g_item['goods_name']+"拼团商品不加入购物车\n";
1742   - continue;
1743   - }
1744   -
1745   - //--获取商品--
1746   - var good=null;
1747   - await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + g_item.goods_id, {
1748   -
1749   - }).then(res=>{
1750   - good=res.data.data;
1751   - })
1752   -
1753   - //调用接口判断订单优惠,
1754   - const res = await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + g_item.goods_id + "/0"+"/"+getApp().globalData.user_id, {})
1755   - if (res.data.code == 0 && res.data.data) {
1756   - var r_data = res.data.data;
1757   - if (r_data.ladderLists) {
1758   - var act_id = r_data.ladderLists[0].form_id;
1759   - //-- 判断会员能不能参与阶梯促销 --
1760   - const data = await getApp().request.promiseGet("/api/weshop/prom/ladderForm/getNew/" + os.stoid + "/" + user_id + "/" + act_id, {})
1761   - if (data.data.code == 0 && data.data.data && data.data.data.isuse && data.data.data.is_end == 0) {
1762   - b_item.prom_type = 10;
1763   - b_item.prom_id = data.data.data.id;
1764   - }
1765   - }
1766   - }
1767   -
1768   - if(!good){
1769   - err_text+= g_item['goods_name']+"未找到商品\n";
1770   - continue;
1771   - }
1772   - if (good.is_on_sale != 1) {
1773   - err_text+= g_item['goods_name']+"已经下架\n";
1774   - continue;
1775   - }
1776   -
1777   - var timestamp = ut.gettimestamp();
1778   - if (good.on_time > timestamp) {
1779   - err_text+= g_item['goods_name']+"还未上架\n";
1780   - continue;
1781   - }
1782   - if (good.down_time > 0) {
1783   - if (good.down_time < timestamp) {
1784   - err_text+=g_item['goods_name']+"已经下架\n";
1785   - continue;
1786   - }
1787   - }
1788   -
1789   - //如果商品的配送方式和门店不匹配
1790   - if(good['distr_type']>0 && pickup['distr_type']>0 && good['distr_type']!=pickup['distr_type'] ){
1791   - err_text+= good['goods_name']+"配送方式不一致\n";
1792   - continue;
1793   - }
1794   -
1795   - var prom=null;
1796   - let user_id = getApp().globalData.userInfo.user_id;
1797   -
1798   - b_item.goods_id=g_item.goods_id;
1799   - b_item.goods_name=g_item.goods_name;
1800   - b_item.goods_num=g_item.goods_num;
1801   - b_item.guide_id=g_item.guide_id;
1802   - b_item.guide_type=g_item.guide_type;
1803   - b_item.pickup_id=item.pickup_id;
1804   - b_item.price=good.shop_price;
1805   - b_item.goods_sn=good.goods_sn;
1806   - b_item.sku=good.sku;
1807   - b_item.is_integral_normal=g_item.is_integral_normal;
1808   -
1809   - //-- 如果会员是等级卡的时候,同时商品也有设置相应的卡价格 --
1810   - var card_field=th.data.card_field;
1811   - if(card_field && good[card_field]>0){
1812   - b_item.price=good[card_field];
1813   - }
1814   -
1815   - var url = "/api/weshop/activitylist/listGoodActInfo2New";
1816   - var req_data = {
1817   - store_id: g_item.store_id, goods_id: g_item.goods_id, user_id: user_id
1818   - };
1819   - await getApp().request.promiseGet(url, { data: req_data }).then(res => {
1820   - if (res.data.code == 0) {
1821   -
1822   - var arr = res.data.data;
1823   - //-- 预热也要计算 --
1824   - var arr2 = arr.filter(function (e) {
1825   - return e.s_time < ut.gettimestamp();
1826   - })
1827   -
1828   - if (arr2.length == 1) {
1829   - good.prom_type = 1;
1830   - good.prom_id = item.act_id;
1831   -
1832   -
1833   -
1834   - }
1835   - else if (arr2.length > 1) {
1836   - good.prom_type = g_item.prom_type; good.prom_id = g_item.prom_id;
1837   - }
1838   - }
1839   - })
1840   -
1841   - //--判断商品当前的活动情况--
1842   - switch (good.prom_type) {
1843   - case 1:
1844   - var flash = null;
1845   - await getApp().request.promiseGet("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + good.prom_id, {}).then(res => {
1846   - if (res.data.code == 0) {
1847   - flash = res.data.data;
1848   - }
1849   - })
1850   - //----已经结束-----
1851   - if (flash && flash.is_end == 0) {
1852   -
1853   - if( flash.end_time > timestamp && flash.start_time < timestamp){
1854   - prom = flash;
1855   - prom.price = prom.user_price;
1856   - b_item.price = prom.price;
1857   - good.prom_type = 1;
1858   - good.prom_id = prom.id;
1859   - }else{
1860   - if(g_item.prom_type==0 && !flash.is_shop_buy ){
1861   - err_text+=g_item['goods_name']+"秒杀活动不允许普通价\n";
1862   - continue;
1863   - }
1864   - }
1865   -
1866   - }
1867   - break;
1868   - case 2:
1869   - var group = null;
1870   - await getApp().request.promiseGet("/api/weshop/goods/groupBuy/getActInfo/" + os.stoid + "/" + good.goods_id + "/" + good.prom_id, {}).then(res => {
1871   - if (res.data.code == 0) {
1872   - group = res.data.data;
1873   - }
1874   - })
1875   - //----已经结束-----
1876   - if (group && group.is_end == 0 && group.end_time > timestamp && group.start_time < timestamp) {
1877   - prom = group;
1878   - prom.price = prom.price;
1879   - b_item.price = prom.price;
1880   - }
1881   - break;
1882   - case 6:
1883   - b_item.is_pd_normal = 1;
1884   - break;
1885   - case 7:
1886   - //如果有组合购
1887   - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + good.prom_id + "/" + getApp().globalData.userInfo.user_id;
1888   - await getApp().request.promiseGet(url, {}).then(res => {
1889   - if (res.data.code == 0 && res.data.data) {
1890   -
1891   - var t_act=res.data.data;
1892   - if(!t_act.zh_num || t_act.zh_num>t_act.zh_buy_num) {
1893   -
1894   - if (res.data.data.is_show == 1 && res.data.data.is_end == 0
1895   - && ut.gettimestamp() < res.data.data.end_time
1896   - && ut.gettimestamp() > res.data.data.start_time
1897   - ) {
1898   - b_item.prom_type = 7;
1899   - b_item.prom_id = res.data.data.id;
1900   - good.prom_type = 7;
1901   - good.prom_id = res.data.data.id;
1902   - }
1903   - }
1904   - }
1905   - })
1906   - break;
1907   - case 10:
1908   -
1909   - var url = `/api/weshop/prom/ladderForm/getNew/${os.stoid}/${user_id}/${good.prom_id}`;
1910   - await getApp().request.promiseGet(url, {}).then(res => {
1911   - if (res.data.code == 0 && res.data.data && res.data.data.isuse && res.data.data.is_end == 0) {
1912   - b_item.prom_type = 10;
1913   - b_item.prom_id = res.data.data.id;
1914   - }
1915   - })
1916   - break;
1917   - }
1918   -
1919   -
1920   - //如果有优惠促销的时候,要看下商品的优惠活动有没有过期
1921   - if((g_item.prom_type==3 || good.prom_type==3) && good.whsle_id<=0){
1922   - var is_g_prom=0;
1923   - //因为有全场优惠活动,商品参加的活动还未开始
1924   - var url="/api/weshop/activitylist/getGoodActInfo";
1925   - var req_data={
1926   - store_id:os.stoid,goodsidlist:good.goods_id,is_detail:1,user_id:user_id
1927   - };
1928   - await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) {
1929   - if(res.data.code==0 && res.data.data && res.data.data.length){
1930   - for(let i in res.data.data){
1931   - let item=res.data.data[i];
1932   - if(item.prom_type==3) {
1933   - is_g_prom=1; break;
1934   - }
1935   - }
1936   - }
1937   - })
1938   - if(is_g_prom) {
1939   - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1"+"/"+getApp().globalData.user_id, {}).then(res => {
1940   - if (res.data.code == 0) {
1941   - var r_data = res.data.data;
1942   - if (r_data.promGoodsLists) {
1943   - b_item.prom_type = 3;
1944   - b_item.prom_id = r_data.promGoodsLists[0].prom_id;
1945   - }
1946   - }
1947   - })
1948   - }else{
1949   - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + good.goods_id, {}).then(res => {
1950   - if (res.data.code == 0) {
1951   - var r_data = res.data.data;
1952   - if (r_data.promGoodsLists) {
1953   - b_item.prom_type = 3;
1954   - b_item.prom_id = r_data.promGoodsLists[0].prom_id;
1955   - }
1956   - }
1957   - })
1958   - }
1959   - }
1960   -
1961   -
1962   - //判断是不是线下库存的购买, 是不是秒杀活动
1963   - if(th.data.sales_rules>=2 && !prom && !good.whsle_id){
1964   -
1965   - //-- 看一下购物车上有多少商品 --
1966   - var cart_num=0;
1967   - await getApp().request.promiseGet("/api/weshop/cart/page", {
1968   - data: {
1969   - store_id: os.stoid,
1970   - user_id: getApp().globalData.user_id,
1971   - state:0, is_gift:0,
1972   - goods_id:good.goods_id,
1973   - pick_id: b_item.pickup_id
1974   - }
1975   - }).then(res=>{
1976   - var num = 0;
1977   - if(res.data.code==0 && res.data.data && res.data.data.pageData) {
1978   - for (var i = 0; i < res.data.data.pageData.length; i++) {
1979   - num += res.data.data.pageData[i].goods_num;
1980   - }
1981   - }
1982   - cart_num=num;
1983   - })
1984   -
1985   - var lock=0,plist=null;
1986   -
1987   - if(b_item.prom_type!=7) {
1988   -
1989   -
1990   - var lock_rq={store_id: os.stoid, wareId: good.goods_id, storageId: b_item.pickup_id, pageSize: 1000};
1991   - if(th.data.sales_rules==3){
1992   - lock_rq.appoint_pick_keyid=th.data.appoint_pick_keyid;
1993   - delete lock_rq.storageId;
1994   - }
1995   -
1996   - //先读取门店的lock,
1997   - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
1998   - data:lock_rq
1999   - }).then(res => {
2000   - if (res.data.code == 0 && res.data.data.total > 0) {
2001   - for (var i in res.data.data.pageData)
2002   - lock += res.data.data.pageData[i].outQty
2003   - }
2004   - })
2005   -
2006   - var sto_rq={storageNos: pickup.pickup_no,wareIds: encodeURIComponent(good.erpwareid),storeId: os.stoid };
2007   - if(th.data.sales_rules==3){
2008   - sto_rq.storageIds=th.data.appoint_pick_keyid;
2009   - delete sto_rq.storageNos;
2010   - }
2011   -
2012   -
2013   -
2014   - //---通过接口获取门店的线下库存信息--
2015   - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
2016   - data: sto_rq
2017   - }).then(res => {
2018   - if (res.data.code == 0 && res.data.data.total > 0) {
2019   - plist = res.data.data.pageData[0];
2020   - }
2021   - })
2022   -
2023   - if (!plist) {
2024   - err_text += good['goods_name'] + "库存不足\n";
2025   - continue;
2026   - }
2027   - if (plist.CanOutQty - lock <= 0) {
2028   - err_text += good['goods_name'] + "库存不足\n";
2029   - continue;
2030   - }
2031   - if (b_item.goods_num > (plist.CanOutQty - lock)) {
2032   - b_item.goods_num = plist.CanOutQty - lock;
2033   - }
2034   - }
2035   - var req_data={
2036   - store_id: os.stoid,
2037   - user_id: getApp().globalData.user_id,
2038   - goods_id: good.goods_id,
2039   - };
2040   - if(b_item.prom_type==7){
2041   - req_data.prom_type=7;
2042   - req_data.prom_id=b_item.prom_id;
2043   - }
2044   -
2045   - var buynum=0;
2046   - var promnum=0;
2047   - //---要获得商品,该用户买了多少件,同步应用---
2048   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
2049   - data: req_data,
2050   - }).then(res => {
2051   - if(res.data.code==0){
2052   - var buy_num_data = res.data.data;
2053   - buynum = buy_num_data.goodsbuynum;
2054   - if(buy_num_data.promgoodsbuynum){
2055   - promnum=buy_num_data.promgoodsbuynum;
2056   - }
2057   - }
2058   - })
2059   -
2060   - //---- 要计算商品的限购 -----
2061   - if(good['viplimited']>0){
2062   - if(cart_num+buynum>good['viplimited']){
2063   - err_text+= good['goods_name']+"超出限购\n";
2064   - continue;
2065   - }
2066   - good['viplimited']-=(cart_num+buynum);
2067   - if(b_item.goods_num>good['viplimited']){
2068   - b_item.goods_num=good['viplimited'];
2069   - }
2070   - }
2071   - //不需要计算组合购的限购
2072   -
2073   - back_goods_arr.push(b_item); //返回商品元素
2074   -
2075   - }else{
2076   - //-- 看一下购物车上有多少商品 --
2077   - var cart_num=0;
2078   - await getApp().request.promiseGet("/api/weshop/cart/page", {
2079   - data: {
2080   - store_id: os.stoid,
2081   - user_id: getApp().globalData.user_id,
2082   - state:0, is_gift:0,
2083   - goods_id:good.goods_id
2084   - }
2085   - }).then(res=>{
2086   - var num = 0;
2087   - if(res.data.code==0 && res.data.data && res.data.data.pageData) {
2088   - for (var i = 0; i < res.data.data.pageData.length; i++) {
2089   - num += res.data.data.pageData[i].goods_num;
2090   - }
2091   - }
2092   - cart_num=num;
2093   - })
2094   -
2095   - if(good.store_count<=0){
2096   - err_text+= good['goods_name']+"库存不足\n";
2097   - continue;
2098   - }
2099   - if(b_item.goods_num>good.store_count)
2100   - b_item.goods_num=good.store_count;
2101   -
2102   - var buynum=0; //商品已经购买多少件
2103   - var promgoodsbuynum=0; //活动已经购买多少件
2104   - var redis_num = 0; //redis库存
2105   -
2106   - var req_data={
2107   - store_id: os.stoid,
2108   - user_id: getApp().globalData.user_id,
2109   - goods_id: good.goods_id,
2110   - };
2111   -
2112   - if(prom){
2113   - req_data.prom_type= good.prom_type;
2114   - req_data.prom_id= good.prom_id;
2115   - b_item.prom_type=good.prom_type;
2116   - b_item.prom_id=good.prom_id;
2117   -
2118   - //------判断活动是否抢光-----
2119   - await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
2120   - os.stoid + "/" + good.prom_type + "/" + good.prom_id, {
2121   - 1: 1
2122   - }).then(res => {
2123   - redis_num = res.data.data;
2124   - });
2125   - if(redis_num<=0){
2126   - //不允许商品普通价格修改
2127   - if(!prom.is_shop_buy && prom.is_shop_buy!=undefined) {
2128   - err_text += good['goods_name'] + "活动不足\n";
2129   - continue;
2130   - }
2131   - }
2132   -
2133   - }
2134   -
2135   - //---要获得商品,该用户买了多少件,同步应用---
2136   - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
2137   - data: req_data,
2138   - }).then(res => {
2139   - if(res.data.code==0){
2140   - var buy_num_data = res.data.data;
2141   - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
2142   - buynum = buy_num_data.goodsbuynum;
2143   - }
2144   - })
2145   -
2146   - //---- 要计算商品的限购 -----
2147   - if(good['viplimited']>0){
2148   - if(cart_num+buynum>good['viplimited']){
2149   - err_text+= good['goods_name']+"超出限购\n";
2150   - continue;
2151   - }
2152   - good['viplimited']-=(cart_num+buynum);
2153   - if(b_item.goods_num>good['viplimited']){
2154   - b_item.goods_num=good['viplimited'];
2155   - }
2156   -
2157   - }
2158   -
2159   - //-- 判断活动的库存 --
2160   - if(prom){
2161   - if(prom['goods_num']<=prom['buy_num']){
2162   - err_text+= good['goods_name']+"超出活动库存\n";continue;
2163   - }
2164   -
2165   - if(b_item.goods_num>prom['goods_num']-prom['buy_num']){
2166   - b_item['goods_num']= b_item['goods_num']-b_item['buy_num'];
2167   - }
2168   -
2169   - if(b_item.goods_num>redis_num){
2170   - b_item.goods_num=redis_num;
2171   - }
2172   -
2173   - if(prom['buy_limit']>0){
2174   - if(cart_num+promgoodsbuynum>=prom['buy_limit'] ){
2175   - err_text+= good['goods_name']+"超出活动限购\n";continue;
2176   - }
2177   - prom['buy_limit'] -= (cart_num+buynum);
2178   - if(b_item.goods_num>prom['buy_limit']){
2179   - b_item.goods_num=prom['buy_limit'];
2180   - }
2181   - }
2182   -
2183   -
2184   - }
2185   - back_goods_arr.push(b_item); //返回商品元素
2186   - }
2187   - }
2188   -
2189   - //有重新购买的数据是时候,就要重新生成订单
2190   - if(back_goods_arr.length>0){
2191   - th.setData({back_goods_arr:back_goods_arr});
2192   - if(!err_text){
2193   - th.more_add_cart();
2194   - }else{
2195   - wx.hideLoading();
2196   - // 如果没有获取用户信息
2197   - wx.showModal({
2198   - title:'确定',
2199   - content: err_text+',确定要买其他商品码?',
2200   - success(res) {
2201   - if (res.confirm) {
2202   - //跳转到登录页
2203   - th.more_add_cart();
2204   - }else{
2205   - th.data.moring=0;
2206   - wx.hideLoading();
2207   - }
2208   - },fail(){
2209   - th.data.moring=0;
2210   - wx.hideLoading();
2211   - }
2212   - });
2213   -
2214   - }
2215   - }else{
2216   - th.data.moring=0;
2217   - wx.hideLoading();
2218   - getApp().confirmBox(err_text);
2219   - }
2220   - },
2221   -
2222   - more_add_cart:async function(){
2223   - var back_goods_arr=this.data.back_goods_arr;
2224   - var err_text="";
2225   - var ok_num=0;
2226   -
2227   - for(var i in back_goods_arr){
2228   - //商品ID
2229   - var g_item=back_goods_arr[i];
2230   - var newd = {
2231   - goods_id: g_item.goods_id,
2232   - goods_num: g_item.goods_num,
2233   - pick_id: g_item.pickup_id,
2234   - user_id: oo.user_id,
2235   - store_id: os.stoid,
2236   - goods_price: g_item.price,
2237   - member_goods_price: g_item.price,
2238   - goods_name: g_item.goods_name,
2239   - goods_sn: g_item.goods_sn,
2240   - sku: g_item.sku,
2241   - };
2242   -
2243   - if(g_item.guide_id){
2244   - newd['guide_id']=g_item.guide_id;
2245   - newd['guide_type']=g_item.guide_type;
2246   - }
2247   -
2248   - if(g_item.is_integral_normal){
2249   - newd['is_integral_normal']=g_item.is_integral_normal;
2250   - }
2251   - if(g_item.is_pd_normal){
2252   - newd['is_pd_normal']=g_item.is_pd_normal;
2253   - }
2254   - if(g_item.prom_type){
2255   - //3,5,7,10加入购物车,统一prom_type为0
2256   - if([3,5,7,10].indexOf(g_item.prom_type)>-1){
2257   - g_item.prom_type=0;
2258   - g_item.prom_id=0;
2259   - }
2260   - newd['prom_type']=g_item.prom_type;
2261   - newd['prom_id']=g_item.prom_id;
2262   - }
2263   -
2264   -
2265   - var b_cart_goods=null;
2266   - await getApp().request.promiseGet("/api/weshop/cart/page", {
2267   - data: {
2268   - store_id: os.stoid,
2269   - user_id: oo.user_id,
2270   - goods_id: g_item.goods_id,
2271   - pick_id: g_item.pickup_id,
2272   - },
2273   - }).then(res=>{
2274   - //-------如果购物车中有相关的数据-------
2275   - if (res.data.data.total > 0) {
2276   - b_cart_goods= res.data.data.pageData;
2277   - }
2278   - })
2279   -
2280   -
2281   - //-- 判断购物车是不是有重复 --
2282   - var is_has=0;
2283   - if(b_cart_goods) {
2284   - for (let jr = 0; jr < b_cart_goods.length; jr++) {
2285   - var b_cart_item = b_cart_goods[jr];
2286   - if (!g_item.prom_type || g_item.prom_type == 0) {
2287   - if ([0, 3, 5, 7, 10].indexOf(b_cart_item.prom_type) > -1) {
2288   - is_has = b_cart_item;
2289   - break
2290   - }
2291   - } else {
2292   - if (b_cart_goods.prom_type == g_item.prom_type && b_cart_goods.prom_id == g_item.prom_id) {
2293   - is_has = b_cart_item;
2294   - break
2295   - }
2296   - }
2297   - }
2298   - }
2299   -
2300   -
2301   - //-- 如果就加入过购物车 --
2302   - if(is_has){
2303   - var updata = {
2304   - id: is_has.id,
2305   - goods_num: newd.goods_num + is_has.goods_num,
2306   - goods_price: newd.goods_price,
2307   - member_goods_price:newd.goods_price,
2308   - store_id: os.stoid,
2309   - };
2310   - if(newd.guide_id){
2311   - updata.guide_id=newd.guide_id;
2312   - updata.guide_type=newd.guide_type;
2313   - }
2314   - await getApp().request.promisePut("/api/weshop/cart/update", {
2315   - data: updata
2316   - }).then(res=>{
2317   - if(res.data.code==0) {
2318   - ok_num++;
2319   - }else{
2320   - err_text+=newd.goods_name+"加入购物车失败\n";
2321   - }
2322   - })
2323   -
2324   - }else{
2325   - await getApp().request.promisePost("/api/weshop/cart/save", {
2326   - data: newd
2327   - }).then(res=>{
2328   - if(res.data.code==0) {
2329   - ok_num++;
2330   - }else{
2331   - err_text+=newd.goods_name+"加入购物车失败\n";
2332   - }
2333   - })
2334   - }
2335   - }
2336   -
2337   - wx.hideLoading();
2338   - this.data.moring=0;
2339   - if(ok_num==0){
2340   - //-- 如果没有获取用户信息 --
2341   - wx.showModal({
2342   - title:'提示',
2343   - content: err_text,
2344   - success(res) {}
2345   - });
2346   - }else{
2347   - if(err_text==""){
2348   - getApp().goto("/pages/cart/cart/cart");
2349   - }else{
2350   - // 如果没有获取用户信息
2351   - wx.showModal({
2352   - title:'提示',
2353   - content: err_text,
2354   - success(res) {
2355   - if (res.confirm) {
2356   - //跳转到登录页
2357   - getApp().goto("/pages/cart/cart/cart");
2358   - }
2359   - }
2360   - });
2361   -
2362   - }
2363   -
2364   - }
2365   - },
2366   -
2367   - toast(msg){
2368   - wx.showToast({
2369   - title: msg,
2370   - icon: 'none',
2371   - duration: 3000
2372   - })
2373   - },
2374   -
2375   - con_weixin:function () {
2376   - getApp().con_wx(this);
2377   - },
2378   -
2379   - //跳转到商品
2380   - go_gd:function (e) {
2381   - var user_id=getApp().globalData.user_id;
2382   - if(!user_id) user_id=0;
2383   -
2384   - var gd_item= e.currentTarget.dataset.gd;
2385   - var gd=gd_item.goods_id;
2386   -
2387   - if(gd_item.prom_type>0){
2388   - good_url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gd + "&prom_id=" + gd_item.prom_id + "&prom_type="+gd_item.prom_type;
2389   - getApp().goto(good_url);
2390   - return false;
2391   - }
2392   -
2393   - var good_url="/pages/goods/goodsInfo/goodsInfo?goods_id=" + gd;
2394   - var url="/api/weshop/activitylist/getGoodActInfo";
2395   - var req_data={
2396   - store_id:os.stoid,goodsidlist:gd,is_detail:1,user_id:user_id
2397   - };
2398   - //获取秒杀的多规格
2399   - getApp().request.promiseGet(url, {data:req_data}).then(res=>{
2400   - if(res.data.code==0 && res.data.data){
2401   - if(res.data.data.length==1){
2402   - var item=res.data.data[0];
2403   - switch (item.prom_type){
2404   - case 9:
2405   - good_url= '/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo?goods_id=' + gd + '&group_id=' + item.act_id;
2406   - break;
2407   - case 8:
2408   - good_url="/packageC/pages/presell/goodsInfo/goodsInfo?goods_id="+gd+"&prom_id="+item.act_id
2409   - break;
2410   - default:
2411   - good_url="/pages/goods/goodsInfo/goodsInfo?goods_id="+gd+"&prom_id="+item.act_id+"&prom_type="+item.prom_type;
2412   - break
2413   - }
2414   - }
2415   - getApp().goto(good_url);
2416   -
2417   - }else{
2418   - getApp().goto(good_url);
2419   - }
2420   - })
2421   - },
2422   -
2423   -
2424   -
2425   - click_contact:function () {
2426   - getApp().globalData.no_clear=1;
2427   - },
2428   -
2429   -
2430   - //-- 查看物流 --
2431   - go_wuliu:function (e) {
2432   - getApp().go_wuliu(e);
2433   - },
2434   -
2435   - //优惠促销用户参与次数,is_buy=1,表示只获取支付了的
2436   - async getUserBuyPromNum_pre(prom_id,is_buy) {
2437   - var userInfo = getApp().globalData.userInfo;
2438   - var url = `/api/weshop/ordergoods/getUserBuyPromNum?is_all=1&store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=3&prom_id=${prom_id}`;
2439   - if(is_buy){
2440   - url = `/api/weshop/ordergoods/getUserBuyPromNum?store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=3&prom_id=${prom_id}`;
2441   - }
2442   - let res = await getApp().request.promiseGet(url, {
2443   - data: {}
2444   - });
2445   - let user_pre_buynum = 0
2446   - if (res.data.code == 0 && res.data.data) {
2447   - user_pre_buynum = res.data.data.userbuynum
2448   - }
2449   - return user_pre_buynum
2450   - }
2451   -
2452   -
2453   -
2454   -
  7 + //显示加载
  8 + onShow:function(){ },
2455 9  
2456   -});
2457 10 \ No newline at end of file
  11 +})
2458 12 \ No newline at end of file
... ...
pages/user/order_detail/order_detail.json
1 1 {
2   - "navigationBarTitleText": "订单详情",
3   - "enablePullDownRefresh": false,
4   - "usingComponents": {
5   - "warn": "/components/long_warn/long_warn"
6   - }
  2 + "windom": {
  3 + "navigationBarTitleText": "加载中.",
  4 + "backgroundTextStyle": "light",
  5 + "navigationBarTextStyle": "white",
  6 + "navigationBarBackgroundColor": "#ffffff",
  7 + "backgroundColor": "#eeeeee"
  8 + }
  9 +
7 10 }
8 11 \ No newline at end of file
... ...
pages/user/order_detail/order_detail.wxml
1   -<wxs module="filters" src="../../../utils/filter.wxs"></wxs>
2   -<view class="container">
3   - <view class="user-mes" wx:if="{{order.exp_type==0 || order.exp_type==2 }}">
4   - <view class="user-contact">
5   - {{order.consignee}}{{'  '}}{{order.mobile}}
6   - </view>
7   - <view class="location" wx:if="{{order.order_prom_type!=5}}">
8   - <view class="address">{{order.more_address}} {{order.address}}</view>
9   - <view class="pos-icon">
10   - <image class="wh100" src="{{iurl}}/miniapp/images/iconfont-shouhuodizhi.png"></image>
11   - </view>
12   - </view>
13   - <view class="border-img">
14   - <image class="wh100" src="{{iurl}}/miniapp/images/tt.png"></image>
15   - </view>
16   - </view>
17   - <view class="order-meg">
18   - <view class="order-state"><view class="shop_name">门店:{{order.pickname}}</view>
19   - <view>{{order.order_status_detail}}</view>
20   - </view>
21   - <!--wx:if="{{item.return_btn!=4}}" -->
22   - <view class="order-detail" wx:for="{{order.order_goods}}" wx:key="{{index}}" >
23   - <view class="goods-img" bindtap="go_gd" data-gd="{{item}}">
24   - <image class="wh100" src="{{resourceUrl+item.original_img}}" binderror="bind_bnerr" lazy-load="true"
25   - data-errorimg="order.order_goods[{{index}}].original_img"></image>
26   - </view>
27   - <!-- 跳转到商品 -->
28   - <navigator class="order-cont" bindtap="go_gd" data-gd="{{item}}">
29   - <view class="goods-name">{{item.goods_name}}</view>
30   - <!--<view class="goods-color">{{item.goods_spec}} {{item.goods_color}}</view>-->
31   - <view class="goods-color">{{filters.show_gui_ge(item.goods_spec,item.goods_color)}}</view>
32   - </navigator>
33   -
34   - <view class="order-num">
35   - <view class="goods-price">¥{{item.member_goods_price}}<text wx:if="{{item.prom_type==10}}" style="margin-left: 5rpx">({{item.ladder_discount}}折)</text> </view>
36   - <view class="goods-num">×{{item.goods_num}}</view>
37   -
38   - <!-- 不是整单退的时候 -->
39   - <block wx:if="{{!order.pre_cut && order.is_all_return!=1 && order.discount<=0 && order.coupon_price<=0 && order.order_prom_amount<=0 && order.discount_amount<=0 && item.prom_type!=5 && !order.is_prom && item.is_whsle_goods!=1}}">
40   - <view bindtap="checkReturnGoodsStatus" class="goods-num" data-oid="{{item.order_id}}"
41   - data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==1 && !order.is_bedistri}}">申请退款</view>
42   - <view bindtap="gotoreturn" class="return-btn" data-oid="{{item.order_id}}"
43   - data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==2}}">退款中</view>
44   - <view bindtap="checkReturnGoodsStatus" class="goods-num" data-oid="{{item.order_id}}"
45   - data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==3}}">重新退款</view>
46   - <view bindtap="gotoreturn" class="goods-num" data-oid="{{item.order_id}}"
47   - data-recid="{{item.goods_id}}" wx:if="{{item.return_btn==4}}">退款完成</view>
48   - </block>
49   -
50   -
51   - </view>
52   - </view>
53   - <view class="order-operate">
54   - <view bindtap="checkTeam" class="contact-us check-btn" wx:if="{{optionIsGoup}}">查看拼团详情</view>
55   - <view>
56   -
57   - <button wx:if="{{sys_switch.weapp_customertype==1}}" class="contact-us goods-btn" bindtap="click_contact" 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>
60   - <view wx:else bindtap="contactService" class="contact-us goods-btn">联系客服</view>
61   - </view>
62   - <!-- <view bindtap="contactService" class="contact-us goods-btn">联系客服</view> -->
63   - <view bindtap="cancelOrder" class="cancel-order goods-btn" data-id="{{order.order_id}}"
64   - hidden="{{!(order.order_status==0&&order.pay_status==0)}}">取消订单</view>
65   - </view>
66   - </view>
67   - <view class="basic-information information">
68   - <view class="title">基本信息</view>
69   - <view class="item">
70   - <view>订单编号</view>
71   - <view>{{order.order_sn}}</view>
72   - </view>
73   - <view class="item">
74   - <view>下单时间</view>
75   - <view>{{order.addTimeFormat}}</view>
76   - </view>
77   -
78   - <view class="item" wx:if="{{order.order_prom_type!=5}}">
79   - <view>配送方式</view>
80   - <view wx:if="{{order.pt_status<4 && order.is_zsorder==4}}">
81   - --
82   - </view>
83   -
84   - <view wx:if="{{order.exp_type==2}}">同城配送</view>
85   - <view wx:elif="{{order.exp_type==1}}">自提</view>
86   - <view wx:else>物流({{order.shipping_name}})</view>
87   - </view>
88   - <view class="item">
89   - <view>买家留言</view>
90   - <view class="leave-word">{{order.user_note!=''?order.user_note:'无'}}</view>
91   - </view>
92   - </view>
93   - <view class="price-information information" style="margin-bottom: 120rpx;">
94   - <view class="title" style="margin-bottom:10rpx" >价格信息</view>
95   - <view class="item pnew" wx:if="{{order.is_zsorder==4}}">
96   - <view>商品总价</view>
97   - <view>¥ {{filters.toFix(order.order_goods[0].member_goods_price*order.order_goods[0].goods_num,2)}}元</view>
98   - </view>
99   - <view class="item pnew" wx:else>
100   - <view>商品总价</view>
101   - <view>¥ {{order.goods_price}}元</view>
102   - </view>
103   -
104   - <view class="item pnew" wx:if="{{order.is_zsorder==4}}">
105   - <view>定金金额</view>
106   - <view>¥ {{filters.toFix(order.order_amount+order.user_money,2)}}元</view>
107   - </view>
108   - <view class="item pnew" wx:if="{{order.pt_tail_money>0}}">
109   - <view>尾款金额</view>
110   - <view>¥ {{filters.toFix(order.pt_tail_money-order.shipping_price,2)}}元</view>
111   - </view>
112   -
113   - <view class="item pnew" wx:if="{{order.shipping_price>0}}">
114   - <view>配送费用</view>
115   - <view>¥ {{order.shipping_price}}元</view>
116   - </view>
117   - <view class="item pnew" wx:if="{{order.coupon_price>0}}">
118   - <view>优惠券</view>
119   - <view> ¥ {{order.coupon_price}}元</view>
120   - </view>
121   - <view class="item pnew" wx:if="{{order.pre_cut>0}}">
122   - <view>使用预存</view>
123   - <view> ¥ {{order.pre_cut}}元</view>
124   - </view>
125   - <view class="item pnew" wx:if="{{order.integral>0}}">
126   - <view>积分</view>
127   - <view>{{order.integral}}积分</view>
128   - </view>
129   -
130   - <view class="item pnew" wx:if="{{order.discount_amount>0}}">
131   - <view>优惠活动</view>
132   - <view>¥ {{filters.toFix(order.discount_amount,2)}}元</view>
133   - </view>
134   -
135   - <view class="item pnew" wx:if="{{order.ladder_amount>0}}">
136   - <view>阶梯优惠活动</view>
137   - <view>¥ {{filters.toFix(order.ladder_amount,2)}}元</view>
138   - </view>
139   -
140   - <view class="item pnew" wx:if="{{order.order_prom_amount>0}}">
141   - <view>订单优惠</view>
142   - <view>¥ {{order.order_prom_amount}}元</view>
143   - </view>
144   -
145   - <view class="item">
146   - <view>订单总价</view>
147   - <view>¥ {{filters.toFix(order.order_amount+order.user_money+order.pt_tail_money+order.use_commission+order.pre_cut,2)}}元</view>
148   - </view>
149   -
150   - <view class="item-line"></view>
151   -
152   - <view class="item" wx:if="{{order.use_commission>0}}">
153   - <view>使用佣金</view>
154   - <view>¥ {{filters.toFix(order.use_commission,2)}}元</view>
155   - </view>
156   -
157   - <view class="item" wx:if="{{order.user_money>0}}">
158   - <view>使用余额</view>
159   - <view wx:if="{{order.tail_pay_type==1}}">¥ {{filters.toFix(order.user_money+order.pt_tail_money,2)}}元</view>
160   - <view wx:else>¥ {{filters.toFix(order.user_money,2)}}元</view>
161   - </view>
162   - <view style="height:10rpx"></view>
163   - </view>
164   -
165   - <view class="btn-wrap">
166   -
167   - <view bindtap="zfwk" class="tips-btn" wx:if="{{order.pt_tail_money>0 && order.pt_status==2 }}">支付尾款</view>
168   - <view bindtap="jumpToCart4" class="tips-btn" hidden="{{!order.pay_btn}}">
169   - <text wx:if="{{paying}}">支付中</text>
170   - <text wx:else>立即付款</text>
171   - </view>
172   -
173   - <block wx:if="{{!(order.has_rt || order.return_btn==2 || order.return_btn==4)}}">
174   - <navigator bindtap="confirmOrder" class="tips-btn" hidden="{{!order.receive_btn}}">收货确认</navigator>
175   - </block>
176   -
177   - <view class="tips-btn" wx:if="{{order.order_status==3}}" bindtap="deleteOrderData" data-order_id="{{order.order_id}}" >删除订单</view>
178   -
179   -
180   - <navigator bindtap="go_wuliu" class="tips-btn" hidden="{{!order.shipping_btn}}"
181   - data-order_id="{{order.order_id}}"
182   - data-url="/packageG/pages/user/express/express?order_id={{order.order_id}}">查看物流</navigator>
183   -
184   - <!---has_rt部分退---->
185   - <block wx:if="{{order.return_btn==undefined && order.is_all_return!=1 && order.has_rt!=1}}">
186   - <navigator class="tips-btn" wx:if="{{(order.order_status==0&&order.pay_status==1) && !order.is_bedistri}}" url="/packageG/pages/order/refund_order/refund_order?order_id={{order.order_id}}">申请退款</navigator>
187   - <navigator class="tips-btn" wx:if="{{(order.order_status==1&&order.pay_status==1) && !order.is_bedistri}}" url="/packageG/pages/order/refund_order/refund_order?order_id={{order.order_id}}">申请退款</navigator>
188   - </block>
189   - <block wx:else>
190   - <view class="tips-btn" wx:if="{{order.is_all_return_status==2 && order.isdel==0}}" bindtap="deleteOrderData" data-order_id="{{order.order_id}}" >删除订单</view>
191   - <navigator class="tips-btn" wx:if="{{order.is_all_return_status==3 && order.order_status<2}}" url="/packageG/pages/order/refund_order/refund_order?order_id={{order.order_id}}">重新退款</navigator>
192   - <navigator class="tips-btn" wx:if="{{order.is_all_return_status==0 || order.is_all_return_status==1}}"
193   - url="/packageF/pages/user/return_goods_info/return_goods_info?order_id={{order.order_id}}">退款详情</navigator>
194   - </block>
195   -
196   -
197   - <block wx:if="{{order.order_status==2 && order.is_zsorder!=4}}">
198   - <navigator wx:if="{{order.order_goods.length>1}}" class="tips-btn"
199   - url="/packageB/pages/user/comment/comment?status=0&order_id={{order.order_id}}">评价</navigator>
200   - <navigator wx:else class="tips-btn"
201   - url="/packageB/pages/user/add_comment/add_comment?goods_id={{order.order_goods[0].goods_id}}&order_id={{order.order_id}}">去评价</navigator>
202   - </block>
203   - <!-- 积分购 拼团 搭配购没有有再来一单 -->
204   - <block wx:if="{{ (order.pay_status==1 || order.order_status==3) && order.pt_prom_id<=0 && order.integral<=0 && order.order_goods[0].prom_type!=5}}">
205   - <view style="background-color: #feca53;" class="tips-btn" bindtap="moreOrder" >再来一单</view>
206   - </block>
207   - </view>
  1 +<!---- //文字"-->
  2 +<view class="rty">
  3 + <view style="margin-top:260rpx">加载中。。</view>
208 4 </view>
209   -
210   -<warn id="warn"></warn>
... ...
pages/user/order_detail/order_detail.wxss
1   -.user-mes {
2   - background-color: #fff;
3   - font-size: 32rpx;
4   - color: #333;
5   -}
6   -
7   -.user-contact {
8   - padding: 24rpx 80rpx;
9   -}
10   -
11   -.location {
12   - position: relative;
13   - padding: 0 80rpx 24rpx;
14   -}
15   -
16   -.pos-icon {
17   - position: absolute;
18   - left: 30rpx;
19   - top: 0;
20   - width: 32rpx;
21   - height: 32.5rpx;
22   -}
23   -
24   -.border-img {
25   - width: 100%;
26   - height: 16rpx;
27   -}
28   -
29   -.order-meg {
30   - margin-bottom: 20rpx;
31   - font-size: 30rpx;
32   - margin-top: 20rpx;
33   -}
34   -
35   -.order-state {
36   - height: 100rpx;
37   - line-height: 100rpx;
38   - padding-right: 40rpx;
39   - padding-left: 40rpx;
40   - background-color: #fff;
41   - color: #f23030;
42   - justify-content: space-between;
43   - display: flex;
44   -}
45   -.shop_name{color: #333}
46   -.order-detail {
47   - padding: 30rpx 0;
48   - border-bottom: 1px solid #ddd;
49   - color: #666;
50   - min-height: 115rpx;
51   -}
52   -.goods-img {
53   - float: left;
54   - width: 100rpx;
55   - height: 100rpx;
56   - margin: 0 30rpx;
57   -}
58   -
59   -.order-cont {
60   - float: left;
61   - width: 410rpx;
62   -}
63   -
64   -.goods-name {
65   - height: 60rpx;
66   - line-height: 30rpx;
67   - overflow: hidden;
68   - margin-bottom: 16rpx;
69   -}
70   -
71   -.goods-color {
72   - font-size: 24rpx;
73   -}
74   -
75   -.order-num {
76   - float: right;
77   - font-size: 24rpx;
78   - margin-top: 10rpx;
79   - margin-right: 20rpx;
80   - text-align: right;
81   - line-height: 42rpx;
82   -}
83   -
84   -.order-operate {
85   - height: 100rpx;
86   - padding-right: 20rpx;
87   - background-color: #fff;
88   - display: flex;
89   - align-items: center;
90   - justify-content: flex-end;
91   -}
92   -
93   -.check-btn {
94   - width: 180rpx;
95   - height: 60rpx;
96   - line-height: 60rpx;
97   - text-align: center;
98   - margin-right: 10rpx;
99   - border: 1px solid #eee;
100   -}
101   -
102   -.goods-btn {
103   - width: 150rpx;
104   - height: 60rpx;
105   - line-height: 60rpx;
106   - text-align: center;
107   - border: 1px solid #eee;
108   -}
109   -
110   -.cancel-order {
111   - margin-left: 20rpx;
112   -}
113   -
114   -.information {
115   - padding: 0 20rpx;
116   - background-color: #fff;
117   - margin-bottom: 20rpx;
118   -}
119   -
120   -.information .title {
121   - height: 70rpx;
122   - line-height: 70rpx;
123   - border-bottom: 1rpx solid #ddd;
124   - font-size: 34rpx;
125   - color: #333;
126   -}
127   -
128   -.information .item {
129   - display: flex;
130   - justify-content: space-between;
131   - height: 60rpx;
132   - line-height: 60rpx;
133   - font-size: 30rpx;
134   - color: #333;
135   -}
136   -
137   -.information .item.pnew{
138   - height: 50rpx;
139   - line-height: 50rpx;
140   - color: #999;
141   -}
142   -.item-line{ margin: 5rpx 0; height: 1rpx; border-bottom:1rpx solid #ddd }
143   -
144   -.delivery-address,.leave-word {
145   - width: 500rpx;
146   - text-align: right;
147   - overflow: hidden;
148   - white-space: nowrap;
149   - text-overflow: ellipsis;
150   -}
151   -
152   -.pay-amount {
153   - color: #f23030;
154   -}
155   -
156   -.btn-wrap {
157   - height: 100rpx;
158   - background-color: #fff;
159   - text-align: right;
160   - position: fixed; width: 100%; bottom: 0; border-top: 1rpx solid #ddd
161   -}
162   -
163   -.tips-btn {
164   - display: inline-block;
165   - width: 200rpx;
166   - height: 100rpx;
167   - line-height: 100rpx;
168   - text-align: center;
169   - font-size: 30rpx;
170   - color: #fff;
171   - background-color: #f23030;
172   - /* margin-left: 2rpx; */
173   - margin-right: 8rpx
174   -}
175   -
176   -
177   -.contact-us.goods-btn::after {
178   - content: none;
  1 +.rty{
  2 + display:flex; justify-content: center; align-items: center;
  3 + width:100%;
  4 + height:100%
179 5 }
180 6 \ No newline at end of file
... ...
pages/user/order_list/order_list.js
... ... @@ -263,7 +263,7 @@ Page({
263 263 }
264 264 }
265 265  
266   - data[ind]['ord_url'] = '/pages/user/order_detail/order_detail';
  266 + data[ind]['ord_url'] = '/packageG/pages/user/order_detail/order_detail';
267 267 //-- 如果是优惠活动 --
268 268 if (glist[0].prom_type == 8) {
269 269 await getApp().request.promiseGet('/api/weshop/order/orderPresell/get/' + os.stoid + '/' + item.order_id, {
... ...
utils/more_cx.js
... ... @@ -511,6 +511,10 @@ module.exports = {
511 511 }
512 512 //-- 判断优惠促销要不要限购 --
513 513 var fd=th.data.in_yhact[aid];
  514 + if(!fd && th.data.yhcx_act_map && th.data.yhcx_act_map[aid] ){
  515 + fd=th.data.yhcx_act_map[aid];
  516 + th.data.in_yhact[aid]=fd;
  517 + }
514 518 if(!fd) {
515 519 var fd_res = await getApp().request.promiseGet('/api/weshop/promgoods/get/' + os.stoid + '/' + aid, {})
516 520 if (fd_res && fd_res.data.code == 0) {
... ... @@ -624,9 +628,8 @@ module.exports = {
624 628 zh_goods[h].zh_b_num=promgoodsbuynum;
625 629 th.data.in_zh_gd_buy_map[ky]=promgoodsbuynum;
626 630 }
627   -
628   -
629 631 }
  632 +
630 633 //-- 放到参与组合优惠促销的map中 --
631 634 th.data.zuhe_map_good[item_act_map.prom_id] = zhact_gdlist;
632 635 if(!car_item.zh_prom_goods) car_item.zh_prom_goods={};
... ... @@ -742,7 +745,7 @@ module.exports = {
742 745 })
743 746  
744 747 //-- 看一下是不是购物车已经选择好了,购物车选择好了,再确认订单页面也应该是购物车选择的结果,这个也很重要 --
745   - if(!ck_prom_type){
  748 + if(!ck_prom_type && th.data && ! th.data.is_cart){
746 749 for(var ij=0;ij<k_item.act_arr.length;ij++){
747 750 var act_gd=k_item.act_arr[ij].goods[0];
748 751 if(act_gd.prom_type==k_item.act_arr[ij].prom_type){
... ...