From 48ba446936b51fffafa7c3600c0dadc6ac0e8c20 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期五, 10 七月 2020 10:52:13 +0800
Subject: [PATCH] 2020-07-10-01

---
 ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs |  114 ++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 96 insertions(+), 18 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs
index b35bb71..658ee39 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Member/MemberManagementForm.cs
@@ -1,4 +1,6 @@
 锘縰sing System;
+using System.Collections.Generic;
+
 namespace Shared.Phone.UserCenter.Member
 {
     /// <summary>
@@ -67,15 +69,15 @@
             btnTopIcon.InitControl();
             btnTopIcon.ButtonClickEvent += (sender, e) =>
             {
+                //纭畾鍙栨秷銆寋0}銆嶇鐞嗗憳鏉冮檺锛�
                 string msg = Language.StringByID(R.MyInternationalizationString.uDownSubAccountLevel);
                 if (memberInfo.AccountType != 1)
                 {
+                    //纭畾鎺堟潈銆寋0}銆嶆垚涓虹鐞嗗憳?
                     msg = Language.StringByID(R.MyInternationalizationString.uUpSubAccountLevel);
-                    if (msg.Contains("{0}") == true)
-                    {
-                        msg = string.Format(msg, string.IsNullOrEmpty(memberInfo.UserName) == true ? memberInfo.Account : memberInfo.UserName);
-                    }
                 }
+                msg = msg.Replace("{0}", string.IsNullOrEmpty(memberInfo.UserName) == true ? memberInfo.Account : memberInfo.UserName);
+
                 this.ShowMassage(ShowMsgType.Confirm, msg, () =>
                  {
                      //浜屾瀹夊叏楠岃瘉,濡傛灉娌℃湁璁剧疆鏈�,鐩存帴璺宠繃楠岃瘉
@@ -112,11 +114,24 @@
             bodyFrameLayout.AddChidren(frame);
 
             //鐢ㄦ埛鍥炬爣
-            var btnUserIcon = new PicViewControl(207, 207);
+            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);
+            btnUserIcon.Radius = (uint)this.GetPictrueRealSize(207) / 2;
+            if (System.IO.File.Exists(iconPath) == true)
+            {
+                btnUserIcon.ImageBytes = Shared.IO.FileUtils.ReadFile(iconPath);
+            }
+            else
+            {
+                btnUserIcon.ImagePath = "Center/Admin.png";
+            }
             btnUserIcon.Y = Application.GetRealHeight(45);
             btnUserIcon.Gravity = Gravity.CenterHorizontal;
-            btnUserIcon.UnSelectedImagePath = "Center/Admin.png";
             frame.AddChidren(btnUserIcon);
+            //鑾峰彇鎴愬憳澶村儚
+            this.GetMemberIcon(btnUserIcon);
 
             //鏉冮檺
             btnAuthority = new NormalViewControl(800, 50, true);
@@ -124,7 +139,7 @@
             btnAuthority.TextSize = 12;
             btnAuthority.Y = btnUserIcon.Bottom + Application.GetRealHeight(23);
             btnAuthority.Gravity = Gravity.CenterHorizontal;
-            btnAuthority.TextColor = UserCenterColor.Current.TextGrayColor;
+            btnAuthority.TextColor = UserCenterColor.Current.TextGrayColor1;
             btnAuthority.TextID = R.MyInternationalizationString.uMember;
             if (memberInfo.AccountType == 1)
             {
@@ -144,7 +159,7 @@
         private void InitInfoList()
         {
             //鏍囬:鎴愬憳鏉冮檺
-            var btnMenberTile = new DetailTitleControl(800, 60, true);
+            var btnMenberTile = new NormalViewControl(800, 60, true);
             btnMenberTile.X = ControlCommonResourse.XXLeft;
             btnMenberTile.Y = Application.GetRealHeight(418);
             btnMenberTile.TextColor = UserCenterColor.Current.TextColor2;
@@ -176,9 +191,9 @@
             this.AddShardContentRow(rowShard);
 
             //涓�鏃︾Щ闄よ瀹跺涵鎴愬憳锛屼粬/濂瑰皢鏃犳硶浣跨敤璇ョ綉鍏充笅鎵�缁戝畾鐨勮澶�
-            var btnNote1 = new NormalViewControl(613, 98, true);
-            btnNote1.X = Application.GetRealWidth(246);
-            btnNote1.Y = Application.GetRealHeight(1328);
+            var btnNote1 = new NormalViewControl(613, 100, true);
+            btnNote1.X = Application.GetRealWidth(248);
+            btnNote1.Y = Application.GetRealHeight(1327);
             btnNote1.TextSize = 12;
             btnNote1.TextID = R.MyInternationalizationString.RemoveMenberAndDonotUserBindGatewayDevice;
             btnNote1.IsMoreLines = true;
@@ -188,7 +203,7 @@
 
             var btnIcon = new IconViewControl(58);
             btnIcon.X = Application.GetRealWidth(167);
-            btnIcon.Y = Application.GetRealHeight(1328);
+            btnIcon.Y = btnNote1.Y;
             btnIcon.UnSelectedImagePath = "Item/Tips.png";
             bodyFrameLayout.AddChidren(btnIcon);
 
@@ -230,9 +245,38 @@
 
             //寮�鍏�
             var btnSwitch = row.AddMostRightSwitchIcon();
+            if (this.memberInfo.IsAllowRemoteCtrl == true)
+            {
+                btnSwitch.IsSelected = true;
+            }
             btnSwitch.ButtonClickEvent += (sender, e) =>
             {
-                btnSwitch.IsSelected = !btnSwitch.IsSelected;
+                HdlThreadLogic.Current.RunThread(async () =>
+                {
+                    var pra = new
+                    {
+                        HouseDistributedMark = Common.Config.Instance.Home.Id,
+                        DistributedMark = this.memberInfo.DistributedMark,
+                        IsAllowRemoteCtrl = !btnSwitch.IsSelected
+                    };
+                    //鎵撳紑杩涘害鏉�
+                    this.ShowProgressBar();
+                    var result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/ChangeSubAccountIsAllowRemoteCtrl", false, pra);
+                    //鍏抽棴杩涘害鏉�
+                    this.CloseProgressBar();
+
+                    if (result == false)
+                    {
+                        return;
+                    }
+                    this.memberInfo.IsAllowRemoteCtrl = !btnSwitch.IsSelected;
+
+                    Application.RunOnMainThread(() =>
+                    {
+                        btnSwitch.IsSelected = !btnSwitch.IsSelected;
+                    });
+                });
+      
             };
             //搴曠嚎
             row.AddBottomLine();
@@ -313,11 +357,8 @@
                 btnAuthority.TextID = memberInfo.AccountType == 1 ? R.MyInternationalizationString.uMemberHadActionAuthority : R.MyInternationalizationString.uMember;
 
                 //鎵撳紑鏄剧ず鎴愬姛鐨勭敾闈�
-                if (memberInfo.AccountType == 1)
-                {
-                    var form = new SubAccountLevelUpSuccessForm();
-                    form.AddForm(memberInfo);
-                }
+                var form = new SubAccountLevelUpSuccessForm();
+                form.AddForm(memberInfo);
             });
         }
 
@@ -364,6 +405,43 @@
 
         #endregion
 
+        #region 鈻� 鑾峰彇鎴愬憳澶村儚_______________________
+
+        /// <summary>
+        /// 鑾峰彇鎴愬憳澶村儚
+        /// </summary>
+        private void GetMemberIcon(ImageView btnUserIcon)
+        {
+            HdlThreadLogic.Current.RunThread(async () =>
+            {
+                var pra = new AccountInfoPra();
+                pra.Account = memberInfo.Account;
+                var result = await UserCenterLogic.GetByteResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountInfo", false, pra, new List<string>() { "NotSetAgain" });
+                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(UserCenterResourse.AccountOption.UserPictruePath, memberInfo.DistributedMark + ".png");
+                    Shared.IO.FileUtils.WriteFileByBytes(iconPath, infoResult.HeadImage);
+                    HdlThreadLogic.Current.RunMain(() =>
+                    {
+                        btnUserIcon.ImageBytes = Shared.IO.FileUtils.ReadFile(iconPath);
+                    });
+                }
+            });
+        }
+
+        #endregion
+
         #region 鈻� 缁撴瀯浣揰____________________________
 
         /// <summary>

--
Gitblit v1.8.0