diff options
Diffstat (limited to 'components/permissions/role-permission-manager.tsx')
| -rw-r--r-- | components/permissions/role-permission-manager.tsx | 32 |
1 files changed, 15 insertions, 17 deletions
diff --git a/components/permissions/role-permission-manager.tsx b/components/permissions/role-permission-manager.tsx index b229ec57..63961300 100644 --- a/components/permissions/role-permission-manager.tsx +++ b/components/permissions/role-permission-manager.tsx @@ -24,6 +24,7 @@ import { } from "@/components/ui/table"; import { toast } from "sonner"; import { assignPermissionsToRole, getRolePermissions } from "@/lib/permissions/service"; +import { RoleSelector } from "@/components/permissions/role-selector"; export function RolePermissionManager() { const [selectedRole, setSelectedRole] = useState<string>(""); @@ -31,9 +32,11 @@ export function RolePermissionManager() { const [selectedPermissions, setSelectedPermissions] = useState<Set<number>>(new Set()); const [loading, setLoading] = useState(false); + console.log(selectedRole) + useEffect(() => { if (selectedRole) { - loadRolePermissions(selectedRole); + loadRolePermissions(selectedRole.id); } }, [selectedRole]); @@ -56,7 +59,7 @@ export function RolePermissionManager() { try { setLoading(true); await assignPermissionsToRole( - parseInt(selectedRole), + parseInt(selectedRole.id), Array.from(selectedPermissions) ); toast.success("권한이 성공적으로 저장되었습니다."); @@ -97,21 +100,16 @@ export function RolePermissionManager() { <div className="space-y-6"> {/* 역할 선택 */} <div className="flex items-center gap-4"> - <Select value={selectedRole} onValueChange={setSelectedRole}> - <SelectTrigger className="w-[300px]"> - <SelectValue placeholder="역할 선택..." /> - </SelectTrigger> - <SelectContent> - <SelectItem value="1">EVCP Admin</SelectItem> - <SelectItem value="2">EVCP Manager</SelectItem> - <SelectItem value="3">EVCP User</SelectItem> - <SelectItem value="4">Partner Admin</SelectItem> - <SelectItem value="5">Partner User</SelectItem> - </SelectContent> - </Select> - - <Button - onClick={handleSave} + <RoleSelector + selectedRoleId={selectedRole?.id} + onRoleSelect={setSelectedRole} + placeholder="역할을 선택하세요..." + className='max-w-[400px]' + domain="evcp" // 선택사항: 특정 도메인만 필터링 + /> + + <Button + onClick={handleSave} disabled={!selectedRole || loading} > 권한 저장 |
