From 94e4e5b9fd3da964c44b7b14227d6fe2bbb426d7 Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 02 四月 2020 13:56:39 +0800 Subject: [PATCH] 2020-04-02-2 --- ZigbeeApp/Shared/Common/SceneTargetDeviceUI.cs | 160 +++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 137 insertions(+), 23 deletions(-) diff --git a/ZigbeeApp/Shared/Common/SceneTargetDeviceUI.cs b/ZigbeeApp/Shared/Common/SceneTargetDeviceUI.cs old mode 100644 new mode 100755 index 06a88f2..12d007b --- a/ZigbeeApp/Shared/Common/SceneTargetDeviceUI.cs +++ b/ZigbeeApp/Shared/Common/SceneTargetDeviceUI.cs @@ -1,6 +1,7 @@ 锘縰sing System; using System.Collections.Generic; using System.Globalization; +using ZigBee.Device; using static ZigBee.Device.Scene; namespace Shared.Common @@ -12,6 +13,10 @@ public class SceneTargetDeviceUI { /// <summary> + /// 鍦烘櫙娣诲姞瀵硅薄鐨勭被鍨� 榛樿0璁惧 2鏃堕棿娈� 1鍏朵粬鍦烘櫙 + /// </summary> + public int Type = 0; + /// <summary> /// 浠诲姟鍒楄〃涓殑鏁版嵁鍒楄〃 /// Type=0 瀛樺湪 /// </summary> @@ -20,50 +25,159 @@ /// 閫夋嫨鐨勮澶� /// Type=0 瀛樺湪 /// </summary> - public DeviceUI DeviceUI = new DeviceUI(); + public CommonDevice DeviceUI = new CommonDevice(); + /// <summary> - /// 閫夋嫨鐨勫満鏅� - /// Type=2 瀛樺湪 - /// </summary> - public SceneUI SceneUI = new SceneUI(); - /// <summary> + /// Type=0銆�1銆�2 瀛樺湪 /// 寤舵椂鏃堕棿 - /// Type=1 瀛樺湪 /// </summary> public int DelayTime = 0; /// <summary> - /// 鍦烘櫙娣诲姞瀵硅薄鐨勭被鍨� 榛樿0璁惧 1鏃堕棿娈� 2鍦烘櫙 + /// 褰揟ype=2鏃跺瓨鍦� + /// 寤舵椂鎵ц搴忓彿锛岃〃绀虹鍑犱釜寤舵椂鍔ㄤ綔 /// </summary> - public int Type = 0; + public int DelayTimeSerialNumber = 0; + + /// <summary> + /// 閫夋嫨鐨勫満鏅� + /// Type=1 瀛樺湪 + /// </summary> + public SceneUI SceneUI = new SceneUI(); /// <summary> /// 浣滀负鎴愬憳鐨勫叾浠栧満鏅痠d銆� - /// Type=2 瀛樺湪 + /// Type=1 瀛樺湪 /// </summary> public int ElseScenesId = 0; /// <summary> /// 鍦烘櫙鍚嶇О - /// Type=2 瀛樺湪 + /// Type=1 瀛樺湪 /// </summary> public string SceneName = string.Empty; /// <summary> /// 鍞竴鏍囪瘑--HashCode /// DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo) /// </summary> - public string SceneTargetDeviceUIID + public string SceneTargetDeviceUIID = Guid.NewGuid().ToString(); + + /// <summary> + /// GetDeviceStatu + /// </summary> + /// <returns></returns> + public string GetDeviceStatu() { - get + if (DeviceUI.Type == ZigBee.Device.DeviceType.OnOffOutput) { - return GetHashCode().ToString(); + if (TaskList.Count == 0) + { + return null; + } + if (TaskList[0].Data1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.Open); + } + return Language.StringByID(R.MyInternationalizationString.Shut); + } + else if (DeviceUI.Type == ZigBee.Device.DeviceType.AirSwitch) + { + if (TaskList.Count == 0) + { + return null; + } + if (TaskList[0].Data1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.Open); + } + return Language.StringByID(R.MyInternationalizationString.Shut); + } + else if (DeviceUI.Type == ZigBee.Device.DeviceType.DimmableLight) + { + if (TaskList.Count == 0) + { + return null; + } + if (TaskList[0].Data1 == 0) + { + return Language.StringByID(R.MyInternationalizationString.Shut); + } + return $"{(int)(TaskList[0].Data1 * 1.0 / 254 * 100)}%"; + } + else if (DeviceUI.Type == ZigBee.Device.DeviceType.WindowCoveringDevice) + { + if (TaskList.Count == 0) + { + return null; + } + if (TaskList[0].Data1 == 1) + { + return Language.StringByID(R.MyInternationalizationString.Shut); + } + return $"{TaskList[0].Data2}%"; + } + else if (DeviceUI.Type == ZigBee.Device.DeviceType.Thermostat) + { + //娓╁害锛屾ā寮忥紝椋庨�� + string tempareture = string.Empty; + string model = string.Empty; + string wind = string.Empty; + if (TaskList.Count == 0) + { + return null; + } + foreach(var taskListInfo in TaskList) + { + if(taskListInfo.Data1==3) + { + if(taskListInfo.Data2==0) + { + return Language.StringByID(R.MyInternationalizationString.Shut); + } + else if(taskListInfo.Data2==1) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Auto); + } + else if(taskListInfo.Data2==3) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Cool); + } + else if (taskListInfo.Data2 == 4) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Heat); + } + else if (taskListInfo.Data2 == 7) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_FanOnly); + } + else if (taskListInfo.Data2 == 8) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Dry); + } + } + else if(taskListInfo.Data1==4 || taskListInfo.Data1==5) + { + tempareture = $"{ taskListInfo.Data2/100} 鈩�"; + } + else if (taskListInfo.Data1 == 6) + { + if (taskListInfo.Data2 == 1) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Low); + } + else if(taskListInfo.Data2 ==2) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Middle); + } + else if (taskListInfo.Data2 == 3) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Height); + } + } + } + return $"{tempareture},{model},{wind}"; + } + else + { + return null; } } - - //public string TargetHasd - //{ - // get - // { - // return GetHashCode().ToString(); - // } - //} - } } -- Gitblit v1.8.0