From ad2fcf6b0d015a91947cbd54999dda0442e46d3f Mon Sep 17 00:00:00 2001 From: David Bomba Date: Wed, 30 Jun 2021 18:28:30 +1000 Subject: [PATCH] Fixes for check data script --- app/Console/Commands/CheckData.php | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/app/Console/Commands/CheckData.php b/app/Console/Commands/CheckData.php index b7b00830b679..b6039bdb91f6 100644 --- a/app/Console/Commands/CheckData.php +++ b/app/Console/Commands/CheckData.php @@ -321,10 +321,17 @@ class CheckData extends Command foreach ($client->invoices()->where('is_deleted', false)->where('status_id', '>', 1)->get() as $invoice) { - $total_amount = $invoice->payments()->where('is_deleted', false)->whereIn('status_id', [Payment::STATUS_COMPLETED, Payment:: STATUS_PENDING, Payment::STATUS_PARTIALLY_REFUNDED, Payment::STATUS_REFUNDED])->get()->sum('pivot.amount'); - $total_refund = $invoice->payments()->where('is_deleted', false)->whereIn('status_id', [Payment::STATUS_COMPLETED, Payment:: STATUS_PENDING, Payment::STATUS_PARTIALLY_REFUNDED, Payment::STATUS_REFUNDED])->get()->sum('pivot.refunded'); + // $total_amount = $invoice->payments()->where('is_deleted', false)->whereIn('status_id', [Payment::STATUS_COMPLETED, Payment:: STATUS_PENDING, Payment::STATUS_PARTIALLY_REFUNDED, Payment::STATUS_REFUNDED])->get()->sum('pivot.amount'); + // $total_refund = $invoice->payments()->where('is_deleted', false)->whereIn('status_id', [Payment::STATUS_COMPLETED, Payment:: STATUS_PENDING, Payment::STATUS_PARTIALLY_REFUNDED, Payment::STATUS_REFUNDED])->get()->sum('pivot.refunded'); + + // $total_invoice_payments += ($total_amount - $total_refund); + + $total_invoice_payments += $invoice->payments() + ->where('is_deleted', false)->whereIn('status_id', [Payment::STATUS_COMPLETED, Payment:: STATUS_PENDING, Payment::STATUS_PARTIALLY_REFUNDED, Payment::STATUS_REFUNDED]) + ->selectRaw('sum(paymentables.amount - paymentables.refunded) as p') + ->pluck('p') + ->first(); - $total_invoice_payments += ($total_amount - $total_refund); } //commented IN 27/06/2021 - sums ALL client payments AND the unapplied amounts to match the client paid to date @@ -339,7 +346,12 @@ class CheckData extends Command // 10/02/21 foreach ($client->payments as $payment) { - $credit_total_applied += $payment->paymentables()->where('paymentable_type', App\Models\Credit::class)->get()->sum(DB::raw('amount')); + // $credit_total_applied += $payment->paymentables()->where('paymentable_type', App\Models\Credit::class)->get()->sum(DB::raw('amount')); + $credit_total_applied += $payment->paymentables() + ->where('paymentable_type', App\Models\Credit::class) + ->selectRaw('sum(paymentables.amount - paymentables.refunded) as p') + ->pluck('p') + ->first(); } if ($credit_total_applied < 0) { @@ -377,6 +389,7 @@ class CheckData extends Command $total_credit = $invoice->credits()->get()->sum('amount'); $total_paid = $total_amount - $total_refund; + $calculated_paid_amount = $invoice->amount - $invoice->balance - $total_credit; if ((string)$total_paid != (string)($invoice->amount - $invoice->balance - $total_credit)) {