From 48ba446936b51fffafa7c3600c0dadc6ac0e8c20 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 10 七月 2020 10:52:13 +0800
Subject: [PATCH] 2020-07-10-01

---
 ZigbeeApp/Shared/Phone/UserCenter/Gateway/Manage/GatewayBackUpListForm.cs |  187 ++++++++++++++++++----------------------------
 1 files changed, 72 insertions(+), 115 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Manage/GatewayBackUpListForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Manage/GatewayBackUpListForm.cs
index 2a2ea96..1f1b42d 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Manage/GatewayBackUpListForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Manage/GatewayBackUpListForm.cs
@@ -87,11 +87,23 @@
         /// </summary>
         private async void SetBackupInfoToForm()
         {
+            this.nowSelectBackId = string.Empty;
+            this.nowbtnSelect = null;
+
             //杩涘害鏉�
             this.ShowProgressBar();
 
+            //鑾峰彇鑷姩澶囦唤鐨勬暟鎹�
+            var pageAuto = await HdlBackupLogic.Current.GetBackupListNameFromDB(3, realGateway.GwId);
+            if (pageAuto == null)
+            {
+                //鍏抽棴杩涘害鏉�
+                this.CloseProgressBar(ShowReLoadMode.YES);
+                return;
+            }
+
             //浠庝簯绔幏鍙栨暟鎹� 
-            var pageData = await HdlBackupLogic.Current.GetBackupListNameFromDB(2, HdlGatewayLogic.Current.GetGatewayId(realGateway));
+            var pageData = await HdlBackupLogic.Current.GetBackupListNameFromDB(2, realGateway.GwId);
             if (pageData == null)
             {
                 //鍏抽棴杩涘害鏉�
@@ -105,14 +117,24 @@
             {
                 listView.RemoveAll();
                 listView.RecoverHeight();
+
+                //鑷姩澶囦唤鐨処D
+                string autoID = string.Empty;
+                if (pageAuto.Count > 0)
+                {
+                    autoID = pageAuto[0].Id;
+                    //娣诲姞鑷姩澶囦唤琛�
+                    this.AddRowlayout(pageAuto[0], pageData.Count > 0, true);
+                }
+
                 for (int i = 0; i < pageData.Count; i++)
                 {
                     //娣诲姞澶囦唤琛�
-                    this.AddRowlayout(pageData[i], i != pageData.Count - 1);
+                    this.AddRowlayout(pageData[i], i != pageData.Count - 1, false);
                 }
 
                 this.btnDownload?.RemoveFromParent();
-                if (pageData.Count > 0)
+                if (pageData.Count > 0 || pageAuto.Count > 0)
                 {
                     //涓嬭浇
                     this.btnDownload = new BottomClickButton();
@@ -128,13 +150,24 @@
                         string msg = Language.StringByID(R.MyInternationalizationString.uDownLoadAndRecoverMsg);
                         this.ShowMassage(ShowMsgType.Confirm, msg, () =>
                          {
-                             this.LoadBackupInfo(this.nowSelectBackId);
+                             HdlThreadLogic.Current.RunThread(() =>
+                             {
+                                 //璇诲彇澶囦唤鏂囨。
+                                 bool result = HdlGatewayBackupLogic.Current.RecoverGateway(this.realGateway, this.nowSelectBackId, autoID == this.nowSelectBackId ? 1 : 0);
+                                 if (result == true)
+                                 {
+                                     HdlThreadLogic.Current.RunMain(() =>
+                                     {
+                                         //鍏抽棴杩欎釜鐣岄潰
+                                         this.CloseForm();
+                                     });
+                                 }
+                             });
                          });
                     };
                     //璋冩暣鐪熷疄楂樺害
                     listView.AdjustRealHeightByBottomButton(Application.GetRealHeight(23));
                 }
-
             });
         }
 
@@ -147,25 +180,24 @@
         /// </summary>
         /// <param name="fileInfo"></param>
         /// <param name="addLine"></param>
