-- ============================================================================ -- 1.0.399.sql:S8 S9 KPI 平台默认目标值初始化(纯数据 UPDATE) -- -- 批次:S8-CONFIG-GLOBAL-ROW-SEMANTICS-AND-KPI-TARGET-1 -- 用途:把 S9 Result KPI 的「平台默认目标值」写入 DB,使 DB 成为目标值的唯一事实源。 -- -- 背景:目标值此前只存在于 C# `_demoBaselineMap`(95/95/98/95)与内联字面量(90.0m), -- 而 ado_s8_monitor_metric.default_target_ratio 列虽早已存在却 13 行全 NULL。 -- 本批已把读取路径切到 DB(工厂覆盖 > 平台默认,未配置返回 null 不做常量兜底), -- 因此必须由本脚本完成平台默认值的权威初始化,否则页面目标值会全部变成「待配置」。 -- -- 红线: -- SCHEMA CHANGE = NO / DDL = NO —— 全文件只有 UPDATE,无 CREATE/ALTER/DROP/TRUNCATE/DELETE。 -- 只更新平台默认行(tenant_id=0 AND factory_id=0),不触碰任何工厂覆盖行。 -- 幂等:附加 `default_target_ratio IS NULL` 守卫,重复执行不改已有值, -- 也不会覆盖运维/业务后续调整过的平台默认目标。 -- -- 数值来源:本批之前 C# 硬编码的既有目标值,逐项等值搬迁,不新增、不调整业务口径: -- ORDER_DELIVERY_RATE 95 (原 _demoBaselineMap) -- PO_DELIVERY_RATE 95 (原 _demoBaselineMap) -- IQC_PASS_RATE 98 (原 _demoBaselineMap) -- WO_COMPLETION_RATE 95 (原 _demoBaselineMap) -- ORDER_FLOW_CYCLE_RATIO 90 (原 C# 内联 90.0m) -- -- 不在本脚本范围(刻意不做): -- - KPI 当前值 92/88/96/90 —— 不是配置项,不写入本列,不删除,不改动。 -- - enabled 列 —— 5 行当前为 0,但 Result KPI 读取路径不过滤 Enabled; -- 改动它会影响 monitor-options 下拉可选项,超出本批范围,留待业务确认。 -- ============================================================================ UPDATE `ado_s8_monitor_metric` SET `default_target_ratio` = 95.00, `updated_at` = NOW() WHERE `tenant_id` = 0 AND `factory_id` = 0 AND `metric_code` = 'ORDER_DELIVERY_RATE' AND `default_target_ratio` IS NULL; UPDATE `ado_s8_monitor_metric` SET `default_target_ratio` = 95.00, `updated_at` = NOW() WHERE `tenant_id` = 0 AND `factory_id` = 0 AND `metric_code` = 'PO_DELIVERY_RATE' AND `default_target_ratio` IS NULL; UPDATE `ado_s8_monitor_metric` SET `default_target_ratio` = 98.00, `updated_at` = NOW() WHERE `tenant_id` = 0 AND `factory_id` = 0 AND `metric_code` = 'IQC_PASS_RATE' AND `default_target_ratio` IS NULL; UPDATE `ado_s8_monitor_metric` SET `default_target_ratio` = 95.00, `updated_at` = NOW() WHERE `tenant_id` = 0 AND `factory_id` = 0 AND `metric_code` = 'WO_COMPLETION_RATE' AND `default_target_ratio` IS NULL; UPDATE `ado_s8_monitor_metric` SET `default_target_ratio` = 90.00, `updated_at` = NOW() WHERE `tenant_id` = 0 AND `factory_id` = 0 AND `metric_code` = 'ORDER_FLOW_CYCLE_RATIO' AND `default_target_ratio` IS NULL; -- 验收查询(人工执行,脚本本身不依赖): -- SELECT metric_code, default_target_ratio -- FROM ado_s8_monitor_metric -- WHERE tenant_id = 0 AND factory_id = 0 AND mechanism = 'RATIO' AND is_result_kpi = 1 -- ORDER BY sort_no; -- 期望 5 行:95.00 / 95.00 / 98.00 / 95.00 / 90.00,且其余 8 行 default_target_ratio 保持 NULL。