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/AddButton.cs |  121 +++++++++++++++++++++++-----------------
 1 files changed, 70 insertions(+), 51 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs
index dba2330..859f2aa 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs
@@ -12,12 +12,17 @@
         }
         public void Show(Control control)
         {
+
             #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 editfLayout = new FrameLayout
             {
@@ -108,6 +113,13 @@
             ///涓嬩竴姝ョ殑鐐瑰嚮浜嬩欢
             saveBtn.MouseUpEventHandler += (sender, e) =>
             {
+                if (control.status.Count > 29)
+                {
+                    ///瓒呭嚭30涓孩澶栧疂鍐呭瓨婊′簡浼氬嚭鐜板紓甯�
+                    new PirMethod().ErrorShow(null, "娣诲姞鎸夐挳瓒呭嚭30涓�");
+                    return;
+                }
+
                 var texts = editText.Text.Trim();
                 if (string.IsNullOrEmpty(editText.Text))
                 {
@@ -122,74 +134,81 @@
                 }
                 //new寮曞鐣岄潰
                 View.ReplicationView replication = new View.ReplicationView();
-               // MainPage.BasePageView.AddChidren(replication);
                 replication.Show(this);
-               // MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-
 
                 //娣诲姞鏁版嵁瀵硅薄
                 Entity.AttributesStatus buttonObj = new Entity.AttributesStatus();
-                buttonObj.key = "key" + control.status.Count.ToString();
+                string keyName = GetKeyName(control.status);
+                buttonObj.key = keyName;
                 buttonObj.value = texts;
 
-                PirSend.CodeStudy(control, buttonObj, (responsePackNew) =>
+                PirSend.CodeStudy(control, buttonObj, (mqttdate) =>
                 {
-                    if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "")
+                    if (mqttdate != null)
                     {
-                        Method method = new Method();
-                        Method.buttondata = "";
-                        var mqttdate = method.MqttDate("鎸夐敭", control.sid, 25);
-                        if (mqttdate != null)
+                        //浼戠湢鏄负鏄剧ず寮曞鐣岄潰
+                        // System.Threading.Thread.Sleep(3000);
+                        //绉婚櫎娣诲姞鎸夐挳寮曞鐣岄潰
+                        replication.RemView();
+                        var buttonName = control.status.Find((c) => c.value == buttonObj.value);
+                        if (buttonName == null)
                         {
-                            //浼戠湢鏄负鏄剧ず寮曞鐣岄潰
-                            // System.Threading.Thread.Sleep(3000);
-                            //绉婚櫎娣诲姞鎸夐挳寮曞鐣岄潰
-                            replication.RemView();
-                            var buttonName = control.status.Find((c) => c.value == buttonObj.value);
-                            if (buttonName == null)
-                            {
-                                //娣诲姞鏁版嵁
-                                control.status.Add(buttonObj);
-                            }
-                            //绉婚櫎娣诲姞鎸夐挳鐣岄潰
-                            this.RemoveFromParent();
-
-                            for (int i = MainPage.BasePageView.ChildrenCount - 1; 0 <= i; i--)
-                            {
-                                var view = MainPage.BasePageView.GetChildren(i);
-                                if (view.GetType() == typeof(AddControl))
-                                {
-                                    new TipPopView().FlashingBox(Language.StringByID(StringId.tianjiashibai));
-                                    view.RemoveFromParent();
-                                }
-
-                            }
-
-                            //鍔犺浇鏁版嵁鐣岄潰
-                            AddControl addControl = new AddControl();
-                            MainPage.BasePageView.AddChidren(addControl);
-                            addControl.Show(control);
-                            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                            //娣诲姞鏁版嵁
+                            control.status.Add(buttonObj);
                         }
-                        else
-                        {
-                            replication.RemView();
-                            new TipPopView().FlashingBox(Language.StringByID(StringId.tianjiashibai));
-
-                        }
-
+                        //绉婚櫎娣诲姞鎸夐挳鐣岄潰
+                        this.RemoveFromParent();
+                        //绉婚櫎涔嬪墠鍙兘瀛樺湪鐨勭晫闈�
+                        PirMethod.RemoveView("AddControl");
+                        //鍔犺浇鏁版嵁鐣岄潰
+                        AddControl addControl = new AddControl();
+                        MainPage.BasePageView.AddChidren(addControl);
+                        addControl.Show(control);
+                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                     }
                     else
                     {
-                        Method method = new Method();
-                        method.ErrorShow(responsePackNew, "");
+                        replication.RemView();
+                        PirMethod method = new PirMethod();
+                        method.ErrorShow(null, "娣诲姞澶辫触");
                     }
 
                 });
-
-
             };
 
         }
+
+        /// <summary>
+        /// 绉婚櫎鐣岄潰
+        /// </summary>
+        public override void RemoveFromParent()
+        {
+            //鍒锋柊鎸囧畾鐣岄潰
+            PirMethod.RefreshView("PirMain");
+            base.RemoveFromParent();
+        }
+
+        /// <summary>
+        /// 鏌ユ壘鍞竴鍋ュ悕鍊�
+        /// </summary>
+        /// <param name="listKeyName">宸茬粡瀛樺湪鍋ュ悕鍒楄〃</param>
+        /// <returns></returns>
+        private string GetKeyName(List<Entity.AttributesStatus> listKeyName)
+        {
+            //鐩墠绾㈠瀹濆涔犳寜閽渶澶氭槸30涓紱
+            for (int i = 0; i < 50; i++)
+            {
+                string keyName = "key" + i.ToString();
+                ///鏌ユ壘鏄惁瀛樺湪
+                var currKeyName = listKeyName.Find((c) => c.key == keyName);
+                if (currKeyName == null)
+                {
+                    return keyName;
+                }
+            }
+
+            return "key" + listKeyName.Count;
+        }
+
     }
 }

--
Gitblit v1.8.0