From 4f2dbd1f6a1ec2d9c3c39b4a37b0b7c9ddece4aa Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期四, 23 九月 2021 15:24:01 +0800 Subject: [PATCH] 主页刷新优化 --- HDL_ON/Entity/Function/Scene.cs | 125 ++++++++++++++++++++++++++++++++++++----- 1 files changed, 110 insertions(+), 15 deletions(-) diff --git a/HDL_ON/Entity/Function/Scene.cs b/HDL_ON/Entity/Function/Scene.cs index 386ded3..b9d9039 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 = ""; @@ -76,12 +77,24 @@ public string group = "1"; /// <summary> /// 鍦烘櫙绫诲瀷 + /// 0:鏅�� + /// 1:鐢靛奖 + /// 2:璋冨厜 /// </summary> public SceneType sceneType = SceneType.OrdinaryScenes; /// <summary> /// 鏀惰棌鏍囪 /// </summary> public bool collect = false; + /// <summary> + /// 鏄惁鍏佽鍒犻櫎 + /// </summary> + public bool can_delete = true; + + /// <summary> + /// 鍒涘缓璇ュ満鏅殑鐢ㄦ埛ID + /// </summary> + public string userId = UserInfo.Current.ID; ///// <summary> ///// 鍦烘櫙鑳屾櫙 @@ -137,13 +150,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 +353,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 +396,8 @@ /// 浜戠鏁版嵁淇敼鐨勬渶鍚庢椂闂� /// </summary> public string modifyTime = ""; + + } /// <summary> /// 鍦烘櫙鍔熻兘瀵硅薄 @@ -409,6 +439,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 +526,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: @@ -469,13 +549,18 @@ /// <summary> /// 灞炴�у�煎崟浣� /// </summary> - public string GetUintString() + public string GetUintString(string inputKey = "") { var us = ""; - switch (key) + var swithchString = key; + if(!string.IsNullOrEmpty(inputKey)) + { + swithchString = inputKey; + } + switch (swithchString) { case FunctionAttributeKey.SetTemp: - case FunctionAttributeKey.IndoorTemp: + case FunctionAttributeKey.RoomTemp: us = "掳C"; break; case FunctionAttributeKey.Percent: @@ -491,26 +576,35 @@ /// 鑾峰彇鎸囧畾灞炴�х殑鏄剧ず鏂囨湰 /// 涓嫳鏂囨樉绀� /// </summary> - public string GetValueText() + public string GetValueText(string temp = "") { + string catchString = value; + if(temp!= "") + { + catchString = temp; + } string text = ""; switch (key) { case FunctionAttributeKey.OnOff: - text = value == "on" ? Language.StringByID(StringId.On) : Language.StringByID(StringId.OFF); + text = catchString == "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 == "") + int outT = 0; + int.TryParse(catchString,out outT); + if (outT < 0) + catchString = "0"; + if (catchString == "") { - value = "0"; + catchString = "0"; } - text = value; + text = catchString; break; case FunctionAttributeKey.Mode: - switch (value) + switch (catchString) { //----绌鸿皟 case "auto": @@ -529,6 +623,7 @@ text = Language.StringByID(StringId.AirSupply); break; //-----鍦扮儹 + // 1:鏅��,2:鐧藉ぉ,3:澶滄櫄,4:绂诲紑,5:鏃堕棿 case "day": text = Language.StringByID(StringId.Day); break; @@ -547,7 +642,7 @@ } break; case FunctionAttributeKey.FanSpeed: - switch (value) + switch (catchString) { case "high": text = Language.StringByID(StringId.HighWindSpeed); -- Gitblit v1.8.0