update: fix onetime refund issue

This commit is contained in:
tokumeikoi 2022-02-26 00:42:14 +08:00
parent ebfba1b178
commit 632205fb6c

View File

@ -163,7 +163,13 @@ class OrderService
private function getSurplusValueByOneTime(User $user, Order $order) 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; $trafficUnitPrice = $plan->onetime_price / $plan->transfer_enable;
if ($user->discount && $trafficUnitPrice) { if ($user->discount && $trafficUnitPrice) {
$trafficUnitPrice = $trafficUnitPrice - ($trafficUnitPrice * $user->discount / 100); $trafficUnitPrice = $trafficUnitPrice - ($trafficUnitPrice * $user->discount / 100);