From d7263e072589761b8efc25ac0043ad8c75f29354 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期三, 25 九月 2024 13:34:44 +0800
Subject: [PATCH] update 供应商刷新问题
---
sub_pages/customer/coupon/coupon-self.vue | 124 ++++++++++++++++++++++++++++++++++++-----
1 files changed, 108 insertions(+), 16 deletions(-)
diff --git a/sub_pages/customer/coupon/coupon-self.vue b/sub_pages/customer/coupon/coupon-self.vue
index ab9131d..d1a5f3f 100644
--- a/sub_pages/customer/coupon/coupon-self.vue
+++ b/sub_pages/customer/coupon/coupon-self.vue
@@ -1,37 +1,58 @@
<template>
<view class="coupon-container">
- <view class="p10">
+ <view class="p10" v-if="source!=='shopping'">
<top-tabs :tabs="tabs" :flg="flg" @change="changeTab" type="coupon">
</top-tabs>
</view>
<view class="">
- <view v-for="(item,index) of list" :key="index" class="coupont-item" :class="[query.status]">
+ <no-data v-if="!list||list.length==0" style="width: 100%;"></no-data>
+
+ <view v-for="(item,index) of list" :key="index" class="coupont-item" :class="[query.status]"
+ @click.stop="selectCoupon(item)">
<view class="flex container img100">
<view class="info-price">
- <view class="price1">¥7.70</view>
- <view class="price2">满¥100可用</view>
+ <view class="price1">
+ {{item.maxDiscountAmount?(`${item.maxDiscountAmount}折`):(`¥${item.couponDiscountValue}`)}}
+ </view>
+ <view class="price2">{{item.minOrderAmount?(`满¥${item.minOrderAmount}可用`):'无门槛'}}</view>
</view>
<view class="info flex1">
- <view class="title">
- 七夕专属福利券
+ <view class="title flex">
+ {{item.couponName||'-'}}
+ <!-- <radio :checked="cache_coupon.id===item.id"
+ v-if="source==='shopping'"
+ class="select-coupon"></radio> -->
+ <view :style="{ 'margin-right': '20rpx'}" v-if="source==='shopping'"
+ class="component-radio m-l-a" :class="[cache_coupon.id===item.id?'cur':'']">
+
+ </view>
+
</view>
<view class="time">
- 有效期至2024-07-26 09:58:30
+ <!-- {{item.effectiveStart&&(item.effectiveStart+' 生效,') || ''}} -->
+ {{item.effectiveEnd&&('有效期至 '+item.effectiveEnd) || '长久有效'}}
</view>
+ </view>
+ <view class="img-out">
+
</view>
</view>
<view class="tip">
- <span class="t-red">*</span>此券每人限领1张。仅限用于花满芜鲜花交易平台鲜切花花款满额使用,不可与其他优惠同享、不可叠加使用
+ <span
+ class="t-red">*</span>{{item.couponDescription || '此券每人限领1张。仅限用于花满芫鲜花交易平台鲜切花花款满额使用,不可与其他优惠同享、不可叠加使用'}}
</view>
</view>
</view>
- <view style="min-height: 130rpx;"></view>
- <view class="bottom-button" @click="getCoupon">领取优惠券</view>
+ <view style="min-height: 130rpx;" v-if="source!=='shopping'"></view>
+ <view class="bottom-button" v-if="source!=='shopping'" @click="getCoupon">领取优惠券</view>
</view>
</template>
<script>
+ import {
+ mapState
+ } from 'vuex'
export default {
data() {
return {
@@ -58,18 +79,77 @@
query: {
status: 'unused'
},
- list: []
+ list: [],
+ source: '',
+ paymoney: -1
+
}
},
- async onLoad() {
- this.listApi = '/api/v2/coupon/app' + `/mine/${this.query.status}/list`
+ async onLoad(options) {
+ if (options.source) {
+ this.source = options.source || ''
+ }
+ if (options.paymoney) {
+ this.paymoney = parseFloat(options.paymoney).toFixed(2)
+ }
+ if (this.source === 'shopping') {
+ //只展示可用的
+ this.page.size = 100
+ this.listApi = '/api/v2/coupon/app' + `/mine/unused/list`
+
+ } else {
+ this.listApi = '/api/v2/coupon/app' + `/mine/${this.query.status}/list`
+
+ }
await this.$store.dispatch('sign_clear', 'coupon')
this.getList()
},
-
+ onReachBottom() {
+ this.getMore()
+ },
methods: {
+ async selectCoupon(item) {
+ if (this.source == 'shopping') {
+ if (this.cache_coupon.id === item.id) {
+ await this.$message.confirm('是否取消使用此优惠券')
+ await this.$store.dispatch('cache_coupon_select', {})
+ uni.navigateBack()
+ return
+ }
+ console.log('paymoney',this.paymoney)
+ if (this.paymoney >= 0) {
+ //判断是否可以选择使用
+ if (item.couponDiscountType === 'zero') {
+ // if (this.cache_coupon.couponDiscountValue > this.paymoney) {
+ // this.$message.showToast('订单价格小于优惠券优惠额度')
+ // return
+ // }
+ } else if (item.minOrderAmount && item.minOrderAmount > 0) {
+ // if (this.cache_coupon.minOrderAmount > this.paymoney) {
+ // this.$message.showToast('订单价格')
+ // return
+ // }
+ if (this.paymoney < item.minOrderAmount) {
+ this.$message.showToast('订单价格不满足使用条件')
+ this.$nextTick(()=>{
+ this.$forceUpdate()
+ })
+ return
+ }
+ } else {
+ // if (this.cache_coupon.couponDiscountValue > this.paymoney) {
+ // this.$message.showToast('订单价格小于优惠券优惠额度')
+ // return
+ // }
+ }
+ }
+ await this.$store.dispatch('cache_coupon_select', item)
+ uni.navigateBack()
+ }
+ },
changeTab(flg) {
+ this.flg = '' + flg
this.query.status = this.tabs[flg].status
this.listApi = '/api/v2/coupon/app' + `/mine/${this.query.status}/list`
this.refreshList()
@@ -91,11 +171,21 @@
uni.stopPullDownRefresh()
},
+ computed: {
+ ...mapState({
+ cache_coupon: state => {
+ return state.cache.coupon || {}
+ },
+ cache_goods: state => {
+ return state.cache.goods || []
+ },
+ }),
+ }
}
</script>
<style lang="scss" scoped>
- @import './coupon.scss';
+ @import './coupon.scss';
.coupon-container {
@@ -109,7 +199,7 @@
}
}
-
+
.bottom-button {
width: 690rpx;
height: 90rpx;
@@ -124,6 +214,8 @@
color: #20613D;
text-align: center;
line-height: 90rpx;
+ z-index: 99;
+ background-color: #fbfbfb;
}
}
</style>
\ No newline at end of file
--
Gitblit v1.9.3