-- ============================================================================ -- 1.0.400.sql:S8 S9 KPI 目标值配置菜单(存量库补行) -- -- 批次:S8-CONFIG-GLOBAL-ROW-SEMANTICS-AND-KPI-TARGET-1 -- 用途:为存量库补「S9 KPI 目标值配置」菜单行。 -- 新库由 SysMenuSeedData.cs 的 cfg 数组((19, "/aidop/s8/config/kpi-targets", ...))播种; -- 已初始化过的库不会重跑 seed,故需本脚本补齐,二者 Id / Path / Component 保持一致。 -- -- Id 依据:S8 菜单号段 baseId = 1329008000000(SysMenuSeedData.cs:1085), -- config 子页占 baseId+11..18(实测 DB 已存在 …011~…018),本行取 baseId+19 = 1329008000019。 -- 执行前实测该 Id 未被占用。 -- -- 红线: -- SCHEMA CHANGE = NO / DDL = NO —— 无 CREATE/ALTER/DROP/TRUNCATE。 -- 不 DELETE、不 UPDATE 任何既有菜单行;只插入这一行。 -- 幂等:INSERT ... SELECT ... WHERE NOT EXISTS,重复执行不产生第二行。 -- -- 与既有 config 子页保持同构:Pid = S8 目录、Type=2(Menu)、IsHide=1(不出侧栏, -- 由「配置中心」Hub 卡片进入,与 …011~…018 同口径)、OrderNo = 100+19。 -- ============================================================================ -- 列清单与 SysMenu 实表逐列核对过(该表无 IsDelete 列); -- NOT NULL 且无默认值的列 Id/Pid/Type/Title/IsIframe/IsHide/IsKeepAlive/IsAffix/OrderNo/Status 全部显式给值, -- 取值与既有同级行 1329008000018(大屏卡片配置)一致。 INSERT INTO `SysMenu` (`Id`, `Pid`, `Type`, `Name`, `Path`, `Component`, `Title`, `Icon`, `IsIframe`, `IsHide`, `IsKeepAlive`, `IsAffix`, `OrderNo`, `Status`, `Remark`, `CreateTime`) SELECT 1329008000019, 1321000009000, 2, 'aidopS8KpiTargetConfig', '/aidop/s8/config/kpi-targets', '/aidop/s8/config/S8KpiTargetConfigPage', 'S9 KPI 目标值配置', 'ele-Document', 0, 1, 1, 0, 119, 1, 'S8 S9 KPI 目标值配置', NOW() FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM (SELECT `Id` FROM `SysMenu` WHERE `Id` = 1329008000019) AS t ); -- 验收查询(人工执行): -- SELECT Id, Title, Path, Component, Type, IsHide, OrderNo -- FROM SysMenu WHERE Path LIKE '/aidop/s8/config/%' ORDER BY Id; -- 期望新增 1 行 1329008000019 / S9 KPI 目标值配置 / IsHide=1,其余 8 行不变。