| | |
| | | /// 获取LogicId的方法 |
| | | /// </summary> |
| | | /// <returns>The logic identifier.</returns> |
| | | public static async System.Threading.Tasks.Task<List<int>> GetLogicId() |
| | | public static async System.Threading.Tasks.Task<List<int>> GetLogicId(int LogicType) |
| | | { |
| | | return await System.Threading.Tasks.Task.Run(async () => |
| | | { |
| | |
| | | mainGateWay.GwResDataAction += action; |
| | | |
| | | var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 2004 } }; |
| | | var jObjectdata1 = new JObject { { "LogicType", LogicType } }; |
| | | jObject.Add("Data", jObjectdata1); |
| | | mainGateWay?.Send("Logic/GetLogicList", jObject.ToString()); |
| | | //await System.Threading.Tasks.Task.Run(async () => |
| | | //{ |
| | |
| | | /// 获取Logic的方法 |
| | | /// </summary> |
| | | /// <returns>The logic identifier.</returns> |
| | | public static async System.Threading.Tasks.Task<Common.Logic> GetLogic(int LogicId) |
| | | public static async System.Threading.Tasks.Task<Common.Logic> GetLogic(int LogicId,int LogicType) |
| | | { |
| | | return await System.Threading.Tasks.Task.Run(async () => |
| | | { |
| | |
| | | { |
| | | var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 2002 } }; |
| | | var data = new JObject { |
| | | { "LogicId",LogicId} |
| | | { "LogicId",LogicId}, |
| | | { "LogicType",LogicType} |
| | | }; |
| | | jObject.Add("Data", data); |
| | | ZbGateway.MainGateWay?.Send("Logic/GetLogicInfo", jObject.ToString()); |
| | |
| | | /// 获取Logic列表的方法 |
| | | /// </summary> |
| | | /// <returns>The logic identifier.</returns> |
| | | public static async System.Threading.Tasks.Task<List<Common.Logic>> ReadList(int sum) |
| | | public static async System.Threading.Tasks.Task<List<Common.Logic>> ReadList(int sum,int LogicType) |
| | | { |
| | | return await System.Threading.Tasks.Task.Run(async () => |
| | | { |
| | | |
| | | var listLogic = new List<Common.Logic>(); |
| | | bool @bool = false; |
| | | // bool @bool = false; |
| | | Action<string, string> action = (topic, data) => |
| | | { |
| | | var gatewayID = topic.Split('/')[0]; |
| | |
| | | logic.LogicId = int.Parse(Logicifon["LogicId"].ToString()); |
| | | logic.IsEnable = int.Parse(Logicifon["IsEnable"].ToString()); |
| | | logic.LogicName = Logicifon["LogicName"].ToString(); |
| | | logic.LogicType = int.Parse(Logicifon["LogicType"].ToString()); |
| | | logic.Relationship = int.Parse(Logicifon["Relationship"].ToString()); |
| | | logic.TimeAttribute = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.TimeAttributeObj>(Logicifon["TimeAttribute"].ToString()); |
| | | logic.Conditions = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(Logicifon["Conditions"].ToString()); |
| | |
| | | } |
| | | |
| | | } |
| | | if (topic == $"{gatewayID}/Logic/AllLogicNum_Respon") |
| | | { |
| | | @bool = true; |
| | | } |
| | | //if (topic == $"{gatewayID}/Logic/AllLogicNum_Respon") |
| | | //{ |
| | | // @bool = true; |
| | | //} |
| | | }; |
| | | var mainGateWay = ZbGateway.MainGateWay; |
| | | if (mainGateWay == null) |
| | |
| | | try |
| | | { |
| | | var jObject = new JObject { { "Cluster_ID", 0 }, { "Command", 2015 } }; |
| | | var jObjectdata = new JObject { { "LogicType", LogicType } }; |
| | | jObject.Add("Data", jObjectdata); |
| | | ZbGateway.MainGateWay?.Send("Logic/GetAllLogicListInfo", jObject.ToString()); |
| | | } |
| | | catch { } |
| | |
| | | while ((DateTime.Now - dateTime).TotalMilliseconds < 8 * 1000) |
| | | { |
| | | await System.Threading.Tasks.Task.Delay(100); |
| | | //if (sum == listLogic.Count) |
| | | //{ |
| | | // break; |
| | | //} |
| | | if (@bool) |
| | | if (sum == listLogic.Count) |
| | | { |
| | | break; |
| | | } |
| | | //if (@bool) |
| | | //{ |
| | | // break; |
| | | //} |
| | | } |
| | | ZbGateway.MainGateWay.GwResDataAction -= action; |
| | | return listLogic; |