From 149adc620e7e120ee2adaa406a5302c9a0a2eff3 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 10 一月 2020 17:26:23 +0800
Subject: [PATCH] 2020-01-10 1.优化。

---
 Crabtree/SmartHome/HDL/Operation/UserConfig.cs                       |    9 +++++++++
 Crabtree/.vs/SmartHome/xs/UserPrefs.xml                              |   32 ++++++++------------------------
 Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs    |    5 ++++-
 Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs |    1 +
 Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs   |   12 +++++++++++-
 5 files changed, 33 insertions(+), 26 deletions(-)

diff --git a/Crabtree/.vs/SmartHome/xs/UserPrefs.xml b/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
index c45ef57..58abf5e 100644
--- a/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
+++ b/Crabtree/.vs/SmartHome/xs/UserPrefs.xml
@@ -1,29 +1,13 @@
 锘�<Properties StartupConfiguration="{1D83BF28-BA88-4152-BA41-D7EFE90A5437}|Default">
   <MonoDevelop.Ide.ItemProperties.ON.Droid PreferredExecutionTarget="Android.Android_Accelerated_Oreo" />
-  <MonoDevelop.Ide.Workbench ActiveDocument="SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs">
+  <MonoDevelop.Ide.Workbench ActiveDocument="SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs">
     <Files>
-      <File FileName="SmartHome/HDL/Operation/Utlis.cs" Line="50" Column="45" />
-      <File FileName="SmartHome/UI/SimpleControl/MqttCommon.cs" Line="253" Column="73" />
-      <File FileName="SmartHome/UI/SimpleControl/EquipmentPublicClass.cs" />
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Guide/GuideAddGateway.cs" Line="312" Column="1" />
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Guide/GuideSettingGateway.cs" Line="1085" Column="50" />
-      <File FileName="SmartHome/HDL/Operation/Device/GatewayBase.cs" />
-      <File FileName="SmartHome/HDL/Operation/Device/Common.cs" />
-      <File FileName="ON/Properties/AndroidManifest.xml" />
-      <File FileName="SmartHome/UI/SimpleControl/MainPage.cs" Line="185" Column="36" />
-      <File FileName="SmartHome/HDL/Operation/ResponseEntity/RegionInfoRes.cs" Line="20" Column="22" />
-      <File FileName="SmartHome/HDL/Operation/UserConfig.cs" Line="1" Column="1" />
-      <File FileName="SmartHome/UI/SimpleControl/Phone/Alexa/AlexaSettingPage.cs" Line="455" Column="73" />
-      <File FileName="SmartHome/HDL/Operation/ResponseEntity/SendJson.cs" Line="1" Column="1" />
+      <File FileName="SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs" Line="524" Column="47" />
     </Files>
     <Pads>
       <Pad Id="ProjectPad">
         <State name="__root__">
           <Node name="SmartHome" expanded="True">
-            <Node name="ON.Droid" expanded="True">
-              <Node name="Properties" expanded="True" />
-              <Node name="Resources" expanded="True" />
-            </Node>
             <Node name="ON.Ios" expanded="True" />
             <Node name="Shared" expanded="True">
               <Node name="HDL" expanded="True">
@@ -36,11 +20,11 @@
                 <Node name="SimpleControl" expanded="True">
                   <Node name="Phone" expanded="True">
                     <Node name="Alexa" expanded="True" />
-                    <Node name="Guide" expanded="True">
-                      <Node name="GuideSettingGateway.cs" selected="True" />
-                    </Node>
+                    <Node name="Guide" expanded="True" />
                     <Node name="Light" expanded="True" />
-                    <Node name="Register" expanded="True" />
+                    <Node name="Register" expanded="True">
+                      <Node name="Databackup.cs" selected="True" />
+                    </Node>
                     <Node name="Room" expanded="True" />
                     <Node name="Schedule" expanded="True" />
                     <Node name="Sensor" expanded="True" />
@@ -65,8 +49,8 @@
   <MonoDevelop.Ide.ItemProperties.ON.Ios automaticSigning="False" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.254b82433419c7ca1850b1dfb524c79b7aeb0640" />
   <MonoDevelop.Ide.DebuggingService.Breakpoints>
     <BreakpointStore>
