From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 17 十二月 2020 09:07:13 +0800
Subject: [PATCH] 新云端Ver1.3

---
 ZigbeeApp/Shared/Phone/UserCenter/Member/AddMemberInfoForm.cs |  178 ++++++++++++++++++++++++++++++++---------------------------
 1 files changed, 96 insertions(+), 82 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Member/AddMemberInfoForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Member/AddMemberInfoForm.cs
index 345c8fa..fe53862 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Member/AddMemberInfoForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Member/AddMemberInfoForm.cs
@@ -6,19 +6,26 @@
     /// <summary>
     /// 闇�瑕佹坊鍔犳垚鍛樼殑淇℃伅(纭)鐢婚潰
     /// </summary>
-    public class AddMemberInfoForm : UserCenterCommonForm
+    public class AddMemberInfoForm : EditorCommonForm
     {
+        #region 鈻� 鍙橀噺澹版槑___________________________
+
         /// <summary>
         /// 鎴愬憳淇℃伅
         /// </summary>
-        private AccountInfoResult memberResult = null;
+        private AccountInfoResult AccountResult = null;
+
+        #endregion
+
+        #region 鈻� 鍒濆鍖朹____________________________
+
         /// <summary>
         /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓)
         /// </summary>
         /// <param name="i_infoResult">鎴愬憳淇℃伅</param>
         public void ShowForm(AccountInfoResult i_infoResult)
         {
-            this.memberResult = i_infoResult;
+            this.AccountResult = i_infoResult;
 
             //璁剧疆鏍囬淇℃伅
             base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uMemberInformation));
@@ -33,128 +40,135 @@
         /// </summary>
         private void InitMiddleFrame()
         {
+            //娓呯┖bodyFrame
+            this.ClearBodyFrame();
+
             //澶村儚
-            var btnIcon = new ProfilePhotoControl();
-            btnIcon.UnSelectedImagePath = "Account/Admin.png";
-            btnIcon.Y = Application.GetRealHeight(300);
-            btnIcon.Gravity = Gravity.CenterHorizontal;
-            bodyFrameLayout.AddChidren(btnIcon);
+            var btnUserIcon = new ImageView();
+            btnUserIcon.Height = this.GetPictrueRealSize(207);
+            btnUserIcon.Width = this.GetPictrueRealSize(207);
+            btnUserIcon.Radius = (uint)this.GetPictrueRealSize(207) / 2;
+            if (AccountResult.HeadImage != null)
+            {
+                btnUserIcon.ImageBytes = AccountResult.HeadImage;
+            }
+            else
+            {
+                btnUserIcon.ImagePath = "Center/Admin.png";
+            }
+            btnUserIcon.Y = Application.GetRealHeight(219);
+            btnUserIcon.Gravity = Gravity.CenterHorizontal;
+            bodyFrameLayout.AddChidren(btnUserIcon);
 
             //鎴愬憳ID
-            var btnUserId = new ViewNormalControl(800, true);
-            btnUserId.Y = btnIcon.Bottom + Application.GetRealHeight(20);
+            var btnUserId = new NormalViewControl(800, 50, true);
+            btnUserId.IsBold = true;
+            btnUserId.Y = Application.GetRealHeight(472);
             btnUserId.Gravity = Gravity.CenterHorizontal;
-            btnUserId.Text = memberResult.Account;
+            btnUserId.Text = AccountResult.Account;
             btnUserId.TextAlignment = TextAlignment.Center;
+            btnUserId.TextColor = UserCenterColor.Current.TextGrayColor1;
             bodyFrameLayout.AddChidren(btnUserId);
 
             //鏄电О
-            var btnName = new ViewNormalControl(800, true);
-            btnName.Y = btnUserId.Bottom + Application.GetRealHeight(20);
+            var btnName = new NormalViewControl(800, 55, true);
+            btnName.IsBold = true;
+            btnName.Y = Application.GetRealHeight(541);
             btnName.Gravity = Gravity.CenterHorizontal;
-            btnName.Text = memberResult.UserName;
             btnName.TextAlignment = TextAlignment.Center;
+            btnName.TextSize = 16;
+            btnName.Text = AccountResult.MemberName;
             bodyFrameLayout.AddChidren(btnName);
-            if (string.IsNullOrEmpty(btnName.Text) == true)
-            {
-                //濡傛灉瀹冩湰韬氨娌″悕瀛楃殑璇濓紝鎶婁粬鐨処D浣滀负鏄电О
-                btnName.Text = memberResult.Account;
-            }
 
-            //璇风‘璁よ处鍙锋槸鍚︽纭紝濡傛纭鐐瑰嚮纭
-            var btnmsg = new MsgViewControl(800, true);
+            //璇风‘璁よ处鍙锋槸鍚︽纭畕0}濡傛纭鐐瑰嚮纭
+            string strMsg = Language.StringByID(R.MyInternationalizationString.uPleaseConfirmAccoutIsRightAndClick);
+            if (strMsg.Contains("{0}") == true)
+            {
+                strMsg = string.Format(strMsg, "\r\n");
+            }
+            var btnmsg = new NormalViewControl(800, 100, true);
+            btnmsg.IsBold = true;
+            btnmsg.Y = Application.GetRealHeight(913);
+            btnmsg.TextSize = 12;
+            btnmsg.Text = strMsg;
+            btnmsg.IsMoreLines = true;
+            btnmsg.TextAlignment = TextAlignment.Center;
+            btnmsg.TextColor = UserCenterColor.Current.TextGrayColor2;
             btnmsg.Gravity = Gravity.CenterHorizontal;
-            btnmsg.Y = Application.GetRealHeight(1200);
-            btnmsg.TextColor = UserCenterColor.Current.TextGrayColor;
-            btnmsg.TextID = R.MyInternationalizationString.uPleaseConfirmAccoutIsRightAndClick;
             bodyFrameLayout.AddChidren(btnmsg);
 
             //纭娣诲姞
-            var btnOk = new BottomClickButton();
+            var btnOk = new BottomClickButton(688);
+            btnOk.Y = Application.GetRealHeight(1045);
             btnOk.TextID = R.MyInternationalizationString.uConfirmAdd;
             bodyFrameLayout.AddChidren(btnOk);
-            btnOk.MouseUpEventHandler += (sender, e) =>
+            btnOk.ButtonClickEvent += (sender, e) =>
             {
                 //娣诲姞鎴愬憳
-                this.DoAddMember();
+                HdlThreadLogic.Current.RunThread(() =>
+                {
+                    this.DoAddMember();
+                });
             };
         }
