#pragma once /** * @file public.h * @brief 规则信息 * @author your name (you@domain.com) * @version 0.1 * @date 2026-02-04 * * Copyright: Baosight Co. Ltd. * DO NOT COPY/USE WITHOUT PERMISSION * */ #include "mix_cc/json.h" #include #include #include #include #include #include using std::map; using std::string; struct RuleInfo { string rule_name; string eqpid; string rule_group; string remark; string alarm_reason; string alarm_content; string pre_condition; string pre_result; vector exp_str; vector tags_item; vector tags_chinese; string limit_down; string limit_up; string unit; vector params; RuleInfo() {} ~RuleInfo() {} string get_value(int i) const { switch (i) { case 0: return rule_name; break; case 1: return eqpid; break; case 2: return rule_group; break; case 3: return remark; break; case 4: return alarm_reason; break; case 5: return alarm_content; break; case 6: return pre_condition; case 7: return pre_result; break; default: break; } } string tags_item_get(int i) const { if (i < tags_item.size()) { return tags_item[i]; } else { return ""; } } string tags_chinese_get(int i) const { if (i < tags_chinese.size()) { return tags_chinese[i]; } else { return ""; } } }; using CfgRuleInfo = std::map;