Files
QuantEngineByItz/src/dotnet/QuantEngine.Web/Pages/Admin/_AdminLayout.cshtml
T
kjh2064 1a06a01018
Validators (Pushes and Pull Requests) / Core Validators & Database Setup (push) Failing after 22s
Validators (Pushes and Pull Requests) / Security & Secrets (push) Successful in 12s
Validators (Pushes and Pull Requests) / Notify PR Results (push) Has been skipped
Validators (Pushes and Pull Requests) / UI & Storage Validation (push) Failing after 10s
Validators (Pushes and Pull Requests) / Database & Schema Validation (push) Successful in 13s
Validators (Pushes and Pull Requests) / WBS & Audit Validations (push) Has been skipped
Validators (Pushes and Pull Requests) / .NET Contracts (push) Has been skipped
Validators (Pushes and Pull Requests) / Calibration & Performance (push) Has been skipped
Validators (Pushes and Pull Requests) / Operational Report & Decision Packet (push) Has been skipped
Validators (Pushes and Pull Requests) / CI Workflow Lint (push) Failing after 10s
ui(wbs-ux): inject prototype gallery link to CSHTML server layout navigation menu
2026-07-25 11:50:34 +09:00

84 lines
4.8 KiB
Plaintext

@using Microsoft.Extensions.Configuration
@inject IConfiguration Configuration
@{
Layout = null;
var currentPath = Context.Request.Path.Value?.ToLowerInvariant() ?? "";
string NavActive(string href) => currentPath.StartsWith(href.ToLowerInvariant()) ? "active" : "";
var version = Configuration["AppVersion"] ?? "dev";
}
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>@ViewData["Title"] - QuantEngine ERP</title>
<!-- Tabler CSS Core -->
<link href="https://cdn.jsdelivr.net/npm/@@tabler/core@1.0.0/dist/css/tabler.min.css" rel="stylesheet" />
<link href="https://cdn.jsdelivr.net/npm/@@tabler/icons@latest/tabler-icons.css" rel="stylesheet" />
<!-- Douzone ERP Custom Theme CSS -->
<link rel="stylesheet" href="~/css/admin.css" asp-append-version="true" />
</head>
<body>
<div class="douzone-layout-container">
<!-- 1. Top Toolbar & Filter Header Bar -->
<header class="douzone-header-toolbar">
<div class="d-flex align-items-center gap-3">
<span class="fw-bold fs-3 text-warning">QuantEngine ERP</span>
<span class="border-start ps-3 opacity-75">@ViewData["Title"]</span>
</div>
<div class="d-flex align-items-center">
<button type="button" class="btn-douzone-action btn-douzone-search" id="btnDouzoneSearch"><span class="hotkey-badge">F3</span>조회</button>
<button type="button" class="btn-douzone-action btn-douzone-save" id="btnDouzoneSave"><span class="hotkey-badge">F4</span>저장</button>
<button type="button" class="btn-douzone-action btn-douzone-delete" id="btnDouzoneDelete"><span class="hotkey-badge">F5</span>삭제</button>
<button type="button" class="btn-douzone-action btn-douzone-excel" id="btnDouzoneExcel"><span class="hotkey-badge">F7</span>엑셀</button>
<a href="/Account/Logout" class="btn-douzone-action style-danger ms-3 text-decoration-none" style="background-color: var(--status-error); color: white;">로그아웃</a>
</div>
</header>
<!-- Navigation Sub-Header Bar -->
<div style="background-color: var(--douzone-slate); padding: 4px 16px; border-bottom: 1px solid #1A252F;">
<ul class="nav nav-pills gap-1">
<li class="nav-item"><a class="nav-link text-white py-1 px-3 @NavActive("/Admin/Dashboard")" href="/Admin/Dashboard">대시보드</a></li>
<li class="nav-item"><a class="nav-link text-white py-1 px-3 @NavActive("/Admin/Collection")" href="/Admin/Collection">데이터 수집</a></li>
<li class="nav-item"><a class="nav-link text-white py-1 px-3 @NavActive("/Admin/Monitoring")" href="/Admin/Monitoring">모니터링</a></li>
<li class="nav-item"><a class="nav-link text-white py-1 px-3 @NavActive("/Admin/Decisions")" href="/Admin/Decisions">의사결정 이력</a></li>
<li class="nav-item"><a class="nav-link text-white py-1 px-3 @NavActive("/Admin/Database")" href="/Admin/Database">DB 테이블 관리</a></li>
<li class="nav-item"><a class="nav-link text-white py-1 px-3 @NavActive("/Admin/Users")" href="/Admin/Users">사용자 관리</a></li>
<li class="nav-item"><a class="nav-link text-white py-1 px-3 @NavActive("/Admin/Operations")" href="/Admin/Operations">운영 관리</a></li>
<li class="nav-item"><a class="nav-link py-1 px-3 font-weight-bold" style="color: #F1C40F;" href="/templates">🛠️ 프로토타입 갤러리</a></li>
</ul>
</div>
<!-- 2. Center High-Density Data Grid Body -->
<main class="douzone-grid-body">
@RenderBody()
</main>
<!-- 3. Bottom Hotkey Guidance & Summary Footer Bar -->
<footer class="douzone-summary-footer">
<div>
<span><span class="hotkey-badge">Enter</span>다음 필드 이동</span>
<span class="ms-3"><span class="hotkey-badge">F2</span>코드 팝업</span>
<span class="ms-3"><span class="hotkey-badge">F3</span>조회</span>
<span class="ms-3"><span class="hotkey-badge">F4</span>저장</span>
<span class="ms-3"><span class="hotkey-badge">F5</span>삭제</span>
<span class="ms-3"><span class="hotkey-badge">F7</span>엑셀</span>
</div>
<div>
<span class="opacity-75">Douzone ERP Accounting UX Standard | QuantEngine @version</span>
</div>
</footer>
</div>
<!-- Douzone Keyboard Engine Script -->
<script src="~/js/douzone-keyboard.js" asp-append-version="true"></script>
@await RenderSectionAsync("Scripts", required: false)
</body>
</html>