From dee21bf452a8979d0515d13e534fbb69ed9715dd Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期二, 01 九月 2020 15:33:13 +0800
Subject: [PATCH] 上传一个版本

---
 ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs |  113 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 90 insertions(+), 23 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
index 1f94ca2..76cb9dc 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
@@ -44,8 +44,12 @@
             //涓讳汉鎴栬�呯鐞嗗憳鎵嶄細鍑虹幇杩欎釜鑿滃崟
             if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
             {
-                //鍒濆鍖栧彸涓婅鑿滃崟
-                this.InitTopRightMenu();
+                //鏌ョ湅妯℃澘鏃�,涓嶅厑璁哥紪杈�
+                if (Common.Config.Instance.Home.IsShowTemplate == false)
+                {
+                    //鍒濆鍖栧彸涓婅鑿滃崟
+                    this.InitTopRightMenu();
+                }
             }
             //鍒濆鍖栦腑閮ㄤ俊鎭�
             this.InitMiddleFrame(i_CanDeleteResidence);
@@ -102,27 +106,19 @@
             if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
             {
                 rowHome.frameTable.UseClickStatu = true;
+                //鏌ョ湅妯℃澘鏃�,涓嶅厑璁哥紪杈�
+                if (Common.Config.Instance.Home.IsShowTemplate == true)
+                {
+                    rowHome.frameTable.CanClick = false;
+                }
                 rowHome.frameTable.ButtonClickEvent += (sender, e) =>
                 {
-                    //榛樿鍊� 23.134421,113.267189
-                    double latitude = Common.Config.Instance.Home.Latitude;
-                    double longitude = Common.Config.Instance.Home.Longitude;
-                    //鍦板浘
-                    GDMapKit.Show((mLatitude, mLongitude, mRadius, name) =>
-                    {
-                        HdlThreadLogic.Current.RunThread(() =>
-                        {
-                            //淇濆瓨浣忓畢鍦板潃
-                            this.SaveResidenceAdrress(btnLocation, mLatitude, mLongitude, name);
-                        });
-                    }, 
-                    Language.StringByID(R.MyInternationalizationString.uSelectAdrress),
-                    Language.StringByID(R.MyInternationalizationString.uSave),
-                    true, latitude, longitude, 100);
+                    //妫�娴嬫潈闄�,鐒跺悗鏄剧ず鍦板浘
+                    this.CheckAuthorityAndShowMap(btnLocation);
                 };
             }
 