-        private void AddRowlayout(BackupListNameInfo fileInfo, bool addLine)
+        /// <param name="isAuto"></param>
+        private void AddRowlayout(BackupListNameInfo fileInfo, bool addLine, bool isAuto)
         {
             var rowLayout = new RowLayoutControl(listView.rowSpace / 2);
             listView.AddChidren(rowLayout);
 
             //澶囦唤鍚嶅瓧
-            var txtText = rowLayout.frameTable.AddLeftCaption(fileInfo.BackupName, 700, 60);
-            txtText.TextSize = 15;
-            txtText.Y = Application.GetRealHeight(12) + rowLayout.chidrenYaxis;
-            rowLayout.frameTable.AddChidren(txtText, ChidrenBindMode.BindEventOnly);
+            var txtText = rowLayout.frameTable.AddTopView(fileInfo.BackupName, 700);
+            if (isAuto == true)
+            {
+                txtText.TextID = R.MyInternationalizationString.uAutoBackup;
+            }
+
             //鏃堕棿 2019-11-11T11:31:01
-            var btnTime = rowLayout.frameTable.AddLeftCaption("", 600, 50, true);
-            btnTime.Y = Application.GetRealHeight(72) + rowLayout.chidrenYaxis;
-            btnTime.TextSize = 12;
-            btnTime.TextColor = UserCenterColor.Current.TextGrayColor1;
-            rowLayout.frameTable.AddChidren(btnTime, ChidrenBindMode.BindEventOnly);
+            var btnTime = rowLayout.frameTable.AddBottomView("", 600);
             if (fileInfo.CreatedOnUtc.Length >= 19)
             {
-                btnTime.Text = fileInfo.CreatedOnUtc.Replace("-", ".").Replace("T", " ");
+                btnTime.Text = UserCenterLogic.ConvertUtcTimeToLocalTime(fileInfo.CreatedOnUtc).ToString("yyyy.MM.dd HH:mm:ss");
             }
             //搴曠嚎
             if (addLine == true)
@@ -196,66 +228,30 @@
                 }
             };
 
-            //缂栬緫
-            var btnEditor = rowLayout.AddEditorControl();
-            btnEditor.ButtonClickEvent += (sender, e) =>
+            //鑷姩澶囦唤涓嶅厑璁哥紪杈�
+            if (isAuto == false)
             {
-                //鏄剧ず缂栬緫澶囪�冨悕鐢婚潰
-                this.ShowEditorBackupForm(fileInfo);
-            };
-
-            //鍒犻櫎
-            var btnDelete = rowLayout.AddDeleteControl();
-            btnDelete.ButtonClickEvent += (sender, e) =>
-            {
-                //纭鍒犻櫎璇ュ浠芥暟鎹�?
-                string msg = Language.StringByID(R.MyInternationalizationString.uDoDeleteBackupMsg);
-                this.ShowMassage(ShowMsgType.Confirm, msg, () =>
+                //缂栬緫
+                var btnEditor = rowLayout.AddEditorControl();
+                btnEditor.ButtonClickEvent += (sender, e) =>
                 {
-                    //鍒犻櫎澶囦唤鏂囨。
-                    this.DeleteBackInfo(fileInfo.Id);
-                });
-            };
-        }
+                    //鏄剧ず缂栬緫澶囪�冨悕鐢婚潰
+                    this.ShowEditorBackupForm(fileInfo);
+                };
 