+
+        #endregion
+
+        #region 鈻� 娣诲姞鎴愬憳___________________________
 
         /// <summary>
         /// 娣诲姞鎴愬憳
         /// </summary>
-        private async void DoAddMember()
+        private void DoAddMember()
         {
             //寮�鍚繘搴︽潯
             this.ShowProgressBar();
 
-            var pra = new BindSubAccountPra();
-            pra.SubAccount = memberResult.Account;
-
-            bool result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindSubAccount", pra);
-            if (result == false)
+            //娣诲姞鎴愬憳
+            var memberInfoRes = HdlMemberLogic.Current.AddMember(AccountResult.Account, AccountResult.MemberName);
+            if (memberInfoRes == null)
             {
                 //鍏抽棴杩涘害鏉�
                 this.CloseProgressBar();
                 return;
             }
+            //娣诲姞瀛愯处鍙锋椂,鎺ュ彛骞朵笉杩斿洖杩欎簺涓滆タ,鎵�浠ラ渶瑕佹墜鍔ㄨ祴鍊�
+            memberInfoRes.ChildNickName = AccountResult.MemberName;
+            if (AccountResult.Account.Contains("@") == true)
+            {
+                memberInfoRes.ChildAccountEmail = AccountResult.Account;
+            }
+            else
+            {
+                memberInfoRes.ChildAccountPhone = AccountResult.Account;
+            }
 
-            //鑾峰彇杩欎釜鎴愬憳鐨凷ubDistributedMark
-            var pra2 = new MemberListInfoPra();
-            string resultValue = await UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", pra2);
+            string iconPath = System.IO.Path.Combine(HdlFileNameResourse.UserPictrueDirectory, memberInfoRes.ChildAccountId + ".png");
+            if (AccountResult.HeadImage != null)
+            {
+                //鍐欏叆澶村儚鍐呭
+                Shared.IO.FileUtils.WriteFileByBytes(iconPath, AccountResult.HeadImage);
+            }
+
             //鍏抽棴杩涘害鏉�
             this.CloseProgressBar();
 
-            if (resultValue == null)
+            HdlThreadLogic.Current.RunMain(() =>
             {
-                //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け
-                string msg = Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost);
-                this.ShowTip(msg);
-                return;
-            }
-            List<MemberInfoRes> listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<MemberInfoRes>>(resultValue);
-            MemberInfoRes memberInfoRes = null;
-            foreach (var info in listInfo)
-            {
-                if (info.Account == memberResult.Account)
-                {
-                    memberInfoRes = info;
-                    break;
-                }
-            }
-            if (memberInfoRes == null)
-            {
-                //鍑虹幇鏈煡閿欒,鏁版嵁涓㈠け
-                string msg = Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost);
-                this.ShowTip(msg);
-                return;
-            }
-
-            Application.RunOnMainThread(() =>
-            {
-                this.CloseForm();
-
-                //鍏抽棴鎵嬪姩杈撳叆鎴愬憳ID鐨勭敾闈�
-                this.CloseFormByFormName("AddMemberByIdForm");
-
+                //鎴愬憳娣诲姞鎴愬姛
                 var form = new AddMemberSuccessForm();
-                this.AddForm(form, memberResult, memberInfoRes);
+                form.AddForm(memberInfoRes);
+                form.FormCloseEvent += (() =>
+                {
+                    this.CloseForm();
+                    //鍏抽棴鎵嬪姩杈撳叆鎴愬憳ID鐨勭敾闈�
+                    HdlFormLogic.Current.CloseFormByFormName("AddMemberByIdForm");
+                    //娣诲姞鎴愬憳
+                    this.LoadFormMethodByName("MemberListForm", "AddRowLayoutByOtherForm", memberInfoRes);
+                });
             });
         }
 
-        /// <summary>
-        /// 缁戝畾鎴愬憳ID鍒颁綇瀹呯殑鍚姩鍙傛暟
-        /// </summary>
-        private class BindSubAccountPra : IfacePraCommon
-        {
-            /// <summary>
-            /// 瀛愯处鍙稩D
-            /// </summary>
-            public string SubAccount = string.Empty;
-            /// <summary>
-            /// 浣忓畢ID
-            /// </summary>
-            public string HouseDistributedMark = Common.Config.Instance.Home.Id;
-        }
+        #endregion
     }
 }

--
Gitblit v1.8.0