From 54c202bd4867092fca2bc6f96bec0cfd1056a46a Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期一, 06 十一月 2023 11:24:20 +0800
Subject: [PATCH] 2023年11月06日11:23:46

---
 HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs |   60 +++++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 53 insertions(+), 7 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
index 13f241a..4373932 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/SceneEditPage.cs
@@ -98,6 +98,7 @@
 
         public void LoadPage(Action backRefresh)
         {
+             //DB_ResidenceData.Instance.sceneChooseRoomId
             new TopViewDiv(bodyView, Language.StringByID(StringId.EditScene)).LoadTopView(backRefresh);
             initPage();
         }
@@ -432,11 +433,20 @@
                     var pack = pm.GetSceneInfo(scene.userSceneId);
                     if (pack.Code == StateCode.SUCCESS)
                     {
-                        var sceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(pack.Data.ToString());
-                        var tempScene = sceneList.Find((obj) => obj.userSceneId == scene.userSceneId);
-                        if (tempScene != null)
+                        if (pack.Data != null)
                         {
-                            scene = tempScene;
+                            var sceneList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Scene>>(pack.Data.ToString());
+                            if (sceneList != null)
+                            {
+                                var tempScene = sceneList.Find((obj) => obj.userSceneId == scene.userSceneId);
+                                if (tempScene != null)
+                                {
+                                    scene.name = tempScene.name;
+                                    scene.delay = tempScene.delay;
+                                    scene.roomIds = tempScene.roomIds;
+                                    scene.functions = tempScene.functions;
+                                }
+                            }
                         }
                         Application.RunOnMainThread(() =>
                         {
@@ -478,6 +488,33 @@
                     scene.functions.Remove(scenefunction);
                     continue;
                 }
+                try
+                {
+                    //灏唖pk瀹炰綋閲岄潰鐨刴in max鍊兼斁鍏ュ満鏅姛鑳藉疄浣撻噷锛岃涓嶇劧鏁版嵁浼氫涪澶� 2022-06-21 16:06:45
+                    foreach (var tt in scenefunction.status)
+                    {
+                        var attr = scenefunction.localFunction.GetAttribute(tt.key);
+                        if(attr == null)
+                        {
+                            continue;
+                        }
+                        tt.min = attr.min;
+                        tt.max = attr.max;
+                        tt.valueList = attr.value;
+                        if(tt.key == FunctionAttributeKey.SetTemp)
+                        {
+                            var tempType = scenefunction.localFunction.GetAttribute(FunctionAttributeKey.TempType);
+                            if(tempType != null)
+                            {
+                                tt.UintString = tempType.unit;
+                            }
+                        }
+                    }
+                }catch(Exception ex)
+                {
+                    MainPage.Log($"鍦烘櫙鍔犺浇鍔熻兘鍒楄〃寮傚父:{ex.Message}");
+                }
+
                 i++;
                 var row = new RowLayout()
                 {
@@ -567,7 +604,10 @@
                 };
                 btnFunctionName.MouseUpEventHandler = skipEvent;
                 btnFunctionFloorAndRoom.MouseUpEventHandler = skipEvent;
-
+                btnFunctionDelayInfo.MouseUpEventHandler = skipEvent;
+                btnFunctionInfo.MouseUpEventHandler = skipEvent;
+                btnRight.MouseUpEventHandler = skipEvent;
+                row.MouseUpEventHandler = skipEvent;
 
                 Button btnDelSceneFunction = new Button() {
                     BackgroundColor = CSS_Color.WarningColor,
@@ -839,6 +879,12 @@
             UploadImage(selectImagePath, addSceneImageView, scene, uploadSuccessAction);
         }
 
+        public override void RemoveFromParent()
+        {
+            backAction();
+            base.RemoveFromParent();
+        }
+
         /// <summary>
         /// 瀹屾垚鎸夐挳鐐瑰嚮浜嬩欢
         /// </summary>
@@ -868,7 +914,7 @@
                     }
                     scene.EditScene();
                     FunctionList.List.scenes.Add(scene);
-                    backAction();
+                    //backAction();
                     this.RemoveFromParent();
                 }
                 if (btnComplete.TextID == StringId.Del)
@@ -876,7 +922,7 @@
                     Action action = () =>
                     {
                         FunctionList.List.DeleteScene(scene,true);
-                        backAction();
+                        //backAction();
                         this.RemoveFromParent();
                     };
                     new PublicAssmebly().TipOptionMsg(StringId.Tip, StringId.DeleteSceneTip, action);

--
Gitblit v1.8.0