From eda3fb873e59544ff36301b51e05aef64f87b0f9 Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期五, 27 八月 2021 13:21:21 +0800 Subject: [PATCH] Merge branch 'newBranch1' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into newBranch1 --- HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Matching.cs | 510 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 501 insertions(+), 9 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Matching.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Matching.cs index a50b719..b59e237 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Matching.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/Matching.cs @@ -1,4 +1,6 @@ 锘縰sing System; +using System.Collections.Generic; +using HDL_ON.Entity; using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; using Shared; namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice @@ -7,15 +9,25 @@ { public Matching() { + Tag = "PirView"; } - public void Show() + + public void Show(List<Brand> brandList, List<Library> libraryList,string spk) { + + #region 鐣岄潰甯冨眬 this.BackgroundColor = CSS.CSS_Color.viewMiddle; PirDevice.View.TopView topView = new View.TopView(); topView.topNameBtn.TextID = StringId.pipeiyaokongqi; this.AddChidren(topView.FLayoutView()); - topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); }; + topView.clickBackBtn.MouseUpEventHandler += (sender, e) => + { + BrandList brandObj = new BrandList(); + brandObj.Show(brandList, spk); + this.RemoveFromParent(); + + }; FrameLayout fLayout = new FrameLayout { @@ -79,7 +91,7 @@ X = Application.GetRealWidth(136), Width = Application.GetRealWidth(104), Height = Application.GetRealHeight(44), - Text = "鐢垫簮", + TextID=StringId.dianyuan, TextSize = TextSize.text16, TextColor = CSS.CSS_Color.textColor, TextAlignment = TextAlignment.Center, @@ -93,10 +105,10 @@ Button sumBtn = new Button { Y = Application.GetRealHeight(267), - X = Application.GetRealWidth(170), - Width = Application.GetRealWidth(36), + X = Application.GetRealWidth(136), + Width = Application.GetRealWidth(104), Height = Application.GetRealHeight(17), - Text = "(" + "1" + "/20)", + Text = $"(1/{libraryList.Count})", TextSize = TextSize.text12, TextColor = CSS.CSS_Color.textCancelColor, }; @@ -113,7 +125,7 @@ TextSize = TextSize.text16, TextColor = CSS.CSS_Color.textConfirmColor, TextAlignment = TextAlignment.Center, - Radius = (uint)Application.GetRealHeight(44), + Radius = (uint)Application.GetRealHeight(22), BorderWidth = 1, BorderColor = CSS.CSS_Color.textConfirmColor, }; @@ -129,23 +141,503 @@ TextSize = TextSize.text16, TextColor = CSS.CSS_Color.textWhiteColor, TextAlignment = TextAlignment.Center, - Radius = (uint)Application.GetRealHeight(44), + Radius = (uint)Application.GetRealHeight(22), //BorderWidth = 1, //BorderColor = CSS.CSS_Color.textConfirmColor, BackgroundColor = CSS.CSS_Color.textConfirmColor, }; fLayout.AddChidren(succeedBtn); #endregion + #region 鐐瑰嚮浜嬩欢 - int value = 1; + //琛ㄧず搴撳垪琛ㄧ储寮曞��(鐩墠鍙�20涓簱) + int index = 1; + //琛ㄧず娴嬭瘯鐮佺储寮曞��(鐩墠鍙祴璇�3涓爜) + int code = 1; + //琛ㄧず娴嬭瘯鏈�鍚庝竴涓爜锛� + bool if_bool = false; + //宸� leftIconBtn.MouseUpEventHandler += (sender, e) => { + if (index>1) { + index--; + sumBtn.Text = $"({index.ToString()}/{libraryList.Count})"; + } + code = 1; + GetBtnText(testBtn, code, spk); }; + //鍙� rightIconBtn.MouseUpEventHandler += (sender, e) => { + if (index < libraryList.Count) + { + index++; + sumBtn.Text = $"({index.ToString()}/{libraryList.Count})"; + } + code = 1; + GetBtnText(testBtn, code, spk); + }; + //娴嬭瘯Text + testBtn.MouseUpEventHandler += (sender, e) => + { + // testBtn.BackgroundColor = CSS.CSS_Color.viewMiddle; + var library = libraryList[index - 1]; + var control = GetControl(spk, testBtn.TextID, library); + //鍙戦�佹祴璇曠爜鍛戒护 + PirMethod.ThreadSend(control, (responsePackNew) => { }, "搴撶爜娴嬭瘯", "frame", this, null); + if (code == 3) { + //鏍囪鏈�鍚庨偅涓爜 + if_bool = true; + } + }; + testBtn.MouseDownEventHandler += (sender, e) => + { + //testBtn.BackgroundColor = CSS.CSS_Color.textConfirmColor; + }; + //鎺у埗澶辫触 + failedBtn.MouseUpEventHandler += (sender, e) => + { + if (index < libraryList.Count) + { + //鍏堝姞 + index++; + //鏇存柊鏂囨湰 + sumBtn.Text = $"({index.ToString()}/{libraryList.Count})"; + } + code = 1; + //鏇存柊鐘舵�� + GetBtnText(testBtn, code, spk); + }; + //鎺у埗鎴愬姛 + succeedBtn.MouseUpEventHandler += (sender, e) => + { + if (code < 3) + { + code++; + } + //鏇存柊鐘舵�� + GetBtnText(testBtn, code, spk); + if (if_bool) + { + var library = libraryList[index-1]; + var control = GetControl(spk, testBtn.TextID, library); + if (spk == SPK.TvIr) + { + //澶囨敞锛氫紵鍗楄姹傚皬绫崇數瑙嗘崲鎺塻pk=ir.tvxm锛堝惉璇存槸涓存椂瑙e喅鏂规锛� + var brand = brandList.Find((c) => c.id == library.brandId); + if (brand != null) + { + if (brand.brandName.Contains("灏忕背") || brand.brandName.Contains("Xiaomi")) + { + //鏇存崲spk + control.spk = "ir.tvxm"; + } + } + } + PirMethod method = new PirMethod(); + //鍙戦�佸簱娣诲姞閬ユ帶鍣ㄥ懡浠� + method.ThreadAddControl(control, this, (device) => + { + MainPage.BasePageView.RemoveViewByTag("PirView"); + AddControlComplete addControlComplete = new AddControlComplete(); + MainPage.BasePageView.AddChidren(addControlComplete); + addControlComplete.Show(device, true); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }); + } }; #endregion } + + /// <summary> + /// 鑾峰彇Control瀵硅薄锛堝瓨鍌ㄥ彂閫佹暟鎹殑瀵硅薄锛� + /// </summary> + /// <param name="spk"></param> + /// <param name="textInt"></param> + /// <param name="library"></param> + /// <returns></returns> + private Control GetControl(string spk, int textInt, Library library) { + + string key = ""; + string value = ""; + switch (spk) + { + case SPK.AcIr: + { + switch (textInt) + { + case StringId.dianyuan: + { + key = "on_off"; + value = "on"; + } + break; + case StringId.moshizhileng: + { + key = "mode"; + value = "cool"; + } + break; + case StringId.fengsuzhongfeng: + { + key = "fan"; + value = "medium"; + } + break; + } + } + break; + case SPK.TvIr: + { + switch (textInt) + { + case StringId.dianyuan: + { + key = "on_off"; + value = "on"; + } + break; + case StringId.yinliangjia: + { + key = "volume+"; + value = "50"; + } + break; + case StringId.jingyin: + { + key = "mute"; + value = "0"; + } + break; + } + } + break; + case SPK.FanIr: + { + switch (textInt) + { + case StringId.dianyuan: + { + key = "on_off"; + value = "on"; + } + break; + case StringId.fengsuqiehuan: + { + key = "speed"; + value = ""; + } + break; + case StringId.yaotou: + { + key = "swing"; + value = ""; + } + break; + } + } + break; + case SPK.PjtIr: + { + switch (textInt) + { + case StringId.dianyuan: + { + key = "on_off"; + value = "on"; + } + break; + case StringId.yinliangjia: + { + key = "volume+"; + value = ""; + } + break; + case StringId.yinliangjian: + { + key = "volume-"; + value = ""; + } + break; + } + } + break; + case SPK.StbIr: + { + switch (textInt) + { + case StringId.dianyuan: + { + key = "on_off"; + value = "on"; + } + break; + case StringId.yinliangjia: + { + key = "volume+"; + value = ""; + } + break; + case StringId.yinliangjian: + { + key = "volume-"; + value = ""; + } + break; + } + } + break; + case SPK.DvDIr: + { + + } + break; + case SPK.PurifierIr: + { + switch (textInt) + { + case StringId.dianyuan: + { + key = "on_off"; + value = "on"; + } + break; + case StringId.zidong: + { + key = "auto"; + value = ""; + } + break; + case StringId.jingyin: + { + key = "mute"; + value = "0"; + } + break; + } + } + break; + case SPK.HeaterIr: + { + switch (textInt) + { + case StringId.dianyuan: + { + key = "on_off"; + value = "on"; + } + break; + case StringId.wendujia: + { + key = "temp+"; + value = ""; + } + break; + case StringId.wendujian: + { + key = "temp-"; + value = ""; + } + break; + } + } + break; + } + AttributesStatus buttonObj = new AttributesStatus(); + buttonObj.key = key; + buttonObj.value = value; + + Control control = new Control(); + control.spk = spk; + control.name = spk; + control.groupId = library.irIndex; + control.type = "library"; + control.status.Add(buttonObj); + control.deviceId = Pir.currPir.deviceId; + control.sid = ""; + string[] strings = library.irCode.Split(','); + for (int arrayStr = 0; arrayStr < strings.Length; arrayStr++) + { + //var intValue = Convert.ToInt32(strings[arrayStr],16); + control.library.Add(strings[arrayStr].Replace("0x","")); + } + + return control; + } + + /// <summary> + /// 鏄剧ず娴嬭瘯鏂囨湰 + /// </summary> + /// <param name="testBtn">鏄剧ず鎺т欢</param> + /// <param name="code">娴嬭瘯鐮佹枃鏈储寮曞��</param> + /// <param name="spk">浜戦泙涓婂畾涔塻pk</param> + private void GetBtnText(Button testBtn,int code,string spk) { + + int textValue = 0; + switch (spk) + { + case SPK.AcIr: + { + switch (code) + { + case 1: + { + textValue = StringId.dianyuan; + } + break; + case 2: + { + textValue = StringId.moshizhileng; + } + break; + case 3: + { + textValue = StringId.fengsuzhongfeng; + } + break; + } + } + break; + case SPK.TvIr: + { + switch (code) + { + case 1: + { + textValue = StringId.dianyuan; + } + break; + case 2: + { + textValue = StringId.yinliangjia; + } + break; + case 3: + { + textValue = StringId.jingyin; + } + break; + } + } + break; + case SPK.FanIr: + { + switch (code) + { + case 1: + { + textValue = StringId.dianyuan; + } + break; + case 2: + { + textValue = StringId.fengsuqiehuan; + } + break; + case 3: + { + textValue = StringId.yaotou; + } + break; + } + } + break; + case SPK.PjtIr: + { + switch (code) + { + case 1: + { + textValue = StringId.dianyuan; + } + break; + case 2: + { + textValue = StringId.yinliangjia; + } + break; + case 3: + { + textValue = StringId.yinliangjian; + } + break; + } + } + break; + case SPK.StbIr: + { + switch (code) + { + case 1: + { + textValue = StringId.dianyuan; + } + break; + case 2: + { + textValue = StringId.yinliangjia; + } + break; + case 3: + { + textValue = StringId.yinliangjian; + } + break; + } + } + break; + case SPK.DvDIr: + { + + } + break; + case SPK.PurifierIr: + { + switch (code) + { + case 1: + { + textValue = StringId.dianyuan; + } + break; + case 2: + { + textValue = StringId.zidong; + } + break; + case 3: + { + textValue = StringId.jingyin; + } + break; + } + } + break; + case SPK.HeaterIr: + { + switch (code) + { + case 1: + { + textValue = StringId.dianyuan; + } + break; + case 2: + { + textValue = StringId.wendujia; + } + break; + case 3: + { + textValue = StringId.wendujian; + } + break; + } + } + break; + } + testBtn.TextID = textValue; + } } } -- Gitblit v1.8.0