From 632205fb6cb2191022592a2eb8b084e33067c204 Mon Sep 17 00:00:00 2001 From: tokumeikoi Date: Sat, 26 Feb 2022 00:42:14 +0800 Subject: [PATCH] update: fix onetime refund issue --- app/Services/OrderService.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/Services/OrderService.php b/app/Services/OrderService.php index d2fe504c..30f88394 100644 --- a/app/Services/OrderService.php +++ b/app/Services/OrderService.php @@ -163,7 +163,13 @@ class OrderService private function getSurplusValueByOneTime(User $user, Order $order) { - $plan = Plan::find($user->plan_id); + $lastOneTimeOrder = Order::where('user_id', $user->id) + ->where('period', 'onetime') + ->where('status', 3) + ->orderBy('id', 'DESC') + ->first(); + if (!$lastOneTimeOrder) return; + $plan = Plan::find($lastOneTimeOrder->plan_id); $trafficUnitPrice = $plan->onetime_price / $plan->transfer_enable; if ($user->discount && $trafficUnitPrice) { $trafficUnitPrice = $trafficUnitPrice - ($trafficUnitPrice * $user->discount / 100);