From 330e3ae4cdd1e9facb14b6ea2b3e609166c04fd3 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期二, 12 一月 2021 16:00:27 +0800 Subject: [PATCH] 2021-1-12-1 --- HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs | 237 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 222 insertions(+), 15 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs b/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs index 0012064..c652a45 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/AC/ACPageBLL.cs @@ -1,18 +1,82 @@ 锘縰sing System; +using HDL_ON.DriverLayer; using HDL_ON.Entity; +using HDL_ON.UI.CSS; +using Shared; + namespace HDL_ON.UI { public partial class ACPage { + static DateTime updataTime = DateTime.MinValue; + public static void UpdataStates(AC uAc) + { + try + { + Application.RunOnMainThread(() => + { + if (bodyView == null) + { + return; + } + if (updataTime.AddMilliseconds(300) > DateTime.Now) + { + return; + } + updataTime = DateTime.Now; + //bodyView.arcBar.IsOffline = bodyView.aC.trait_on_off.curValue.ToString() != "on"; + //bodyView.btnSwitch.IsSelected = uAc.trait_on_off.curValue.ToString() == "on"; + //if (uAc.refreshTime.AddMilliseconds(500) < DateTime.Now) + //{ + // bodyView.arcBar.Progress = Convert.ToInt32(Convert.ToDouble(uAc.trait_temp.curValue)); + //} + //bodyView.arcBar.ThumbImagePath = uAc.trait_on_off.curValue.ToString() == "on" ? "FunctionIcon/AC/DiyThumbIconOn.png" : "FunctionIcon/AC/DiyThumbIcon.png"; + //bodyView.arcBar.IsClickable = uAc.trait_on_off.curValue.ToString() == "on"; + bodyView.btnTemp.Text = uAc.trait_temp.curValue.ToString(); + bodyView.btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(uAc.trait_IndoorTemp.curValue)) + "掳C"; + bodyView.btnMode.UnSelectedImagePath = uAc.curModeImage; + bodyView.btnWindSpeed.UnSelectedImagePath = uAc.curFanImage; + bodyView.arcBar.Progress = Convert.ToInt32(Convert.ToDouble(uAc.trait_temp.curValue)); + if (uAc.trait_on_off.curValue.ToString() == "on") + { + bodyView.arcBar.IsOffline = false; + bodyView.btnSwitch.IsSelected = true; + bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png"; + if (uAc.trait_mode.curValue.ToString() == "fan") + { + bodyView.arcBar.IsClickable = false; + } + else + { + bodyView.arcBar.IsClickable = true; + } + } + else + { + bodyView.arcBar.IsOffline = true; + bodyView.btnSwitch.IsSelected = false; + bodyView.arcBar.IsClickable = false; + bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png"; + } + + }); + } + catch (Exception ex) + { + MainPage.Log($"acpage updata error {ex.Message}"); + } + } + void LoadEventList() { LoadCollectionEvent(); - LoadEvent_ModeChange(); + LoadEvent_AcStatesChange(); LoadEvent_TempChange(); //鍥為��鍒锋柊淇℃伅浜嬩欢 - actionRefresh = () => { - btnFunctionName.Text = btnFunctionName_Out.Text = function.name; - btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = function.GetRoomListName(); + actionRefresh = () => + { + btnFunctionName.Text = btnFunctionName_Out.Text = aC.name; + btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = aC.GetRoomListName(); }; } @@ -21,9 +85,10 @@ /// </summary> void LoadCollectionEvent() { - btnCollection.MouseUpEventHandler += (sender, e) => { - btnCollection.IsSelected = function.collection = btnCollection_Out.IsSelected = !btnCollection.IsSelected; - DB_ResidenceData.residenceData.SaveResidenceData(); + btnCollection.MouseUpEventHandler += (sender, e) => + { + btnCollection.IsSelected = aC.collect = btnCollection_Out.IsSelected = !btnCollection.IsSelected; + aC.CollectFunction(); }; } @@ -32,19 +97,161 @@ /// </summary> void LoadEvent_TempChange() { - btnMinus.MouseUpEventHandler = (sender, e) => { - //function as AC + btnMinus.MouseUpEventHandler = (sender, e) => + { + if (aC.trait_on_off.curValue.ToString() == "off" || aC.trait_mode.curValue.ToString() == "fan") + { + return; + } + var temp = Convert.ToInt32(aC.trait_temp.curValue); + if (temp <= aC.trait_temp.min) + { + return; + } + temp--; + arcBar.Progress = temp; + btnTemp.Text = temp.ToString(); + aC.trait_temp.curValue = temp.ToString(); + //Control.Send(CommandType_A.write, aC); + System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + d.Add(FunctionAttributeKey.SetTemp, temp.ToString()); + Control.Ins.SendWriteCommand(aC, d); + }; + btnPlus.MouseUpEventHandler = (sender, e) => + { + if (aC.trait_on_off.curValue.ToString() == "off" || aC.trait_mode.curValue.ToString() == "fan") + { + return; + } + var temp = Convert.ToInt32(aC.trait_temp.curValue); + if (temp >= aC.trait_temp.max) + { + return; + } + temp++; + arcBar.Progress = temp; + btnTemp.Text = temp.ToString(); + aC.trait_temp.curValue = temp.ToString(); + System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + d.Add(FunctionAttributeKey.SetTemp, aC.trait_temp.curValue.ToString()); + Control.Ins.SendWriteCommand(aC, d); + //aC.GetSendJObject + + }; + arcBar.OnStopTrackingTouchEvent = (sender, e) => + { + aC.trait_temp.curValue = arcBar.Progress.ToString(); + btnTemp.Text = aC.trait_temp.curValue.ToString(); + System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + d.Add(FunctionAttributeKey.SetTemp, aC.trait_temp.curValue.ToString()); + Control.Ins.SendWriteCommand(aC, d); + }; + arcBar.OnProgressChangedEvent = (sender, e) => + { + aC.trait_temp.curValue = e.ToString(); + btnTemp.Text = aC.trait_temp.curValue.ToString(); + }; + } + /// <summary> + /// 鎺у埗妯″紡浜嬩欢 + /// </summary> + void LoadEvent_AcStatesChange() + { + btnMode.MouseUpEventHandler = (sender, e) => + { + if (aC.trait_on_off.curValue.ToString() == "off") + { + return; + } + LoadDiv_ChangeModeView(); + }; + btnWindSpeed.MouseUpEventHandler = (sender, e) => + { + if (aC.trait_on_off.curValue.ToString() == "off") + { + return; + } + LoadDiv_ChangeFanView(); + }; + + btnSwitch.MouseUpEventHandler = (sender, e) => + { + btnSwitch.IsSelected = !btnSwitch.IsSelected; + aC.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off"; + if (aC.trait_on_off.curValue.ToString() == "on") + { + arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png"; + btnSwitch.IsSelected = true; + arcBar.IsOffline = false; + } + else + { + arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png"; + btnSwitch.IsBold = false; + arcBar.IsOffline = true; + } + System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + d.Add(FunctionAttributeKey.OnOff, aC.trait_on_off.curValue.ToString()); + Control.Ins.SendWriteCommand(aC, d); }; } /// <summary> - /// 鎺у埗妯″紡浜嬩欢 + /// 鍔犺浇妯″紡鏀瑰彉浜嬩欢 /// </summary> - void LoadEvent_ModeChange() + void LoadEvent_ChangeMode(Dialog dialog, FrameLayout dialogView, Button btn1, Button btn2, string curMode) { - + EventHandler<MouseEventArgs> eventHandler = (sender, e) => + { + dialog.Close(); + }; + EventHandler<MouseEventArgs> eventHandler1 = (sender, e) => + { + btn1.IsSelected = btn2.IsSelected = true; + aC.trait_mode.curValue = curMode; + btnMode.UnSelectedImagePath = aC.curModeImage; + //Control.Send(CommandType_A.write, aC); + System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + btnMode.UnSelectedImagePath = btn1.UnSelectedImagePath; + d.Add(FunctionAttributeKey.Mode, curMode); + Control.Ins.SendWriteCommand(aC, d); + dialog.Close(); + if (aC.trait_mode.curValue.ToString() == "fan") + { + bodyView.arcBar.IsClickable = false; + } + else + { + bodyView.arcBar.IsClickable = true; + } + }; + btn1.MouseUpEventHandler = eventHandler1; + btn2.MouseUpEventHandler = eventHandler1; + dialogView.MouseUpEventHandler = eventHandler; } - - + /// <summary> + /// 鍔犺浇椋庨�熸敼鍙樹簨浠� + /// </summary> + void LoadEvent_ChangeFan(Dialog dialog, FrameLayout dialogView, Button btn1, Button btn2, string curFan) + { + EventHandler<MouseEventArgs> closeDialogEvent = (sender, e) => + { + dialog.Close(); + }; + EventHandler<MouseEventArgs> eventHandler1 = (sender, e) => + { + btn1.IsSelected = btn2.IsSelected = true; + aC.trait_fan.curValue = curFan; + btnWindSpeed.UnSelectedImagePath = aC.curFanImage; + System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); + d.Add(FunctionAttributeKey.FanSpeed, curFan); + Control.Ins.SendWriteCommand(aC, d); + btnWindSpeed.UnSelectedImagePath = btn1.UnSelectedImagePath; + dialog.Close(); + }; + btn1.MouseUpEventHandler = eventHandler1; + btn2.MouseUpEventHandler = eventHandler1; + dialogView.MouseUpEventHandler = closeDialogEvent; + } } -} +} \ No newline at end of file -- Gitblit v1.8.0