fix:테넌트 영구삭제 시 역할 하위 참조 데이터 선 삭제
This commit is contained in:
@@ -132,6 +132,14 @@ public function forceDeleteTenant(int $id): bool
|
||||
$tenant->users()->detach(); // user_tenants 관계 삭제
|
||||
$tenant->departments()->forceDelete(); // 부서 영구 삭제
|
||||
$tenant->menus()->forceDelete(); // 메뉴 영구 삭제
|
||||
|
||||
// 역할 삭제 전 하위 참조 데이터 정리
|
||||
$roleIds = $tenant->roles()->pluck('id');
|
||||
if ($roleIds->isNotEmpty()) {
|
||||
DB::table('user_roles')->whereIn('role_id', $roleIds)->delete();
|
||||
DB::table('role_menu_permissions')->whereIn('role_id', $roleIds)->delete();
|
||||
DB::table('role_has_permissions')->whereIn('role_id', $roleIds)->delete();
|
||||
}
|
||||
$tenant->roles()->forceDelete(); // 역할 영구 삭제
|
||||
|
||||
// 3. 테넌트 영구 삭제
|
||||
|
||||
Reference in New Issue
Block a user