From 63a2bac424d2e8e9cf12ebe33444e0379ba8e61a Mon Sep 17 00:00:00 2001 From: wecom-fullstack Date: Sat, 24 Oct 2026 20:03:32 +0800 Subject: [PATCH] =?UTF-8?q?feat(maps):=20=E7=94=BB=E5=B8=83=E8=81=9A?= =?UTF-8?q?=E7=84=A6=E5=87=8F=E8=B4=9F=EF=BC=88=E8=81=9A=E7=84=A6=E5=B1=82?= =?UTF-8?q?/=E8=AF=A6=E6=83=85=E6=B5=AE=E5=B1=82/=E6=B1=87=E6=80=BB?= =?UTF-8?q?=E6=9D=A1/=E7=9B=AE=E6=A0=87=E6=A0=91=E6=94=B6=E8=B5=B7/?= =?UTF-8?q?=E8=B7=A8=E5=B1=82=E6=91=98=E8=A6=81=EF=BC=89=E2=80=94=20C=20?= =?UTF-8?q?=E6=96=B9=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - MapCanvas: 层聚焦与回全景联动;右栏停用改自绘可拖详情浮层;目标树默认收起+localStorage 持久化;底部跨层关系摘要条;聚焦态只绘聚焦层同层连线 - StrategyLayer: 层标题可点击聚焦并标「聚焦中」;非聚焦层压缩为 ≤48px 单行摘要(层名—达成率/目标数/mini 色条) - MapSummaryBar: 汇总条压缩 ≤44px、5 项同排;窄屏无横向溢出 - MapEditBar: 新增「全景 / L1–L4」聚焦切换 chip(内联 SVG,无 emoji) - 只读渲染层改动:不写 canvas_data / map_connections,无新增写链路调用 --- .../components/strategy-map/MapEditBar.vue | 28 +- .../components/strategy-map/MapSummaryBar.vue | 372 +++++++++++------- .../components/strategy-map/StrategyLayer.vue | 88 ++++- frontend/src/views/MapCanvas.vue | 346 +++++++++++++++- 4 files changed, 682 insertions(+), 152 deletions(-) diff --git a/frontend/src/components/strategy-map/MapEditBar.vue b/frontend/src/components/strategy-map/MapEditBar.vue index 7f3c84d8..0e7f4b61 100644 --- a/frontend/src/components/strategy-map/MapEditBar.vue +++ b/frontend/src/components/strategy-map/MapEditBar.vue @@ -90,9 +90,32 @@ 回全景 - + {{ treeOpen ? '收起目标树' : '展开目标树' }} + + +
+ + +
@@ -105,6 +128,8 @@ defineProps<{ layerConfigs: { key: string; label: string; short: string; color: string }[] canUndo: boolean treeOpen: boolean + /** C 方案聚焦层:null = 四层全景 */ + focusLayer?: string | null }>() const emit = defineEmits<{ @@ -117,6 +142,7 @@ const emit = defineEmits<{ (e: 'fit'): void (e: 'toggle-tree'): void (e: 'completeness'): void + (e: 'focus-layer', key: string | null): void }>() const filterOptions: { value: 'all' | 'risk' | 'nodata'; label: string }[] = [ diff --git a/frontend/src/components/strategy-map/MapSummaryBar.vue b/frontend/src/components/strategy-map/MapSummaryBar.vue index efe683fa..3a1ce6d7 100644 --- a/frontend/src/components/strategy-map/MapSummaryBar.vue +++ b/frontend/src/components/strategy-map/MapSummaryBar.vue @@ -1,89 +1,150 @@ diff --git a/frontend/src/components/strategy-map/StrategyLayer.vue b/frontend/src/components/strategy-map/StrategyLayer.vue index 3eaafb82..8f5b7de1 100644 --- a/frontend/src/components/strategy-map/StrategyLayer.vue +++ b/frontend/src/components/strategy-map/StrategyLayer.vue @@ -1,6 +1,17 @@