Files
docker_dev/crater/app/Models/Note.php
2025-09-20 16:11:47 +02:00

47 lines
990 B
PHP

<?php
namespace Crater\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'));
}
}