Teren-app/app/Models/ClientCase.php
Simon Pocrnjič 09fcac7cb5 search fix
2024-11-21 21:08:47 +01:00

63 lines
1.3 KiB
PHP

<?php
namespace App\Models;
use App\Traits\Uuid;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Builder;
use Laravel\Scout\Searchable;
class ClientCase extends Model
{
/** @use HasFactory<\Database\Factories\ClientCaseFactory> */
use HasFactory;
use Uuid;
use Searchable;
protected $fillable = [
'client_id'
];
protected $hidden = [
'id',
'client_id',
'person_id'
];
protected function makeAllSearchableUsing(Builder $query): Builder
{
return $query->with('person');
}
public function toSearchableArray(): array
{
return [
'person.full_name' => ''
];
}
public function client(): BelongsTo
{
return $this->belongsTo(\App\Models\Client::class);
}
public function person(): BelongsTo
{
return $this->belongsTo(\App\Models\Person\Person::class);
}
public function contracts(): HasMany
{
return $this->hasMany(\App\Models\Contract::class);
}
public function activities(): HasMany
{
return $this->hasMany(\App\Models\Activity::class);
}
}