-      <Breakpoint file="/Users/hdl/Desktop/APP/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/MainPage.cs" relfile="SmartHome/UI/SimpleControl/MainPage.cs" line="233" column="1" />
-      <Breakpoint file="/Users/hdl/Desktop/APP/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/MainPage.cs" relfile="SmartHome/UI/SimpleControl/MainPage.cs" line="225" column="1" />
+      <Breakpoint file="/Users/hdl/Desktop/APP/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs" relfile="SmartHome/UI/SimpleControl/Phone/Register/Databackup.cs" line="662" column="1" />
+      <Breakpoint file="/Users/hdl/Desktop/APP/CrabtreeOn/Crabtree/SmartHome/UI/SimpleControl/MainPage.cs" relfile="SmartHome/UI/SimpleControl/MainPage.cs" line="227" column="1" />
     </BreakpointStore>
   </MonoDevelop.Ide.DebuggingService.Breakpoints>
   <MultiItemStartupConfigurations />
diff --git a/Crabtree/SmartHome/HDL/Operation/UserConfig.cs b/Crabtree/SmartHome/HDL/Operation/UserConfig.cs
index ac01c14..4e972dd 100644
--- a/Crabtree/SmartHome/HDL/Operation/UserConfig.cs
+++ b/Crabtree/SmartHome/HDL/Operation/UserConfig.cs
@@ -179,6 +179,15 @@
             }
         }
 
+        public bool CheckThisHomeGatewaysNotEmpty (RegionInfoRes mRegionInfoRes)
+        {
+            if (mRegionInfoRes != null && mRegionInfoRes.HomeGateways != null && mRegionInfoRes.HomeGateways.Count > 0 && !string.IsNullOrEmpty (mRegionInfoRes.HomeGateways [0].GatewayUniqueId)) {
+                return true;
+            } else {
+                return false;
+            }
+        }
+
         //public List<GatewayRes> GatewayList = new List<GatewayRes> ();
 
         //public List<string> GatewayMACList {
diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
index d9af43e..d0b57dd 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
@@ -474,6 +474,7 @@
                     Room.InitAllRoom ();
                     Application.RunOnMainThread (() => {
                         ShowHomeList (false);
+
                         if (goHomePage) {
                             UserConfig.Instance.RefreshUserConfig ();
                             new Alert ("", Language.StringByID (R.MyInternationalizationString.SwitchRegionSuccessfully),
diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs
index dc4b14f..1ddb314 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Register/AccountLogin.cs
@@ -457,7 +457,17 @@
                     var revertRoomData = mResidenceRes.PageData;
                     if (revertRoomData.Find ((obj) => obj.Id == UserConfig.Instance.CurrentRegion.Id) == null) {
                         if (revertRoomData != null && revertRoomData.Count > 0) {
-                            UserConfig.Instance.CurrentRegion = revertRoomData [0];
+                            var bFind = false;
+                            foreach(var mHome in revertRoomData) {
+                                if (UserConfig.Instance.CheckThisHomeGatewaysNotEmpty (mHome)) {
+                                    bFind = true;
+                                    UserConfig.Instance.CurrentRegion = mHome;
+                                    break;
+                                }
+                            }
+                            if (!bFind) {
+                                UserConfig.Instance.CurrentRegion = revertRoomData [0];
+                            }
                             //if (UserConfig.Instance.CheckHomeGateways ()) {
                             //    UserConfig.Instance.GatewayMAC = revertRoomData [0].HomeGateways [0].GatewayUniqueId;
                             //}
diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs
index e3c9da0..3d2ffc6 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Schedule/AddSchedule.cs
@@ -577,7 +577,10 @@
                     //new Alert ("", "璇峰~鍐欏畾鏃跺櫒鍚嶇О!", "Close").Show ();
                     new Alert ("", "Please set name for the timer!", "Close").Show ();
                     return;
-                } else if (listTimer.Find ((obj) => obj.TimerName == timerTemp.TimerName) != null) {//2020-01-09 缂栬緫鐨勬椂鍊欎篃鎻愮ず閲嶅鍚嶅瓧
+                } else if (listTimer.Find ((obj) => obj.TimerName == timerTemp.TimerName) != null && !isEdit) {//2020-01-09 缂栬緫鐨勬椂鍊欎篃鎻愮ず閲嶅鍚嶅瓧
+                    //if (isEdit) {
+
+                    //}
                     new Alert ("", "The timer name already exists. Please change it before saving it.", "Close").Show ();
                     return;
                 }

--
Gitblit v1.8.0