37cac72085
- Docker/K8s 배포 설정을 pipeline-backend/pipeline-front로 통일 - 네임스페이스, 서비스, PVC 등 k8s 리소스명 pipeline-* 로 변경 - AI 에이전트 관리 기능 추가 (에이전트, 그룹, 프로바이더, 대화, API 키, 지식베이스) - 장비 연결 관리 기능 추가 (PLC/Modbus/OPC-UA/MQTT) - 배치 스케줄러에 AI agent/device collection/crawling 타입 추가 - 배치 편집 UI 개선 (6가지 실행 방식 지원) - 회사별 페이지(COMPANY_*) 제거 및 AdminPageRenderer 최적화 - 메뉴 재구성: 장비 연결 관리 시스템관리로 이동, 에이전트 오케스트레이션으로 개명 - ai-assistant 디렉토리 제거 (backend-node로 통합) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
228 lines
11 KiB
TypeScript
228 lines
11 KiB
TypeScript
import { Users, Shield, Settings, BarChart3, Palette, Layout, Database, Package, Building2, Bot } from "lucide-react";
|
|
import Link from "next/link";
|
|
import { GlobalFileViewer } from "@/components/GlobalFileViewer";
|
|
|
|
/**
|
|
* 관리자 메인 페이지
|
|
*/
|
|
export default function AdminPage() {
|
|
return (
|
|
<div className="bg-background min-h-screen">
|
|
<div className="w-full max-w-none space-y-16 px-4 pt-12 pb-16">
|
|
|
|
{/* 주요 관리 기능 */}
|
|
<div className="mx-auto max-w-7xl space-y-10">
|
|
<div className="mb-8 text-center">
|
|
<h2 className="text-foreground mb-2 text-2xl font-bold">주요 관리 기능</h2>
|
|
<p className="text-muted-foreground">시스템의 핵심 관리 기능들을 제공합니다</p>
|
|
</div>
|
|
<div className="grid gap-6 md:grid-cols-2 lg:grid-cols-3">
|
|
<Link href="/admin/userMng" className="block">
|
|
<div className="bg-card hover:bg-muted rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Users className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">사용자 관리</h3>
|
|
<p className="text-muted-foreground text-sm">사용자 계정 및 권한 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
{/* <div className="bg-card rounded-lg border p-6 shadow-sm">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-success/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Shield className="text-success h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">권한 관리</h3>
|
|
<p className="text-muted-foreground text-sm">메뉴 및 기능 권한 설정</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="bg-card rounded-lg border p-6 shadow-sm">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Settings className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">시스템 설정</h3>
|
|
<p className="text-muted-foreground text-sm">기본 설정 및 환경 구성</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div className="bg-card rounded-lg border p-6 shadow-sm">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-warning/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<BarChart3 className="text-warning h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">통계 및 리포트</h3>
|
|
<p className="text-muted-foreground text-sm">시스템 사용 현황 분석</p>
|
|
</div>
|
|
</div>
|
|
</div> */}
|
|
|
|
<Link href="/admin/screenMng" className="block">
|
|
<div className="bg-card hover:bg-muted rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Palette className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">화면관리</h3>
|
|
<p className="text-muted-foreground text-sm">드래그앤드롭으로 화면 설계 및 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
<Link href="/admin/aiAssistant" className="block">
|
|
<div className="bg-card hover:bg-muted rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Bot className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">AI 어시스턴트</h3>
|
|
<p className="text-muted-foreground text-sm">AI 채팅 및 LLM 연동 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
</div>
|
|
</div>
|
|
|
|
{/* 표준 관리 섹션 */}
|
|
<div className="mx-auto max-w-7xl space-y-10">
|
|
<div className="mb-8 text-center">
|
|
<h2 className="text-foreground mb-2 text-2xl font-bold">표준 관리</h2>
|
|
<p className="text-muted-foreground">시스템 표준 및 컴포넌트를 통합 관리합니다</p>
|
|
</div>
|
|
<div className="grid gap-6 md:grid-cols-2 lg:grid-cols-4">
|
|
{/* <Link href="/admin/standards" className="block h-full">
|
|
<div className="bg-card hover:bg-muted h-full rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Database className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">웹타입 관리</h3>
|
|
<p className="text-muted-foreground text-sm">입력 컴포넌트 웹타입 표준 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
<Link href="/admin/templates" className="block h-full">
|
|
<div className="bg-card hover:bg-muted h-full rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-success/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Layout className="text-success h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">템플릿 관리</h3>
|
|
<p className="text-muted-foreground text-sm">화면 디자이너 템플릿 표준 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link> */}
|
|
|
|
<Link href="/admin/tableMng" className="block h-full">
|
|
<div className="bg-card hover:bg-muted h-full rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Database className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">테이블 관리</h3>
|
|
<p className="text-muted-foreground text-sm">데이터베이스 테이블 및 웹타입 매핑</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
{/* <Link href="/admin/components" className="block h-full">
|
|
<div className="bg-card hover:bg-muted h-full rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Package className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">컴포넌트 관리</h3>
|
|
<p className="text-muted-foreground text-sm">화면 디자이너 컴포넌트 표준 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link> */}
|
|
</div>
|
|
</div>
|
|
|
|
{/* 빠른 액세스 */}
|
|
<div className="mx-auto max-w-7xl space-y-10">
|
|
<div className="mb-8 text-center">
|
|
<h2 className="text-foreground mb-2 text-2xl font-bold">빠른 액세스</h2>
|
|
<p className="text-muted-foreground">자주 사용하는 관리 기능에 빠르게 접근할 수 있습니다</p>
|
|
</div>
|
|
<div className="grid gap-6 md:grid-cols-3">
|
|
<Link href="/admin/menu" className="block">
|
|
<div className="bg-card hover:bg-muted rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Layout className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">메뉴 관리</h3>
|
|
<p className="text-muted-foreground text-sm">시스템 메뉴 및 네비게이션 설정</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
<Link href="/admin/automaticMng/exconList" className="block">
|
|
<div className="bg-card hover:bg-muted rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-success/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Database className="text-success h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">데이터 소스</h3>
|
|
<p className="text-muted-foreground text-sm">DB, API, 장비, 파일, 크롤링 등 외부 데이터 연결 관리</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
|
|
<Link href="/admin/systemMng/commonCodeList" className="block">
|
|
<div className="bg-card hover:bg-muted rounded-lg border p-6 shadow-sm transition-colors">
|
|
<div className="flex items-center gap-4">
|
|
<div className="bg-primary/10 flex h-12 w-12 items-center justify-center rounded-lg">
|
|
<Settings className="text-primary h-6 w-6" />
|
|
</div>
|
|
<div>
|
|
<h3 className="text-foreground font-semibold">공통 코드 관리</h3>
|
|
<p className="text-muted-foreground text-sm">시스템 공통 코드 및 설정</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</Link>
|
|
</div>
|
|
</div>
|
|
|
|
{/* 전역 파일 관리 */}
|
|
<div className="mx-auto max-w-7xl space-y-6">
|
|
<div className="mb-6 text-center">
|
|
<h2 className="text-foreground mb-2 text-2xl font-bold">전역 파일 관리</h2>
|
|
<p className="text-muted-foreground">모든 페이지에서 업로드된 파일들을 관리합니다</p>
|
|
</div>
|
|
<GlobalFileViewer />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|