From 5a5a2b696866f947b6025d26c3302e8ffef46435 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期一, 11 一月 2021 16:11:20 +0800
Subject: [PATCH] 2021-01-11 1.更新MQTT连接和本地搜索网关方法。2.子账号相关接口完善

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs |   61 ++++++++++++++++++++----------
 1 files changed, 40 insertions(+), 21 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs
index 9b2eb04..535402e 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs
@@ -75,7 +75,7 @@
                             UserMiddle.SettingPageView.PageIndex = 2;
                         });
                     }catch(Exception ex){
-                        Console.WriteLine (ex.Message);
+                        Utlis.WriteLine (ex.Message);
                     }
                     finally{
                         Application.RunOnMainThread (() => {
@@ -102,8 +102,8 @@
                 try {
                     var requestObj = new Timer () { RegionID = UserConfig.Instance.CurrentRegion.Id };
                     var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj);
-                    var revertObj = MainPage.RequestHttps (API.GetTimerList, requestJson, true);
-                    if (revertObj.StateCode.ToUpper() == "SUCCESS") {
+                    var revertObj = MainPage.RequestHttps (API.GetTimerList, requestJson);
+                    if (revertObj.StateCode.ToUpper() == StateCode.SUCCESS) {
                         timers = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Timer>> (revertObj.ResponseData.ToString ());
                         foreach (var schedule in timers) {
                             initSchedule (schedule);
@@ -113,7 +113,7 @@
                         ShowGetTimerListErrorInfo (revertObj.StateCode);
                     }
                 } catch (Exception ex) {
-                    Console.WriteLine (ex.Message);
+                    Utlis.WriteLine (ex.Message);
                 } finally {
                     Application.RunOnMainThread (() => {
                         MainPage.Loading.Hide ();
@@ -157,7 +157,7 @@
                 var view = bodyView.GetChildren (i);
                 if(view.GetType() == typeof(RowLayout)){
                    var  rowView = view as RowLayout;
-                    if (rowView.GetTagByKey("guid").ToString () == schedule.Guid) {
+                    if (rowView.GetTagByKey("guid").ToString () == schedule.Id) {
                         for (int j = 0; j < rowView.ChildrenCount; j++) {
                             var viewChilren = rowView.GetChildren (j);
                             if (viewChilren.GetType () == typeof (Button)) {
@@ -214,7 +214,7 @@
                     Height = Application.GetRealHeight (180),
                 };
                 bodyView.AddChidren (rowView);
-                rowView.AddTag ("guid", schedule.Guid);
+                rowView.AddTag ("guid", schedule.Id);
 
                 var btnScheduleName = new Button () {
                     X = Application.GetRealWidth (30),
@@ -227,7 +227,7 @@
                     Tag = "btnScheduleName",
                 };
                 rowView.AddChidren (btnScheduleName);
-                btnScheduleName.AddTag ("guid", schedule.Guid);
+                btnScheduleName.AddTag ("guid", schedule.Id);
 
                 var btnScheduleRoomName = new Button () {
                     X = btnScheduleName.Right,
@@ -239,7 +239,7 @@
                     Tag = "btnScheduleRoomName",
                 };
                 rowView.AddChidren (btnScheduleRoomName);
-                btnScheduleRoomName.AddTag ("guid", schedule.Guid);
+                btnScheduleRoomName.AddTag ("guid", schedule.Id);
 
                 var btnScheduleTime = new Button () {
                     X = Application.GetRealWidth (30),
@@ -253,7 +253,7 @@
                     Tag = "btnScheduleTime",
                 };
                 rowView.AddChidren (btnScheduleTime);
-                btnScheduleTime.AddTag ("guid", schedule.Guid);
+                btnScheduleTime.AddTag ("guid", schedule.Id);
 
                 var btnScheduleDay = new Button () {
                     X = Application.GetRealWidth (33),
@@ -266,7 +266,7 @@
                     Tag = "btnScheduleDay",
                 };
                 rowView.AddChidren (btnScheduleDay);
-                btnScheduleDay.AddTag ("guid", schedule.Guid);
+                btnScheduleDay.AddTag ("guid", schedule.Id);
 
                 if (schedule.Periodicity.Contains ("0")) {
                     btnScheduleDay.Text += "Sun ";
@@ -298,7 +298,7 @@
                     UnSelectedImagePath = "Item/SwitchClose.png",
                     SelectedImagePath = "Item/SwitchOpen.png",
                     IsSelected = schedule.IsStart,
-                    Tag = schedule.Guid
+                    Tag = schedule.Id
                 };
                 rowView.AddChidren (tempSiwtch);
 
@@ -307,16 +307,16 @@
                     MainPage.Loading.Start ("Loading");
                     System.Threading.Tasks.Task.Run (() => {
                         try {
-                            var switchObj = new Timer () { Guid = (sdd as Button).Tag.ToString () };
+                            var switchObj = new Timer () { Id = (sdd as Button).Tag.ToString () };
                             var switchRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (switchObj);
-                            var switchRevertObj = MainPage.RequestHttps (API.IsEnableTimer, switchRequestJson, true);
-                            if (switchRevertObj.StateCode.ToUpper()  != "SUCCESS") {
+                            var switchRevertObj = MainPage.RequestHttps (API.IsEnableTimer, switchRequestJson);
+                            if (switchRevertObj.StateCode.ToUpper()  != StateCode.SUCCESS) {
                                 Application.RunOnMainThread (() => {
                                     tempSiwtch.IsSelected = !tempSiwtch.IsSelected;
                                 });
                             }
                         } catch (Exception ex) {
-                            Console.WriteLine (ex.Message);
+                            Utlis.WriteLine (ex.Message);
                         } finally {
                             Application.RunOnMainThread (() => {
                                 MainPage.Loading.Hide ();
@@ -328,15 +328,18 @@
                 Button btnDel = new Button () {
                     TextID = R.MyInternationalizationString.Del,
                     BackgroundColor = SkinStyle.Current.DelColor,
-                    Tag = schedule.Guid
+                    Tag = schedule.Id
                 };
                 rowView.AddRightView (btnDel);
                 btnDel.MouseUpEventHandler += (sender, er) => {
+                    if ((sender as Button).Tag == null) return;
+                    //string uuid = (sender as Button).Tag.ToString ();
+
                     DeleteTimerAction ((sender as Button).Tag.ToString (), rowView, true);
                     //var delObj = new Timer () { Guid = (sender as Button).Tag.ToString () };
                     //var delRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (delObj);
                     //var delRevertObj = MainPage.RequestHttps ("DeleteTimer", delRequestJson);
-                    //if (delRevertObj.StateCode.ToUpper() == "SUCCESS") {
+                    //if (delRevertObj.StateCode.ToUpper() == StateCode.SUCCESS) {
                     //    rowView.RemoveFromParent ();
                     //    timers.Remove (timers.Find((obj) => obj.Guid == delObj.Guid));
                     //}
@@ -368,6 +371,7 @@
                     alert.Show ();
                     alert.ResultEventHandler += (sender2, e2) => {
                         if (e2) {
+                            if ((sender as Button).GetTagByKey ("guid") == null) return;
                             DeleteTimerAction ((sender as Button).GetTagByKey ("guid").ToString (), rowView);
                         }
                     };
@@ -380,6 +384,7 @@
                     alert.Show ();
                     alert.ResultEventHandler += (sender2, e2) => {
                         if (e2) {
+                            if ((sender as Button).GetTagByKey ("guid") == null) return;
                             DeleteTimerAction ((sender as Button).GetTagByKey ("guid").ToString (), rowView);
                         }
                     };
@@ -392,6 +397,7 @@
                     alert.Show ();
                     alert.ResultEventHandler += (sender2, e2) => {
                         if (e2) {
+                            if ((sender as Button).GetTagByKey ("guid") == null) return;
                             DeleteTimerAction ((sender as Button).GetTagByKey ("guid").ToString (), rowView);
                         }
                     };
@@ -410,13 +416,20 @@
         /// <param name="bTimersRemove"></param>
         void DeleteTimerAction (string GUID, View rowView, bool bTimersRemove = false)
         {
-            var delObj = new Timer () { Guid = GUID };
+            //2020-01-11
+            Application.RunOnMainThread (() => {
+                MainPage.Loading.Start ("Please wait...");
+            });
+
+            var delObj = new Timer () { Id = GUID };
             var delRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (delObj);
-            var delRevertObj = MainPage.RequestHttps (API.DeleteTimer, delRequestJson, true);
-            if (delRevertObj.StateCode.ToUpper () == "SUCCESS") {
+            var delRevertObj = MainPage.RequestHttps (API.DeleteTimer, delRequestJson);
+
+
+            if (delRevertObj.StateCode.ToUpper () == StateCode.SUCCESS) {
                 rowView.RemoveFromParent ();
                 if (bTimersRemove) {
-                    timers.Remove (timers.Find ((obj) => obj.Guid == delObj.Guid));
+                    timers.Remove (timers.Find ((obj) => obj.Id == delObj.Id));
                 }
             } else {
                 //鍒犻櫎澶辫触
@@ -424,6 +437,12 @@
                     new Alert ("", ErrorCode.FailedDelete, Language.StringByID (R.MyInternationalizationString.Close)).Show ();
                 });
             }
+
+            Application.RunOnMainThread (() => {
+                MainPage.Loading.Hide ();
+            });
+
+
         }
     }
 }

--
Gitblit v1.8.0