105 lines
4.3 KiB
TypeScript
105 lines
4.3 KiB
TypeScript
"use client";
|
|
|
|
import { Button } from "@/components/ui/button";
|
|
import { RefreshCw, Users, Shield, Settings, BarChart3 } from "lucide-react";
|
|
|
|
/**
|
|
* 관리자 메인 페이지
|
|
*/
|
|
export default function AdminPage() {
|
|
return (
|
|
<div className="space-y-6">
|
|
{/* 페이지 헤더 */}
|
|
<div className="flex items-center justify-between">
|
|
<div>
|
|
<h1 className="text-2xl font-bold text-gray-900">관리자 대시보드</h1>
|
|
<p className="text-gray-600">시스템 관리 및 모니터링</p>
|
|
</div>
|
|
<Button variant="outline" className="gap-2">
|
|
<RefreshCw className="h-4 w-4" />
|
|
새로고침
|
|
</Button>
|
|
</div>
|
|
|
|
{/* 관리자 기능 카드들 */}
|
|
<div className="grid gap-6 md:grid-cols-2 lg:grid-cols-4">
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-blue-50">
|
|
<Users className="h-6 w-6 text-blue-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">사용자 관리</h3>
|
|
<p className="text-sm text-gray-600">사용자 계정 및 권한 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-green-50">
|
|
<Shield className="h-6 w-6 text-green-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">권한 관리</h3>
|
|
<p className="text-sm text-gray-600">메뉴 및 기능 권한 설정</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-purple-50">
|
|
<Settings className="h-6 w-6 text-purple-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">시스템 설정</h3>
|
|
<p className="text-sm text-gray-600">기본 설정 및 환경 구성</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-orange-50">
|
|
<BarChart3 className="h-6 w-6 text-orange-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">통계 및 리포트</h3>
|
|
<p className="text-sm text-gray-600">시스템 사용 현황 분석</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{/* 최근 활동 */}
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm">
|
|
<h3 className="mb-4 text-lg font-semibold">최근 관리자 활동</h3>
|
|
<div className="space-y-4">
|
|
<div className="flex items-center justify-between border-b border-gray-100 py-2 last:border-0">
|
|
<div>
|
|
<p className="font-medium text-gray-900">새로운 사용자 추가</p>
|
|
<p className="text-sm text-gray-600">김철수 사용자가 생성되었습니다.</p>
|
|
</div>
|
|
<span className="text-sm text-gray-500">2분 전</span>
|
|
</div>
|
|
<div className="flex items-center justify-between border-b border-gray-100 py-2 last:border-0">
|
|
<div>
|
|
<p className="font-medium text-gray-900">권한 변경</p>
|
|
<p className="text-sm text-gray-600">이영희 사용자의 권한이 수정되었습니다.</p>
|
|
</div>
|
|
<span className="text-sm text-gray-500">15분 전</span>
|
|
</div>
|
|
<div className="flex items-center justify-between border-b border-gray-100 py-2 last:border-0">
|
|
<div>
|
|
<p className="font-medium text-gray-900">시스템 설정 변경</p>
|
|
<p className="text-sm text-gray-600">비밀번호 정책이 업데이트되었습니다.</p>
|
|
</div>
|
|
<span className="text-sm text-gray-500">1시간 전</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|