170 lines
8.1 KiB
TypeScript
170 lines
8.1 KiB
TypeScript
import { Users, Shield, Settings, BarChart3, Palette, Layout, Database, Package } from "lucide-react";
|
|
import Link from "next/link";
|
|
/**
|
|
* 관리자 메인 페이지
|
|
*/
|
|
export default function AdminPage() {
|
|
return (
|
|
<div className="min-h-screen bg-gray-50">
|
|
<div className="container mx-auto p-6 space-y-6">
|
|
{/* 관리자 기능 카드들 */}
|
|
<div className="mx-auto max-w-7xl grid gap-6 md:grid-cols-2 lg:grid-cols-3">
|
|
<Link href="/admin/userMng" className="block">
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm transition-colors hover:bg-gray-50">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-gradient-to-br from-blue-200 to-blue-300">
|
|
<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>
|
|
</Link>
|
|
|
|
<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-gradient-to-br from-emerald-200 to-emerald-300">
|
|
<Shield className="h-6 w-6 text-emerald-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-gradient-to-br from-violet-200 to-violet-300">
|
|
<Settings className="h-6 w-6 text-violet-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-gradient-to-br from-amber-200 to-amber-300">
|
|
<BarChart3 className="h-6 w-6 text-amber-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">통계 및 리포트</h3>
|
|
<p className="text-sm text-gray-600">시스템 사용 현황 분석</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<Link href="/admin/screenMng" className="block">
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm transition-colors hover:bg-gray-50">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-gradient-to-br from-indigo-200 to-indigo-300">
|
|
<Palette className="h-6 w-6 text-indigo-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">화면관리</h3>
|
|
<p className="text-sm text-gray-600">드래그앤드롭으로 화면 설계 및 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
</div>
|
|
|
|
{/* 표준 관리 섹션 */}
|
|
<div className="mx-auto max-w-7xl space-y-4">
|
|
<h2 className="text-xl font-semibold text-gray-900">표준 관리</h2>
|
|
<div className="grid gap-6 md:grid-cols-2 lg:grid-cols-4">
|
|
<Link href="/admin/standards" className="block">
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm transition-colors hover:bg-gray-50">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-gradient-to-br from-teal-200 to-teal-300">
|
|
<Database className="h-6 w-6 text-teal-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">웹타입 관리</h3>
|
|
<p className="text-sm text-gray-600">입력 컴포넌트 웹타입 표준 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
<Link href="/admin/templates" className="block">
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm transition-colors hover:bg-gray-50">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-gradient-to-br from-emerald-200 to-emerald-300">
|
|
<Layout className="h-6 w-6 text-emerald-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">템플릿 관리</h3>
|
|
<p className="text-sm text-gray-600">화면 디자이너 템플릿 표준 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
<Link href="/admin/tableMng" className="block">
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm transition-colors hover:bg-gray-50">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-gradient-to-br from-cyan-200 to-cyan-300">
|
|
<Database className="h-6 w-6 text-cyan-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">테이블 관리</h3>
|
|
<p className="text-sm text-gray-600">데이터베이스 테이블 및 웹타입 매핑</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
<Link href="/admin/components" className="block">
|
|
<div className="rounded-lg border bg-white p-6 shadow-sm transition-colors hover:bg-gray-50">
|
|
<div className="flex items-center gap-4">
|
|
<div className="flex h-12 w-12 items-center justify-center rounded-lg bg-gradient-to-br from-violet-200 to-violet-300">
|
|
<Package className="h-6 w-6 text-violet-600" />
|
|
</div>
|
|
<div>
|
|
<h3 className="font-semibold text-gray-900">컴포넌트 관리</h3>
|
|
<p className="text-sm text-gray-600">화면 디자이너 컴포넌트 표준 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
</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>
|
|
</div>
|
|
);
|
|
}
|