From: root Date: Wed, 9 Sep 2026 06:53:22 +0000 (+0800) Subject: feat: 扩展页面补充 6 张示意图(仪表板报表/文档报表/基础组件库/功能组件库/筛选器/数据源),压缩后懒加载 X-Git-Url: http://acesimba.cloud/gitweb/?a=commitdiff_plain;h=7933a873cfcc123fa2e14c87218903fb59a310e5;p=StationBuilder.git feat: 扩展页面补充 6 张示意图(仪表板报表/文档报表/基础组件库/功能组件库/筛选器/数据源),压缩后懒加载 --- diff --git a/app/page.tsx b/app/page.tsx index 5cb53cd..16af6a0 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -647,6 +647,12 @@ export default function Home(){
iStation StationBuilder / {["domains","domainDetail","styleLibrary","deviceTemplates","toolSettings","domainSettings"].includes(page)?meta[page].label:page==="projects"?"站点列表":page==="siteEdit"?`站点管理 / 站点编辑 / ${siteEditMeta.label}`:`站点详情 / ${meta[page].label}`}

{page==="siteEdit"?siteEditMeta.label:meta[page].label}

{page==="siteEdit"?siteEditMeta.subtitle:meta[page].subtitle}

{page==="projects"&&}{page==="siteEdit"&&}{page==="domains"&&openDomainTemplateId==null&&}{page==="domains"&&openDomainTemplateId!=null&&}{domainFilter!=null&&page==="domains"&&openDomainTemplateId==null&&}{page==="domainSettings"&&}
{page==="siteEdit"&&} {SITE_EDIT_STEPS.includes(page as SiteEditSection)&&}
{page==="projects"&&} {page==="dashboard"&&} + {page==="report-dashboard"&&} + {page==="report-doc"&&} + {page==="basic-components"&&} + {page==="func-components"&&} + {page==="filters"&&} + {page==="datasource"&&} {(page==="domains"||page==="domainDetail")&&(openDomainTemplateId!=null ? setOpenDomainTemplateId(null)} onCreated={setOpenDomainTemplateId} viewCompletePrompt={viewDtCompletePrompt} viewCompleteAssetsPrompt={viewDtCompleteAssetsPrompt} viewCompleteCubesPrompt={viewDtCompleteCubesPrompt} pageStyles={pageStyles}/> : setOpenDomainTemplateId(id)} domainFilter={domainFilter} domainOptions={domainOptions}/>)} @@ -2518,6 +2524,10 @@ function Dashboard(){ return
仪表盘示意
; } +function ImagePage({src}:{src:string}){ + return
; +} + function Modal({type,close,notify,promptData,feedbackCube,refineCube,refining,refineLog}:{type:Exclude;close:()=>void;notify:(m:string)=>void;promptData?:{name:string;text:string}|null;feedbackCube?:Cube|null;refineCube?:(cube:Cube, feedback:string)=>void;refining?:boolean;refineLog?:string;}){ const [feedbackText,setFeedbackText]=useState(""); const refineConsoleRef=useRef(null); diff --git a/public/design-doc-assets/ext-basic-components.png b/public/design-doc-assets/ext-basic-components.png new file mode 100644 index 0000000..7ec1efe Binary files /dev/null and b/public/design-doc-assets/ext-basic-components.png differ diff --git a/public/design-doc-assets/ext-datasource.png b/public/design-doc-assets/ext-datasource.png new file mode 100644 index 0000000..584e2d3 Binary files /dev/null and b/public/design-doc-assets/ext-datasource.png differ diff --git a/public/design-doc-assets/ext-filters.png b/public/design-doc-assets/ext-filters.png new file mode 100644 index 0000000..4dce3c7 Binary files /dev/null and b/public/design-doc-assets/ext-filters.png differ diff --git a/public/design-doc-assets/ext-func-components.png b/public/design-doc-assets/ext-func-components.png new file mode 100644 index 0000000..cce3178 Binary files /dev/null and b/public/design-doc-assets/ext-func-components.png differ diff --git a/public/design-doc-assets/ext-report-dashboard.png b/public/design-doc-assets/ext-report-dashboard.png new file mode 100644 index 0000000..8471313 Binary files /dev/null and b/public/design-doc-assets/ext-report-dashboard.png differ diff --git a/public/design-doc-assets/ext-report-doc.png b/public/design-doc-assets/ext-report-doc.png new file mode 100644 index 0000000..a5b81d4 Binary files /dev/null and b/public/design-doc-assets/ext-report-doc.png differ diff --git a/public/design-doc.html b/public/design-doc.html index 5caac39..15eaeed 100644 --- a/public/design-doc.html +++ b/public/design-doc.html @@ -698,9 +698,21 @@
设备模版详情
设备模版详情:设备基本信息、图片、采集点表格编辑。
页面样式库
页面样式库:样式缩略图网格与新增/编辑入口。
-

4.14 仪表盘(dashboard)

-

位于左侧「扩展页面」分组下的「仪表盘」菜单项(点击进入,当前页高亮)。该页定位为示意展示页:打开后仅居中展示一张仪表盘示意图片(已压缩至约 66KB,宽 1440,避免影响加载速度),不含其它交互元素。图片随页面懒加载(loading="lazy")。

-
仪表盘示意页
仪表盘页:仅居中展示仪表盘示意图片。
+

4.14 扩展页面(dashboard / 报表 / 组件库 / 筛选器 / 数据源)

+

左侧「扩展页面」分组下的菜单项(点击进入,当前页高亮;「报表」为分组容器,其下「仪表板报表」「文档报表」为可点击子页)。这些页面定位为示意展示页:打开后均仅居中展示对应示意图片(均经 sharp 压至约 13~81KB、宽 1440、渐进式 JPEG,loading="lazy" 懒加载,保障快速打开),不含其它交互元素。

+
    +
  • 仪表板(dashboard):居中展示仪表盘示意图片。
  • +
  • 报表 → 仪表板报表(report-dashboard)、报表 → 文档报表(report-doc):分别展示对应报表示意图片。
  • +
  • 基础组件库(basic-components)、功能组件库(func-components):分别展示组件库示意图片。
  • +
  • 筛选器(filters)、数据源(datasource):分别展示对应示意图片。
  • +
+
仪表板页
仪表板页:仅居中展示仪表盘示意图片。
+
仪表板报表页
仪表板报表页示意。
+
文档报表页
文档报表页示意。
+
基础组件库页
基础组件库页示意。
+
功能组件库页
功能组件库页示意。
+
筛选器页
筛选器页示意。
+
数据源页
数据源页示意。

5. 生成流程(端到端)

@@ -769,6 +781,7 @@

10.1 版本变更记录(Changelog)

+ diff --git a/public/ext-pages/basic-components.jpg b/public/ext-pages/basic-components.jpg new file mode 100644 index 0000000..be5b939 Binary files /dev/null and b/public/ext-pages/basic-components.jpg differ diff --git a/public/ext-pages/datasource.jpg b/public/ext-pages/datasource.jpg new file mode 100644 index 0000000..0a2b3c4 Binary files /dev/null and b/public/ext-pages/datasource.jpg differ diff --git a/public/ext-pages/filters.jpg b/public/ext-pages/filters.jpg new file mode 100644 index 0000000..b92f54c Binary files /dev/null and b/public/ext-pages/filters.jpg differ diff --git a/public/ext-pages/func-components.jpg b/public/ext-pages/func-components.jpg new file mode 100644 index 0000000..5709ab1 Binary files /dev/null and b/public/ext-pages/func-components.jpg differ diff --git a/public/ext-pages/report-dashboard.jpg b/public/ext-pages/report-dashboard.jpg new file mode 100644 index 0000000..ccc5f57 Binary files /dev/null and b/public/ext-pages/report-dashboard.jpg differ diff --git a/public/ext-pages/report-doc.jpg b/public/ext-pages/report-doc.jpg new file mode 100644 index 0000000..ee34914 Binary files /dev/null and b/public/ext-pages/report-doc.jpg differ diff --git a/scripts/shot-ext.mjs b/scripts/shot-ext.mjs new file mode 100644 index 0000000..1f1e7ef --- /dev/null +++ b/scripts/shot-ext.mjs @@ -0,0 +1,16 @@ +import { chromium } from 'playwright'; +const BASE='https://aidemo.istation.cloud/t/stationbuilder'; +const pages=[['report-dashboard','ext-report-dashboard'],['report-doc','ext-report-doc'],['basic-components','ext-basic-components'],['func-components','ext-func-components'],['filters','ext-filters'],['datasource','ext-datasource']]; +const b=await chromium.launch(); +const p=await b.newPage({viewport:{width:1440,height:900}}); +const errs=[]; +p.on('console',m=>{if(m.type()==='error')errs.push(m.text());}); +for (const [key,out] of pages){ + await p.goto(`${BASE}/?page=${key}`,{waitUntil:'networkidle'}); + await p.waitForSelector('.dashboard-page img',{timeout:15000}); + await p.waitForTimeout(800); + await p.screenshot({path:`public/design-doc-assets/${out}.png`,fullPage:true}); + console.log('saved',out); +} +console.log('ERRORS',errs.slice(0,5)); +await b.close();
版本日期修改人说明
v0.352026-09-09wang.yu扩展页面补齐示意内容:① 菜单「仪表盘」更名为「仪表板」(原 dashboard 页展示仪表盘示意图不变)。② 菜单结构定稿为:仪表板 / 报表(子页 仪表板报表、文档报表)/ 基础组件库 / 功能组件库 / 筛选器 / 数据源。③ 为其中 6 个页面(report-dashboard / report-doc / basic-components / func-components / filters / datasource)新增 ImagePage 展示组件,居中展示对应示意图片(源图经 sharp 压至 13~81KB、宽 1440、渐进式 JPEG、loading="lazy"),「报表」自身为分组容器不入页。④ 图片存于 public/ext-pages/ 并随 basePath 提供。⑤ 设计文档 4.14 节扩充为扩展页面总览并附 7 张截图,Changelog 记 v0.35。
v0.342026-09-09wang.yu新增「仪表盘」页面:① 左侧「扩展页面」分组下的「仪表盘」由占位文本改为可点击菜单项(.extension-menu-item.clickable),点击进入新页 dashboard(当前页高亮、分组自动展开)。② 页面定位为示意展示页:Dashboard 组件仅居中展示一张仪表盘示意图片(public/dashboard-preview.jpg,源图经 sharp 压至 1440×729 / 66KB、渐进式 JPEG,loading="lazy" 懒加载,避免影响打开速度),不含其它交互。③ 图片存放于 public/ 并随 Vite public 资源在 basePath /t/stationbuilder/ 下提供。④ 设计文档新增 4.14 节并附截图(dashboard.png),Changelog 记 v0.34。
v0.332026-09-09wang.yu「设计方案」入口与导航栏对齐:① 入口位置变更:由早期顶栏/页脚链接改为固定在左侧菜单最底部(`.company-side-nav` 最后一个 flex 子项,margin-top:auto 推至底),成为常驻的菜单项而非浮层,避免遮挡正文。② 按钮样式:鲜明紫渐变(#7e57c2 → #ab47bc)、10 号字、圆角小按钮(.design-doc-link),点击 target="_blank" 新标签打开 https://aidemo.istation.cloud/t/stationbuilder/design-doc.html。③ 设计文档同步:第 3 章新增 3.5「设计方案入口(左侧菜单底部)」并附菜单截图(menu-design-doc.png);第 6 章「AI 问答」附 AI 助手对话框截图(ai-dialog.png);第 7 章「模态框」附「新增领域」对话框截图(dialog-add-domain.png);第 4 章各页面说明截图全部重新抓取(projects/basic/assets/functions/generate/result/preview/domains/domain-detail/styleLibrary/deviceTemplates/toolSettings/domainSettings),并对页面全量截图做样式加载校验(0 控制台 404)。④ 维护说明注释同步更新入口位置。
v0.322026-08-21wang.yu领域方案「生成保存」步骤重构为「方案打包」:① 步骤改名:DOMAIN_STEPS 末步标签「生成保存」→「方案打包」;该步骤不再提供「下一步」,仅保留「保存草稿」与本步专属「📦 打包下载」按钮(末步另保留「提交确认」以提交专家确认)。② 「生成范围确认」→「方案概览」多标签总览:DomainGenerateReview 重写为单 Panel「方案概览」+ 六标签(标签上带数量徽标):设备模板 N(方案去重用到的设备模板列表,点击行内展开详情——调 GET /api/db/device-templates/:id 显示说明与采集点清单)、资产结构 N(按设备模板聚合的默认资产组树状预览,使用 formatInstances(rule,count) 展开实例)、MU页面 N(复用功能与菜单的 MU 树,禁用态勾选框展示已选页面)、扩展页面 N(已生成 Cube 页面卡片,点击整卡经 onPreviewPage 打开全屏预览)、领域知识 N(列举本方案上传的知识文档与 URL 站点)、运维流程(占位「待开发」+ 固定文案「运维流程编辑功能待开发,后续版本将支持在方案中配置标准运维 SOP 与告警处理流程。」)。概览头部固定展示所属领域 / 方案名称 / 方案描述 / 补充描述。③ 修复扩展页面预览「只能看到上半部分」:DomainPageThumb 新增 fit 模式——由「仅按宽度缩放」改为「按宽高较小比例缩放」s = min(w/pw, availH/rh)(availH 取预览 canvas 父容器高度),canvas 高度由固定 430px 改为 height:64vh; overflow:auto,整页一次可见不再裁切。④ 「📦 打包下载」示意弹窗:新增 PackageModal——SVG 立体包装箱(堆叠文档矩形,带投影)+ 5 张打包组成卡片(设备模板 / 资产结构 / 扩展页面文件 / 默认菜单 / 领域知识),「确认打包下载」提示「方案已打包(示意),可交付给实施团队」后关闭(本期为示意,真实文件导出待后续)。globals.css 增补 .gen-overview / .overview-info / .overview-tabs / .dev-list / .dev-detail / .asset-tree-preview / .mu-tree / .doc-list / .ops-placeholder / .pkg-modal / .pkg-svg / .pkg-items 等样式。Playwright E2E(污水厂方案,34 设备 / 11 页面):步骤标签=方案打包、Panel=方案概览、6 标签徽标正确、设备行展开显示 12 个采集点、资产树 / MU 树 / 页面卡片渲染、预览 canvas 渲染高度 576px = 缩放后整页高度(证明整页可见,不再上半部裁切)、知识 / 运维标签文案正确、本步无「下一步」、打包弹窗含 SVG + 5 组成项,0 控制台报错;另以数字机房方案验证领域知识列表确实展示已上传文档。