图谱工作台功能扩充:职级视图改为岗位能力树(L1→L2→L3成长阶梯)、新增图谱搜索定位、岗位对比模式(三色交集/差集+转岗就绪度)、时序视图季度解说面板,纯函数单测83例全过

This commit is contained in:
FinStab
2026-08-28 11:44:50 +08:00
parent 3058fc8aca
commit 6d91df1a91
4 changed files with 597 additions and 47 deletions
+34 -2
View File
@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CareerNexus 职联 · 岗位与能力图谱平台</title>
<link rel="stylesheet" href="/static/style.css?v=20260827">
<link rel="stylesheet" href="/static/style.css?v=20260828">
</head>
<body>
<!-- ============ 顶部栏 56px ============ -->
@@ -169,6 +169,12 @@
<span class="tag tag-cyan">技能点级</span>
<span class="tag tag-green">审核已开启</span>
</div>
<!-- 图谱搜索定位:输入即筛,回车/点击定位并高亮 -->
<div class="graph-search" id="graph-search">
<svg viewBox="0 0 24 24"><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.35-4.35"/></svg>
<input id="gs-input" type="text" placeholder="搜索岗位 / 技能,回车定位" autocomplete="off">
<div class="gs-dropdown hidden" id="gs-dropdown"></div>
</div>
<div class="seg graph-view-tabs" id="graph-view-tabs">
<button data-gview="overview" class="active">全景总览</button>
<button data-gview="tech">技术栈</button>
@@ -176,6 +182,9 @@
<button data-gview="timeline">动态时序</button>
</div>
<div class="graph-actions">
<button class="btn btn-secondary" id="btn-compare" title="选择两个岗位,对比技能交集与差集">
<svg viewBox="0 0 24 24"><path d="M8 3H5a2 2 0 00-2 2v14a2 2 0 002 2h3M16 3h3a2 2 0 012 2v14a2 2 0 01-2 2h-3M12 2v20"/></svg>
岗位对比</button>
<button class="btn btn-secondary" id="btn-goto-evo">
<svg viewBox="0 0 24 24"><path d="M3 17l5.5-5.5 3.5 3.5L20 7"/><path d="M15 7h5v5"/></svg>
查看演化</button>
@@ -218,6 +227,29 @@
<span class="gt-window" id="gt-label">—</span>
</div>
<!-- 动态时序视图:当季解说面板(仅该视图显示,随滑块刷新) -->
<div class="gt-panel hidden" id="gt-panel"></div>
<!-- 职级演进视图:岗位选择条(仅该视图显示) -->
<div class="graph-level-bar hidden" id="graph-level-bar">
<span class="gl-label">成长阶梯岗位</span>
<select id="gl-job-select" class="select select-sm"></select>
<span class="gl-hint text-weak">按 初级 → 中级 → 高级 展示该岗位的能力树</span>
</div>
<!-- 岗位对比模式:双岗位选择条(对比激活时显示) -->
<div class="graph-compare-bar hidden" id="graph-compare-bar">
<select id="gc-a" class="select select-sm"></select>
<span class="gc-vs">对比</span>
<select id="gc-b" class="select select-sm"></select>
<span class="gc-legend">
<span><i class="gc-dot" style="background:#7bc8a4"></i>共有</span>
<span><i class="gc-dot" id="gc-dot-a"></i><em id="gc-name-a">A 独有</em></span>
<span><i class="gc-dot" id="gc-dot-b"></i><em id="gc-name-b">B 独有</em></span>
</span>
<button class="btn btn-secondary btn-sm" id="gc-exit">退出对比</button>
</div>
<!-- 左上浮动工具条 -->
<div class="graph-toolbar">
<button class="tool-btn" id="tool-zoom-in" title="放大"><svg viewBox="0 0 24 24"><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.35-4.35M11 8v6M8 11h6"/></svg></button>
@@ -665,6 +697,6 @@
</div>
<script src="/static/app.js?v=20260827"></script>
<script src="/static/graph.js?v=20260827"></script>
<script src="/static/graph.js?v=20260828"></script>
</body>
</html>