|
|
|
@ -3,11 +3,12 @@ |
|
|
|
namespace App\Entities\Invoices; |
|
|
|
|
|
|
|
use App\Entities\Projects\Project; |
|
|
|
use App\Entities\Users\User; |
|
|
|
use Illuminate\Database\Eloquent\Model; |
|
|
|
|
|
|
|
class Invoice extends Model |
|
|
|
{ |
|
|
|
protected $guarded = ['id','created_at','updated_at']; |
|
|
|
protected $guarded = ['id', 'created_at', 'updated_at']; |
|
|
|
|
|
|
|
protected $casts = ['items' => 'array']; |
|
|
|
|
|
|
|
@ -21,13 +22,18 @@ class Invoice extends Model |
|
|
|
return $this->belongsTo(Project::class); |
|
|
|
} |
|
|
|
|
|
|
|
public function creator() |
|
|
|
{ |
|
|
|
return $this->belongsTo(User::class); |
|
|
|
} |
|
|
|
|
|
|
|
public function generateNewNumber() |
|
|
|
{ |
|
|
|
$prefix = date('ym'); |
|
|
|
|
|
|
|
$lastInvoice = $this->orderBy('number', 'desc')->first(); |
|
|
|
|
|
|
|
if (!is_null($lastInvoice)) { |
|
|
|
if ( ! is_null($lastInvoice)) { |
|
|
|
$lastInvoiceNo = $lastInvoice->number; |
|
|
|
if (substr($lastInvoiceNo, 0, 4) == $prefix) { |
|
|
|
return ++$lastInvoiceNo; |
|
|
|
|