From e1a8f2f7e4d850beedeb1469610b878c1427e976 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期三, 15 十二月 2021 09:01:53 +0800
Subject: [PATCH] 更新

---
 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs |  143 +++++++++++++++++++++++++++++++----------------
 1 files changed, 95 insertions(+), 48 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
index 8ad7ace..56c921d 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs
@@ -51,7 +51,14 @@
 
         AC acFunction = new AC();
 
-
+        /// <summary>
+        /// 鎺у埗鏃堕棿
+        /// </summary>
+        DateTime controlTime = DateTime.MinValue.AddDays(10);
+        /// <summary>
+        /// 鎺у埗娓╁害
+        /// </summary>
+        int temp = 16;
 
         #endregion
 
@@ -62,6 +69,19 @@
         /// </summary>
         public override void InitFrameWhiteContent()
         {
+
+            var sk = device.GetAttribute(FunctionAttributeKey.SetTemp);
+            if (sk != null)
+            {
+                if (sk.min == 0)
+                {
+                    sk.min = 16;
+                }
+                if (sk.max == 0)
+                {
+                    sk.max = 32;
+                }
+            }
 
             base.ShowColltionButton = false;
             base.SetTitleText(Language.StringByID(StringId.Electric));
@@ -76,7 +96,19 @@
             //璇诲彇鐘舵��
             new System.Threading.Thread(() =>
             {
-                Control.Ins.SendReadCommand(device);
+                while (true)
+                {
+                    if(controlTime == DateTime.MinValue)
+                    {
+
+                    }
+                    else if (controlTime.AddSeconds(2)<DateTime.Now)
+                    {
+                        Control.Ins.SendReadCommand(device);
+                        controlTime = DateTime.MinValue;
+                    }
+                    System.Threading.Thread.Sleep(1000);
+                }
             })
             { IsBackground = true }.Start();
         }
@@ -86,7 +118,7 @@
         /// </summary>
         private void InitFrameWhiteContent1()
         {
-
+            temp = (int)Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp));
             arcBar = new DiyArcSeekBar()
             {
                 Gravity = Gravity.CenterHorizontal,
@@ -726,19 +758,19 @@
                 {
 
                     var btn = new Button()
-                {
-                    Gravity = Gravity.CenterVertical,
-                    Width = Application.GetRealWidth(88),
-                    Height = Application.GetRealHeight(40),
-                    Radius = (uint)Application.GetRealHeight(18),
-                    BorderColor = CSS_Color.PromptingColor1,
-                    BorderWidth = (uint)Application.GetRealWidth(2),
-                    TextAlignment = TextAlignment.Center,
-                    TextSize = CSS_FontSize.TextFontSize,
-                    TextColor = CSS_Color.FirstLevelTitleColor,
-                    SelectedTextColor = CSS_Color.MainBackgroundColor,
-                    SelectedBackgroundColor = CSS_Color.MainColor,
-                };
+                    {
+                        Gravity = Gravity.CenterVertical,
+                        Width = Application.GetRealWidth(88),
+                        Height = Application.GetRealHeight(40),
+                        Radius = (uint)Application.GetRealHeight(18),
+                        BorderColor = CSS_Color.PromptingColor1,
+                        BorderWidth = (uint)Application.GetRealWidth(2),
+                        TextAlignment = TextAlignment.Center,
+                        TextSize = CSS_FontSize.TextFontSize,
+                        TextColor = CSS_Color.FirstLevelTitleColor,
+                        SelectedTextColor = CSS_Color.MainBackgroundColor,
+                        SelectedBackgroundColor = CSS_Color.MainColor,
+                    };
                 if (attr.value.Count > 0)
                 {
                     btn.Text = attr.value[0];
@@ -813,12 +845,14 @@
                 {
                     return;
                 }
-                var temp = (int)Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp));
-                if (temp <= device.GetAttribute(FunctionAttributeKey.Mode).min)
+                
+                if (temp <= device.GetAttribute(FunctionAttributeKey.SetTemp).min)
                 {
                     return;
                 }
-                temp--;
+                --temp;
+                Console.WriteLine($"temp == {temp}");
+                controlTime = DateTime.Now;
                 arcBar.Progress = temp;
                 btnTemp.Text = temp.ToString();
                 device.SetAttrState(FunctionAttributeKey.SetTemp, temp.ToString());
@@ -832,12 +866,12 @@
                 {
                     return;
                 }
-                var temp = (int)Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp));
                 if (temp >= device.GetAttribute(FunctionAttributeKey.SetTemp).max)
                 {
                     return;
                 }
