Files
sam-manage/app/Http/Controllers/UserPermissionController.php
hskwon 39ed2ac3e3 feat(user-modal): 사용자 정보 모달 및 컨텍스트 메뉴 확장
사용자 모달 기능:
- 사용자 정보 모달 팝업 (조회/삭제/수정)
- 권한 요약 정보 (Web/API 권한 카운트)
- 2x2 그리드 레이아웃 (테넌트, 역할, 부서, 권한)
- 테이블 행 클릭으로 모달 열기
- 권한 관리 링크 클릭 시 해당 사용자 자동 선택

컨텍스트 메뉴 확장:
- permission-analyze 페이지 사용자 이름에 컨텍스트 메뉴
- user-permissions 페이지 사용자 버튼에 컨텍스트 메뉴
- 사용자 모달 내 테넌트 칩에 컨텍스트 메뉴
- 헤더 테넌트 배지에 컨텍스트 메뉴
- 테넌트 메뉴에 "이 테넌트로 전환" 기능 추가
2025-11-27 20:05:27 +09:00

46 lines
1.3 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Services\UserPermissionService;
use Illuminate\Http\Request;
class UserPermissionController extends Controller
{
protected UserPermissionService $userPermissionService;
public function __construct(UserPermissionService $userPermissionService)
{
$this->userPermissionService = $userPermissionService;
}
/**
* 사용자 권한 관리 메인 페이지
*/
public function index(Request $request)
{
$tenantId = session('selected_tenant_id');
$selectedUserId = $request->query('user_id');
// 테넌트 미선택 또는 전체 선택 시
if (! $tenantId || $tenantId === 'all') {
return view('user-permissions.index', [
'users' => collect(),
'requireTenant' => true,
'selectedTenantId' => $tenantId,
'selectedUserId' => $selectedUserId,
]);
}
// 특정 테넌트 선택 시: 해당 테넌트의 사용자 목록 조회
$users = $this->userPermissionService->getUsersByTenant($tenantId);
return view('user-permissions.index', [
'users' => $users,
'requireTenant' => false,
'selectedTenantId' => $tenantId,
'selectedUserId' => $selectedUserId,
]);
}
}