| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- -- ============================================================================
- -- 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。
|