Files
sam-api/app/Models/Permissions/PermissionOverride.php
hskwon cc206fdbed style: Laravel Pint 코드 포맷팅 적용
- PSR-12 스타일 가이드 준수
- 302개 파일 스타일 이슈 자동 수정
- 코드 로직 변경 없음 (포맷팅만)
2025-11-06 17:45:49 +09:00

42 lines
1.0 KiB
PHP

<?php
namespace App\Models\Permissions;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
use Spatie\Permission\Models\Permission as SpatiePermission;
class PermissionOverride extends Model
{
use SoftDeletes;
protected $table = 'permission_overrides';
protected $guarded = ['id'];
protected $casts = [
'tenant_id' => 'int',
'model_id' => 'int',
'permission_id' => 'int',
'effect' => 'int', // 1=ALLOW, -1=DENY
'effective_from' => 'datetime',
'effective_to' => 'datetime',
];
/**
* 예외가 걸린 주체(User, Department 등)
* model_type, model_id를 사용하는 morphTo
*/
public function model()
{
// morphTo(relationshipName, type, id)
return $this->morphTo('model', 'model_type', 'model_id');
}
/** 연결된 Spatie Permission */
public function permission()
{
return $this->belongsTo(SpatiePermission::class, 'permission_id');
}
}