-        #endregion
-
-        #region 鈻� 璇诲彇澶囦唤鏂囨。_______________________
-
-        /// <summary>
-        /// 璇诲彇澶囦唤鏂囨。
-        /// </summary>
-        /// <param name="BackupClassId"></param>
-        private void LoadBackupInfo(string BackupClassId)
-        {
-            HdlThreadLogic.Current.RunThread(async () =>
-            {
-                //鑾峰彇缃戝叧涓婇潰瀛樺湪鐨勫叏閮ㄦ枃浠�
-                var listFile = await this.GetGatewayFileFromGateway();
-                if (listFile == null)
+                //鍒犻櫎
+                var btnDelete = rowLayout.AddDeleteControl();
+                btnDelete.ButtonClickEvent += (sender, e) =>
                 {
-                    return;
-                }
-                //浠庝簯绔幏鍙栧浠界殑鏂囦欢
-                bool result = await HdlBackupLogic.Current.LoadGatewayBackupInfo(BackupClassId, realGateway, listFile);
-                if (result == false)
-                {
-                    //缃戝叧鎭㈠澶辫触
-                    string msg2 = Language.StringByID(R.MyInternationalizationString.uGatewayFileRecoverFail);
-                    this.ShowMassage(ShowMsgType.Error, msg2);
-                    return;
-                }
-
-                HdlThreadLogic.Current.RunMain(() =>
-                {
-                    //鍏抽棴鑷韩
-                    this.CloseForm();
-                });
-
-                //缃戝叧鎭㈠鎴愬姛
-                string msg = Language.StringByID(R.MyInternationalizationString.uGatewayFileRecoverSuccess);
-                this.ShowMassage(ShowMsgType.Normal, msg);
-            });
+                    //纭鍒犻櫎璇ュ浠芥暟鎹�?
+                    string msg = Language.StringByID(R.MyInternationalizationString.uDoDeleteBackupMsg);
+                    this.ShowMassage(ShowMsgType.Confirm, msg, () =>
+                    {
+                        //鍒犻櫎澶囦唤鏂囨。
+                        this.DeleteBackInfo(fileInfo.Id);
+                    });
+                };
+            }
         }
 
         #endregion
@@ -319,20 +315,19 @@
         private void ShowEditorBackupForm(BackupListNameInfo fileInfo)
         {
             //鐢熸垚涓�涓脊绐楃敾闈�
-            var dialogForm = new DialogInputForm();
-            dialogForm.AddForm(DialogFrameMode.OnlyInput);
+            var dialogForm = new DialogInputControl();
 
             //缂栬緫澶囦唤
             dialogForm.SetTitleText(Language.StringByID(R.MyInternationalizationString.uEditorBackup));
-            //璇疯緭鍏ュ娉ㄥ悕绉�
-            dialogForm.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackup));
+            //璇疯緭鍏ュ浠藉悕绉�
+            dialogForm.SetTipText(Language.StringByID(R.MyInternationalizationString.uPleaseInpuBackupName));
             dialogForm.Text = fileInfo.BackupName;
 
             //鎸変笅纭鎸夐挳
             dialogForm.ComfirmClickEvent += ((txtvalue) =>
             {
                 //鐢婚潰鍏抽棴
-                dialogForm.CloseForm();
+                dialogForm.CloseDialog();
                 //鍚嶅瓧涓�鏍锋椂锛屼笉澶勭悊
                 if (txtvalue != fileInfo.BackupName)
                 {
@@ -341,44 +336,6 @@
                 }
             });
         }
-
-        #endregion
-
-        #region 鈻� 鑾峰彇缃戝叧鏂囦欢_______________________
-
-        /// <summary>
-        /// 浠庣綉鍏宠幏鍙栧畠鐨勬枃浠�
-        /// </summary>
-        /// <returns></returns>
-        private async System.Threading.Tasks.Task<List<string>> GetGatewayFileFromGateway()
-        {
-            var fileData = await realGateway.FileTransferLsDirAsync();
-            //妫�娴嬬綉鍏宠繑鍥炵殑鍏遍�氶敊璇姸鎬佺爜
-            string error = HdlCheckLogic.Current.CheckCommonErrorCode(fileData);
-            if (error != null)
-            {
-                this.ShowMassage(ShowMsgType.Error, error);
-                return null;
-            }
-
-            if (fileData == null || fileData.fileTransferLsDiResponseData == null || fileData.fileTransferLsDiResponseData.Result != 0)
-            {
-                //鑾峰彇缃戝叧鏂囦欢澶辫触
-                string msg = Language.StringByID(R.MyInternationalizationString.uGetGatewayFileFail);
-                this.ShowMassage(ShowMsgType.Error, msg);
-                return null;
-            }
-            var listFile = new List<string>();
-            foreach (var filedata in fileData.fileTransferLsDiResponseData.Dir)
-            {
-                listFile.Add(filedata.File);
-            }
-            return listFile;
-        }
-
-        #endregion
-
-        #region 鈻� 涓�鑸柟娉昣__________________________
 
         #endregion
     }

--
Gitblit v1.8.0