조직도 중심 메인 화면 샘플 구성

This commit is contained in:
hyunho
2026-03-25 10:50:28 +09:00
parent 3b4169d301
commit 00ca43e4cd
3 changed files with 394 additions and 231 deletions

129
frontend/public/index.html Executable file → Normal file
View File

@@ -3,77 +3,84 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>MH Dashboard Hub</title>
<title>MH 조직현황 대시보드</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=SUIT:wght@400;500;700;800&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Pretendard:wght@400;600;700;900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="/styles.css">
</head>
<body>
<div class="app-shell">
<section class="panel hero" id="login-panel">
<div class="hero-copy">
<p class="eyebrow">Intranet Preview</p>
<h1>MH Dashboard Hub</h1>
<p class="hero-text">
현재 단계에서는 화면상 로그인만 우선 적용합니다. 로그인 후 조직도 레거시 화면과
서버 준비 상태를 한 곳에서 확인할 수 있습니다.
</p>
<section id="login-panel" class="login-screen">
<div class="login-hero">
<p class="eyebrow">MH Dashboard</p>
<h1>조직도를 기준으로<br>메인 화면을 구성합니다.</h1>
<p class="hero-text">
현재는 조직도 모듈이 메인 화면입니다. 이후 다른 기능이 합쳐지더라도
같은 헤더와 같은 화면 체계 안에서 확장될 수 있도록 구조를 먼저 맞춥니다.
</p>
<div class="hero-points">
<span>API 기반 조직 데이터</span>
<span>고정 헤더 구조</span>
<span>확장 가능한 메인 레이아웃</span>
</div>
<form id="login-form" class="login-card">
<label>
<span>아이디</span>
<input name="username" type="text" placeholder="예: admin" required>
</label>
<label>
<span>비밀번호</span>
<input name="password" type="password" placeholder="아무 값이나 입력" required>
</label>
<button type="submit">대시보드 입장</button>
<p id="login-message" class="helper-text">사내망용 임시 로그인 화면입니다.</p>
</form>
</section>
</div>
<section id="dashboard-panel" class="hidden">
<header class="topbar">
<div>
<p class="eyebrow">Internal Dashboard</p>
<h2>조직 관리 허브</h2>
<form id="login-form" class="login-card">
<div class="login-card-head">
<p class="eyebrow">Preview Login</p>
<h2>조직도 메인 진입</h2>
</div>
<label>
<span>아이디</span>
<input name="username" type="text" placeholder="예: admin" required>
</label>
<label>
<span>비밀번호</span>
<input name="password" type="password" placeholder="아무 값이나 입력" required>
</label>
<button type="submit">메인 화면 열기</button>
<p id="login-message" class="helper-text">사내망 시연용 임시 로그인입니다.</p>
</form>
</section>
<section id="dashboard-panel" class="dashboard-shell hidden">
<header class="dashboard-header">
<div class="brand-block">
<p class="eyebrow">MH Dashboard</p>
<h2>조직현황 메인</h2>
</div>
<div class="header-center">
<button class="nav-pill active" type="button">조직도</button>
<span class="nav-pill muted">추가기능 준비중</span>
<span class="nav-pill muted">추가기능 준비중</span>
<span class="nav-pill muted">추가기능 준비중</span>
</div>
<div class="header-actions">
<span id="health-status" class="status-badge">서버 상태 확인 중</span>
<span id="user-badge" class="user-badge"></span>
<button id="logout-btn" class="ghost-button" type="button">로그아웃</button>
</div>
</header>
<main class="dashboard-main">
<section class="main-stage">
<div class="stage-topline">
<div>
<p class="stage-label">Main View</p>
<h3>조직도 메인 화면 샘플</h3>
</div>
<a class="stage-link" href="/legacy/organization" target="_blank" rel="noreferrer">새 창으로 열기</a>
</div>
<div class="topbar-actions">
<span id="user-badge" class="badge"></span>
<button id="logout-btn" class="secondary">로그아웃</button>
<div class="stage-frame">
<iframe src="/legacy/organization" title="조직도 메인 화면"></iframe>
</div>
</header>
</section>
</main>
</section>
<main class="grid">
<article class="panel card">
<p class="eyebrow">Legacy Module</p>
<h3>조직도 관리</h3>
<p>기존 단일 HTML 조직도 도구를 보존한 상태로 연결했습니다.</p>
<a class="primary-link" href="/organization.html">레거시 조직도 열기</a>
</article>
<article class="panel card">
<p class="eyebrow">API Readiness</p>
<h3>서버 상태</h3>
<p id="health-status">서버 상태를 확인하는 중입니다.</p>
<button id="refresh-health-btn" class="secondary">상태 새로고침</button>
</article>
<article class="panel card">
<p class="eyebrow">Roadmap</p>
<h3>다음 단계</h3>
<ul class="roadmap">
<li>프로필 사진 업로드 API 연결</li>
<li>좌석 배치도 좌표 저장 기능 연결</li>
<li>월말 스냅샷 자동화</li>
</ul>
</article>
</main>
</section>
</div>
<script src="/app.js"></script>
</body>
</html>