From 2109463fab2eb1caed189e4f258e0e763c5cea7b Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 07 十一月 2019 11:58:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev-tzy' into dev-wjc --- ZigbeeApp/Shared/Common/DeviceUI.cs | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 106 insertions(+), 2 deletions(-) diff --git a/ZigbeeApp/Shared/Common/DeviceUI.cs b/ZigbeeApp/Shared/Common/DeviceUI.cs index 7bad709..fa24c33 100755 --- a/ZigbeeApp/Shared/Common/DeviceUI.cs +++ b/ZigbeeApp/Shared/Common/DeviceUI.cs @@ -324,9 +324,9 @@ var room = Room.CurrentRoom.GetRoomByDevice(CommonDevice); if (room == null) { - return null; + return Language.StringByID(R.MyInternationalizationString.UnallocatedArea); } - var floorName = Shared.Common.Config.Instance.Home.GetFloorNameById(room.FloorId); + var floorName = Config.Instance.Home.GetFloorNameById(room.FloorId); if (floorName == null) { return room.Name; @@ -335,5 +335,109 @@ } #endregion + + /// <summary> + /// GetDeviceStatu + /// </summary> + /// <returns></returns> + public string GetDeviceStatu() + { + if (CommonDevice.Type == DeviceType.OnOffOutput) + { + if ((CommonDevice as ToggleLight).OnOffStatus == 1) + { + return Language.StringByID(R.MyInternationalizationString.Open); + } + return Language.StringByID(R.MyInternationalizationString.Shut); + } + else if (CommonDevice.Type == DeviceType.AirSwitch) + { + if ((CommonDevice as ZigBee.Device.AirSwitch).OnOffStatus == 1) + { + return Language.StringByID(R.MyInternationalizationString.Open); + } + return Language.StringByID(R.MyInternationalizationString.Shut); + } + else if (CommonDevice.Type == DeviceType.DimmableLight) + { + if ((CommonDevice as DimmableLight).OnOffStatus == 0 || (CommonDevice as DimmableLight).Level == 0) + { + return Language.StringByID(R.MyInternationalizationString.Shut); + } + return $"{(int)((CommonDevice as DimmableLight).Level * 1.0 / 254 * 100)}%"; + } + else if (CommonDevice.Type == DeviceType.WindowCoveringDevice) + { + if ((CommonDevice as Rollershade).WcdCurrentPositionLiftPercentage == 0) + { + return Language.StringByID(R.MyInternationalizationString.Shut); + } + return $"{(CommonDevice as Rollershade).WcdCurrentPositionLiftPercentage}%"; + } + else if (CommonDevice.Type == DeviceType.Thermostat) + { + //娓╁害锛屾ā寮忥紝椋庨�� + string tempareture = string.Empty; + string model = string.Empty; + string wind = string.Empty; + + var ac = CommonDevice as AC; + + if (ac.currentSystemMode == 0) + { + return Language.StringByID(R.MyInternationalizationString.Shut); + } + else if (ac.currentSystemMode == 1) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Auto); + tempareture = $"{ac.currentCoolingSetpoint} 鈩�"; + } + else if (ac.currentSystemMode == 3) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Cool); + tempareture = $"{ac.currentCoolingSetpoint} 鈩�"; + } + else if (ac.currentSystemMode == 4) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Heat); + tempareture = $"{ac.currentHeatingSetpoint} 鈩�"; + } + else if (ac.currentSystemMode == 7) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_FanOnly); + } + else if (ac.currentSystemMode == 8) + { + model = Language.StringByID(R.MyInternationalizationString.Mode_Dry); + tempareture = $"{ac.currentCoolingSetpoint} 鈩�"; + } + + if (ac.currentFanMode == 1) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Low); + } + else if (ac.currentFanMode == 2) + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Middle); + } + else + { + wind = Language.StringByID(R.MyInternationalizationString.Fan_Height); + } + + if (string.IsNullOrEmpty(tempareture)) + { + return $"{model},{wind}"; + } + else + { + return $"{model},{wind},{tempareture}"; + } + } + else + { + return null; + } + } } } -- Gitblit v1.8.0