-                temp++;
+                ++temp;
+                controlTime = DateTime.Now;
                 arcBar.Progress = temp;
                 btnTemp.Text = temp.ToString();
                 device.SetAttrState(FunctionAttributeKey.SetTemp, temp.ToString());
@@ -933,38 +967,51 @@
         {
             Application.RunOnMainThread(() =>
             {
-                btnTemp.Text = Convert.ToDouble( device.GetAttrState(FunctionAttributeKey.SetTemp)).ToString();
-                btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.RoomTemp))) + "掳C";
-                btnMode.SelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode));
-                btnSwing.SelectedImagePath = acFunction.GetSwingIconPath(device.GetAttrState(FunctionAttributeKey.Swing));
-                btnWindSpeed.SelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed));
-                btnMode.UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode),false);
-                btnSwing.UnSelectedImagePath = acFunction.GetSwingIconPath(device.GetAttrState(FunctionAttributeKey.Swing),false);
-                btnWindSpeed.UnSelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed),false);
-                arcBar.Progress = Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp)));
-                if (device.trait_on_off.curValue.ToString() == "on")
+                //app鑷繁鎺у埗鐨勪笉鐢ㄦ洿鏂帮紝浼氶�犳垚璺冲姩
+                if (controlTime.AddSeconds(2) > DateTime.Now)
                 {
-                    btnMode.IsSelected = btnSwing.IsSelected = btnWindSpeed.IsSelected = true;
-                    arcBar.IsOffline = false;
-                    btnSwitch.IsSelected = true;
-                    arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png";
-                    if (device.GetAttrState(FunctionAttributeKey.Mode) == "fan")
-                    {
-                        arcBar.IsClickable = false;
-                    }
-                    else
-                    {
-                        arcBar.IsClickable = true;
-                    }
+                    return;
                 }
                 else
                 {
-                    btnMode.IsSelected = btnSwing.IsSelected = btnWindSpeed.IsSelected = false;
-                    arcBar.IsOffline = true;
-                    btnSwitch.IsSelected = false;
-                    arcBar.IsClickable = false;
-                    arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png";
+                    btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.RoomTemp))) + "掳C";
+                    btnMode.SelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode));
+                    btnSwing.SelectedImagePath = acFunction.GetSwingIconPath(device.GetAttrState(FunctionAttributeKey.Swing));
+                    btnWindSpeed.SelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed));
+                    btnMode.UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode), false);
+                    btnSwing.UnSelectedImagePath = acFunction.GetSwingIconPath(device.GetAttrState(FunctionAttributeKey.Swing), false);
+                    btnWindSpeed.UnSelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed), false);
+                    temp = Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp)));
+
+
+                    arcBar.Progress = temp;
+                    btnTemp.Text = temp.ToString() ;
+
+                    if (device.trait_on_off.curValue.ToString() == "on")
+                    {
+                        btnMode.IsSelected = btnSwing.IsSelected = btnWindSpeed.IsSelected = true;
+                        arcBar.IsOffline = false;
+                        btnSwitch.IsSelected = true;
+                        arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png";
+                        if (device.GetAttrState(FunctionAttributeKey.Mode) == "fan")
+                        {
+                            arcBar.IsClickable = false;
+                        }
+                        else
+                        {
+                            arcBar.IsClickable = true;
+                        }
+                    }
+                    else
+                    {
+                        btnMode.IsSelected = btnSwing.IsSelected = btnWindSpeed.IsSelected = false;
+                        arcBar.IsOffline = true;
+                        btnSwitch.IsSelected = false;
+                        arcBar.IsClickable = false;
+                        arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png";
+                    }
                 }
+
             });
         }
 

--
Gitblit v1.8.0