From: root Date: Tue, 15 Sep 2026 06:12:52 +0000 (+0800) Subject: 左侧菜单重构:站点管理/领域方案为一级直达,建站资源下属设备模板/监控仪表板/数字孪生模型/运维模板/知识模板,系统设定不变 X-Git-Url: http://acesimba.cloud/gitweb/?a=commitdiff_plain;h=d9d87a8b1ace61be9998d1b5dd59d1ff3ad4d74a;p=StationBuilder.git 左侧菜单重构:站点管理/领域方案为一级直达,建站资源下属设备模板/监控仪表板/数字孪生模型/运维模板/知识模板,系统设定不变 --- diff --git a/app/page.tsx b/app/page.tsx index 7bd764c..ba03de8 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -4,7 +4,7 @@ import { useEffect, useMemo, useRef, useState, type PointerEvent as ReactPointer import { Button as AntButton, Drawer, Dropdown, QRCode, Tag } from "antd"; import { AimOutlined, ApartmentOutlined, BarsOutlined, BlockOutlined, CaretDownOutlined, CaretRightOutlined, ControlOutlined, CopyOutlined, DeleteOutlined, DownloadOutlined, EditOutlined, EllipsisOutlined, EyeOutlined, LinkOutlined, PlusOutlined, PlusSquareOutlined, RobotOutlined, SearchOutlined, SnippetsOutlined, UploadOutlined, ZoomInOutlined, ZoomOutOutlined } from "@ant-design/icons"; -type PageKey = "login" | "projects" | "siteEdit" | "basic" | "assets" | "pageConfig" | "functions" | "generate" | "result" | "preview" | "domains" | "domainDetail" | "styleLibrary" | "deviceTemplates" | "toolSettings" | "domainSettings" | "dashboard" | "report-dashboard" | "report-doc" | "basic-components" | "func-components" | "filters" | "datasource"; +type PageKey = "login" | "projects" | "siteEdit" | "basic" | "assets" | "pageConfig" | "functions" | "generate" | "result" | "preview" | "domains" | "domainDetail" | "styleLibrary" | "deviceTemplates" | "toolSettings" | "domainSettings" | "dashboard" | "report-dashboard" | "report-doc" | "basic-components" | "func-components" | "filters" | "datasource" | "monitor-dashboard" | "twin-model" | "ops-template" | "knowledge-template"; type ModalKey = "" | "feedback" | "download" | "history" | "prompt" | "completePrompt"; const meta: Record = { @@ -31,6 +31,10 @@ const meta: Record = "func-components":{label:"功能组件库",icon:"",subtitle:""}, filters:{label:"筛选器",icon:"",subtitle:""}, datasource:{label:"数据源",icon:"",subtitle:""}, + "monitor-dashboard":{label:"监控仪表板",icon:"",subtitle:""}, + "twin-model":{label:"数字孪生模型",icon:"",subtitle:""}, + "ops-template":{label:"运维模板",icon:"",subtitle:""}, + "knowledge-template":{label:"知识模板",icon:"",subtitle:""}, }; @@ -145,7 +149,6 @@ export default function Home(){ const [page,setPage]=useState("projects"); const [projectNavOpen,setProjectNavOpen]=useState(true); const [extensionNavOpen,setExtensionNavOpen]=useState(true); - const [reportNavOpen,setReportNavOpen]=useState(true); const [resourceNavOpen,setResourceNavOpen]=useState(true); const [systemNavOpen,setSystemNavOpen]=useState(true); const [toast,setToast]=useState(""); @@ -568,7 +571,8 @@ export default function Home(){ if(page==="login")return go("projects")}/>; const projectArea = (["projects","siteEdit","basic","assets","pageConfig","functions","generate","result","preview"] as PageKey[]).includes(page); - const resourceArea = (["domains","domainDetail","deviceTemplates","styleLibrary"] as PageKey[]).includes(page); + const domainArea = (["domains","domainDetail"] as PageKey[]).includes(page); + const resourceArea = (["deviceTemplates","monitor-dashboard","twin-model","ops-template","knowledge-template"] as PageKey[]).includes(page); const systemArea = (["toolSettings","domainSettings"] as PageKey[]).includes(page); const extensionArea = (["dashboard","report-dashboard","report-doc","basic-components","func-components","filters","datasource"] as PageKey[]).includes(page); const siteEditMeta = meta[siteEditSection]; @@ -609,26 +613,19 @@ 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)&&}
+
iStation StationBuilder / {["domains","domainDetail","styleLibrary","deviceTemplates","toolSettings","domainSettings","monitor-dashboard","twin-model","ops-template","knowledge-template"].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"&&} @@ -692,6 +689,10 @@ export default function Home(){ : setOpenDomainTemplateId(id)} domainFilter={domainFilter} domainOptions={domainOptions}/>)} {page==="styleLibrary"&&} {page==="deviceTemplates"&&} + {page==="monitor-dashboard"&&} + {page==="twin-model"&&} + {page==="ops-template"&&} + {page==="knowledge-template"&&} {page==="toolSettings"&&} {page==="domainSettings"&&} {(page==="basic"||(page==="siteEdit"&&siteEditSection==="basic"))&&} @@ -2622,6 +2623,10 @@ function ImagePage({src}:{src:string}){ return
; } +function ResourcePlaceholder({title}:{title: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);