Commit cce898e3f7da7a8db591d7361682eb77d353516e
1 parent
f3080613
商品详情页面的优化
Showing
1 changed file
with
58 additions
and
30 deletions
pages/goods/goodsInfo/goodsInfo.js
| ... | ... | @@ -273,6 +273,7 @@ Page({ |
| 273 | 273 | cx_prom_group: [], //促销活动,用于显示和判断默认要用什么促销活动 |
| 274 | 274 | showFold:true, |
| 275 | 275 | new_share_imgurl:'', //普通商品分享图片 |
| 276 | + | |
| 276 | 277 | }, |
| 277 | 278 | |
| 278 | 279 | //------初始化加载---------- |
| ... | ... | @@ -846,28 +847,29 @@ Page({ |
| 846 | 847 | }); |
| 847 | 848 | |
| 848 | 849 | var ee = JSON.parse(JSON.stringify(e)); |
| 849 | - //--定时器推迟一下-- | |
| 850 | - setTimeout(function () { | |
| 851 | - if (th.data.fir_goods) var g_distr_type = th.data.fir_goods.distr_type; | |
| 852 | - //--如果默认门店的配送方式不对,就不能被选择,这里不控制,如果不一样,就说明配送方式不对-- | |
| 853 | - if (ee.distr_type != 0 && g_distr_type != 0 && ee.distr_type != g_distr_type) { | |
| 854 | - ee.is_no_dis = 1; | |
| 855 | - } | |
| 856 | 850 | |
| 857 | - //-- 如果有指定门店的时候,pickup_ids是经过判断是不是普通商品后才会有的 -- | |
| 858 | - if(th.data.sele_g && th.data.sele_g.pickup_ids){ | |
| 851 | + //--定时器推迟一下-- | |
| 852 | + var appd = getApp().globalData; | |
| 853 | + var w_time = setInterval(function () { | |
| 854 | + if (that.data.is_get_local_ok == 0) return false; | |
| 855 | + if (!that.data.sele_g) return false; | |
| 856 | + | |
| 857 | + if (th.data.fir_goods) var g_distr_type = th.data.fir_goods.distr_type; | |
| 858 | + //--如果默认门店的配送方式不对,就不能被选择,这里不控制,如果不一样,就说明配送方式不对-- | |
| 859 | + if (ee.distr_type != 0 && g_distr_type != 0 && ee.distr_type != g_distr_type) { | |
| 860 | + ee.is_no_dis = 1; | |
| 861 | + } | |
| 862 | + | |
| 863 | + //-- 如果有指定门店的时候,pickup_ids是经过判断是不是普通商品后才会有的 -- | |
| 864 | + if(th.data.sele_g && th.data.sele_g.pickup_ids && th.data.prom_type==0){ | |
| 859 | 865 | var idx=th.data.sele_g.pickup_ids.findIndex(function (e){ |
| 860 | - return e.pickup_id==ee.pickup_id; | |
| 866 | + return e.pickup_id==ee.pickup_id; | |
| 861 | 867 | }) |
| 862 | 868 | if(idx<0){ |
| 863 | - ee.is_no_dis=1; | |
| 869 | + ee.is_no_dis_nor=1; | |
| 864 | 870 | } |
| 865 | - } | |
| 866 | - | |
| 871 | + } | |
| 867 | 872 | |
| 868 | - var appd = getApp().globalData; | |
| 869 | - var w_time = setInterval(function () { | |
| 870 | - if (that.data.is_get_local_ok == 0) return false; | |
| 871 | 873 | clearInterval(w_time); |
| 872 | 874 | var distance = null; |
| 873 | 875 | var e = JSON.parse(JSON.stringify(ee)); |
| ... | ... | @@ -910,8 +912,8 @@ Page({ |
| 910 | 912 | that.set_def_storage(e); |
| 911 | 913 | } |
| 912 | 914 | } |
| 913 | - }, 500) | |
| 914 | - }, 700) | |
| 915 | + }, 200) | |
| 916 | + | |
| 915 | 917 | }); |
| 916 | 918 | }, |
| 917 | 919 | |
| ... | ... | @@ -3418,13 +3420,17 @@ Page({ |
| 3418 | 3420 | prom = res.data.data; |
| 3419 | 3421 | } |
| 3420 | 3422 | }) |
| 3421 | - let times = new Date().getTime() | |
| 3422 | - prom.show_time_off = "" | |
| 3423 | - let atimes = prom.start_time * 1000 | |
| 3424 | 3423 | |
| 3425 | - if (atimes > times) { | |
| 3426 | - prom.show_time_off = ut.formatTime(prom.start_time) | |
| 3424 | + if(prom){ | |
| 3425 | + let times = new Date().getTime() | |
| 3426 | + prom.show_time_off = "" | |
| 3427 | + let atimes = prom.start_time * 1000 | |
| 3428 | + | |
| 3429 | + if (atimes > times) { | |
| 3430 | + prom.show_time_off = ut.formatTime(prom.start_time) | |
| 3431 | + } | |
| 3427 | 3432 | } |
| 3433 | + | |
| 3428 | 3434 | } |
| 3429 | 3435 | console.log('活动详情------------'); |
| 3430 | 3436 | console.log(prom); |
| ... | ... | @@ -3515,6 +3521,8 @@ Page({ |
| 3515 | 3521 | |
| 3516 | 3522 | var timer_get = setInterval(function () { |
| 3517 | 3523 | if (th.data.is_get_local_ok == 0) return false; |
| 3524 | + if (!th.data.fir_def_store) return false; | |
| 3525 | + | |
| 3518 | 3526 | var dd = null, |
| 3519 | 3527 | i = getApp().request; |
| 3520 | 3528 | if (!th.data.sele_g) return false; |
| ... | ... | @@ -3564,12 +3572,13 @@ Page({ |
| 3564 | 3572 | var pickup_ids=th.data.sele_g.pickup_ids; |
| 3565 | 3573 | |
| 3566 | 3574 | //指定门店判断, 不是普通购买的时候,秒杀的时候,秒杀有指定门店 |
| 3567 | - if(is_normal==0 && th.data.prom_type==1 && th.data.prom_act.pickup_ids){ | |
| 3568 | - pickup_ids=th.data.prom_act.pickup_ids | |
| 3575 | + if(!is_normal && th.data.prom_type==1 && th.data.prom_act.pick_up_lists){ | |
| 3576 | + pickup_ids=th.data.prom_act.pick_up_lists | |
| 3569 | 3577 | } |
| 3570 | 3578 | |
| 3571 | 3579 | //-- 如果有指定门店的时候 -- |
| 3572 | 3580 | if(pickup_ids){ |
| 3581 | + | |
| 3573 | 3582 | var ok_arr=[]; |
| 3574 | 3583 | for (let i in e.data.data.pageData) { |
| 3575 | 3584 | let ite = e.data.data.pageData[i]; |
| ... | ... | @@ -3586,16 +3595,12 @@ Page({ |
| 3586 | 3595 | if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ |
| 3587 | 3596 | |
| 3588 | 3597 | //-- 查找一下门店有没有在 -- |
| 3589 | - var idx1=th.data.sele_g.pickup_ids.findIndex(function (e){ | |
| 3598 | + var idx1=pickup_ids.findIndex(function (e){ | |
| 3590 | 3599 | return e.pickup_id==th.data.def_pick_store.pickup_id; |
| 3591 | 3600 | }) |
| 3592 | 3601 | |
| 3593 | 3602 | if(idx1<0){ |
| 3594 | 3603 | th.data.def_pick_store.is_no_dis_nor=1; |
| 3595 | - //-- 如果不是活动的普通购买的时候 -- | |
| 3596 | - if(!th.data.is_normal){ | |
| 3597 | - th.data.def_pick_store.is_no_dis=1; | |
| 3598 | - } | |
| 3599 | 3604 | that.setData({ |
| 3600 | 3605 | def_pick_store: th.data.def_pick_store |
| 3601 | 3606 | }) |
| ... | ... | @@ -4038,6 +4043,7 @@ Page({ |
| 4038 | 4043 | |
| 4039 | 4044 | var def_pick_store = th.data.def_pick_store; |
| 4040 | 4045 | var plist = res.data.data.pageData; |
| 4046 | + | |
| 4041 | 4047 | if (th.data.sales_rules == 3) { |
| 4042 | 4048 | var lock_num = 0; |
| 4043 | 4049 | var Qty = 0; |
| ... | ... | @@ -4060,6 +4066,14 @@ Page({ |
| 4060 | 4066 | is_find_def_store = 1; |
| 4061 | 4067 | } |
| 4062 | 4068 | |
| 4069 | + //-- 如果库存为0就要重新赋值 -- | |
| 4070 | + def_pick_store.CanOutQty=Qty; | |
| 4071 | + th.setData({ | |
| 4072 | + def_pick_store | |
| 4073 | + }) | |
| 4074 | + | |
| 4075 | + | |
| 4076 | + | |
| 4063 | 4077 | } else { |
| 4064 | 4078 | th.setData({ |
| 4065 | 4079 | all_sto: null, |
| ... | ... | @@ -4085,6 +4099,13 @@ Page({ |
| 4085 | 4099 | if (n_item.CanOutQty > lock_num) { |
| 4086 | 4100 | o_plist[kk].CanOutQty = n_item.CanOutQty - lock_num; |
| 4087 | 4101 | new_list.push(o_plist[kk]); |
| 4102 | + | |
| 4103 | + var ck_store=th.data.fir_def_store; | |
| 4104 | + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ | |
| 4105 | + ck_store=th.data.def_pick_store; | |
| 4106 | + } | |
| 4107 | + | |
| 4108 | + | |
| 4088 | 4109 | //--如果找到默认门店,同时也应该判断配送方式对不对-- |
| 4089 | 4110 | if (th.data.fir_def_store && n_item.StorageNo == th.data.fir_def_store.pickup_no && (g_distr_type == 0 || th.data.fir_def_store.distr_type == 0 || th.data.def_pick_store.distr_type == g_distr_type)) { |
| 4090 | 4111 | th.data.fir_def_store.CanOutQty = n_item.CanOutQty - lock_num; |
| ... | ... | @@ -4094,6 +4115,13 @@ Page({ |
| 4094 | 4115 | }) |
| 4095 | 4116 | is_find_def_store = 1; |
| 4096 | 4117 | } |
| 4118 | + | |
| 4119 | + //-- 如果库存为0就要重新赋值 -- | |
| 4120 | + if(n_item.StorageNo ==def_pick_store.pickup_no) { | |
| 4121 | + def_pick_store.CanOutQty= o_plist[kk].CanOutQty; | |
| 4122 | + th.setData({ def_pick_store }) | |
| 4123 | + } | |
| 4124 | + | |
| 4097 | 4125 | } |
| 4098 | 4126 | break; |
| 4099 | 4127 | } | ... | ... |