summaryrefslogtreecommitdiff
path: root/components/permissions/role-permission-manager.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'components/permissions/role-permission-manager.tsx')
-rw-r--r--components/permissions/role-permission-manager.tsx32
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}
>
권한 저장