| | |
| | | var jay = jArray[a]; |
| | | //数据返序列化为Logic对象 |
| | | var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); |
| | | Console.WriteLine("获取逻辑==="+str); |
| | | var logic = Newtonsoft.Json.JsonConvert.DeserializeObject<Logic>(str); |
| | | if (logic != null) |
| | | { |
| | |
| | | if (if_logic == null) |
| | | { |
| | | |
| | | //Logic newlogic = new Logic(); |
| | | //newlogic.name = logic.name; |
| | | //newlogic.userLogicId = logic.userLogicId; |
| | | //newlogic.sid = logic.sid; |
| | | //newlogic.relation = logic.relation; |
| | | //newlogic.enable = logic.enable; |
| | | //newlogic.cycle = logic.cycle; |
| | | //for (int i = 0; i < logic.input.Count; i++) |
| | | //{ |
| | | // if (logic.input[i] == null || string.IsNullOrEmpty(logic.input[i].condition_type)) |
| | | // { |
| | | // //防止调试软件乱传东西上来; |
| | | // //防止有空对象; |
| | | // //正常情况下不会出现的现象; |
| | | // continue; |
| | | // } |
| | | // newlogic.input.Add(logic.input[i]); |
| | | //} |
| | | //for (int i = 0; i < logic.output.Count; i++) |
| | | //{ |
| | | // if (logic.output[i] == null || string.IsNullOrEmpty(logic.output[i].target_type)) |
| | | // { |
| | | // //防止调试软件乱传东西上来; |
| | | // //防止有空对象; |
| | | // //正常情况下不会该现象; |
| | | // continue; |
| | | // } |
| | | // newlogic.output.Add(logic.output[i]); |
| | | //} |
| | | |
| | | Logic newlogic = new Logic(); |
| | | newlogic.name = logic.name; |
| | | newlogic.userLogicId = logic.userLogicId; |
| | | newlogic.sid = logic.sid; |
| | | newlogic.relation = logic.relation; |
| | | newlogic.enable = logic.enable; |
| | | newlogic.cycle = logic.cycle; |
| | | for (int i = 0; i < logic.input.Count; i++) |
| | | { |
| | | if (logic.input[i] == null || string.IsNullOrEmpty(logic.input[i].condition_type)) |
| | | { |
| | | //防止调试软件乱传东西上来; |
| | | //防止有空对象; |
| | | //正常情况下不会出现的现象; |
| | | continue; |
| | | } |
| | | newlogic.input.Add(logic.input[i]); |
| | | } |
| | | for (int i = 0; i < logic.output.Count; i++) |
| | | { |
| | | if (logic.output[i] == null || string.IsNullOrEmpty(logic.output[i].target_type)) |
| | | { |
| | | //防止调试软件乱传东西上来; |
| | | //防止有空对象; |
| | | //正常情况下不会该现象; |
| | | continue; |
| | | } |
| | | newlogic.output.Add(logic.output[i]); |
| | | } |
| | | newlogic.noticeConfig = logic.noticeConfig; |
| | | newlogic.pushConfigs = logic.pushConfigs; |
| | | //添加逻辑 |
| | | Logic.LogicList.Add(logic); |
| | | Logic.LogicList.Add(newlogic); |
| | | } |
| | | } |
| | | |
| | |
| | | //1-10(表示条件图标)自己局部定义为了显示选中条件类型图标 |
| | | //1-时间图标 |
| | | //2-功能图标 |
| | | //3-云端图标 |
| | | //4-场景图标 |
| | | for (int i = 0; i < logic.input.Count; i++) |
| | | { |
| | | |
| | | if (logic.input[i] == null) |
| | | continue; |
| | | var int1 = int.Parse(logic.input[i].condition_type); |
| | | int iconInt = 0; |
| | | switch (int1) |
| | |
| | | case 3: |
| | | { |
| | | iconInt = 2; |
| | | |
| | | } |
| | | break; |
| | | case 4: |
| | | case 6: |
| | | case 9: |
| | | { |
| | | iconInt = 3; |
| | | |
| | | } |
| | | break; |
| | | case 10: |
| | | { |
| | | iconInt = 4; |
| | | |
| | | } |
| | | break; |
| | |
| | | //12-20(表示目标图标)自己局部定义为了显示选中目标类型图标 |
| | | //12-功能图标 |
| | | //13-场景图标 |
| | | //14-安防图标 |
| | | //14-延时图标 |
| | | for (int i = 0; i < logic.output.Count; i++) |
| | | { |
| | |
| | | case 3: |
| | | { |
| | | iconInt = 14; |
| | | |
| | | } |
| | | break; |
| | | case 4: |
| | | { |
| | | iconInt = 15; |
| | | |
| | | } |
| | | break; |
| | |
| | | strIcon = "LogicIcon/selectTheFun.png"; |
| | | } |
| | | break; |
| | | case 3: |
| | | { |
| | | |
| | | strIcon = "LogicIcon/shiwaitianqi.png"; |
| | | } |
| | | break; |
| | | case 4: |
| | | { |
| | | |
| | | strIcon = "LogicIcon/selectTheScene.png"; |
| | | } |
| | | break; |
| | | case 11: |
| | | { |
| | | //分割条件和目标的图标 |
| | |
| | | break; |
| | | case 14: |
| | | { |
| | | |
| | | strIcon = "LogicIcon/security.png"; |
| | | } |
| | | break; |
| | | case 15: |
| | | { |
| | | //strIcon = "LogicIcon/timeicon.png"; |
| | | |
| | | } |
| | | break; |
| | | |
| | |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 判断网关类型 |
| | | /// 判断网关类型(0:bus网关;1:A协议网关) |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | /// <returns>true=A协议网关;false=bus网关</returns> |
| | | public static bool IsGatewayType |
| | | { |
| | | get |
| | |
| | | { |
| | | return true; |
| | | } |
| | | else |
| | | { |
| | | return false; |
| | | |
| | | } |
| | | return false; |
| | | } |
| | | } |
| | | } |