From 4a61a132ce09b1fd42fd80fcbff1855bad4c0f48 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期三, 15 一月 2020 11:15:24 +0800
Subject: [PATCH] 2020-01-15  1.优化。

---
 Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 50 insertions(+), 10 deletions(-)

diff --git a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
index 432b59b..1cbb57a 100644
--- a/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
+++ b/Crabtree/SmartHome/UI/SimpleControl/Phone/Guide/GuideAddResidence.cs
@@ -197,7 +197,7 @@
         /// </summary>
         /// <param name="home">Home.</param>
         /// <param name="VerticalScrolViewMiddle">Vertical scrol view middle.</param>
-        void AddResidenceListRow (RegionInfoRes home, VerticalScrolViewLayout VerticalScrolViewMiddle )
+        void AddResidenceListRow (RegionInfoRes home, VerticalScrolViewLayout VerticalScrolViewMiddle)
         {
             var rowView = new RowLayout () {
                 Height = Application.GetRealHeight (110),
@@ -231,11 +231,28 @@
             };
             rowView.AddChidren (btnName);
 
+
+            //鏄剧ず鍒嗕韩鎸夐挳
+            if (home.IsOthreShare) {
+                Button FromSharingButton = new Button () {
+                    X = Application.GetRealWidth (480),
+                    Width = Application.GetRealWidth (30),
+                    Height = Application.GetRealHeight (30),
+                    Gravity = Gravity.CenterVertical,
+                    UnSelectedImagePath = "CrabtreeAdd/FromSharing.png",
+                    SelectedImagePath = "CrabtreeAdd/FromSharing.png",
+                };
+                rowView.AddChidren (FromSharingButton);
+            }
+
             var goNextButton = new Button () {
                 X = Application.GetRealWidth (500),
                 Width = Application.GetRealWidth (120),
             };
             rowView.AddChidren (goNextButton);
+
+         
+      
 
 
             Button rightButton1 = new Button () {
@@ -247,8 +264,17 @@
                 SelectedImagePath = "Item/RightSelected.png",
             };
             rowView.AddChidren (rightButton1);
+
+
+           
+
             EventHandler<MouseEventArgs> eHandler = (sender, e) => {
                 if (home.Id == UserConfig.Instance.CurrentRegion.Id) {
+                    if (home.IsOthreShare) {
+                        //鎻愮ず娌℃湁鍒嗕韩浣忓畢鐨勬潈闄�
+                        new Alert ("", ErrorCode.InsufficientAuthority, "Close").Show ();
+                        return;
+                    }
                     //UserConfig.Instance.GatewayMAC = gatewayMAC;
                     var addGatewayDialog = new GuideAddGateway ();
                     (Parent as PageLayout).AddChidren (addGatewayDialog);
@@ -258,11 +284,16 @@
                     ChangeRegion (home);
                 }
             };
-                rightButton1.MouseUpEventHandler += eHandler;
+            rightButton1.MouseUpEventHandler += eHandler;
             goNextButton.MouseUpEventHandler += eHandler;
-            btnName.MouseUpEventHandler += (sender,e)=> {
+            btnName.MouseUpEventHandler += (sender, e) => {
                 if (home.Id == UserConfig.Instance.CurrentRegion.Id) {
-                    GuideAddHomeDialog (home, false,true, btnName);
+                    if (home.IsOthreShare) {
+                        //鎻愮ず娌℃湁鍒嗕韩浣忓畢鐨勬潈闄�
+                        new Alert ("", ErrorCode.InsufficientAuthority, "Close").Show ();
+                        return;
+                    }
+                    GuideAddHomeDialog (home, false, true, btnName);
                 } else {
                     ChangeRegion (home);
                 }
@@ -285,6 +316,12 @@
                 };
                 rowView.AddRightView (btnDel);
                 btnDel.MouseUpEventHandler += (sd, ee) => {
+                    if (home.IsOthreShare) {
+                        //鎻愮ず娌℃湁鍒嗕韩浣忓畢鐨勬潈闄�
+                        new Alert ("", ErrorCode.InsufficientAuthority, "Close").Show ();
+                        return;
+                    }
+
                     Dialog dialog = new Dialog ();
 
                     FrameLayout dialogBody = new FrameLayout () {
@@ -375,7 +412,7 @@
                                 var requestObj = new LoginObj () { Account = MainPage.LoginUser.AccountString, Password = password };
                                 var requestJson = Newtonsoft.Json.JsonConvert.SerializeObject (requestObj);
                                 var revertObj = MainPage.RequestHttps (API.Login, requestJson);
-                                if (revertObj.StateCode.ToUpper() == "SUCCESS") {
+                                if (revertObj.StateCode.ToUpper () == "SUCCESS") {
 
                                     var requestObj2 = new DelHomeObj () {
                                         HomeId = home.Id,
@@ -601,8 +638,8 @@
                     return;
                 }
                 if (isChangeName) {
-                    home.Name = button.Text = etZoneName.Text;
-                    var requestObj2 = new EditHomeObj () { HomeId = home.Id, Name = home.Name, LoginAccessToken = MainPage.LoginUser.LoginTokenString };
+                    //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;
@@ -614,7 +651,8 @@
                     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;
                 }
@@ -669,7 +707,7 @@
         bool EditResidence (RegionInfoRes home, string residenceName, bool goToGuideAddGatewayView = false)
         {
             if (home.Name != residenceName) {
-                home.Name = residenceName;
+               
                 if (string.IsNullOrEmpty(home.Id)) {
                     var requestObj21 = new AddHomeObj () {
                         Name = residenceName ,
@@ -682,6 +720,7 @@
                         ShowAddHomeErrorInfo (revertObj21.StateCode);
                         return false;
                     }
+                    home.Name = residenceName;
                     //鍒涘缓浣忓畢鎴愬姛锛屽垏鎹㈠埌璇ヤ綇瀹�
                     var responseDataObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<RegionInfoRes>> (revertObj21.ResponseData.ToString ());
                     if (responseDataObj != null && responseDataObj.Count > 0) {
@@ -689,7 +728,7 @@
                       
                     } 
                 } else {
-                    var requestObj2 = new EditHomeObj () { HomeId = home.Id, Name = home.Name, LoginAccessToken = MainPage.LoginUser.LoginTokenString };
+                    var requestObj2 = new EditHomeObj () { HomeId = home.Id, Name = residenceName, LoginAccessToken = MainPage.LoginUser.LoginTokenString };
                     string urlHead = MainPage.RequestHttpsHost;
                     if (requestObj2.IsOtherAccountCtrl) {
                         urlHead = UserConfig.Instance.MasterAccountRequestBaseUrl;
@@ -701,6 +740,7 @@
                         ShowEditHomeErrorInfo (revertObj2.StateCode);
                         return false;
                     }
+                    home.Name = residenceName;
                     IO.FileUtils.ReNameFoler (UserConfig.Instance.CurrentRegion.Name, home.Name);
                     ChangeRegion (home, false, true, goToGuideAddGatewayView);
                     //CheckIfNeedAddRoom ();

--
Gitblit v1.8.0