From 9c16d3614d9b88c637f967518a329f239fcd3aaf Mon Sep 17 00:00:00 2001 From: lss <316519258@qq.com> Date: 星期五, 12 六月 2020 09:22:04 +0800 Subject: [PATCH] 2020.06.12 --- ZigbeeApp/Shared/Phone/UserCenter/Suggestion/FeedbackForm.cs | 307 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 305 insertions(+), 2 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Suggestion/FeedbackForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Suggestion/FeedbackForm.cs index f6a1ded..6969e15 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/Suggestion/FeedbackForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Suggestion/FeedbackForm.cs @@ -11,6 +11,15 @@ { #region 鈻� 鍙橀噺澹版槑___________________________ + /// <summary> + /// 0:Bug銆�1:浼樺寲銆�2:鏂伴渶姹� + /// </summary> + private int typeMode = 0; + /// <summary> + /// 鎰忚鍙嶉鍓╀綑娆℃暟 + /// </summary> + private int suggestionCount = 3; + #endregion #region 鈻� 鍒濆鍖朹____________________________ @@ -35,18 +44,312 @@ //娓呯┖bodyFrame this.ClearBodyFrame(); + //鎻愪氦 + var btnSubmit = new BottomClickButton(); + var frameInput = new FrameLayout(); frameInput.Height = Application.GetRealHeight(576); frameInput.BackgroundColor = UserCenterColor.Current.White; bodyFrameLayout.AddChidren(frameInput); - var txtInput = new TextInputControl(bodyFrameLayout.Width - ControlCommonResourse.XXLeft * 2, Application.GetRealHeight(473), false); + //瀛楁暟 + var btnFild = new NormalViewControl(150, 60, true); + btnFild.X = frameInput.Width - ControlCommonResourse.XXLeft - Application.GetRealWidth(150); + btnFild.Y = Application.GetRealHeight(503); + btnFild.TextColor = UserCenterColor.Current.TextGrayColor1; + btnFild.TextSize = 12; + btnFild.Text = "500"; + btnFild.TextAlignment = TextAlignment.CenterRight; + frameInput.AddChidren(btnFild); + + //鎮ㄧ殑鍙嶉鍜屾剰瑙佷細璁╂垜浠彉寰楁洿濂� + var txtInput = new EditTextView(); + txtInput.Width = bodyFrameLayout.Width - ControlCommonResourse.XXLeft * 2; + txtInput.Height = Application.GetRealHeight(470); + txtInput.Y = Application.GetRealHeight(32); + txtInput.TextAlignment = TextAlignment.TopLeft; + txtInput.Gravity = Gravity.CenterHorizontal; + txtInput.TextColor = UserCenterColor.Current.TextColor1; + txtInput.PlaceholderTextColor = UserCenterColor.Current.TextGrayColor1; + txtInput.PlaceholderText = Language.StringByID(R.MyInternationalizationString.uYouSuggestionMsg); + frameInput.AddChidren(txtInput); + txtInput.InitIosPlaceholderUILabelWithHeight(Application.GetRealHeight(60)); + txtInput.TextChangeEventHandler += (sender, txtvalue) => + { + if (this.suggestionCount <= 0) + { + return; + } + + int length = txtvalue.Length; + if (length == 0) + { + if (btnSubmit.CanClick == true) { btnSubmit.CanClick = false; } + } + else + { + if (btnSubmit.CanClick == false) + { + //鍙樼伆鑹插瓧浣� + btnFild.TextColor = UserCenterColor.Current.TextGrayColor1; + btnSubmit.CanClick = true; + } + } + btnFild.Text = (500 - length).ToString(); + + if (length > 500) + { + if (btnSubmit.CanClick == true) + { + btnSubmit.CanClick = false; + //鍙樼孩鑹插瓧浣� + btnFild.TextColor = Common.ZigbeeColor.Current.GXCTextRed; + } + } + }; + var framType = new FrameLayout(); + framType.Height = Application.GetRealHeight(150); + framType.Y = frameInput.Bottom + Application.GetRealHeight(23); + framType.BackgroundColor = UserCenterColor.Current.White; + bodyFrameLayout.AddChidren(framType); + + IconViewControl btnBugIcon = null; + IconViewControl btnOptimizationIcon = null; + IconViewControl btnDemandIcon = null; + + //鍙嶉绫诲瀷 + var btnType = new NormalViewControl(220, 60, true); + btnType.X = ControlCommonResourse.XXLeft; + btnType.Gravity = Gravity.CenterVertical; + btnType.TextID = R.MyInternationalizationString.uSuggestionType; + framType.AddChidren(btnType); + //Bug + var frameBug = new FrameLayoutStatuControl(); + frameBug.UseClickStatu = false; + frameBug.Width = Application.GetRealWidth(200); + frameBug.X = Application.GetRealWidth(314); + framType.AddChidren(frameBug); + btnBugIcon = new IconViewControl(58); + btnBugIcon.UnSelectedImagePath = "Item/ItemUnSelected.png"; + btnBugIcon.SelectedImagePath = "Item/ItemSelected.png"; + btnBugIcon.Gravity = Gravity.CenterVertical; + frameBug.AddChidren(btnBugIcon); + btnBugIcon.IsSelected = true; + var btnBug = new NormalViewControl(140, 60, true); + btnBug.X = btnBugIcon.Right + Application.GetRealWidth(12); + btnBug.TextColor = UserCenterColor.Current.TextGrayColor3; + btnBug.Gravity = Gravity.CenterVertical; + btnBug.Text = "Bug"; + frameBug.AddChidren(btnBug); + frameBug.ButtonClickEvent += (sender, e) => + { + if (btnBugIcon.IsSelected == false) + { + btnBugIcon.IsSelected = true; + btnOptimizationIcon.IsSelected = false; + btnDemandIcon.IsSelected = false; + this.typeMode = 0; + } + }; + //浼樺寲 + var frameOptimization = new FrameLayoutStatuControl(); + frameOptimization.UseClickStatu = false; + frameOptimization.Width = Application.GetRealWidth(200); + frameOptimization.X = Application.GetRealWidth(524); + framType.AddChidren(frameOptimization); + btnOptimizationIcon = new IconViewControl(58); + btnOptimizationIcon.UnSelectedImagePath = "Item/ItemUnSelected.png"; + btnOptimizationIcon.SelectedImagePath = "Item/ItemSelected.png"; + btnOptimizationIcon.Gravity = Gravity.CenterVertical; + frameOptimization.AddChidren(btnOptimizationIcon); + var btnOptimization = new NormalViewControl(140, 60, true); + btnOptimization.X = btnOptimizationIcon.Right + Application.GetRealWidth(12); + btnOptimization.TextColor = UserCenterColor.Current.TextGrayColor3; + btnOptimization.Gravity = Gravity.CenterVertical; + btnOptimization.TextID = R.MyInternationalizationString.uOptimization; + frameOptimization.AddChidren(btnOptimization); + frameOptimization.ButtonClickEvent += (sender, e) => + { + if (btnOptimizationIcon.IsSelected == false) + { + btnOptimizationIcon.IsSelected = true; + + btnBugIcon.IsSelected = false; + btnDemandIcon.IsSelected = false; + this.typeMode = 1; + } + }; + //鏂伴渶姹� + var frameDemand = new FrameLayoutStatuControl(); + frameDemand.UseClickStatu = false; + frameDemand.Width = Application.GetRealWidth(200); + frameDemand.X = Application.GetRealWidth(734); + framType.AddChidren(frameDemand); + btnDemandIcon = new IconViewControl(58); + btnDemandIcon.UnSelectedImagePath = "Item/ItemUnSelected.png"; + btnDemandIcon.SelectedImagePath = "Item/ItemSelected.png"; + btnDemandIcon.Gravity = Gravity.CenterVertical; + frameDemand.AddChidren(btnDemandIcon); + var btnDemand = new NormalViewControl(140, 60, true); + btnDemand.X = btnDemandIcon.Right + Application.GetRealWidth(12); + btnDemand.TextColor = UserCenterColor.Current.TextGrayColor3; + btnDemand.Gravity = Gravity.CenterVertical; + btnDemand.TextID = R.MyInternationalizationString.uNewDemand; + frameDemand.AddChidren(btnDemand); + frameDemand.ButtonClickEvent += (sender, e) => + { + if (btnDemandIcon.IsSelected == false) + { + btnDemandIcon.IsSelected = true; + + btnBugIcon.IsSelected = false; + btnOptimizationIcon.IsSelected = false; + this.typeMode = 2; + } + }; + + var frameEmail = new FrameLayout(); + frameEmail.Height = Application.GetRealHeight(150); + frameEmail.BackgroundColor = UserCenterColor.Current.White; + frameEmail.Y = framType.Bottom + Application.GetRealHeight(23); + bodyFrameLayout.AddChidren(frameEmail); + //鑱旂郴鏂瑰紡 + var btnContact = new NormalViewControl(220, 60, true); + btnContact.X = ControlCommonResourse.XXLeft; + btnContact.Gravity = Gravity.CenterVertical; + btnContact.TextID = R.MyInternationalizationString.uContactInformation; + frameEmail.AddChidren(btnContact); + var txtEmail = new TextInputControl(720, 60, true); + txtEmail.X = Application.GetRealWidth(314); + txtEmail.Gravity = Gravity.CenterVertical; + txtEmail.PlaceholderText = Language.StringByID(R.MyInternationalizationString.uPleaseInputYourContactInformation); + frameEmail.AddChidren(txtEmail); + + //鎻愪氦 + btnSubmit.oldBackgroundColor = UserCenterColor.Current.ClickButtonDefultColor; + btnSubmit.TextID = R.MyInternationalizationString.uSubmit; + bodyFrameLayout.AddChidren(btnSubmit); + btnSubmit.CanClick = false; + btnSubmit.ButtonClickEvent += (sender, e) => + { + //濡傛灉鏄櫄鎷熶綇瀹�,鍒欐鍔熻兘鏃犳晥 + if (Common.Config.Instance.Home.IsVirtually == true) + { + return; + } + //涓婁紶鎰忚 + this.UploadSuggestion(txtInput.Text, txtEmail.Text); + }; + + + var strFile = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Common.Config.Instance.Guid, DirNameResourse.SuggestionFile); + if (System.IO.File.Exists(strFile) == false) + { + return; + } + var data = UserCenterLogic.LoadFileContent(strFile); + if (data != null) + { + var strNowData = DateTime.Now.ToString("yyyyMMdd"); + if (strNowData != data.Substring(1)) + { + this.suggestionCount = 3; + return; + } + //鍓╀綑娆℃暟 + this.suggestionCount = Convert.ToInt32(data.Substring(0, 1)); + if (this.suggestionCount <= 1) + { + btnSubmit.TextID = R.MyInternationalizationString.uSubmitCountIsOverMsg; + } + } } #endregion - #region 鈻� 涓�鑸柟娉昣__________________________ + #region 鈻� 涓婁紶鎰忚___________________________ + + /// <summary> + /// 涓婁紶鎰忚 + /// </summary> + /// <param name="strContent"></param> + /// <param name="email"></param> + private void UploadSuggestion(string strContent, string email) + { + HdlThreadLogic.Current.RunThread(async() => + { + var pra = new + { + RequestVersion = Common.CommonPage.RequestVersion, + LoginAccessToken = Common.Config.Instance.Token, + Content = strContent, + OpinionFeedbackType = this.typeMode, + Email = email + }; + var result = await UserCenterLogic.GetResultStatuByRequestHttps("App/AddOpinionFeedback", false, pra); + if (result == true) + { + //淇濆瓨娆℃暟 + this.suggestionCount--; + var strFile = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Common.Config.Instance.Guid, DirNameResourse.SuggestionFile); + var byteData = System.Text.Encoding.UTF8.GetBytes(this.suggestionCount + DateTime.Now.ToString("yyyyMMdd")); + //鍐欏叆鍐呭 + Shared.IO.FileUtils.WriteFileByBytes(strFile, byteData); + + HdlThreadLogic.Current.RunMain(() => + { + //鏄剧ず鎴愬姛鐨勭晫闈� + this.ShowSuccessMsg(); + }); + } + }); + } + + /// <summary> + /// 鏄剧ず鎴愬姛鐨勭晫闈� + /// </summary> + private void ShowSuccessMsg() + { + var frameBack = new FrameLayout(); + frameBack.BackgroundColor = 0x80000000; + this.AddChidren(frameBack); + + var frameMsg = new FrameLayout(); + frameMsg.BackgroundColor = UserCenterColor.Current.White; + frameMsg.Width = Application.GetRealWidth(622); + frameMsg.Height = Application.GetRealHeight(317); + frameMsg.Radius = (uint)Application.GetRealHeight(17); + frameMsg.Gravity = Gravity.CenterHorizontal; + frameMsg.Y = Application.GetRealHeight(792); + frameBack.AddChidren(frameMsg); + + //鎻愮ず + var btnTitle = new NormalViewControl(492, 65, true); + btnTitle.Y = Application.GetRealHeight(68); + btnTitle.Gravity = Gravity.CenterHorizontal; + btnTitle.TextID = R.MyInternationalizationString.NormalTip; + btnTitle.TextAlignment = TextAlignment.Center; + btnTitle.TextColor = 0xFF333443; + frameMsg.AddChidren(btnTitle); + + //鎮ㄧ殑鍙嶉宸叉垚鍔熸彁浜� + var btnSuccess = new NormalViewControl(frameMsg.Width, Application.GetRealHeight(60), false); + btnSuccess.Y = Application.GetRealHeight(166); + btnSuccess.TextAlignment = TextAlignment.Center; + btnSuccess.TextColor = UserCenterColor.Current.TextGrayColor1; + btnSuccess.TextID = R.MyInternationalizationString.uSubmitSuccessMsg; + frameMsg.AddChidren(btnSuccess); + + HdlThreadLogic.Current.RunThread(() => + { + System.Threading.Thread.Sleep(2000); + HdlThreadLogic.Current.RunMain(() => + { + this.CloseForm(); + }); + }); + } #endregion } -- Gitblit v1.8.0