2016-05-01 21:30:39 +02:00
|
|
|
<?php namespace App\Http\Requests;
|
|
|
|
|
2016-06-06 18:04:57 +02:00
|
|
|
use App\Models\Invoice;
|
|
|
|
|
2016-05-01 21:30:39 +02:00
|
|
|
class InvoiceRequest extends EntityRequest {
|
|
|
|
|
|
|
|
protected $entityType = ENTITY_INVOICE;
|
|
|
|
|
|
|
|
public function entity()
|
|
|
|
{
|
2016-05-01 22:55:13 +02:00
|
|
|
$invoice = parent::entity();
|
2016-06-06 18:04:57 +02:00
|
|
|
|
|
|
|
// support loading an invoice by its invoice number
|
|
|
|
if ($this->invoice_number && ! $invoice) {
|
|
|
|
$invoice = Invoice::scope()
|
|
|
|
->whereInvoiceNumber($this->invoice_number)
|
|
|
|
->withTrashed()
|
|
|
|
->firstOrFail();
|
|
|
|
}
|
2016-06-07 16:39:18 +02:00
|
|
|
|
2016-05-05 09:15:51 +02:00
|
|
|
// eager load the invoice items
|
|
|
|
if ($invoice && ! $invoice->relationLoaded('invoice_items')) {
|
2016-05-01 22:55:13 +02:00
|
|
|
$invoice->load('invoice_items');
|
2016-05-01 21:30:39 +02:00
|
|
|
}
|
2016-06-06 18:04:57 +02:00
|
|
|
|
2016-05-01 22:55:13 +02:00
|
|
|
return $invoice;
|
2016-05-01 21:30:39 +02:00
|
|
|
}
|
2016-05-01 22:55:13 +02:00
|
|
|
|
2016-06-06 18:04:57 +02:00
|
|
|
}
|