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/Scene.cs |   85 +++++++++++++++++++++++++++++++++++++++---
 1 files changed, 79 insertions(+), 6 deletions(-)

diff --git a/HDL_ON/Entity/Function/Scene.cs b/HDL_ON/Entity/Function/Scene.cs
index 386ded3..e4607ae 100644
--- a/HDL_ON/Entity/Function/Scene.cs
+++ b/HDL_ON/Entity/Function/Scene.cs
@@ -2,6 +2,7 @@
 using System.Collections.Generic;
 using HDL_ON.Common;
 using HDL_ON.DAL.Server;
+using HDL_ON.UI;
 using Shared;
 
 namespace HDL_ON.Entity
@@ -66,7 +67,7 @@
         /// </summary>
         public string delay = "0";
         /// <summary>
-        /// 鍦烘櫙鐨勬渶濂戒竴娆℃墽琛屾椂闂�
+        /// 鍦烘櫙鐨勬渶鍚庝竴娆℃墽琛屾椂闂�
         /// </summary>
         public string LastExecutionTime = "";
 
@@ -82,6 +83,11 @@
         /// 鏀惰棌鏍囪
         /// </summary>
         public bool collect = false;
+
+        /// <summary>
+        /// 鍒涘缓璇ュ満鏅殑鐢ㄦ埛ID
+        /// </summary>
+        public string userId = "";
 
         ///// <summary>
         ///// 鍦烘櫙鑳屾櫙
@@ -137,13 +143,14 @@
                 sTimeSpan = arry[0].ToString("X2") + arry[1].ToString("X2") + arry[2].ToString("X2") + arry[3].ToString("X2");
 
 
-                if (sTimeSpan.Length > 8)
+                if (sTimeSpan.Length >= 8)
                 {
                     sTimeSpan = sTimeSpan.Substring(0, 8);
                 }
                 else
                 {
-                    sTimeSpan = "00000000";
+                    sTimeSpan = Guid.NewGuid().ToString().Substring(0, 8);
+                    //sTimeSpan = "00000000";
                 }
 
                 sceneId = sOidBeginsWith + sTimeSpan;
@@ -339,7 +346,21 @@
         /// </summary>
         public string GetDelayText()
         {
+            var delayInt = 0;
+            int.TryParse(delay,out delayInt);
+            if(delayInt == 0)
+            {
+                return Language.StringByID(StringId.NoDelay);
+            }
             string text = "";
+            if (delayInt > 60)
+            {
+                text = (delayInt / 60) + Language.StringByID(StringId.m) + (delayInt % 60) + Language.StringByID(StringId.s);
+            }else
+            {
+                text = delayInt + Language.StringByID(StringId.s);
+            }
+            return text;
             switch (delay)
             {
                 case "0":
@@ -368,6 +389,8 @@
         /// 浜戠鏁版嵁淇敼鐨勬渶鍚庢椂闂�
         /// </summary>
         public string modifyTime = "";
+
+
     }
     /// <summary>
     /// 鍦烘櫙鍔熻兘瀵硅薄
@@ -409,6 +432,56 @@
             return localFunction;
         }
 
+
+        /// <summary>
+        /// 瑙f瀽鍦烘櫙鍔熻兘鏁版嵁
+        /// </summary>
+        /// <param name="sceneFunction"></param>
+        public string GetFunctionScnenInfo()
+        {
+            var sceneFunctionInfo = "";
+            foreach (var sfs in status)
+            {
+                if (sfs.key == FunctionAttributeKey.OnOff)
+                {
+                    if (sfs.value == "off")
+                    {
+                        return Language.StringByID(StringId.Close);
+                    }
+                }
+            }
+            sceneFunctionInfo += Language.StringByID(StringId.Open) + " ";
+
+            var modeState = status.Find((obj) => obj.key == FunctionAttributeKey.Mode);
+            var tempState = status.Find((obj) => obj.key == FunctionAttributeKey.SetTemp);
+            var fanState = status.Find((obj) => obj.key == FunctionAttributeKey.FanSpeed);
+            if (modeState != null)
+            {
+                sceneFunctionInfo += modeState.GetValueText() + " ";
+            }
+            if (tempState != null)
+            {
+                sceneFunctionInfo += tempState.GetValueText() + " ";
+                sceneFunctionInfo += tempState.GetUintString();
+            }
+            if (fanState != null)
+            {
+                sceneFunctionInfo += fanState.GetValueText() + " ";
+            }
+            var briState = status.Find((obj) => obj.key == FunctionAttributeKey.Brightness);
+            if (briState != null)
+            {
+                sceneFunctionInfo += briState.value + "%";
+            }
+            var perState = status.Find((obj) => obj.key == FunctionAttributeKey.Percent);
+            if (perState != null)
+            {
+                sceneFunctionInfo += perState.value + "%";
+            }
+            return sceneFunctionInfo;
+        }
+
+
     }
 
     /// <summary>
@@ -446,7 +519,7 @@
                 case FunctionAttributeKey.SetTemp:
                     text = Language.StringByID(StringId.Temp);
                     break;
-                case FunctionAttributeKey.IndoorTemp:
+                case FunctionAttributeKey.RoomTemp:
                     text = Language.StringByID(StringId.IndoorTemp);
                     break;
                 case FunctionAttributeKey.Delay:
@@ -475,7 +548,7 @@
             switch (key)
             {
                 case FunctionAttributeKey.SetTemp:
-                case FunctionAttributeKey.IndoorTemp:
+                case FunctionAttributeKey.RoomTemp:
                     us = "掳C";
                     break;
                 case FunctionAttributeKey.Percent:
@@ -500,7 +573,7 @@
                     text = value == "on" ? Language.StringByID(StringId.On) : Language.StringByID(StringId.OFF);
                     break;
                 case FunctionAttributeKey.SetTemp:
-                case FunctionAttributeKey.IndoorTemp:
+                case FunctionAttributeKey.RoomTemp:
                 case FunctionAttributeKey.Brightness:
                 case FunctionAttributeKey.Percent:
                     if (value == "")

--
Gitblit v1.8.0