From 6d73bf6e816570291865674bef8bce8972e4de3f Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期三, 01 十二月 2021 16:32:57 +0800
Subject: [PATCH] 2021-12-01-01

---
 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs |   86 ++++++++++++++++++++++++------------------
 1 files changed, 49 insertions(+), 37 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs
index 801b039..c770e5a 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs
@@ -12,26 +12,12 @@
         }
         public void Show(Control control, bool bool_library)
         {
-            //鏁版嵁杞崲
-            Entity.Function function = new Entity.Function();
-            {
-                function.sid = control.sid;
-                function.deviceId = control.deviceId;
-                function.name = control.name;
-                function.spk = control.spk;
-                //function.attributes.AddRange(control.status);
-                //閬ユ帶鍣ㄦ坊鍔犲埌鍒楄〃锛�
-                if (null == Pir.currPir.FunctioList.Find((c) => c.sid == function.sid))
-                {
-                    Pir.currPir.FunctioList.Add(function);
-                }
-            }
             #region 鐣岄潰甯冨眬
             this.BackgroundColor = CSS.CSS_Color.viewMiddle;
             PirDevice.View.TopView topView = new View.TopView();
             topView.topNameBtn.TextID = StringId.tianjiayaokongqi;
             this.AddChidren(topView.FLayoutView());
-            topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); };
+            topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { RemoveFromParent(); };
 
             FrameLayout fLayout = new FrameLayout
             {
@@ -41,7 +27,7 @@
                 Width = Application.GetRealWidth(375),
             };
             this.AddChidren(fLayout);
-            //
+            //鎴愬姛鍥炬爣
             Button iconBtn = new Button
             {
                 Y = Application.GetRealHeight(28),
@@ -90,13 +76,13 @@
             this.AddChidren(namePatchView.FLayoutView());
             namePatchView.btnText1.TextID = StringId.yaokongqimingcheng;
             namePatchView.btnText2.Text = control.name;
-          
+
             //鎵�灞炲尯鍩�
             View.PatchView quyuPatchView = new View.PatchView();
             quyuPatchView.frameLayout.Y = namePatchView.frameLayout.Bottom;
             this.AddChidren(quyuPatchView.FLayoutView());
             quyuPatchView.btnText1.TextID = StringId.suoshuquyu;
-            quyuPatchView.btnText2.Text=Intelligence.Automation.LogicMethod.GetGetRoomName(function);
+            quyuPatchView.btnText2.Text = Intelligence.Automation.LogicMethod.CurrLogicMethod.GetGetRoomName(GetFunction(control.deviceId));
 
             //缁х画娣诲姞
             Button addBtn = new Button
@@ -124,41 +110,49 @@
                 List<string> list = new List<string>();
                 for (int i = 0; i < Pir.currPir.FunctioList.Count; i++)
                 {
+                    //娣诲姞鎵�鏈夐仴鎺у悕绉板垪琛�
                     list.Add(Pir.currPir.FunctioList[i].name);
                 }
-                Method method = new Method();
+                PirMethod method = new PirMethod();
                 method.EditControlName(StringId.editName, list, control.name, (name, dialog) =>
                 {
-                    Method.ThreadSend(new Control { deviceId = control.deviceId, name = name }, (responsePackNew) =>
+                    //鍙戦�佹洿鏂板悕绉板懡浠�
+                    PirMethod.ThreadSend(new Control { deviceId = control.deviceId, name = name }, (responsePackNew) =>
                     {
+                        //鍏抽棴绐楀彛
                         dialog.Close();
+                        //鏇存柊澶囨敞
                         namePatchView.btnText2.Text = name;
-                        function.name = name;
-
+                        //鏇存柊涓存椂璁惧鍚嶇О
+                        control.name = name;
+                        //鏇存崲鍐呭瓨璁惧鍚嶇О
+                        GetFunction(control.deviceId).name = name;
                     }, "淇敼鍚嶇О", "dialog", null, dialog);
                 }, () => { });
             };
             //鎵�灞炲尯鍩熺偣鍑讳簨浠�
             quyuPatchView.btnClick.MouseUpEventHandler += (sender, e) =>
             {
-                Method method = new Method();
-                method.ManagementPosition(function, () =>
+                PirMethod method = new PirMethod();
+                method.ManagementPosition(GetFunction(control.deviceId), () =>
                 {
                     //鏇存柊鍖哄煙
-                    quyuPatchView.btnText2.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(function);
+                    quyuPatchView.btnText2.Text = Intelligence.Automation.LogicMethod.CurrLogicMethod.GetGetRoomName(GetFunction(control.deviceId));
                 });
             };
             //缁х画娣诲姞鐐瑰嚮浜嬩欢
             addBtn.MouseUpEventHandler += (sender, e) =>
             {
                 if (bool_library)
-                {
+                {//缁х画娣诲姞搴撶殑閬ユ帶鍣�
+                    PirMethod.RefreshView("PirMain");//鍒锋柊鎸囩偣鐣岄潰
                     this.RemoveFromParent();
                 }
                 else
-                {
-                    Method method = new Method();
-                    method.AddControl(this, (controlDevice) => { 
+                {//缁х画娣诲姞鑷畾涔夌殑閬ユ帶鍣�
+                    PirMethod method = new PirMethod();
+                    method.AddControl(this, (controlDevice) =>
+                    {
                         AddButton addButton = new AddButton();
                         MainPage.BasePageView.AddChidren(addButton);
                         addButton.Show(controlDevice);
@@ -169,18 +163,36 @@
             //瀹屾垚鐐瑰嚮浜嬩欢
             saveView.btnClick.MouseUpEventHandler += (sender, e) =>
             {
+                //鍒锋柊鎸囩偣鐣岄潰
+                PirMethod.RefreshView("PirMain");
                 //绉婚櫎鎵�鏈夌晫闈�
                 MainPage.BasePageView.RemoveViewByTag("PirView");
-                //绉婚櫎绾㈠瀹濇牴鐣岄潰
-                MainPage.BasePageView.RemoveViewByTag("PirMain");
-                //閲嶆柊鍔犺浇鐣岄潰
-                var page = new PirMain();
-                MainPage.BasePageView.AddChidren(page);
-                page.Show();
-                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-
             };
             #endregion
         }
+        /// <summary>
+        /// 鏌ユ壘璁惧瀵硅薄
+        /// </summary>
+        /// <param name="deviceId">璁惧ID</param>
+        /// <returns></returns>
+        public Entity.Function GetFunction(string deviceId)
+        {
+            var fun = Pir.currPir.FunctioList.Find((c) => c.deviceId == deviceId);
+            if (fun != null)
+            {
+                return fun;
+            }
+            return new Entity.Function();
+        }
+
+        /// <summary>
+        /// 绉婚櫎鐣岄潰
+        /// </summary>
+        public override void RemoveFromParent()
+        {
+            //鍒锋柊鎸囧畾鐣岄潰
+            PirMethod.RefreshView("PirMain");
+            base.RemoveFromParent();
+        }
     }
 }

--
Gitblit v1.8.0