From bbc74a6dae2e90a811b2507c5896fe89aa29ccc0 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期三, 08 一月 2020 11:30:46 +0800 Subject: [PATCH] 2020-01-08 1.替换新服务器接口。 --- Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs | 102 ++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 72 insertions(+), 30 deletions(-) diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs index b61d2bb..9b2eb04 100644 --- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs +++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs @@ -100,14 +100,17 @@ MainPage.Loading.Start ("Please wait..."); System.Threading.Tasks.Task.Run (() => { try { - var requestObj = new Timer () { RegionID = UserConfig.Instance.CurrentRegion.RegionID }; + var requestObj = new Timer () { RegionID = UserConfig.Instance.CurrentRegion.Id }; var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj); - var revertObj = MainPage.RequestHttps ("GetTimerList", requestJson); - if (revertObj.StateCode == "SUCCESS") { + var revertObj = MainPage.RequestHttps (API.GetTimerList, requestJson, true); + if (revertObj.StateCode.ToUpper() == "SUCCESS") { timers = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Timer>> (revertObj.ResponseData.ToString ()); foreach (var schedule in timers) { initSchedule (schedule); } + } else { + //鎻愮ず閿欒 + ShowGetTimerListErrorInfo (revertObj.StateCode); } } catch (Exception ex) { Console.WriteLine (ex.Message); @@ -118,6 +121,35 @@ } }); } + + /// <summary> + //(1)Success 鍒欒皟鐢ㄦ鎺ュ彛鎴愬姛 + //(2)NoRecord 浣忓畢鏈粦瀹氱綉鍏筹紒 + //(3)NoExist 浣忓畢涓嶅瓨鍦紒 + /// </summary> + void ShowGetTimerListErrorInfo (string stateCodeStr) + { + string mes = ""; + if (stateCodeStr == "NoRecord") { + // 浣忓畢鏈粦瀹氱綉鍏筹紒 + mes = ErrorCode.HomeNoRecord; + } else if (stateCodeStr == "NoExist") { + //浣忓畢涓嶅瓨鍦紒 + mes = ErrorCode.HomeNoExist; + } else if (stateCodeStr == ErrorCode.NetworkError) { + mes = ErrorCode.NetworkError; + } else { + mes = ErrorCode.OperationFailed + ErrorCode.Reason + stateCodeStr; + + } + if (!string.IsNullOrEmpty (mes)) { + Application.RunOnMainThread (() => { + new Alert ("", mes, Language.StringByID (R.MyInternationalizationString.Close)).Show (); + }); + } + + } + void reinitSchedule(Timer schedule) { @@ -277,8 +309,8 @@ try { var switchObj = new Timer () { Guid = (sdd as Button).Tag.ToString () }; var switchRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (switchObj); - var switchRevertObj = MainPage.RequestHttps ("IsEnableTimer", switchRequestJson); - if (switchRevertObj.StateCode != "SUCCESS") { + var switchRevertObj = MainPage.RequestHttps (API.IsEnableTimer, switchRequestJson, true); + if (switchRevertObj.StateCode.ToUpper() != "SUCCESS") { Application.RunOnMainThread (() => { tempSiwtch.IsSelected = !tempSiwtch.IsSelected; }); @@ -300,13 +332,14 @@ }; rowView.AddRightView (btnDel); btnDel.MouseUpEventHandler += (sender, er) => { - 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 == "SUCCESS") { - rowView.RemoveFromParent (); - timers.Remove (timers.Find((obj) => obj.Guid == delObj.Guid)); - } + 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") { + // rowView.RemoveFromParent (); + // timers.Remove (timers.Find((obj) => obj.Guid == delObj.Guid)); + //} }; #region goSchedule @@ -335,12 +368,7 @@ alert.Show (); alert.ResultEventHandler += (sender2, e2) => { if (e2) { - var delObj = new Timer () { Guid = (sender as Button).GetTagByKey ("guid").ToString () }; - var delRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (delObj); - var delRevertObj = MainPage.RequestHttps ("DeleteTimer", delRequestJson); - if (delRevertObj.StateCode == "SUCCESS") { - rowView.RemoveFromParent (); - } + DeleteTimerAction ((sender as Button).GetTagByKey ("guid").ToString (), rowView); } }; }; @@ -352,12 +380,7 @@ alert.Show (); alert.ResultEventHandler += (sender2, e2) => { if (e2) { - var delObj = new Timer () { Guid = (sender as Button).GetTagByKey ("guid").ToString () }; - var delRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (delObj); - var delRevertObj = MainPage.RequestHttps ("DeleteTimer", delRequestJson); - if (delRevertObj.StateCode == "SUCCESS") { - rowView.RemoveFromParent (); - } + DeleteTimerAction ((sender as Button).GetTagByKey ("guid").ToString (), rowView); } }; }; @@ -369,12 +392,7 @@ alert.Show (); alert.ResultEventHandler += (sender2, e2) => { if (e2) { - var delObj = new Timer () { Guid = (sender as Button).GetTagByKey ("guid").ToString () }; - var delRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (delObj); - var delRevertObj = MainPage.RequestHttps ("DeleteTimer", delRequestJson); - if (delRevertObj.StateCode == "SUCCESS") { - rowView.RemoveFromParent (); - } + DeleteTimerAction ((sender as Button).GetTagByKey ("guid").ToString (), rowView); } }; }; @@ -383,5 +401,29 @@ }); } + + /// <summary> + /// 鍒犻櫎瀹氭椂鍣� + /// </summary> + /// <param name="GUID"></param> + /// <param name="rowView"></param> + /// <param name="bTimersRemove"></param> + void DeleteTimerAction (string GUID, View rowView, bool bTimersRemove = false) + { + var delObj = new Timer () { Guid = GUID }; + var delRequestJson = Newtonsoft.Json.JsonConvert.SerializeObject (delObj); + var delRevertObj = MainPage.RequestHttps (API.DeleteTimer, delRequestJson, true); + if (delRevertObj.StateCode.ToUpper () == "SUCCESS") { + rowView.RemoveFromParent (); + if (bTimersRemove) { + timers.Remove (timers.Find ((obj) => obj.Guid == delObj.Guid)); + } + } else { + //鍒犻櫎澶辫触 + Application.RunOnMainThread (() => { + new Alert ("", ErrorCode.FailedDelete, Language.StringByID (R.MyInternationalizationString.Close)).Show (); + }); + } + } } } -- Gitblit v1.8.0