diff --git a/app/Console/Commands/CheckData.php b/app/Console/Commands/CheckData.php index 797d74f69066..34fc57a61452 100644 --- a/app/Console/Commands/CheckData.php +++ b/app/Console/Commands/CheckData.php @@ -84,6 +84,8 @@ class CheckData extends Command public function handle() { + $time_start = microtime(true); + $database_connection = $this->option('database') ? $this->option('database') : 'Connected to Default DB'; $fix_status = $this->option('fix') ? "Fixing Issues" : "Just checking issues "; @@ -107,6 +109,8 @@ class CheckData extends Command } $this->logMessage('Done: '.strtoupper($this->isValid ? Account::RESULT_SUCCESS : Account::RESULT_FAILURE)); + $this->logMessage('Total execution time in seconds: ' . (microtime(true) - $time_start)); + $errorEmail = config('ninja.error_email'); if ($errorEmail) { @@ -315,13 +319,24 @@ class CheckData extends Command Client::withTrashed()->where('is_deleted', 0)->cursor()->each(function ($client) use ($credit_total_applied) { $total_invoice_payments = 0; - foreach ($client->invoices()->where('is_deleted', false)->where('status_id', '>', 1)->get() as $invoice) { + //commented out 27/06/2021 - client paid to date always increments to the total amount the client has paid + // 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 += ($total_amount - $total_refund); + // } + + //commented IN 27/06/2021 - sums ALL client payments + $p = Payment::where('client_id', $client->id) + ->where('is_deleted', 0) + ->whereIn('status_id', [Payment::STATUS_COMPLETED, Payment:: STATUS_PENDING, Payment::STATUS_PARTIALLY_REFUNDED, Payment::STATUS_REFUNDED]); + + $total_amount = $p->sum('amount'); + $total_refund = $p->sum('refunded'); + + $total_invoice_payments += ($total_amount - $total_refund); // 10/02/21 foreach ($client->payments as $payment) {