invoiceninja/app/Repositories/InvoiceRepository.php

38 lines
722 B
PHP
Raw Normal View History

2019-04-04 10:17:15 +11:00
<?php
namespace App\Repositories;
use App\Helpers\Invoice\InvoiceCalc;
2019-04-04 10:17:15 +11:00
use App\Models\Invoice;
use Illuminate\Http\Request;
/**
* InvoiceRepository
2019-04-04 10:17:15 +11:00
*/
class InvoiceRepository extends BaseRepository
{
2019-04-04 10:17:15 +11:00
public function getClassName()
{
return Invoice::class;
}
public function save(Request $request, Invoice $invoice) : ?Invoice
{
$invoice->fill($request->input());
2019-04-16 15:28:30 +10:00
2019-04-04 10:17:15 +11:00
$invoice->save();
2019-04-24 20:01:40 +10:00
$invoice_calc = new InvoiceCalc($invoice, $invoice->settings);
2019-04-16 15:28:30 +10:00
$invoice = $invoice_calc->build()->getInvoice();
//fire events here that cascading from the saving of an invoice
//ie. client balance update...
2019-04-04 10:17:15 +11:00
return $invoice;
}
}