gxc
2020-02-28 66a9965c44ecc32a6696abca876ab9d1cd091584
ZigbeeApp/Shared/Phone/UserCenter/Member/AddMemberInfoForm.cs
@@ -6,12 +6,19 @@
    /// <summary>
    /// 需要添加成员的信息(确认)画面
    /// </summary>
    public class AddMemberInfoForm : UserCenterCommonForm
    public class AddMemberInfoForm : EditorCommonForm
    {
        #region ■ 变量声明___________________________
        /// <summary>
        /// 成员信息
        /// </summary>
        private AccountInfoResult memberResult = null;
        #endregion
        #region ■ 初始化_____________________________
        /// <summary>
        /// 画面显示(底层会固定调用此方法,借以完成画面创建)
        /// </summary>
@@ -33,52 +40,86 @@
        /// </summary>
        private void InitMiddleFrame()
        {
            //清空bodyFrame
            this.ClearBodyFrame();
            string iconPath = System.IO.Path.Combine(UserCenterResourse.Option.UserPictruePath, memberResult.DistributedMark + ".png");
            if (memberResult.HeadImage != null)
            {
                //写入头像内容
                Shared.IO.FileUtils.WriteFileByBytes(iconPath, memberResult.HeadImage);
            }
            //头像
            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 = Application.GetMinRealAverage(207);
            btnUserIcon.Width = Application.GetMinRealAverage(207);
            btnUserIcon.Radius = (uint)Application.GetMinRealAverage(207) / 2;
            if (memberResult.HeadImage != null)
            {
                btnUserIcon.ImageBytes = Shared.IO.FileUtils.ReadFile(iconPath);
            }
            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.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;
            //如果它本身就没名字的话,把他的ID作为昵称
            btnName.Text = string.IsNullOrEmpty(memberResult.UserName) == true ? memberResult.Account : memberResult.UserName;
            bodyFrameLayout.AddChidren(btnName);
            if (string.IsNullOrEmpty(btnName.Text) == true)
            {
                //如果它本身就没名字的话,把他的ID作为昵称
                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();
            };
        }
        #endregion
        #region ■ 添加成员___________________________
        /// <summary>
        /// 添加成员
@@ -91,7 +132,7 @@
            var pra = new BindSubAccountPra();
            pra.SubAccount = memberResult.Account;
            bool result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindSubAccount", pra);
            bool result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindSubAccount", false, pra);
            if (result == false)
            {
                //关闭进度条
@@ -101,15 +142,15 @@
            //获取这个成员的SubDistributedMark
            var pra2 = new MemberListInfoPra();
            string resultValue = await UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", pra2);
            string resultValue = await UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra2);
            //关闭进度条
            this.CloseProgressBar();
            if (resultValue == null)
            {
                //出现未知错误,数据丢失
                string msg = Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost);
                this.ShowTip(msg);
                string msg = Language.StringByID(R.MyInternationalizationString.uUnKnownError);
                this.ShowMassage(ShowMsgType.Tip, msg);
                return;
            }
            List<MemberInfoRes> listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<MemberInfoRes>>(resultValue);
@@ -125,22 +166,28 @@
            if (memberInfoRes == null)
            {
                //出现未知错误,数据丢失
                string msg = Language.StringByID(R.MyInternationalizationString.uUnknownErrorAndDataLost);
                this.ShowTip(msg);
                string msg = Language.StringByID(R.MyInternationalizationString.uUnKnownError);
                this.ShowMassage(ShowMsgType.Tip, msg);
                return;
            }
            //添加缓存
            UserCenterResourse.ListMemberInfo.Add(memberInfoRes);
            UserCenterLogic.SaveLocalMemberListInfo();
            Application.RunOnMainThread(() =>
            //成员添加成功
            var form = new AddMemberSuccessForm();
            form.AddForm(memberInfoRes, memberResult.DistributedMark);
            form.FormCloseEvent += (() =>
            {
                this.CloseForm();
                //关闭手动输入成员ID的画面
                this.CloseFormByFormName("AddMemberByIdForm");
                var form = new AddMemberSuccessForm();
                this.AddForm(form, memberResult, memberInfoRes);
            });
        }
        #endregion
        #region ■ 结构体_____________________________
        /// <summary>
        /// 绑定成员ID到住宅的启动参数
@@ -156,5 +203,6 @@
            /// </summary>
            public string HouseDistributedMark = Common.Config.Instance.Home.Id;
        }
        #endregion
    }
}