diff --git a/pages/buy/buy.css b/pages/buy/buy.css index 31790aaf..b2871c2a 100644 --- a/pages/buy/buy.css +++ b/pages/buy/buy.css @@ -217,6 +217,20 @@ .plugins-points-buy-container .desc { color: #F37B1D; +} + +.plugins-points-use-value { + width: 130rpx; + height: 42rpx; + line-height: 42rpx; + border-top-right-radius: 0 !important; + border-bottom-right-radius: 0 !important; +} + +.plugins-points-use-submit { + line-height: 42rpx !important; + border-top-left-radius: 0 !important; + border-bottom-left-radius: 0 !important; } /** diff --git a/pages/buy/buy.vue b/pages/buy/buy.vue index a9fac4d7..44657934 100644 --- a/pages/buy/buy.vue +++ b/pages/buy/buy.vue @@ -112,14 +112,19 @@ - 使用{{ plugins_points_data.use_integral }}个积分兑换商品 - 使用积分{{ plugins_points_data.use_integral }}个 - -{{ currency_symbol }}{{ plugins_points_data.discount_price }} + 使用{{ plugins_points_data.use_integral }}个积分兑换商品 + + 使用 + + + 个积分 + + -{{ currency_symbol }}{{ plugins_points_data.discount_price }} - + 你有积分{{ plugins_points_data.user_integral }}个 你有积分{{ plugins_points_data.user_integral }}个,可用{{ plugins_points_data.use_integral }}个 @@ -307,7 +312,8 @@ popup_plugins_coupon_status: false, popup_plugins_coupon_index: null, // 积分 - plugins_points_data: null, + plugins_points_data: null, + actual_use_integral: 0, plugins_points_status: false, // 门店 plugins_realstore_data: [], @@ -361,9 +367,6 @@ onShow() { // 数据加载 this.init(); - this.setData({ - is_first: 0, - }); // 初始化配置 this.init_config(); @@ -490,7 +493,14 @@ plugins_coupon_data: data.plugins_coupon_data || null, plugins_points_data: data.plugins_points_data || null, plugins_realstore_data: data.plugins_realstore_data || null, - }); + }); + + // 可使用积分数量 + if(this.plugins_coupon_data != null && this.is_first == 1) { + this.setData({ + actual_use_integral: this.plugins_points_data.use_integral || '' + }); + } // 优惠劵选择处理 if ((data.plugins_coupon_data || null) != null) { @@ -519,6 +529,11 @@ uni.setStorage({ key: app.globalData.data.cache_buy_user_address_select_key, data: data.base.address || null, + }); + + // 非首次状态 + this.setData({ + is_first: 0, }); } } else { @@ -565,7 +580,10 @@ } // 积分 - data['is_points'] = this.plugins_points_status === true ? 1 : 0; + data['is_points'] = this.plugins_points_status === true ? 1 : 0; + if(data['is_points'] == 1) { + data['actual_use_integral'] = this.actual_use_integral; + } return data; }, @@ -816,12 +834,33 @@ var name = data.alias || data.name || ''; var address = (data.province_name || '') + (data.city_name || '') + (data.county_name || '') + (data.address || ''); app.globalData.open_location(data.lng, data.lat, name, address); + }, + + // 积分使用值输入事件 + points_use_value_event(e) { + var value = parseInt(e.detail.value || 0); + var use_integral = parseInt(this.plugins_points_data.use_integral || 0); + if(value > use_integral && use_integral > 0) { + value = use_integral; + } + this.setData({ + actual_use_integral: value || '', + }); + }, + + // 积分使用值确认事件 + points_use_value_confirm_event(e) { + this.setData({ + plugins_points_status: this.actual_use_integral > 0, + }); + this.init(); }, // 积分选择事件 points_event(e) { this.setData({ - plugins_points_status: !this.plugins_points_status, + plugins_points_status: !this.plugins_points_status, + actual_use_integral: this.actual_use_integral > 0 ? this.actual_use_integral : this.plugins_points_data.use_integral, }); this.init(); },