From 43b0d5870d528f23ecd6aeceb6cfd4325188b46f Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 01 七月 2021 15:50:43 +0800
Subject: [PATCH] Revert "1"

---
 HDL_ON/Entity/Function/FloorHeating.cs |  399 ++++++++++++++++++++++++++------------------------------
 1 files changed, 185 insertions(+), 214 deletions(-)

diff --git a/HDL_ON/Entity/Function/FloorHeating.cs b/HDL_ON/Entity/Function/FloorHeating.cs
index d9cf8b3..30ef6c0 100644
--- a/HDL_ON/Entity/Function/FloorHeating.cs
+++ b/HDL_ON/Entity/Function/FloorHeating.cs
@@ -1,154 +1,147 @@
 锘縰sing System;
 using System.Collections.Generic;
+using Shared;
 
 namespace HDL_ON.Entity
 {
-    public class FloorHeating : Function
+    public class FloorHeating
     {
-        /*
-        *鍦扮儹锛歵rait: [switch, mode, temperature, lock]
-        *灞炴�� 鎻忚堪
-        *switch	on/off
-        *mode    day, night,away, vacation, timer
-        *temperature value(鍙)
-        *lock	boolean(Lock閿佸畾鎺у埗)
-        *set_ point	up,down,value
-        */
-        public FloorHeating()
+        /// <summary>
+        /// 鑾峰彇娓╁害鍗曚綅bus鏍囪瘑
+        /// </summary>
+        /// <param name="function"></param>
+        /// <returns></returns>
+        public int GetTempUintIndex(Function function)
         {
+            var tt = function.GetAttrState(FunctionAttributeKey.TempType);
+            if (tt == "掳F")
+            {
+                return 1;
+            }
+            else
+            {
+                return 0;
+            }
         }
         /// <summary>
-        /// 褰撳墠娓╁害妯″紡
-        /// 0:鎽勬皬搴�
-        /// 1:鍗庢皬搴�
+        /// 鏍规嵁bus鏍囪瘑璁剧疆娓╁害鍗曚綅
         /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public int curTempType = 0;
+        /// <param name="function"></param>
+        /// <returns></returns>
+        public void SetTempUint(Function function, int index)
+        {
+            if (index == 0)
+            {
+                function.SetAttrState(FunctionAttributeKey.TempType, "掳C");
+            }
+            else
+            {
+                function.SetAttrState(FunctionAttributeKey.TempType, "掳F");
+            }
+        }
 
         /// <summary>
-        /// 宸ヤ綔妯″紡
+        /// 鑾峰彇bus鍗忚宸ヤ綔妯″紡index
         /// 0:鍦扮儹妯″紡锛�1:鍦板喎妯″紡锛�
         /// 2:鍦扮儹鍔熺巼妯″紡锛�3:鍦板喎鍔熺巼妯″紡锛�
         /// </summary>
-        public int workMode = 0;
-        /// <summary>
-        /// 褰撳墠娓╁害妯″紡瀛楃
-        /// </summary>
-        public string tempUnitString
+        public int GetWorkModeIndex(Function function)
         {
-            get
-            {
-                if (curTempType == 0)
-                {
-                    return "掳C";
-                }
-                else
-                {
-                    return "掳F";
-                }
-            }
-        }
-        Trait _trait_mode;
-        /// <summary>
-        /// 妯″紡灞炴��
-        /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public Trait trait_mode
-        {
-            get
-            {
-                if (_trait_mode == null)
-                {
-                    _trait_mode = function.Find((obj) => obj.name == "mode");
-                    //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
-                    if (_trait_mode == null)
-                    {
-                        _trait_mode = new Trait()
-                        {
-                            name = "mode",
-                            value_key = new List<string> { "day", "night", "away", "vacation", "timer" },
-                            max = 4,
-                            min = 0,
-                        };
-                    }
-                    _trait_mode.value = _trait_mode.value_key.Count > 0 ? _trait_mode.value_key[0] : "";
-                }
-                return _trait_mode;
-            }
+            var attr = function.GetAttrState(FunctionAttributeKey.WorkMode);
+            if (attr == "cool")
+                return 1;
+            return 0;
         }
 
         /// <summary>
-        /// 宸ヤ綔妯″紡瀵瑰簲鐨勫伐浣滄俯搴�
+        /// 璁剧疆bus鍗忚宸ヤ綔妯″紡index
+        /// 0:鍦扮儹妯″紡锛�1:鍦板喎妯″紡锛�
+        /// 2:鍦扮儹鍔熺巼妯″紡锛�3:鍦板喎鍔熺巼妯″紡锛�
         /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public Dictionary<string, byte> modeTemp = new Dictionary<string, byte>();
+        public void SetWorkModeIndex(Function function, int index)
+        {
+            if (index == 1)
+                function.SetAttrState(FunctionAttributeKey.WorkMode, "cool");
+            else
+                function.SetAttrState(FunctionAttributeKey.WorkMode, "heat");
+        }
 
         /// <summary>
-        /// 褰撳墠妯″紡绱㈠紩
-        /// bus鎺у埗鍛戒护浣跨敤
+        /// 鑾峰彇娓╁害妯″紡瀛楃
         /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public byte curModeIndex
+        public string GetTempUnitString(Function function)
         {
-            get
+            var tt = function.GetAttrState(FunctionAttributeKey.TempType);
+            if (tt == "0")
             {
-                try
-                {
-                    byte index = 0;
-                    switch (trait_mode.value.ToString())
-                    {
-                        case "day":
-                            index = 2;
-                            break;
-                        case "night":
-                            index = 3;
-                            break;
-                        case "away":
-                            index = 4;
-                            break;
-                        case "normal":
-                            index = 1;
-                            break;
-                        case "timer":
-                            index = 5;
-                            break;
-                        default:
-                            index = 0;
-                            break;
-                    }
-                    return index;
-                }
-                catch (Exception ex)
-                {
-                    MainPage.Log($"get curModeIndex error : {ex.Message}");
-                    return 0;
-                }
+                return "掳C";
             }
-            set
+            else
             {
-                switch (value)
-                {
-                    case 5:
-                        trait_mode.value = "timer";
-                        break;
-                    case 1:
-                        trait_mode.value = "normal";
-                        break;
-                    case 2:
-                        trait_mode.value = "day";
-                        break;
-                    case 3:
-                        trait_mode.value = "night";
-                        break;
-                    case 4:
-                        trait_mode.value = "away";
-                        break;
-                    default:
-                        trait_mode.value = "cool";
-                        break;
+                return tt;
+            }
+        }
 
-                }
+     
+
+        /// <summary>
+        /// 鑾峰彇bus鍗忚妯″紡绱㈠紩
+        /// </summary>
+        public byte GetModeIndex(Function function)
+        {
+            byte index = 0;
+            var mode = function.GetAttrState(FunctionAttributeKey.Mode);
+            switch (mode)
+            {
+                case "day":
+                    index = 2;
+                    break;
+                case "night":
+                    index = 3;
+                    break;
+                case "away":
+                    index = 4;
+                    break;
+                case "normal":
+                    index = 1;
+                    break;
+                case "timer":
+                    index = 5;
+                    break;
+                default:
+                    index = 0;
+                    break;
             }
+            return index;
+        }
+        /// <summary>
+        /// 璁剧疆bus鍗忚妯″紡绱㈠紩
+        /// </summary>
+        public void SetModeIndex(int value, Function function)
+        {
+            string mode = "timer";
+            switch (value)
+            {
+                case 5:
+                    mode = "timer";
+                    break;
+                case 1:
+                    mode = "normal";
+                    break;
+                case 2:
+                    mode = "day";
+                    break;
+                case 3:
+                    mode = "night";
+                    break;
+                case 4:
+                    mode = "away";
+                    break;
+                default:
+                    mode = "cool";
+                    break;
+            }
+            function.SetAttrState(FunctionAttributeKey.Mode, mode);
         }
 
         /// <summary>
@@ -158,110 +151,88 @@
         public byte timeFlag = 0;
 
         /// <summary>
-        /// 瀹ゅ唴娓╁害
+        /// 鑾峰彇妯″紡鐨刬con璺緞
+        /// <param name="lightingIcon">鑾峰彇鐨勫浘鏍囩被鍨嬶紝榛樿鏄偣浜�</param>
         /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public int indoorTemp = 20;
-
-
-        Trait _trait_temperature;
-        /// <summary>
-        /// 褰撳墠娓╁害
-        /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public double curTemp
+        public string GetModeIconPath(string modeValue, bool lighting = true)
         {
-            get
+            var imagePath = "FunctionIcon/AC/HeatingIcon.png";
+            //var key = function.GetAttrState(FunctionAttributeKey.Mode);
+            if (lighting)
             {
-                try
+                switch (modeValue)
                 {
-                    if (_trait_temperature == null)
-                    {
-                        _trait_temperature = function.Find((obj) => obj.name == "temperature");
-                        //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
-                        if (_trait_temperature == null)
-                        {
-                            _trait_temperature = new Trait()
-                            {
-                                name = "temperature",
-                                value_key = new List<string>(),
-                                max = 32,
-                                min = 5,
-                            };
-                        }
-                        _trait_temperature.value = 5;
-                    }
-                    return 5;
-                }
-                catch (Exception ex)
-                {
-                    MainPage.Log($"ac get temp error : {ex.Message}");
-                    return 5;
+                    case "day":
+                        imagePath = "FunctionIcon/AC/HeatingIcon.png";
+                        break;
+                    case "night":
+                        imagePath = "FunctionIcon/FloorHeating/NightIcon.png";
+                        break;
+                    case "away":
+                        imagePath = "FunctionIcon/FloorHeating/AwayIcon.png";
+                        break;
+                    case "timer":
+                        imagePath = "FunctionIcon/AC/AutoIcon.png";
+                        break;
+                    case "normal":
+                        imagePath = "FunctionIcon/FloorHeating/OrdinaryIcon.png";
+                        break;
+                    default:
+                        imagePath = "FunctionIcon/AC/HeatingIcon.png";
+                        break;
                 }
             }
-            set
+            else
             {
-                if (_trait_temperature == null)
+                switch (modeValue)
                 {
-                    _trait_temperature = function.Find((obj) => obj.name == "temperature");
-                    //鎵句笉鍒板睘鎬ч渶瑕佸0鏄庝竴涓紝闃叉鎶ラ敊闂��
-                    if (_trait_temperature == null)
-                    {
-                        _trait_temperature = new Trait()
-                        {
-                            name = "temperature",
-                            value_key = new List<string>(),
-                            max = 4,
-                            min = 0,
-                        };
-                    }
-                    _trait_temperature.value = _trait_temperature.value_key[_trait_temperature.min];
+                    case "day":
+                        imagePath = "FunctionIcon/AC/HeatingIconGray.png";
+                        break;
+                    case "night":
+                        imagePath = "FunctionIcon/FloorHeating/NightIconGray.png";
+                        break;
+                    case "away":
+                        imagePath = "FunctionIcon/FloorHeating/AwayIconGray.png";
+                        break;
+                    case "timer":
+                        imagePath = "FunctionIcon/AC/AutoIconGray.png";
+                        break;
+                    case "normal":
+                        imagePath = "FunctionIcon/FloorHeating/OrdinaryIconGray.png";
+                        break;
                 }
-                _trait_temperature.value = value;
             }
+            return imagePath;
         }
 
-        /// <summary>
-        /// 褰撳墠妯″紡鐨刬con璺緞
-        /// </summary>
-        [Newtonsoft.Json.JsonIgnore]
-        public string curModeImage
-        {
-            get
-            {
-                try
-                {
-                    var imagePath = "FunctionIcon/AC/HeatingIcon.png";
-                    switch (trait_mode.value)
-                    {
-                        case "day":
-                            imagePath = "FunctionIcon/AC/HeatingIcon.png";
-                            break;
-                        case "night":
-                            imagePath = "FunctionIcon/FloorHeating/NightIcon.png";
-                            break;
-                        case "away":
-                            imagePath = "FunctionIcon/FloorHeating/AwayIcon.png";
-                            break;
-                        case "timer":
-                            imagePath = "FunctionIcon/AC/AutoIcon.png";
-                            break;
-                        case "normal":
-                            imagePath = "FunctionIcon/FloorHeating/OrdinaryIcon.png";
-                            break;
-                        default:
-                            imagePath = "FunctionIcon/AC/HeatingIcon.png";
-                            break;
-                    }
-                    return imagePath;
-                }
-                catch (Exception ex)
-                {
-                    MainPage.Log($"ac ge curModeImage error : {ex.Message}");
-                    return "FunctionIcon/AC/CoolIcon.png";
-                }
-            }
-        }
 
+        /// <summary>
+        /// 鑾峰彇妯″紡灞炴�ф枃鏈�
+        /// </summary>
+        /// <returns></returns>
+        public string GetModeAttrText(string value)
+        {
+            string text = "";
+            switch (value)
+            {
+                case "day":
+                    text = Language.StringByID(StringId.Day);
+                    break;
+                case "night":
+                    text = Language.StringByID(StringId.Night);
+                    break;
+                case "away":
+                    text = Language.StringByID(StringId.Away);
+                    break;
+                case "timer":
+                    text = Language.StringByID(StringId.Auto);
+                    break;
+                case "normal":
+                    text = Language.StringByID(StringId.Normal);
+                    break;
+            }
+            return text;
+        }
     }
 }

--
Gitblit v1.8.0