From e90209beae6a4e822cecb18e6889f8bda23f630e Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期一, 14 十二月 2020 11:16:06 +0800
Subject: [PATCH] 合并了晾衣架(非新云端)

---
 ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs |  165 +++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 123 insertions(+), 42 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs
index ff4c340..9ffe23b 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs
@@ -36,7 +36,8 @@
             this.memberInfo = info;
 
             //璁剧疆鏍囬淇℃伅
-            base.SetTitleText(info.ShowName);
+            string title = string.IsNullOrEmpty(info.UserName) == true ? info.Account : info.UserName;
+            base.SetTitleText(title);
 
             //鍒濆鍖栧彸涓婅鐨勫浘鏍�
             this.InitTopRightIcon();
@@ -50,7 +51,7 @@
         /// </summary>
         private void InitTopRightIcon()
         {
-            if (HdlUserCenterResourse.ResidenceOption.AuthorityNo != 1)
+            if (UserCenterResourse.UserInfo.AuthorityNo != 1)
             {
                 return;
             }
@@ -75,7 +76,7 @@
                     //纭畾鎺堟潈銆寋0}銆嶆垚涓虹鐞嗗憳?
                     msg = Language.StringByID(R.MyInternationalizationString.uUpSubAccountLevel);
                 }
-                msg = msg.Replace("{0}", memberInfo.ShowName);
+                msg = msg.Replace("{0}", string.IsNullOrEmpty(memberInfo.UserName) == true ? memberInfo.Account : memberInfo.UserName);
 
                 this.ShowMassage(ShowMsgType.Confirm, msg, () =>
                  {
@@ -113,7 +114,7 @@
             bodyFrameLayout.AddChidren(frame);
 
             //鐢ㄦ埛鍥炬爣
-            string iconPath = System.IO.Path.Combine(HdlFileNameResourse.UserPictrueDirectory, memberInfo.ChildAccountId + ".png");
+            string iconPath = System.IO.Path.Combine(UserCenterResourse.AccountOption.UserPictruePath, memberInfo.DistributedMark + ".png");
             var btnUserIcon = new ImageView();
             btnUserIcon.Height = this.GetPictrueRealSize(207);
             btnUserIcon.Width = this.GetPictrueRealSize(207);
@@ -159,7 +160,7 @@
         {
             //鏍囬:鎴愬憳鏉冮檺
             var btnMenberTile = new NormalViewControl(800, 60, true);
-            btnMenberTile.X = HdlControlResourse.XXLeft;
+            btnMenberTile.X = ControlCommonResourse.XXLeft;
             btnMenberTile.Y = Application.GetRealHeight(418);
             btnMenberTile.TextColor = UserCenterColor.Current.TextColor2;
             btnMenberTile.TextID = R.MyInternationalizationString.MenberAuthority;
@@ -217,7 +218,11 @@
                 string msg = Language.StringByID(R.MyInternationalizationString.uConfirmRemoveMember);
                 this.ShowMassage(ShowMsgType.Confirm, msg, () =>
                 {
-                    this.DeleteSubAccount();
+                    //鍒犻櫎瀛愯处鍙�
+                    HdlThreadLogic.Current.RunThread(() =>
+                    {
+                        this.DeleteSubAccount();
+                    });
                 });
             };
         }
@@ -243,19 +248,24 @@
 
             //寮�鍏�
             var btnSwitch = row.AddMostRightSwitchIcon();
-            if (this.memberInfo.IsRemoteControl == true)
+            if (this.memberInfo.IsAllowRemoteCtrl == true)
             {
                 btnSwitch.IsSelected = true;
             }
             btnSwitch.ButtonClickEvent += (sender, e) =>
             {
                 btnSwitch.CanClick = false;
-                bool statu = !btnSwitch.IsSelected;
                 HdlThreadLogic.Current.RunThread(() =>
                 {
+                    var pra = new
+                    {
+                        HouseDistributedMark = Common.Config.Instance.Home.Id,
+                        DistributedMark = this.memberInfo.DistributedMark,
+                        IsAllowRemoteCtrl = !btnSwitch.IsSelected
+                    };
                     //鎵撳紑杩涘害鏉�
                     this.ShowProgressBar();
-                    var result = HdlMemberLogic.Current.SetRemoteOperationPermissions(this.memberInfo.ChildAccountId, statu);
+                    var result = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/ChangeSubAccountIsAllowRemoteCtrl", false, pra);
                     //鍏抽棴杩涘害鏉�
                     this.CloseProgressBar();
 
@@ -263,12 +273,12 @@
                     {
                         return;
                     }
-                    this.memberInfo.IsRemoteControl = statu;
+                    this.memberInfo.IsAllowRemoteCtrl = !btnSwitch.IsSelected;
 
                     HdlThreadLogic.Current.RunMain(() =>
                     {
-                        btnSwitch.IsSelected = statu;
                         btnSwitch.CanClick = true;
+                        btnSwitch.IsSelected = !btnSwitch.IsSelected;
                     });
                 });
       
@@ -314,33 +324,50 @@
         /// <summary>
         /// 鍗囩骇鎴栬�呴檷绾у瓙璐﹀彿
         /// </summary>
-        private void UpOrDownSubAccountLevel()
+        public void UpOrDownSubAccountLevel()
         {
-            //鍙樻洿鏉冮檺
-            var result = HdlMemberLogic.Current.EditorMemberAuthority(this.memberInfo.ChildAccountId, memberInfo.AccountType == 1 ? 1 : 3);
-            if (result == false)
+            HdlThreadLogic.Current.RunThread(() =>
             {
-                return;
-            }
+                //寮�鍚繘搴︽潯
+                this.ShowProgressBar();
 
-            //鍙樻洿鏉冮檺
-            memberInfo.AccountType = memberInfo.AccountType == 1 ? 0 : 1;
+                var pra = new UpOrDownLevelPra();
+                pra.DistributedMark = memberInfo.DistributedMark;
 
-            //鍙樻洿鏉冮檺鍥炬爣
-            if (memberInfo.AccountType == 1)
-            {
-                btnTopIcon.UnSelectedImagePath = "Item/HadAuthority.png";
-            }
-            else
-            {
-                btnTopIcon.UnSelectedImagePath = "Item/NotAuthority.png";
-            }
-            //鍙樻洿鏉冮檺鏂囧瓧
-            btnAuthority.TextID = memberInfo.AccountType == 1 ? R.MyInternationalizationString.uMemberHadActionAuthority : R.MyInternationalizationString.uMember;
+                bool result = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/UpSubAccount", false, pra);
+                if (result == false)
+                {
+                    this.CloseProgressBar();
+                    return;
+                }
+                this.CloseProgressBar();
 
-            //鎵撳紑鏄剧ず鎴愬姛鐨勭敾闈�
-            var form = new SubAccountLevelUpSuccessForm();
-            form.AddForm(memberInfo);
+                //鍙樻洿鏉冮檺
+                memberInfo.AccountType = memberInfo.AccountType == 1 ? 0 : 1;
+
+                HdlThreadLogic.Current.RunMain(() =>
+                {
+                    if (this.Parent == null)
+                    {
+                        return;
+                    }
+                    //鍙樻洿鏉冮檺鍥炬爣
+                    if (memberInfo.AccountType == 1)
+                    {
+                        btnTopIcon.UnSelectedImagePath = "Item/HadAuthority.png";
+                    }
+                    else
+                    {
+                        btnTopIcon.UnSelectedImagePath = "Item/NotAuthority.png";
+                    }
+                    //鍙樻洿鏉冮檺鏂囧瓧
+                    btnAuthority.TextID = memberInfo.AccountType == 1 ? R.MyInternationalizationString.uMemberHadActionAuthority : R.MyInternationalizationString.uMember;
+
+                    //鎵撳紑鏄剧ず鎴愬姛鐨勭敾闈�
+                    var form = new SubAccountLevelUpSuccessForm();
+                    form.AddForm(memberInfo);
+                });
+            });
         }
 
         #endregion
@@ -352,15 +379,28 @@
         /// </summary>
         private void DeleteSubAccount()
         {
-            bool result = HdlMemberLogic.Current.DeleteMember(this.memberInfo.ChildAccountId);
+            //寮�鍚繘搴︽潯
+            this.ShowProgressBar();
+
+            var pra = new DeleteSubAccountPra();
+            pra.SubAccount = memberInfo.SubAccountDistributedMark;
+
+            bool result = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/DeletedSubAccount", false, pra);
+            //鍏抽棴杩涘害鏉�
+            this.CloseProgressBar();
+
             if (result == false)
             {
                 return;
             }
-            //浠庢垚鍛樹竴瑙堢敾闈㈢Щ闄�
-            this.LoadFormMethodByName("MemberListForm", "DeleteRowByAccount", memberInfo.Account);
-            //鑷韩鍏抽棴
-            this.CloseForm();
+
+            HdlThreadLogic.Current.RunMain(() =>
+            {
+                //浠庢垚鍛樹竴瑙堢敾闈㈢Щ闄�
+                this.LoadFormMethodByName("MemberListForm", "DeleteRowByAccount", memberInfo.Account);
+                //鑷韩鍏抽棴
+                this.CloseForm();
+            });
         }
 
         #endregion
@@ -374,12 +414,24 @@
         {
             HdlThreadLogic.Current.RunThread(() =>
             {
-                var imageData = HdlAccountLogic.Current.DownLoadAccountPictrue(memberInfo.Account);
-                if (imageData != null && imageData.Length > 0)
+                var pra = new AccountInfoPra();
+                pra.Account = memberInfo.Account;
+                var result = UserCenterLogic.GetByteResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountInfo", false, pra, new List<string> { "NotCheck" }, false);
+                if (result == null)
+                {
+                    return;
+                }
+                var revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.ResponseEntity.ResponsePack>(System.Text.Encoding.UTF8.GetString(result));
+                if (revertObj == null || revertObj.ResponseData == null)
+                {
+                    return;
+                }
+                var infoResult = Newtonsoft.Json.JsonConvert.DeserializeObject<AccountInfoResult>(revertObj.ResponseData.ToString());
+                if (infoResult.HeadImage != null)
                 {
                     //鍐欏叆澶村儚鍐呭
-                    string iconPath = System.IO.Path.Combine(HdlFileNameResourse.UserPictrueDirectory, memberInfo.ChildAccountId + ".png");
-                    Shared.IO.FileUtils.WriteFileByBytes(iconPath, imageData);
+                    string iconPath = System.IO.Path.Combine(UserCenterResourse.AccountOption.UserPictruePath, memberInfo.DistributedMark + ".png");
+                    Shared.IO.FileUtils.WriteFileByBytes(iconPath, infoResult.HeadImage);
                     HdlThreadLogic.Current.RunMain(() =>
                     {
                         btnUserIcon.ImageBytes = Shared.IO.FileUtils.ReadFile(iconPath);
@@ -389,5 +441,34 @@
         }
 
         #endregion
+
+        #region 鈻� 缁撴瀯浣揰____________________________
+
+        /// <summary>
+        /// 鍗囩骇鎴栬�呴檷绾у瓙璐﹀彿鐨勫惎鍔ㄥ弬鏁�
+        /// </summary>
+        private class UpOrDownLevelPra : IfacePraCommon
+        {
+            /// <summary>
+            /// 閫氳繃銆婁綇瀹呯殑Guid鏌ヨ浣忓畢涓嬮潰鐨勫瓙璐﹀彿銆嬫帴鍙f椂锛岃繑鍥炵殑DistributedMark瀛楁
+            /// </summary>
+            public string DistributedMark = string.Empty;
+        }
+
+        /// <summary>
+        /// 鍒犻櫎瀛愯处鍙风殑鍚姩鍙傛暟
+        /// </summary>
+        private class DeleteSubAccountPra : IfacePraCommon
+        {
+            /// <summary>
+            /// 閫氳繃銆婁綇瀹呯殑Guid鏌ヨ浣忓畢涓嬮潰鐨勫瓙璐﹀彿銆嬫帴鍙f椂锛岃繑鍥炵殑DistributedMark瀛楁
+            /// </summary>
+            public string SubAccount = string.Empty;
+            /// <summary>
+            /// HouseDistributedMark
+            /// </summary>
+            public string HouseDistributedMark = Common.Config.Instance.HomeId;
+        }
+        #endregion
     }
 }

--
Gitblit v1.8.0