-- ============================================================================
-- 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 行不变。
