From a93db4940a37fd73a37dd9b237c16e744e36f9ea Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 30 八月 2022 10:24:45 +0800
Subject: [PATCH] 迁移升级网关之后修改网关子网号

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs |   63 +++++++++++++++++++++----------
 Crabtree/.vs/SmartHome/xs/UserPrefs.xml                               |   31 ++++++++++-----
 2 files changed, 62 insertions(+), 32 deletions(-)

diff --git a/Crabtree/.vs/SmartHome/xs/UserPrefs.xml b/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
index 7fda6b8..923bff7 100644
--- a/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
+++ b/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
@@ -1,23 +1,29 @@
 锘�<Properties StartupConfiguration="{9D9EF20B-6E65-4A65-92BF-567EBF1E1443}|Default">
   <MonoDevelop.Ide.ItemProperties.ON.Droid PreferredExecutionTarget="Android.SelectDevice" />
-  <MonoDevelop.Ide.Workbench ActiveDocument="SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs">
+  <MonoDevelop.Ide.Workbench ActiveDocument="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs">
     <Files>
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Schedule/UserSchedule.cs" Line="72" Column="6" />
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs" />
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" />
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Register/ManualUpgradeDialog.cs" />
+      <File FileName="SmartHome/UI/SimpleControl/Phone/Register/ManualUpgradeDialog.cs" Line="1" Column="1" />
+      <File FileName="SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs" />
+      <File FileName="SmartHome/UI/SimpleControl/Phone/TV/ConfigIRCode.cs" />
+      <File FileName="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" Line="645" Column="40" />
     </Files>
     <Pads>
       <Pad Id="ProjectPad">
         <State name="__root__">
           <Node name="SmartHome" 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="Schedule" expanded="True">
-                      <Node name="UserSchedule.cs" selected="True" />
+                    <Node name="Register" expanded="True">
+                      <Node name="MigrationServer.cs" selected="True" />
                     </Node>
+                    <Node name="Schedule" expanded="True" />
+                    <Node name="System" expanded="True" />
+                    <Node name="TV" expanded="True" />
                   </Node>
                 </Node>
               </Node>
@@ -33,14 +39,17 @@
     <String>Shared.IOS/Shared.IOS.csproj</String>
     <String>IosService/IosService.csproj</String>
   </DisabledProjects>
-  <MonoDevelop.Ide.Workspace ActiveConfiguration="Release" />
+  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
   <MonoDevelop.Ide.ItemProperties.ON.Ios automaticSigning="False" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget" />
   <MonoDevelop.Ide.DebuggingService.Breakpoints>
     <BreakpointStore>
       <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs" line="282" column="1" />
-      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="326" column="1" />
-      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="345" column="1" />
-      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="564" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="324" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="343" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="562" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs" relfile="SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs" line="28" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="174" column="1" />
+      <Breakpoint file="/Users/kaede/Desktop/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs" line="168" column="1" />
     </BreakpointStore>
   </MonoDevelop.Ide.DebuggingService.Breakpoints>
   <MultiItemStartupConfigurations />
diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs
index aaf6234..fb2a5fb 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/MigrationServer.cs
@@ -163,14 +163,12 @@
 
 #if DEBUG
 
-                //SetGateWayMqttUrlAddress (1, 0);
-                //WriteSecretKey (1, 0, new byte [] {1,1,2,3,2,3,4,5,2,3,5,6 });
-                //CheckGateway ();
 
-                //var newHomeId = Home2New ();
-                //if (newHomeId == "") { } else { }
-                //Account2New (etPwd.Text.Trim());
-                //return;
+
+                var moveAccontResult = Account2New ("12345678");
+                var newHomeId = Home2New ();
+                //杩佺Щ缃戝叧
+                var moveGatewayResult = Gateway2New ("4D59383553502243", newHomeId, 0);
 #endif
 
                 if (etPwd.Text.Trim() == "") {
@@ -567,18 +565,18 @@
                                     btnTipMsg.TextColor = SkinStyle.Current.TextColor;
                                 });
                                 result = 100;
-                            } else if (!visionString.Contains ("Ind_V02.35U_2019/06/25")) {//鐩墠鍙厑璁稿崌绾ц繖涓浐浠剁殑缃戝叧
-                                Application.RunOnMainThread (() => {
-                                    btnTipTitle.Text = "The gateway does not support automatic migration. Please contact technical support.";
-                                    btnTipTitle.Height = Application.GetRealHeight (150);
-                                    btnTipTitle.TextColor = SkinStyle.Current.DelColor;
-                                    btnTipMsg.Text = "";
-                                    etPwd.Visible = false;
-                                    loading.Hide ();
-                                    btnSave.Visible = false;
-                                    btnClose.Width = Application.GetRealWidth (500);
-                                });
-                                return;
+                            //} else if (!visionString.Contains ("Ind_V02.35U_2019/06/25")) {//鐩墠鍙厑璁稿崌绾ц繖涓浐浠剁殑缃戝叧
+                            //    Application.RunOnMainThread (() => {
+                            //        btnTipTitle.Text = "The gateway does not support automatic migration. Please contact technical support.";
+                            //        btnTipTitle.Height = Application.GetRealHeight (150);
+                            //        btnTipTitle.TextColor = SkinStyle.Current.DelColor;
+                            //        btnTipMsg.Text = "";
+                            //        etPwd.Visible = false;
+                            //        loading.Hide ();
+                            //        btnSave.Visible = false;
+                            //        btnClose.Width = Application.GetRealWidth (500);
+                            //    });
+                            //    return;
                             } else {
                                 Application.RunOnMainThread (() => {
                                     btnTipMsg.Text = "Upgrading gateway.";
@@ -638,8 +636,9 @@
                                     }
                                 }
                             }
-
-
+                            //閲嶆柊璁剧疆涓�涓嬪瓙缃戝彿
+                            SetSubnetId (common);
+                            System.Threading.Thread.Sleep (1000);
 
                             if (result == 100) {
 
@@ -933,6 +932,28 @@
         }
 
         /// <summary>
+        /// 璁剧疆瀛愮綉鍙�
+        /// </summary>
+        /// <param name="gatewayDevice"></param>
+        private void SetSubnetId (GatewayBase gatewayDevice)
+        {
+            string [] macAddress = gatewayDevice.MAC.Split ('.');
+                byte [] Musics = new byte [10];
+                for (int i = 0; i < macAddress.Length; i++) {
+                    Musics [i] = Convert.ToByte (macAddress [i], 16);
+                }
+                try {
+                    Musics [8] = Convert.ToByte (Convert.ToInt32 (gatewayDevice.SubnetID));
+                    if (Musics [8] < 0 || Musics [8] > 255) {
+                        throw new Exception ();
+                    }
+                } catch {
+                    return;
+                }
+                Control.ControlBytesSend (Command.SetDeviceSubnetID, gatewayDevice.SubnetID, gatewayDevice.DeviceID, Musics);
+        }
+
+        /// <summary>
         /// 璁惧缃戝叧寮�鍚繙绋�
         /// </summary>
         private bool SetGatewayRemote(byte subnetId, byte deviceId)

--
Gitblit v1.8.0