Files
InvoiceShelf/app/Models/Note.php
Darko Gjorgjijoski 6b80b5f48d Change namespace
2024-01-27 23:53:20 +01:00

47 lines
996 B
PHP

<?php
namespace InvoiceShelf\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Note extends Model
{
use HasFactory;
protected $guarded = ['id'];
public function company()
{
return $this->belongsTo(Company::class);
}
public function scopeApplyFilters($query, array $filters)
{
$filters = collect($filters);
if ($filters->get('type')) {
$query->whereType($filters->get('type'));
}
if ($filters->get('search')) {
$query->whereSearch($filters->get('search'));
}
}
public function scopeWhereSearch($query, $search)
{
$query->where('name', 'LIKE', '%'.$search.'%');
}
public function scopeWhereType($query, $type)
{
return $query->where('type', $type);
}
public function scopeWhereCompany($query)
{
$query->where('notes.company_id', request()->header('company'));
}
}