From 0e1c6c25b1b0961d324811ff2132717a80f99efe Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期日, 26 四月 2020 14:15:05 +0800
Subject: [PATCH] 2020-04-26 1.添加住宅和修改住宅时,改为子线程操作。 2.远程连接模式时,禁用搜索网关和添加设备。3.修复切换住宅时,提示远程连接Loading不关闭问题。

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs     |    2 
 Crabtree/ON/Properties/AndroidManifest.xml                           |    2 
 Crabtree/.vs/SmartHome/xs/UserPrefs.xml                              |   36 +----------
 Crabtree/.vs/SmartHome/xs/sqlite3/storage.ide                        |    0 
 Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs |   96 ++++++++++++++++++++++++-------
 Crabtree/SmartHome/UI/SimpleControl/MainPage.cs                      |    2 
 6 files changed, 82 insertions(+), 56 deletions(-)

diff --git a/Crabtree/.vs/SmartHome/xs/UserPrefs.xml b/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
index a3070ea..4fe2932 100644
--- a/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
+++ b/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
@@ -1,41 +1,15 @@
-锘�<Properties StartupConfiguration="{1D83BF28-BA88-4152-BA41-D7EFE90A5437}|Default">
+锘�<Properties StartupConfiguration="{9D9EF20B-6E65-4A65-92BF-567EBF1E1443}|Default">
   <MonoDevelop.Ide.ItemProperties.ON.Droid PreferredExecutionTarget="Android.364c4b3158493098" />
   <MonoDevelop.Ide.Workbench>
-    <Files>
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs" Line="84" Column="50" IsPinned="True" />
-      <File FileName="../../../2020/娴嬭瘯/SmartHome/SmartHome/UI/SimpleControl/Phone/Room/UserRoom.cs" />
-      <File FileName="SmartHome/UI/SimpleControl/EquipmentPublicClass.cs" Line="51" Column="1" />
-      <File FileName="SmartHome/UI/SimpleControl/MainPage.cs" Line="41" Column="56" />
-      <File FileName="SmartHome/UI/SimpleControl/Phone/User/UserMiddle.cs" />
-      <File FileName="SmartHome/UI/SimpleControl/MqttCommon.cs" Line="241" Column="64" />
-      <File FileName="SmartHome/HDL/Operation/Utlis.cs" />
-      <File FileName="ON/Properties/AndroidManifest.xml" />
-      <File FileName="ON.Ios/AppDelegate.cs" Line="294" Column="22" />
-      <File FileName="ON.Ios/ViewController.cs" Line="39" Column="77" />
-    </Files>
     <Pads>
       <Pad Id="ProjectPad">
         <State name="__root__">
-          <Node name="SmartHome" expanded="True">
-            <Node name="ON.Droid" expanded="True" selected="True">
-              <Node name="Properties" expanded="True" />
-            </Node>
-            <Node name="ON.Ios" expanded="True" />
-            <Node name="Shared" expanded="True">
-              <Node name="HDL" expanded="True">
-                <Node name="Operation" expanded="True" />
-              </Node>
-              <Node name="UI" expanded="True">
-                <Node name="SimpleControl" expanded="True">
-                  <Node name="Phone" expanded="True">
-                    <Node name="Register" expanded="True" />
-                  </Node>
-                </Node>
-              </Node>
-            </Node>
-          </Node>
+          <Node name="SmartHome" expanded="True" />
         </State>
       </Pad>
+      <Pad Id="MonoDevelop.Debugger.WatchPad">
+        <State />
+      </Pad>
     </Pads>
   </MonoDevelop.Ide.Workbench>
   <MonoDevelop.Ide.ItemProperties.DroidService PreferredExecutionTarget="Android.Android_Accelerated_Oreo" />
diff --git a/Crabtree/.vs/SmartHome/xs/sqlite3/storage.ide b/Crabtree/.vs/SmartHome/xs/sqlite3/storage.ide
index b8d8f20..286a88f 100644
--- a/Crabtree/.vs/SmartHome/xs/sqlite3/storage.ide
+++ b/Crabtree/.vs/SmartHome/xs/sqlite3/storage.ide
Binary files differ
diff --git a/Crabtree/ON/Properties/AndroidManifest.xml b/Crabtree/ON/Properties/AndroidManifest.xml
index a02a790..b2d7f0e 100644
--- a/Crabtree/ON/Properties/AndroidManifest.xml
+++ b/Crabtree/ON/Properties/AndroidManifest.xml
@@ -1,5 +1,5 @@
 锘�<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.hdl.crabtreenew" android:versionName="2.504241" android:versionCode="202004241">
