payment = $payment; $this->company = $company; } /** * Handle the event. * * @param object $event * @return void */ public function handle() { MultiDB::setDB($this->company->db); $invoices = $this->payment->invoices()->get(); $client = $this->payment->client; $invoices->each(function ($invoice) { if ($invoice->pivot->amount > 0) { $invoice->status_id = Invoice::STATUS_SENT; $invoice->balance = $invoice->pivot->amount; $invoice->save(); } }); UpdateCompanyLedgerWithPayment::dispatchNow($this->payment, ($this->payment->amount), $this->company); $client->service() ->updateBalance($this->payment->amount) ->updatePaidToDate($this->payment->amount*-1) ->save(); } }