From 41f9c8837b0551c68f8fd798c06951fa716b7ab8 Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期一, 11 一月 2021 14:05:29 +0800 Subject: [PATCH] Merge branch 'NewFilePath' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into NewFilePath --- HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs | 232 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 197 insertions(+), 35 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs old mode 100755 new mode 100644 index b520c56..c859bcb --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs @@ -1,6 +1,8 @@ 锘縰sing System; using Shared; using System.Collections.Generic; +using HDL_ON.Entity; + namespace HDL_ON.UI.UI2.Intelligence.Automation { public class InpOrOutLogicMethod @@ -61,28 +63,28 @@ //鐢╯id鎵惧埌璁惧锛� var device = LogicMethod.GetDevice(inputCondition.sid); //鐢ㄨ澶囩殑functionType绫诲瀷鎵惧埌瀵瑰簲鍥炬爣锛� - inputView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.functionType); + inputView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.spk); //鏄剧ず璁惧鍚嶇О inputView.btnText.Text = device.name; //鏀瑰彉璁惧鍚嶇О鏄剧ず鎺т欢瀹藉害 inputView.btnText.Width = Application.GetRealWidth(80); //鍖哄埆涓嶅悓璁惧锛屾樉绀轰笉鍚岃澶囩姸鎬� - switch (device.functionType) + switch (device.spk) { //寮�鍏崇伅鍏� light.Switch - case FunctionType.Dimmer: - case FunctionType.RGB: - case FunctionType.RGBW: - case FunctionType.ColorTemperature: - case FunctionType.Relay: + case SPK.LightDimming: + case SPK.LightRGB: + case SPK.LightRGBW: + case SPK.LightCCT: + case SPK.LightSwitch: //绐楀笜 - case FunctionType.Curtain: - case FunctionType.RollingShutter: - case FunctionType.MotorCurtain: + case SPK.CurtainSwitch: + case SPK.CurtainRoller: + case SPK.CurtainTrietex: //绌鸿皟 - case FunctionType.AC: + case SPK.AcStandard: //鍦扮儹 - case FunctionType.FloorHeating: + case SPK.FloorHeatStandard: {//寮�鍏崇伅 foreach (var dic in dicList) { @@ -206,7 +208,7 @@ //鐢╯id鎵惧埌璁惧锛� var device = LogicMethod.GetDevice(outputTarget.sid); //鐢ㄨ澶囩殑functionType绫诲瀷鎵惧埌瀵瑰簲鍥炬爣锛� - targetView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.functionType); + targetView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.spk); //鏄剧ず璁惧鍚嶇О targetView.btnText.Text = device.name; //鏀瑰彉璁惧鍚嶇О鏄剧ず鎺т欢瀹藉害 @@ -214,9 +216,9 @@ //绗竴涓彉閲忔樉绀虹姸鎬佸�� string stateStr = ""; //鍖哄埆涓嶅悓璁惧锛屾樉绀轰笉鍚岃澶囩姸鎬� - switch (device.functionType) + switch (device.spk) { - case FunctionType.Relay: + case SPK.LightSwitch: {//寮�鍏崇伅 foreach (var dic in dicList) @@ -235,10 +237,10 @@ targetView.btnState.Text = stateStr; } break; - case FunctionType.RGB: - case FunctionType.RGBW: - case FunctionType.ColorTemperature: - case FunctionType.Dimmer: + case SPK.LightRGB: + case SPK.LightRGBW: + case SPK.LightCCT: + case SPK.LightDimming: { string on_off = GetKeyValue("on_off", dicList); string brightness = GetKeyValue("brightness", dicList); @@ -261,9 +263,9 @@ targetView.btnState.Text = stateStr; } break; - case FunctionType.Curtain: - case FunctionType.MotorCurtain: - case FunctionType.RollingShutter: + case SPK.CurtainSwitch: + case SPK.CurtainTrietex: + case SPK.CurtainRoller: { foreach (var dic in dicList) { @@ -290,7 +292,7 @@ targetView.btnState.Text = stateStr; } break; - case FunctionType.AC: { + case SPK.AcStandard: { string on_off = GetKeyValue("on_off", dicList); string set_temp = GetKeyValue("set_temp", dicList); string mode = GetKeyValue("mode", dicList); @@ -386,7 +388,7 @@ } break; - case FunctionType.FloorHeating: + case SPK.FloorHeatStandard: { string on_off = GetKeyValue("on_off", dicList); string set_temp = GetKeyValue("set_temp", dicList); @@ -572,10 +574,10 @@ /// <param name="button4">鏄剧ずBtn</param> public static void EditState(Entity.Function device, List<Dictionary<string, string>> dicList, Button button1, Button button2, Button button3, Button button4) { - switch (device.functionType) + switch (device.spk) { //寮�鍏崇伅鍏� - case FunctionType.Relay: + case SPK.LightSwitch: { foreach (var dic in dicList) { @@ -591,10 +593,10 @@ } } break; - case FunctionType.Dimmer: - case FunctionType.RGB: - case FunctionType.RGBW: - case FunctionType.ColorTemperature: + case SPK.LightDimming: + case SPK.LightRGB: + case SPK.LightRGBW: + case SPK.LightCCT: { foreach (var dic in dicList) { @@ -624,9 +626,9 @@ } } break; - case FunctionType.Curtain: - case FunctionType.MotorCurtain: - case FunctionType.RollingShutter: + case SPK.CurtainSwitch: + case SPK.CurtainTrietex: + case SPK.CurtainRoller: { foreach (var dic in dicList) { @@ -652,7 +654,7 @@ } } break; - case FunctionType.AC: + case SPK.AcStandard: { foreach (var dic in dicList) { @@ -748,7 +750,7 @@ } break; - case FunctionType.FloorHeating: + case SPK.FloorHeatStandard: { foreach (var dic in dicList) @@ -844,5 +846,165 @@ } return valueStr; } + + /// <summary> + ///鑾峰彇鑷姩鍖栧悕绉� + /// </summary> + /// <returns> 鏂板缓鑷姩鍖栧懡鍚嶈鍒�</returns> + public static string GetLogicName(Logic logic) + { + + string name = ""; + try + { + //榛樿鍙栫涓�涓潯浠� + Input inputCondition = logic.input[0]; + //鏄剧ず鏉′欢鍚勭绫诲瀷鐘舵�� + switch (inputCondition.condition_type) + { + case "1": + { + name = Language.StringByID(StringId.hour) + "-"; + } + break; + case "2": + { + name = Language.StringByID(StringId.timeHorizon) + "-"; + + } + break; + case "3": + { + //鐢╯id鎵惧埌璁惧锛� + var device = LogicMethod.GetDevice(inputCondition.sid); + name = device.name + "-"; + } + break; + + } + //榛樿鍙栫涓�涓洰鏍� + Output outputTarget = logic.output[0]; + List<Dictionary<string, string>> dicList = outputTarget.status as List<Dictionary<string, string>>; + //鏄剧ず杈撳嚭鏉′欢鍚勭绫诲瀷鐘舵�� + switch (outputTarget.target_type) + { + case "1": + { + //鐢╯id鎵惧埌璁惧锛� + var device = LogicMethod.GetDevice(outputTarget.sid); + //鏄剧ず璁惧鍚嶇О + name += device.name; + string stateStr = ""; + //鍖哄埆涓嶅悓璁惧锛屾樉绀轰笉鍚岃澶囩姸鎬� + switch (device.spk) + { + case SPK.LightSwitch: + {//寮�鍏崇伅 + + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "on") + { + stateStr = Language.StringByID(StringId.onLogic); + + } + else + { + stateStr = Language.StringByID(StringId.offLogic); + } + } + } + break; + case SPK.LightRGB: + case SPK.LightRGBW: + case SPK.LightCCT: + case SPK.LightDimming: + { + string on_off = InpOrOutLogicMethod.GetKeyValue("on_off", dicList); + string brightness = InpOrOutLogicMethod.GetKeyValue("brightness", dicList); + if (on_off == "on" && brightness != "") + { + stateStr = Language.StringByID(StringId.onLogic) + brightness + "%"; + } + else if (on_off == "on") + { + stateStr = Language.StringByID(StringId.onLogic); + } + else if (on_off == "off") + { + stateStr = Language.StringByID(StringId.offLogic); + } + else if (brightness != "") + { + stateStr = brightness + "%"; + } + } + break; + case SPK.CurtainSwitch: + case SPK.CurtainTrietex: + case SPK.CurtainRoller: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + switch (value) + { + case "on": + { + stateStr = Language.StringByID(StringId.onLogic); + } + break; + case "off": + { + stateStr = Language.StringByID(StringId.offLogic); + } + break; + case "stop": + { + stateStr = Language.StringByID(StringId.stop); + } + break; + } + } + } + break; + case SPK.AcStandard: + case SPK.FloorHeatStandard: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "on") + { + stateStr = Language.StringByID(StringId.onLogic); + + } + else if (value == "off") + { + stateStr = Language.StringByID(StringId.offLogic); + } + } + + } + break; + + } + name += stateStr; + } + break; + case "2": + { + //鐢╯id鎵惧埌鍦烘櫙锛� + var scene = LogicMethod.GetSecne(outputTarget.sid); + name += scene.name; + + } + break; + } + } + catch { } + return name; + } } } -- Gitblit v1.8.0