From db34b08b4f1d02860226b8f1da405a4d20e58c28 Mon Sep 17 00:00:00 2001 From: "wang.yu" Date: Mon, 17 Aug 2026 22:46:29 +0800 Subject: [PATCH] =?utf8?q?UI:=20=E8=B5=84=E4=BA=A7=E5=B1=82=E7=BA=A7?= =?utf8?q?=E9=A2=84=E8=A7=88=E6=8C=89=E8=A7=84=E5=88=99=E8=A1=A5=E5=85=A8?= =?utf8?q?=E8=AE=BE=E5=A4=87=E5=AE=9E=E4=BE=8B=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit - formatInstances 在命名规则为纯前缀时自动补 -01/-02… 序号(beng- -> beng-01、guolu -> guolu-01…10 等) - 修正 # 占位 bug:CH-## 现在正确生成 CH-01/02/03(原先 CH-0101) - 同步更新 design-doc 第 5.4 节说明 --- app/page.tsx | 7 ++++++- public/design-doc.html | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/page.tsx b/app/page.tsx index 6833497..6aedc73 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -78,7 +78,12 @@ function formatInstances(rule:string, count:number){ const parts:string[] = []; for(let i=1;i<=count;i++){ const num = String(i).padStart(pad,"0"); - parts.push(rule.replace(/#/g, num)); + if(rule.includes("#")){ + parts.push(rule.replace(/#+/g, m => String(i).padStart(Math.max(pad, m.length), "0"))); + } else { + const sep = rule.endsWith("-") ? "" : "-"; + parts.push(`${rule}${sep}${num}`); + } } return parts.join("、"); } diff --git a/public/design-doc.html b/public/design-doc.html index 1043cef..555b9de 100644 --- a/public/design-doc.html +++ b/public/design-doc.html @@ -218,7 +218,7 @@ 元素功能数据来源交互效果 KPI(设备类型/实例/层级)资产概览本地计算随表格输入实时变化 设备资产表格(类型/数量/命名规则/操作)配置设备类型与数量PUT /api/db/sites行内编辑即保存;可增删行 - 资产层级预览预览「站点→类型→实例」三级结构本地计算按命名规则展开实例 3 层结构为展示占位,资产层级建模尚未实现 + 资产层级预览预览「站点→类型→实例」三级结构本地计算按命名规则展开实例:规则含 # 时替换序号(如 CH-##→CH-01);规则为纯前缀时自动补 -01/-02… 序号(如 beng-→beng-01、guolu→guolu-01) 3 层结构为展示占位,资产层级建模尚未实现

5.5 功能与菜单(functions)

-- 2.43.0