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/UserMain/UserMainForm.cs | 283 +++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 207 insertions(+), 76 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs index 77ba2cb..34e157d 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs @@ -11,9 +11,13 @@ #region 鈻� 鍙橀噺澹版槑___________________________ /// <summary> - /// 鐧借壊鑳屾櫙妗� + /// 涓昏彍鍗曡儗鏅 /// </summary> - private FrameLayout frameWhiteBack = null; + private NormalFrameLayout frameMainMenuBack = null; + /// <summary> + /// 鍏朵粬鑿滃崟鐨勫鍣ㄦ帶浠� + /// </summary> + private FrameListControl frameOtherMenuContr = null; /// <summary> /// 鐢ㄦ埛鍚嶅瓧 /// </summary> @@ -22,6 +26,18 @@ /// 鐢ㄦ埛韬唤 /// </summary> private NormalViewControl btnAuthority = null; + /// <summary> + /// 鐢ㄦ埛澶村儚 + /// </summary> + private ImageView btnUserIcon = null; + /// <summary> + /// 鐨囧啝 + /// </summary> + private IconViewControl btnImperialCrown = null; + /// <summary> + /// 淇℃伅鎻愮ず鎺т欢 + /// </summary> + private MessageManagementControl msgControl = null; #endregion @@ -34,17 +50,20 @@ /// </summary> public void ShowForm() { + this.FormID = "UserMainForm"; + //鐗规畩澶勭悊锛氭仮澶嶅彲鍏抽棴杩涘害鏉★紝鍒棶涓轰粈涔堬紝鎴戜篃涓嶇煡閬撲负浠�涔堬紝浠ラ槻涓囦竴鑰屽凡 ProgressBar.SetCloseBarFlag(false); - //鍒濆鍖栨鏋� - this.InitForm(); + //鍒濆鍖栧ご閮ㄦ帶浠� + this.InitTopFrameLayout(); + //鍒濆鍖栦腑閮ㄦ帶浠� + this.InitBodyFrameLayout(); //绉婚櫎杩斿洖閿� base.RemoveBackButton(); //body鍗犲畬鏁翠釜灞忓箷,闄や簡搴曢儴鑿滃崟 bodyFrameLayout.Y = 0; - bodyFrameLayout.Height = ControlCommonResourse.TopMenuFrameHeight + ControlCommonResourse.TopFrameHeight - + ControlCommonResourse.BodyFrameHeight - ControlCommonResourse.BottomFrameHeight; + bodyFrameLayout.Height = this.Height; bodyFrameLayout.BackgroundColor = UserCenterColor.Current.BlackBackGround; //鍒濆鍖栦腑閮ㄦ帶浠� @@ -60,20 +79,36 @@ this.ClearBodyFrame(); //涓汉涓績 - var btnTitle = new NormalViewControl(350, 100, true); - btnTitle.X = ControlCommonResourse.XXLeft; + var btnTitle = new NormalViewControl(450, 100, true); + btnTitle.X = HdlControlResourse.XXLeft; btnTitle.Y = Application.GetRealHeight(112); btnTitle.TextColor = UserCenterColor.Current.White; btnTitle.TextSize = 24; + btnTitle.IsBold = true; btnTitle.TextID = R.MyInternationalizationString.UserCenter; bodyFrameLayout.AddChidren(btnTitle); + + var btnBack1 = new PicViewControl(1031, 942); + btnBack1.Y = btnTitle.Bottom - Application.GetRealHeight(10); + btnBack1.UnSelectedImagePath = "Center/MainBack1.png"; + bodyFrameLayout.AddChidren(btnBack1); + var btnBack2 = new PicViewControl(392, 172); + btnBack2.X = Application.GetRealWidth(688); + btnBack2.UnSelectedImagePath = "Center/MainBack2.png"; + bodyFrameLayout.AddChidren(btnBack2); + + //淇℃伅鎻愮ず鎺т欢 + this.msgControl = new MessageManagementControl(); + msgControl.Y = Application.GetRealHeight(127); + msgControl.X = Application.GetRealWidth(953); + bodyFrameLayout.AddChidren(this.msgControl); //鐧芥 var frameBack = new FrameLayout(); frameBack.BackgroundColor = UserCenterColor.Current.BodyFrameLayout; frameBack.Y = Application.GetRealHeight(380); frameBack.Gravity = Gravity.CenterHorizontal; - frameBack.Radius = (uint)Application.GetMinRealAverage(12); + frameBack.Radius = (uint)Application.GetRealHeight(29); frameBack.Width = bodyFrameLayout.Width - Application.GetRealWidth(29 * 2); frameBack.Height = bodyFrameLayout.Height - Application.GetRealHeight(380) + Application.GetRealHeight(100); bodyFrameLayout.AddChidren(frameBack); @@ -99,34 +134,57 @@ private void InitUserInfoControl(FrameLayout frameWhite) { //鐢ㄦ埛澶村儚 - var btnUserIcon = new IconViewControl(280); + this.btnUserIcon = new ImageView(); + btnUserIcon.Height = this.GetPictrueRealSize(280); + btnUserIcon.Width = this.GetPictrueRealSize(280); + btnUserIcon.Radius = (uint)this.GetPictrueRealSize(280) / 2; btnUserIcon.X = Application.GetRealWidth(121); - btnUserIcon.UnSelectedImagePath = UserCenterResourse.UserInfo.UserIconFile; + if (Common.Config.Instance.Home.IsVirtually == false) + { + btnUserIcon.ImageBytes = Shared.IO.FileUtils.ReadFile(HdlFileNameResourse.UserHeadIconFile); + } + else + { + btnUserIcon.ImagePath = "Account/Cat.png"; + } bodyFrameLayout.AddChidren(btnUserIcon); btnUserIcon.Y = frameWhite.Y - Application.GetRealHeight(109); btnUserIcon.MouseUpEventHandler += (sender, e) => { + if (Common.Config.Instance.Home.IsVirtually == true) + { + //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鍒欑洿鎺ユ彁绀�:纭畾閫�鍑哄綋鍓嶈处鍙凤紵 + string msg = Language.StringByID(R.MyInternationalizationString.uLogoutAccountMsg); + this.ShowMassage(ShowMsgType.Confirm, msg, () => + { + //閫�鍑鸿处鍙� + HdlAccountLogic.Current.ReLoginAgain(Common.Config.Instance.Account); + }); + return; + } var form = new UserInformationForm(); form.AddForm(); }; - if (UserCenterResourse.UserInfo.AuthorityNo == 1) + //鐨囧啝 + this.btnImperialCrown = new IconViewControl(60); + btnImperialCrown.X = Application.GetRealWidth(346); + btnImperialCrown.Y = Application.GetRealHeight(475); + btnImperialCrown.UnSelectedImagePath = "Center/ImperialCrown.png"; + bodyFrameLayout.AddChidren(btnImperialCrown); + if (HdlUserCenterResourse.ResidenceOption.AuthorityNo != 1) { - //鐨囧啝 - var btnImperialCrown = new IconViewControl(60); - btnImperialCrown.X = Application.GetRealWidth(346); - btnImperialCrown.Y = Application.GetRealHeight(475); - btnImperialCrown.UnSelectedImagePath = "Center/ImperialCrown.png"; - bodyFrameLayout.AddChidren(btnImperialCrown); + btnImperialCrown.Visible = false; } //鐢ㄦ埛鏄电О - btnUserName = new NormalViewControl(605, 60, true); + this.btnUserName = new NormalViewControl(605, 60, true); + btnUserName.IsBold = true; btnUserName.X = btnUserIcon.Right + Application.GetRealWidth(5); btnUserName.Y = Application.GetRealHeight(43); - if (UserCenterResourse.UserInfo != null) + if (HdlUserCenterResourse.UserInfo != null) { - btnUserName.Text = UserCenterResourse.UserInfo.UserName; + btnUserName.Text = HdlUserCenterResourse.UserInfo.NickName; } frameWhite.AddChidren(btnUserName); @@ -134,12 +192,9 @@ this.btnAuthority = new NormalViewControl(605, 60, true); btnAuthority.X = btnUserName.X; btnAuthority.Y = btnUserName.Bottom; - btnAuthority.TextColor = UserCenterColor.Current.Gray; + btnAuthority.TextColor = UserCenterColor.Current.TextGrayColor3; btnAuthority.TextSize = 12; - if (UserCenterResourse.UserInfo != null) - { - btnAuthority.Text = UserCenterResourse.UserInfo.AuthorityText; - } + btnAuthority.Text = HdlUserCenterResourse.ResidenceOption.AuthorityText; frameWhite.AddChidren(btnAuthority); } @@ -153,21 +208,21 @@ /// <param name="frameWhite">鑳屾櫙</param> private void InitMainMenuInfoControl(FrameLayout frameWhite) { - if (frameWhiteBack != null) + if (frameMainMenuBack != null) { - frameWhiteBack.RemoveAll(); + frameMainMenuBack.RemoveAll(); } else { //鑳屾櫙妗� - frameWhiteBack = new FrameLayout(); - frameWhiteBack.Y = Application.GetRealHeight(288); - frameWhiteBack.Gravity = Gravity.CenterHorizontal; - frameWhiteBack.Height = Application.GetRealHeight(371); - frameWhiteBack.Width = frameWhite.Width - Application.GetRealWidth(29 * 2); - frameWhiteBack.Radius = (uint)Application.GetMinRealAverage(10); - frameWhiteBack.BackgroundColor = UserCenterColor.Current.White; - frameWhite.AddChidren(frameWhiteBack); + frameMainMenuBack = new NormalFrameLayout(); + frameMainMenuBack.Y = Application.GetRealHeight(288); + frameMainMenuBack.Gravity = Gravity.CenterHorizontal; + frameMainMenuBack.Height = Application.GetRealHeight(371); + frameMainMenuBack.Width = frameWhite.Width - Application.GetRealWidth(29 * 2); + frameMainMenuBack.Radius = (uint)Application.GetRealHeight(17); + frameMainMenuBack.BackgroundColor = UserCenterColor.Current.White; + frameWhite.AddChidren(frameMainMenuBack); } //鏍囬锛氱鐞� @@ -176,7 +231,7 @@ frameTitle.Width = Application.GetRealWidth(907); frameTitle.Height = Application.GetRealHeight(121); frameTitle.Gravity = Gravity.CenterHorizontal; - frameWhiteBack.AddChidren(frameTitle); + frameMainMenuBack.AddChidren(frameTitle); var btnTitle = new NormalViewControl(500, 60, true); btnTitle.Gravity = Gravity.CenterVertical; btnTitle.TextID = R.MyInternationalizationString.uManagement; @@ -187,7 +242,7 @@ frameTitle.AddChidren(btnLine); //鍒涘缓鍏ㄩ儴鐨勪富鑿滃崟鎺т欢 - this.CreatAllMainMenuControl(frameWhiteBack); + this.CreatAllMainMenuControl(frameMainMenuBack); } /// <summary> @@ -204,12 +259,17 @@ //鎴愬憳绠$悊 string unSelectPic = "Center/MenberManagement.png"; int TextID = R.MyInternationalizationString.uMember; - if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2) + if (HdlUserCenterResourse.ResidenceOption.AuthorityNo == 1 || HdlUserCenterResourse.ResidenceOption.AuthorityNo == 2) { //鐢熸垚鎺т欢 var frame = this.CreatMainMenuControl(frameMenu, TextID, unSelectPic); frame.ButtonClickEvent += (sender, e) => { + if (Common.Config.Instance.Home.IsVirtually == true) + { + //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鍒欐鍔熻兘鏃犳晥 + return; + } var form = new Member.MemberListForm(); form.AddForm(); }; @@ -218,20 +278,23 @@ //璁惧绠$悊 unSelectPic = "Center/DeviceManagement.png"; TextID = R.MyInternationalizationString.uDevice; - if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2) + if (HdlUserCenterResourse.ResidenceOption.AuthorityNo == 1 || HdlUserCenterResourse.ResidenceOption.AuthorityNo == 2) { //鐢熸垚鎺т欢 var frame = this.CreatMainMenuControl(frameMenu, TextID, unSelectPic); frame.ButtonClickEvent += (sender, e) => { HdlGatewayLogic.Current.RefreshAppOldSelectGatewayId(); - if (string.IsNullOrEmpty(GatewayResourse.AppOldSelectGatewayId) == false) + //鎷ユ湁缃戝叧,鎴栬�呮槸铏氭嫙浣忓畢,鍒欒繘鍏ヨ澶囧垪琛ㄧ晫闈� + if (string.IsNullOrEmpty(HdlGatewayResourse.AppOldSelectGatewayId) == false + || Common.Config.Instance.Home.IsVirtually == true) { var form = new Device.DeviceListMainForm(); form.AddForm(); } else { + //娌℃湁缃戝叧,鍒欒繘鍏ョ綉鍏冲垪琛ㄧ晫闈� var form = new GatewayManage.GatewayListForm(); form.AddForm(); } @@ -248,7 +311,7 @@ frame.ButtonClickEvent += (sender, e) => { //浣忓畢鎺ュ彛涓嶉渶瑕佺壒娈婄殑鐧婚檰Token - var form = new Residence.ResidenceListForm(); + var form = new Residence.ResidenceListMainForm(); form.AddForm(); }; } @@ -263,6 +326,11 @@ var frame = this.CreatMainMenuControl(frameMenu, TextID, unSelectPic); frame.ButtonClickEvent += (sender, e) => { + if (Common.Config.Instance.Home.IsVirtually == true) + { + //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鍒欐鍔熻兘鏃犳晥 + return; + } var form = new Safety.SafetyManagementMainForm(); form.AddForm(); }; @@ -319,79 +387,121 @@ /// <param name="frameWhite">鑳屾櫙</param> private void InitOtherMenuControl(FrameLayout frameWhite) { - var frameList = new FrameListControl(26); - frameList.Y = Application.GetRealHeight(698); - frameList.Height = ControlCommonResourse.ListViewRowHeight * 3 + Application.GetRealHeight(26 * 3); - frameWhite.AddChidren(frameList); + if (this.frameOtherMenuContr != null) + { + frameOtherMenuContr.RemoveAll(); + } + else + { + frameOtherMenuContr = new FrameListControl(26); + frameOtherMenuContr.Y = Application.GetRealHeight(698); + frameOtherMenuContr.Height = HdlControlResourse.ListViewRowHeight * 4 + Application.GetRealHeight(26 * 4); + frameWhite.AddChidren(frameOtherMenuContr); + } - if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2) + if (HdlUserCenterResourse.ResidenceOption.AuthorityNo == 1 || HdlUserCenterResourse.ResidenceOption.AuthorityNo == 2) { //鏁版嵁澶囦唤 - var rowback = new FrameRowControl(frameList.rowSpace / 2); - frameList.AddChidren(rowback); + var rowback = new FrameRowControl(frameOtherMenuContr.rowSpace / 2); + frameOtherMenuContr.AddChidren(rowback); //鍚戝彸鍥炬爣 var btnBackRight = rowback.AddRightArrow(); - btnBackRight.X -= ControlCommonResourse.XXLeft / 2; + btnBackRight.X -= HdlControlResourse.XXLeft / 2; //鍥炬爣 var btnBackIcon = rowback.AddLeftIcon(); - btnBackIcon.X -= ControlCommonResourse.XXLeft / 2; + btnBackIcon.X -= HdlControlResourse.XXLeft / 2; btnBackIcon.UnSelectedImagePath = "Center/Backup.png"; //搴曠嚎 var btnBackLine = rowback.AddBottomLine(); - btnBackLine.X -= ControlCommonResourse.XXLeft / 2; + btnBackLine.X -= HdlControlResourse.XXLeft / 2; //鏁版嵁澶囦唤View var btnBackView = rowback.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uDataBackup), 300); - btnBackView.X -= ControlCommonResourse.XXLeft / 2; + btnBackView.X -= HdlControlResourse.XXLeft / 2; rowback.ButtonClickEvent += (sender, e) => { - var form = new HdlBackup.HdlBackupMenuForm(); + if (Common.Config.Instance.Home.IsVirtually == true) + { + //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鍒欐鍔熻兘鏃犳晥 + return; + } + var form = new HdlBackup.HdlBackupListForm(); form.AddForm(); }; } //鎰忚鍙嶉 - var rowSuggestion = new FrameRowControl(frameList.rowSpace / 2); - frameList.AddChidren(rowSuggestion); + var rowSuggestion = new FrameRowControl(frameOtherMenuContr.rowSpace / 2); + frameOtherMenuContr.AddChidren(rowSuggestion); //鍚戝彸鍥炬爣 var btnSuRight = rowSuggestion.AddRightArrow(); - btnSuRight.X -= ControlCommonResourse.XXLeft / 2; + btnSuRight.X -= HdlControlResourse.XXLeft / 2; //鍥炬爣 var btnSuggestionIcon = rowSuggestion.AddLeftIcon(); - btnSuggestionIcon.X -= ControlCommonResourse.XXLeft / 2; + btnSuggestionIcon.X -= HdlControlResourse.XXLeft / 2; btnSuggestionIcon.UnSelectedImagePath = "Center/Opinion.png"; //搴曠嚎 var btnSuLine = rowSuggestion.AddBottomLine(); - btnSuLine.X -= ControlCommonResourse.XXLeft / 2; + btnSuLine.X -= HdlControlResourse.XXLeft / 2; //鎰忚鍙嶉View var btnSuView = rowSuggestion.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.Suggestions), 300); - btnSuView.X -= ControlCommonResourse.XXLeft / 2; + btnSuView.X -= HdlControlResourse.XXLeft / 2; rowSuggestion.ButtonClickEvent += (sender, e) => { - var form = new DeviceDoorLock.DoorLockHistoryLogForm(); - form.AddForm("澶╀笅绗竴"); + var form = new Suggestion.FeedbackForm(); + form.AddForm(); }; //鍏充簬鎴戜滑 - var rowAbount = new FrameRowControl(frameList.rowSpace / 2); - frameList.AddChidren(rowAbount); + var rowAbount = new FrameRowControl(frameOtherMenuContr.rowSpace / 2); + frameOtherMenuContr.AddChidren(rowAbount); //鍚戝彸鍥炬爣 var btnAbountRight = rowAbount.AddRightArrow(); - btnAbountRight.X -= ControlCommonResourse.XXLeft / 2; + btnAbountRight.X -= HdlControlResourse.XXLeft / 2; //鍥炬爣 var btnAbountIcon = rowAbount.AddLeftIcon(); - btnAbountIcon.X -= ControlCommonResourse.XXLeft / 2; + btnAbountIcon.X -= HdlControlResourse.XXLeft / 2; btnAbountIcon.UnSelectedImagePath = "Center/Abount.png"; //搴曠嚎 var btnAbountLine = rowAbount.AddBottomLine(); - btnAbountLine.X -= ControlCommonResourse.XXLeft / 2; + btnAbountLine.X -= HdlControlResourse.XXLeft / 2; //鍏充簬鎴戜滑View var btnAbountView = rowAbount.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uAboutMe), 300); - btnAbountView.X -= ControlCommonResourse.XXLeft / 2; + btnAbountView.X -= HdlControlResourse.XXLeft / 2; rowAbount.ButtonClickEvent += (sender, e) => { + if (Common.Config.Instance.Home.IsVirtually == true) + { + //濡傛灉浣忓畢涓鸿櫄鎷熶綇瀹�,鍒欐鍔熻兘鏃犳晥 + return; + } var form = new Abount.AbountForm(); form.AddForm(); }; + + if (HdlUserCenterResourse.HideOption.CenterHideMenu == 1) + { + //闅愬尶鑿滃崟 + var rowHide = new FrameRowControl(frameOtherMenuContr.rowSpace / 2); + frameOtherMenuContr.AddChidren(rowHide); + //鍚戝彸鍥炬爣 + var btnHideRight = rowHide.AddRightArrow(); + btnHideRight.X -= HdlControlResourse.XXLeft / 2; + //鍥炬爣 + var btnHideIcon = rowHide.AddLeftIcon(); + btnHideIcon.X -= HdlControlResourse.XXLeft / 2; + btnHideIcon.UnSelectedImagePath = "Center/Abount.png"; + //搴曠嚎 + var btnHideLine = rowHide.AddBottomLine(); + btnHideLine.X -= HdlControlResourse.XXLeft / 2; + //闅愬尶鑿滃崟View + var btnHideView = rowHide.AddLeftCaption("璋冭瘯鑿滃崟", 300); + btnHideView.X -= HdlControlResourse.XXLeft / 2; + rowHide.ButtonClickEvent += (sender, e) => + { + var from = new HideOption.HideOptionMainForm(); + from.AddForm(); + }; + } } #endregion @@ -403,17 +513,38 @@ /// </summary> public override int FormActionAgainEvent() { - //涓嶈鍒犻櫎杩欎釜鍑芥暟 - base.FormActionAgainEvent(); - //鐢ㄦ埛鍚嶅瓧 - btnUserName.Text = UserCenterResourse.UserInfo.UserName; - if (UserCenterResourse.UserInfo != null) + //铏氭嫙浣忓畢涓嶉渶瑕佸埛鏂� + if (Common.Config.Instance.Home.IsVirtually == true) { - //鐢ㄦ埛韬唤 - btnAuthority.Text = UserCenterResourse.UserInfo.AuthorityText; + return -1; } + //鐢ㄦ埛澶村儚 + if (HdlUserCenterResourse.UserInfo.UserIconFileChanged == true) + { + HdlUserCenterResourse.UserInfo.UserIconFileChanged = false; + btnUserIcon.ImageBytes = Shared.IO.FileUtils.ReadFile(HdlFileNameResourse.UserHeadIconFile); + } + //鐢ㄦ埛鍚嶅瓧 + btnUserName.Text = HdlUserCenterResourse.UserInfo.NickName; + //鐢ㄦ埛韬唤 + btnAuthority.Text = HdlUserCenterResourse.ResidenceOption.AuthorityText; + //鐨囧啝 + if (HdlUserCenterResourse.ResidenceOption.AuthorityNo != 1) + { + this.btnImperialCrown.Visible = false; + } + else + { + this.btnImperialCrown.Visible = true; + } + + //鍒锋柊淇℃伅鎻愮ず鎺т欢 + this.msgControl?.RefreshStatu(); + //鍒濆鍖栦富鑿滃崟鐨勬帶浠� - this.InitMainMenuInfoControl(frameWhiteBack); + this.InitMainMenuInfoControl(null); + //鍒濆鍖栧叾浠栬彍鍗曠殑鎺т欢 + this.InitOtherMenuControl(null); return 1; } -- Gitblit v1.8.0