-            if (i_CanDeleteResidence == true)
+            if (i_CanDeleteResidence == true && Common.Config.Instance.Home.IsShowTemplate == false)
             {
                 //鍒犻櫎
                 var btnDelete = new NormalViewControl(Application.GetRealWidth(184), rowHome.Height, false);
@@ -326,6 +322,11 @@
 
             if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
             {
+                //鏌ョ湅妯℃澘鏃�,涓嶅厑璁哥紪杈�
+                if (Common.Config.Instance.Home.IsShowTemplate == true)
+                {
+                    return;
+                }
                 //鏇存敼
                 var btnChanged = frameRow.AddEditorControl();
                 btnChanged.TextID = R.MyInternationalizationString.uChanged1;
@@ -460,13 +461,14 @@
                     {
                         keys = Guid.NewGuid().ToString();
                     }
-                    if (Common.Config.Instance.Home.CurrentFloorId == string.Empty)
+                    bool hadFloor = Common.Config.Instance.Home.CurrentFloorId != string.Empty;
+                    Common.Config.Instance.Home.FloorDics[keys] = textValue;
+                    Common.Config.Instance.Home.Save();
+                    if (hadFloor == false)
                     {
                         //鍒涘缓绗竴涓柊鐨勬ゼ灞傜殑璇�,闇�瑕佸幓鍒锋柊涓婚〉宸﹁竟鐨勬埧闂村垪琛�
                         HdlRoomLogic.Current.RefreshRoomListView();
                     }
-                    Common.Config.Instance.Home.FloorDics[keys] = textValue;
-                    Common.Config.Instance.Home.Save();
 
                     if (btnFloor != null)
                     {
@@ -581,7 +583,12 @@
                     btnName.Text = roomName;
                 };
             };
-
+            //鏌ョ湅妯℃澘鏃�,涓嶅厑璁哥紪杈�
+            if (Common.Config.Instance.Home.IsShowTemplate == true)
+            {
+                btnEditor.Text = Language.StringByID(R.MyInternationalizationString.uSearch1);
+                return;
+            }
             //鍒犻櫎
             var btnDelete = frameRow.AddDeleteControl();
             btnDelete.ButtonClickEvent += (sender, e) =>
@@ -694,7 +701,7 @@
             var myHouse = HdlResidenceLogic.Current.GetHouseByFilePath(Common.Config.Instance.HomeFilePathList[index]);
             //鍒囨崲浣忓畢
             Common.Config.Instance.HomeId = myHouse.Id;
-            Common.Config.Instance.Home = HdlResidenceLogic.Current.GetHouseByHouseId(myHouse.Id);
+            Common.Config.Instance.Home = myHouse;
             Common.Global.CreateHomeDirectory(myHouse.Id);
             Common.Config.Instance.Save();
 
@@ -718,6 +725,66 @@
 
         #endregion
 
+        #region 鈻� 鏄剧ず鍦板浘___________________________
+
+        /// <summary>
+        /// 妫�娴嬫潈闄�,鐒跺悗鏄剧ず鍦板浘
+        /// </summary>
+        /// <param name="btnLocation">鍦板潃鏄剧ず鎺т欢</param>
+        private void CheckAuthorityAndShowMap(NormalViewControl btnLocation)
+        {
+#if Android
+            //鏄剧ず鍦板浘
+            this.ShowMap(btnLocation);
+            ////鐢宠瀹氫綅鏉冮檺
+            //((BaseActivity)Application.Activity).SetGPSLocationPermission((result1) =>
+            //{
+            //    if (result1 == false) { return; }
+            //    //鐢宠璇绘潈闄�
+            //    ((BaseActivity)Application.Activity).ReadWriteContact((result2) =>
+            //    {
+            //        if (result2 == false) { return; }
+            //        //鐢宠璇诲彇鎵嬫満鍙锋潈闄�
+            //        ((BaseActivity)Application.Activity).SetPermission((result3) =>
+            //        {
+            //            if (result3 == false) { return; }
+            //            //鏄剧ず鍦板浘
+            //            this.ShowMap(btnLocation);
+            //        }, "android.permission.READ_PHONE_STATE");
+            //    });
+            //});
+#endif
+#if iOS
+            //鏄剧ず鍦板浘
+            this.ShowMap(btnLocation);
+#endif
+        }
+
+        /// <summary>
+        /// 鏄剧ず鍦板浘
+        /// </summary>
+        /// <param name="btnLocation">鍦板潃鏄剧ず鎺т欢</param>
+        private void ShowMap(NormalViewControl btnLocation)
+        {
+            //榛樿鍊� 23.134421,113.267189
+            double latitude = Common.Config.Instance.Home.Latitude;
+            double longitude = Common.Config.Instance.Home.Longitude;
+            //鍦板浘
+            GDMapKit.Show((mLatitude, mLongitude, mRadius, name) =>
+            {
+                HdlThreadLogic.Current.RunThread(() =>
+                {
+                    //淇濆瓨浣忓畢鍦板潃
+                    this.SaveResidenceAdrress(btnLocation, mLatitude, mLongitude, name);
+                });
+            },
+            Language.StringByID(R.MyInternationalizationString.uSelectAdrress),
+            Language.StringByID(R.MyInternationalizationString.uSave),
+            true, latitude, longitude, 100);
+        }
+
+        #endregion
+
         #region 鈻� 淇濆瓨浣忓畢鍦板浘鍦板潃___________________
 
         /// <summary>

--
Gitblit v1.8.0