+<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.hdl.crabtreenew" android:versionName="2.504261" android:versionCode="202004261">
 	<uses-sdk android:minSdkVersion="23" android:targetSdkVersion="28" />
 	<!-- 鍦ㄥ畨鍗揚鐗堟湰涔嬪悗锛屽繀椤昏鎺堜簣FOREGROUND_SERVICE鏉冮檺锛屾墠鑳藉浣跨敤鍓嶅彴鏈嶅姟 -->
 	<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
diff --git a/Crabtree/SmartHome/UI/SimpleControl/MainPage.cs b/Crabtree/SmartHome/UI/SimpleControl/MainPage.cs
index 08b2494..1f245cc 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/MainPage.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/MainPage.cs
@@ -38,7 +38,7 @@
         //public static Button LogoButton = new Button ();
   
 
-        public static string RequestVersion = "20200424";
+        public static string RequestVersion = "20200426";
         public static UserInfo LoginUser;
         /// <summary>
         /// 鏄惁鏄鐞嗗憳鏉冮檺(鍙樻洿浜�,鎴愬憳鐨勬椂鍊�,杩欎釜涔熶负ture銆備负浠�涔堜細澹版槑杩欐牱鍙橀噺,鍥犱负鏈変簺鎺ュ彛蹇呴』浣跨敤鍘熸潵鐨凾oken)
diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
index f91a70d..2bda578 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
@@ -543,6 +543,14 @@
         /// <param name="home"></param>
         void GotoGuideAddGatewayView (RegionInfoRes home) {
             try {
+                //杩滅▼杩炴帴鐨勬椂鍊欑姝� 鎼滅储缃戝叧鍜屾坊鍔犺澶�
+                if (CommonPage.IsRemote) {
+                    //褰撳墠澶勪簬杩滅▼杩炴帴妯″紡锛屾棤娉曡繘鍏ユ悳绱㈢綉鍏抽〉闈€�傝鍏堝垏鎹㈠洖鏈湴杩炴帴妯″紡銆�
+                    new Alert ("", "Currently in remote connection mode, unable to enter the search gateway page. Please switch back to local connection mode first.", Language.StringByID (R.MyInternationalizationString.Close)).Show ();
+                    return;
+                }
+
+
                 var addGatewayDialog = new GuideAddGateway ();
                 (Parent as PageLayout).AddChidren (addGatewayDialog);
                 addGatewayDialog.ShowPage (home);
@@ -563,8 +571,9 @@
         void ChangeRegion (RegionInfoRes home, bool goHomePage = true, bool bNeedCheckAddRoom = false, bool goToGuideAddGatewayView = false)
         {
             if (home == null || string.IsNullOrEmpty (home.Id)) return;
-
-            MainPage.Loading.Start ("Please wait...");
+            Application.RunOnMainThread (() => {
+                MainPage.Loading.Start ("Please wait...");
+            });
             System.Threading.Tasks.Task.Run (() => {
                 try {
                     //if (home.RegionID != UserConfig.Instance.CurrentRegion.RegionID) {
@@ -612,7 +621,7 @@
                             new Alert ("", Language.StringByID (R.MyInternationalizationString.SwitchRegionSuccessfully),
                                       Language.StringByID (R.MyInternationalizationString.Close)).Show ();
                             //this.RemoveFromParent ();
-                            CommonPage.IsRemote = false;
+                            //CommonPage.IsRemote = false;
                             EquipmentPublicClass.CheckLinkRemote (UserConfig.Instance.internetStatus);
                         }
                         if (bNeedCheckAddRoom) {
@@ -725,27 +734,70 @@
                     new Alert ("", Language.StringByID (R.MyInternationalizationString.PleaseEnterZoneName), Language.StringByID (R.MyInternationalizationString.Close)).Show ();
                     return;
                 }
-                if (isChangeName) {
-                    //home.Name = button.Text = etZoneName.Text;
-                    var requestObj2 = new EditHomeObj () { HomeId = home.Id, Name = etZoneName.Text, LoginAccessToken = MainPage.LoginUser.LoginTokenString };
-                    string urlHead = MainPage.RequestHttpsHost;
-                    if (requestObj2.IsOtherAccountCtrl) {
-                        urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl;
-                        requestObj2.LoginAccessToken = UserConfig.Instance.MasterAccountToken;
-                    }
 
-                    var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj2);
-                    var revertObj2 = MainPage.RequestHttps (API.EditHome, requestJson2, urlHead);
-                    if (revertObj2.StateCode.ToUpper () != "SUCCESS") {
-                        ShowEditHomeErrorInfo (revertObj2.StateCode);
-                        return;
-                    }
-                    home.Name = button.Text = etZoneName.Text;
-                    IO.FileUtils.ReNameFoler (UserConfig.Instance.CurrentRegion.Name, home.Name);
-                    return;
-                }
 
-                EditResidence (home, etZoneName.Text.Trim (), guide);
+                //if (isChangeName) {
+                //    //home.Name = button.Text = etZoneName.Text;
+                //    var requestObj2 = new EditHomeObj () { HomeId = home.Id, Name = etZoneName.Text, LoginAccessToken = MainPage.LoginUser.LoginTokenString };
+                //    string urlHead = MainPage.RequestHttpsHost;
+                //    if (requestObj2.IsOtherAccountCtrl) {
+                //        urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl;
+                //        requestObj2.LoginAccessToken = UserConfig.Instance.MasterAccountToken;
+                //    }
+
+                //    var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj2);
+                //    var revertObj2 = MainPage.RequestHttps (API.EditHome, requestJson2, urlHead);
+                //    if (revertObj2.StateCode.ToUpper () != "SUCCESS") {
+                //        ShowEditHomeErrorInfo (revertObj2.StateCode);
+                //        return;
+                //    }
+                //    home.Name = button.Text = etZoneName.Text;
+                //    IO.FileUtils.ReNameFoler (UserConfig.Instance.CurrentRegion.Name, home.Name);
+                //    return;
+                //}
+
+                //EditResidence (home, etZoneName.Text.Trim (), guide);
+
+
+                //2020-04-26
+                MainPage.Loading.Start ("Please wait...");
+                System.Threading.Tasks.Task.Run (() => {
+
+                    try {
+
+                        if (isChangeName) {
+                            //home.Name = button.Text = etZoneName.Text;
+                            var requestObj2 = new EditHomeObj () { HomeId = home.Id, Name = etZoneName.Text, LoginAccessToken = MainPage.LoginUser.LoginTokenString };
+                            string urlHead = MainPage.RequestHttpsHost;
+                            if (requestObj2.IsOtherAccountCtrl) {
+                                urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl;
+                                requestObj2.LoginAccessToken = UserConfig.Instance.MasterAccountToken;
+                            }
+
+                            var requestJson2 = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj2);
+                            var revertObj2 = MainPage.RequestHttps (API.EditHome, requestJson2, urlHead);
+                            if (revertObj2.StateCode.ToUpper () != "SUCCESS") {
+                                ShowEditHomeErrorInfo (revertObj2.StateCode);
+                                return;
+                            }
+                            Application.RunOnMainThread (() => {
+                                home.Name = button.Text = etZoneName.Text;
+                            });
+                            IO.FileUtils.ReNameFoler (UserConfig.Instance.CurrentRegion.Name, home.Name);
+                            return;
+                        }
+
+                        EditResidence (home, etZoneName.Text.Trim (), guide);
+
+
+                    } catch {
+                        //MainPage.FailureToServer ();
+                    } finally {
+                        Application.RunOnMainThread (() => {
+                            MainPage.Loading.Hide ();
+                        });
+                    }
+                });
 
             };
 
diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs
index a096120..57b973d 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs
@@ -991,7 +991,7 @@
             Room.InitAllRoom ();
             Application.RunOnMainThread (() => {
                 this.RemoveFromParent ();
-                CommonPage.IsRemote = false;
+                //CommonPage.IsRemote = false;
                 UserMiddle.Init ();
                 EquipmentPublicClass.CheckLinkRemote (UserConfig.Instance.internetStatus);
                 new Alert ("", Language.StringByID (R.MyInternationalizationString.RestoreFileIsSuccessfull),

--
Gitblit v1.8.0