From e9312a42bd5778cfdbb6960d4ced18021d0d0782 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=9D=99?= Date: Wed, 15 Dec 2021 16:45:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E4=BC=98=E6=83=A0=E5=88=B8?= =?UTF-8?q?=E6=97=B6,=E8=BF=87=E6=BB=A4=E6=9C=AA=E5=BC=80=E5=A7=8B?= =?UTF-8?q?=E7=9A=84=E4=BC=98=E6=83=A0=E5=88=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Models/UserCoupon.php | 8 ++++++++ app/Services/CouponService.php | 2 +- app/Services/OrderService.php | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/Models/UserCoupon.php b/app/Models/UserCoupon.php index 1e732779..8bb91fff 100644 --- a/app/Models/UserCoupon.php +++ b/app/Models/UserCoupon.php @@ -65,6 +65,14 @@ class UserCoupon extends Model * 仅查询未使用的优惠券 */ public function scopeOnlyUnuse($query) + { + return $query->where('is_use', false)->where('use_end_at', '>', now()); + } + + /** + * 仅查询可用的优惠券 + */ + public function scopeOnlyAvailable($query) { $time = now(); diff --git a/app/Services/CouponService.php b/app/Services/CouponService.php index 1ffdbc8a..0e3ad802 100644 --- a/app/Services/CouponService.php +++ b/app/Services/CouponService.php @@ -18,7 +18,7 @@ class CouponService */ public function getAvailableCoupons(User $user, array $products): array { - $coupons = $user->coupons()->onlyUnuse()->get(); + $coupons = $user->coupons()->onlyAvailable()->get(); $coupons->load(['ranges' => function ($query) { $query->isEnable(); diff --git a/app/Services/OrderService.php b/app/Services/OrderService.php index 69e949bd..dae69620 100644 --- a/app/Services/OrderService.php +++ b/app/Services/OrderService.php @@ -72,7 +72,7 @@ class OrderService $coupon = null; if ($couponId) { - $coupon = $user->coupons()->onlyUnuse()->findOrFail($couponId); + $coupon = $user->coupons()->onlyAvailable()->findOrFail($couponId); } $mapProducts = $this->mapProducts($user, $products, $coupon);