|
|
@@ -54,7 +54,7 @@ echo "==== oor-shortage-edge-regression baseline_before=${baseline_before} ====
|
|
|
# Upsert TEMP rule(直接 DB 写,绕过 service-level params 校验,让非法 params 进入 evaluator)
|
|
|
# ---------------------------------------------------------------------------
|
|
|
upsert_temp_rule() {
|
|
|
- local code="$1" rtype="$2" expr="$3" params="$4"
|
|
|
+ local code="$1" rtype="$2" expr="$3" params="$4" scene="$5"
|
|
|
local exists
|
|
|
exists=$(mysql_run "SELECT COUNT(*) FROM ado_s8_watch_rule WHERE rule_code='${code}' AND tenant_id=${TENANT_ID} AND factory_id=${FACTORY_ID};")
|
|
|
if [[ "${exists}" == "0" ]]; then
|
|
|
@@ -62,27 +62,31 @@ upsert_temp_rule() {
|
|
|
(tenant_id, factory_id, rule_code, scene_code, data_source_id, watch_object_type, expression, severity,
|
|
|
poll_interval_seconds, enabled, created_at, rule_type, source_object_type, params_json,
|
|
|
consecutive_failure_count, trigger_count_required, recover_count_required, next_run_at)
|
|
|
- VALUES (${TENANT_ID}, ${FACTORY_ID}, '${code}', 'S1S7_DELIVERY', 1, 'ORDER',
|
|
|
+ VALUES (${TENANT_ID}, ${FACTORY_ID}, '${code}', '${scene}', 1, 'ORDER',
|
|
|
\"${expr}\", 'HIGH', 60, 1, NOW(), '${rtype}', 'ORDER', '${params}',
|
|
|
0, 1, 1, NOW());" >/dev/null
|
|
|
- echo " inserted ${code} (rule_type=${rtype})"
|
|
|
+ echo " inserted ${code} (rule_type=${rtype}, scene=${scene})"
|
|
|
else
|
|
|
- mysql_run_strict "UPDATE ado_s8_watch_rule SET enabled=1, rule_type='${rtype}', expression=\"${expr}\", params_json='${params}',
|
|
|
+ mysql_run_strict "UPDATE ado_s8_watch_rule SET enabled=1, rule_type='${rtype}', scene_code='${scene}', expression=\"${expr}\", params_json='${params}',
|
|
|
trigger_count_required=1, recover_count_required=1,
|
|
|
paused_until=NULL, pause_reason=NULL,
|
|
|
lock_token=NULL, locked_by=NULL, lock_until=NULL, running_started_at=NULL,
|
|
|
consecutive_failure_count=0, last_status=NULL, last_error=NULL,
|
|
|
next_run_at=NOW(), updated_at=NOW()
|
|
|
WHERE rule_code='${code}' AND tenant_id=${TENANT_ID} AND factory_id=${FACTORY_ID};" >/dev/null
|
|
|
- echo " re-armed ${code} (rule_type=${rtype})"
|
|
|
+ echo " re-armed ${code} (rule_type=${rtype}, scene=${scene})"
|
|
|
fi
|
|
|
}
|
|
|
|
|
|
+# OUT_OF_RANGE → S2 制造协同;SHORTAGE → S5 物料仓储(S8-SCENE-MIGRATE-SCRIPTS-S1S7-1)
|
|
|
+OOR_SCENE_CODE='S2'
|
|
|
+SHORTAGE_SCENE_CODE='S5'
|
|
|
+
|
|
|
echo "---- Setup TEMP rules ----"
|
|
|
-upsert_temp_rule "${OOR_NH_RULE}" "OUT_OF_RANGE" "${OOR_NH_EXPR}" "${OOR_NH_PARAMS}"
|
|
|
-upsert_temp_rule "${OOR_FL_RULE}" "OUT_OF_RANGE" "${OOR_FL_EXPR}" "${OOR_FL_PARAMS}"
|
|
|
-upsert_temp_rule "${SH_NH_RULE}" "SHORTAGE" "${SH_NH_EXPR}" "${SH_NH_PARAMS}"
|
|
|
-upsert_temp_rule "${SH_FL_RULE}" "SHORTAGE" "${SH_FL_EXPR}" "${SH_FL_PARAMS}"
|
|
|
+upsert_temp_rule "${OOR_NH_RULE}" "OUT_OF_RANGE" "${OOR_NH_EXPR}" "${OOR_NH_PARAMS}" "${OOR_SCENE_CODE}"
|
|
|
+upsert_temp_rule "${OOR_FL_RULE}" "OUT_OF_RANGE" "${OOR_FL_EXPR}" "${OOR_FL_PARAMS}" "${OOR_SCENE_CODE}"
|
|
|
+upsert_temp_rule "${SH_NH_RULE}" "SHORTAGE" "${SH_NH_EXPR}" "${SH_NH_PARAMS}" "${SHORTAGE_SCENE_CODE}"
|
|
|
+upsert_temp_rule "${SH_FL_RULE}" "SHORTAGE" "${SH_FL_EXPR}" "${SH_FL_PARAMS}" "${SHORTAGE_SCENE_CODE}"
|
|
|
|
|
|
OOR_NH_ID=$(get_rule_id_by_code "${OOR_NH_RULE}")
|
|
|
OOR_FL_ID=$(get_rule_id_by_code "${OOR_FL_RULE}")
|