Files
2026-09-03 12:21:17 +02:00

45 lines
1.2 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
/**
* Wyposażenie z katalogów (legacy seg_equipments). Typ rozróżniany przez
* EQU_TYPE_ID (sys_dictionaries): 13=kable (site206); 207/208 dołożą kolejne.
* Database-first na bazie `softspm`.
*/
class Equipment extends Model
{
protected $connection = 'softspm';
protected $table = 'seg_equipments';
protected $primaryKey = 'EQU_ID';
public $timestamps = false;
protected $guarded = [];
public function manufacturer(): BelongsTo
{
return $this->belongsTo(Manufacturer::class, 'EQU_MCF_ID', 'MCF_ID');
}
public function files(): HasMany
{
return $this->hasMany(EquipmentFile::class, 'EQF_EQU_ID', 'EQU_ID');
}
/** Tylko widoczne (EQU_STATUS='1', nieusunięte logicznie). */
public function scopeVisible(Builder $q): Builder
{
return $q->where('EQU_STATUS', '1');
}
/** Filtr po rodzaju wyposażenia (EQU_TYPE_ID). */
public function scopeOfType(Builder $q, int $typeId): Builder
{
return $q->where('EQU_TYPE_ID', $typeId);
}
}