radfusion/app/Models/DicomRoutingRule.php
2025-01-22 17:08:17 +06:00

48 lines
1.0 KiB
PHP

<?php
namespace App\Models;
use App\Domain\Rule\MatchCondition;
use App\Models\Traits\Active;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\HasOne;
class DicomRoutingRule extends BaseModel
{
use Active;
public function conditions(): HasMany
{
return $this->hasMany(DicomRuleCondition::class);
}
public function institute(): BelongsTo
{
return $this->belongsTo(Institute::class);
}
public function facility(): BelongsTo
{
return $this->belongsTo(Facility::class);
}
public function panel(): HasOne
{
return $this->hasOne(AssignmentPanel::class);
}
public function radiologist(): HasOne
{
return $this->hasOne(User::class, 'radiologist_id');
}
protected function casts(): array
{
return [
'is_active' => 'boolean',
'match_condition' => MatchCondition::class,
];
}
}