get(); Log::info($groups->count()); // $groups = Group::where('id', 999)->get(); foreach ($groups as $group) { $originalTransferFees = (float)Transaction::where('type', TransactionType::TRANSFER_FEE)->whereIn('owner_id', $group->transactions->pluck('id'))->sum('service_charge'); $correctOriginalAmount = $group->transactions()->sum('original_amount'); $correctOriginalAmount += $originalTransferFees; $correctAmount = $group->transactions()->sum('amount'); $transferFees = $originalTransferFees / $group->currency_rate; $correctAmount += $transferFees; if ($group->original_amount != $correctOriginalAmount) { // $group->original_amount = $correctOriginalAmount; // $group->amount = $correctAmount; // $group->save(); Log::info("Update group id: " . $group->id . " correct original amount is: " . $correctOriginalAmount . " transfer fee is " . $originalTransferFees); } else { Log::info("No update for group id: " . $group->id); } } } }