Commit 6bb247061e788235f955f9303c64989cffce0af3
Merge branch 'qa' of http://git.vipzhuang.cn/wxd/MShopWeApp
Showing
49 changed files
with
4806 additions
and
4142 deletions
app.js
| ... | ... | @@ -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
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
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
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
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){ | ... | ... | 
