using HDL_ON.DAL.Server; using HDL_ON.Entity; using HDL_ON.Stan; using Shared; using System; namespace HDL_ON.UI { /// /// 添加环境传感器步骤1界面 /// public class AddSensorEnvironmentPage : EditorCommonForm { #region ■ 变量声明___________________________ /// /// 添加设备完成之后的回调事件 /// public Action AddDeviceEvent = null; IntegratedBrandDevice integratedDevice = null; #endregion #region ■ 初始化_____________________________ /// /// 画面显示(底层会固定调用此方法,借以完成画面创建) /// public void ShowForm(IntegratedBrandDevice device) { integratedDevice = device; if (Language.CurrentLanguage == "Chinese") { //设置头部信息 base.SetTitleText(Language.StringByID(StringId.Add) + device.productName); } else { base.SetTitleText(Language.StringByID(StringId.Add) + " " + device.productName); } //这个界面的背景需要白色 bodyFrameLayout.BackgroundColor = UI.CSS.CSS_Color.MainBackgroundColor; //初始化中部信息 this.InitMiddleFrame(); } /// /// 初始化中部信息 /// private void InitMiddleFrame() { //图片 var btnPic = new PicViewControl(132, 132); btnPic.Y = Application.GetRealHeight(69); btnPic.Gravity = Gravity.CenterHorizontal; if (integratedDevice.spk == SPK.SensorEnvironment3) { btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvirSensorQingpingLitebg.png"; } else if (integratedDevice.spk == SPK.SensorEnvironment2) { btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvirSensorQingpingCGS1bg.png"; } else { btnPic.UnSelectedImagePath = "PersonalCenter/AddDevice/EnvironmentalSensorbg.png"; } bodyFrameLayout.AddChidren(btnPic); //请输入设备机上的sn码 var textView = new FrameLayout() { Y = Application.GetRealHeight(309 - 64), Gravity = Gravity.CenterHorizontal, Width = Application.GetRealWidth(319), Height = Application.GetRealHeight(44), }; bodyFrameLayout.AddChidren(textView); textView.AddChidren(new Button() { Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS.CSS_Color.DividingLineColor }); EditText editText = new EditText() { TextAlignment = TextAlignment.Center, TextColor = CSS.CSS_Color.FirstLevelTitleColor, PlaceholderText = Language.StringByID(StringId.PlsEntrySNCode), PlaceholderTextColor = CSS.CSS_Color.PromptingColor1, TextSize = CSS.CSS_FontSize.TextFontSize, }; textView.AddChidren(editText); string pairString = ""; if (integratedDevice.spk == SPK.SensorEnvironment2) { //请输入设备机上的配对码 var pairView = new FrameLayout() { Y = Application.GetRealHeight(309), Gravity = Gravity.CenterHorizontal, Width = Application.GetRealWidth(319), Height = Application.GetRealHeight(44), }; bodyFrameLayout.AddChidren(pairView); pairView.AddChidren(new Button() { Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS.CSS_Color.DividingLineColor }); EditText pairText = new EditText() { TextAlignment = TextAlignment.Center, TextColor = CSS.CSS_Color.FirstLevelTitleColor, PlaceholderText = Language.StringByID(StringId.PlsEntryPairCode), PlaceholderTextColor = CSS.CSS_Color.PromptingColor1, TextSize = CSS.CSS_FontSize.TextFontSize, }; pairView.AddChidren(pairText); pairText.TextChangeEventHandler = (sender, e) => { pairString = e; }; } if (integratedDevice.spk == SPK.SensorEnvironment2 || integratedDevice.spk == SPK.SensorEnvironment3) { editText.PlaceholderText = Language.StringByID(StringId.PlsEntryMacCode); } if (integratedDevice.spk == SPK.SensorEnvironment) { Button btnScan = new Button() { Width = Application.GetRealWidth(32), Height = Application.GetRealWidth(32), Gravity = Gravity.CenterVertical, X = Application.GetRealWidth(275), UnSelectedImagePath = "Public/Scan.png" }; textView.AddChidren(btnScan); btnScan.MouseUpEventHandler = (sender, e) => { Scan.OpenScan((scanString) => { editText.Text = scanString; }); }; } //下一步 var btnNext = this.AddBottomClickButton(Language.StringByID(StringId.Next)); btnNext.ButtonClickEvent += (sender, e) => { var snCode = editText.Text.Trim(); if (string.IsNullOrEmpty(snCode)) { editText.PlaceholderTextColor = CSS.CSS_Color.WarningColor; } else { var waitPage = new Loading(); waitPage.Start(); new System.Threading.Thread(() => { try { var pm = new HttpServerRequest(); var pack = pm.IndependentRegister3TyDevcie(integratedDevice.spk, snCode,integratedDevice.productName,pairString);// Language.StringByID(StringId.SensorEnvironment) if (pack.Code == StateCode.SUCCESS) { //var revData = Newtonsoft.Json.JsonConvert.DeserializeObject>(pack.Data.ToString()); Application.RunOnMainThread(() => { waitPage.Hide(); var tipDialog = new OperationResultDisPalyPage(); tipDialog.LoadPage(true, Language.StringByID(StringId.AddSuccess), "", Language.StringByID(StringId.CanStartUsingEnvironmentalSensor), Language.StringByID(StringId.Next)); tipDialog.Show(); AddDeviceEvent?.Invoke(new Function()); this.CloseForm(); }); } else if (pack.Code == "10801" || pack.Code == "9") { var mes = ""; if (Language.CurrentLanguage == "Chinese") { mes = "该设备已经被添加。"; } else { mes = "This device has been added."; } Application.RunOnMainThread(() => { var tip = new Tip() { Text = mes, CloseTime = 2, Direction = AMPopTipDirection.None }; tip.Show(MainPage.BaseView); }); } else { IMessageCommon.Current.ShowErrorInfoAlter(pack.Code); } } catch (Exception ex) { MainPage.Log("2--::" + ex.Message); } finally { Application.RunOnMainThread(() => { if (waitPage != null) { waitPage.RemoveFromParent(); waitPage = null; } }); } }) { IsBackground = true }.Start(); } }; } #endregion #region ■ 关闭界面___________________________ /// /// 关闭界面 /// public override void CloseFormBefore() { this.AddDeviceEvent = null; base.CloseFormBefore(); } #endregion } }