using System; using System.Collections.Generic; namespace HDL_ON.UI.UI2.Intelligence.Automation { /// /// 逻辑存储数据对象 /// public class Logic { /// /// 逻辑列表 /// public static List LogicList = new List(); /// /// 当前逻辑 /// public static Logic currlogic; /// /// 云端唯一id /// public string userLogicId = ""; /// /// 逻辑唯一标识 /// public string sid = ""; /// /// 逻辑名称 /// public string name = "自动化"; /// /// 逻辑条件关系(与and:,或:or) /// public string relation = "and"; /// /// 逻辑状态(true,false) /// public string enable = "true"; /// /// 逻辑执行循环周期(执行一次,每天,每月,星期) /// public Cycle cycle = new Cycle(); /// /// 逻辑输入条件数组 /// public List input = new List(); /// /// 逻辑输出目标数组 /// public List output = new List(); /// /// 通知配置 /// public NoticeConfig noticeConfig = new NoticeConfig(); /// /// 推送配置 /// public List pushConfigs = new List(); } /// /// 执行周期对象 /// public class Cycle { /// /// 时间类型 /// (执行一次:once,每天:day,每月:mon,星期:week,日期段:date_to_date) /// public string type = "day"; public List value = new List(); } /// /// 输入条件对象 /// public class Input { /// /// 逻辑输入条件唯一标识 /// public string sid = ""; /// /// 逻辑输入条件类型 /// 时间点条件=1; /// 时间段条件=2; /// 设备状态变化条件=3; /// 环境信息条件=4; /// 安防条件=5; /// 云端天气条件=6; /// 某个逻辑/场景的输出条件=7; /// 地理围栏=8; /// public string condition_type = ""; public List> condition = new List>(); } /// /// 输出目标对象 /// public class Output { /// /// 逻辑输出目标唯一标识 /// public string sid = ""; /// /// 逻辑输出目标延时间(单位用秒) /// public string delay = "0"; /// /// 逻辑输出目标类型 /// 设备=1; /// 场景=2; /// 延时=3; /// public string target_type = ""; public List> status = new List>(); } /// /// 地理围栏配置 /// [Serializable] public class Fence { /// /// 经度 /// public string longitude = string.Empty; /// /// 纬度 /// public string latitude = string.Empty; /// /// 单位米 /// public string radius = string.Empty; } /// /// 通知配置 /// [Serializable] public class NoticeConfig { /// /// 是否开启通知 /// public bool enable = false; /// /// 通知内容 /// public string noticeContent = "自动化已经执行";//string.Empty; } /// /// 推送配置 /// [Serializable] public class PushConfigs { /// /// 推送方式(APP/SMS) /// public string pushMethod = "APP"; /// /// 推送内容 /// //public string pushContent = string.Empty; /// /// 推送目标 /// public List pushTarget = new List {}; } }