Files
sam-manage/app/Models/Permissions/Role.php
hskwon 575e9df431 feat: Phase 4-1 테넌트 관리 백엔드 구현
- TenantService 생성 (CRUD, 통계, 복원/영구삭제)
- API Controller 구현 (HTMX 요청 감지, HTML/JSON 이중 응답)
- FormRequest 검증 (StoreTenantRequest, UpdateTenantRequest)
- Tenant 모델 확장 (17개 필드, 관계 설정, accessor)
- Department, Menu, Role 모델 복사 (admin → mng)
- Web Controller 수정 (index/create/edit 화면)
- MIGRATION_PLAN.md 작성 (HTMX + API 아키텍처)
2025-11-21 14:46:13 +09:00

44 lines
841 B
PHP

<?php
namespace App\Models\Permissions;
use App\Models\Commons\IdeHelperRole;
use App\Models\Members\UserRole;
use App\Models\Tenants\Tenant;
use Illuminate\Database\Eloquent\Model;
/**
* @mixin IdeHelperRole
*/
class Role extends Model
{
protected $fillable = [
'tenant_id', 'name', 'description',
];
public function menuPermissions()
{
return $this->hasMany(RoleMenuPermission::class, 'role_id');
}
public function permissions()
{
return $this->belongsToMany(
Permission::class,
'role_has_permissions',
'role_id',
'permission_id'
);
}
public function tenant()
{
return $this->belongsTo(Tenant::class);
}
public function userRoles()
{
return $this->hasMany(UserRole::class);
}
}