From a469a96ee8c38f7d98366dcd633e3a15f92fec65 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期一, 01 三月 2021 17:53:52 +0800 Subject: [PATCH] 2021-3-1-1 --- HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs | 359 +++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 283 insertions(+), 76 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs index 9da222a..501c526 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirMain.cs @@ -10,6 +10,10 @@ { Tag = "PirView"; } + /// <summary> + /// 涓存椂鍌ㄥ瓨璁惧绫诲瀷鍒楄〃 + /// </summary> + List<DeviceType> DeviceTypeList = new List<DeviceType>(); public void Show() { #region 鐣岄潰甯冨眬 @@ -43,9 +47,9 @@ TextColor = CSS.CSS_Color.textConfirmColor, TextAlignment = TextAlignment.CenterLeft, TextID = StringId.shebeigaunli, - IsBold=true, + IsBold = true, }; - pirDeviceFLayout.AddChidren(text1Btn); + pirDeviceFLayout.AddChidren(text1Btn); Button pirIcon = new Button @@ -129,7 +133,8 @@ ///绾㈠瀹濈偣鍑讳簨浠� FrameLayout clickFLayout = new FrameLayout(); pirDeviceFLayout.AddChidren(clickFLayout); - clickFLayout.MouseUpEventHandler += (sender,e) => { + clickFLayout.MouseUpEventHandler += (sender, e) => + { DeviceSet deviceSet = new DeviceSet(); MainPage.BasePageView.AddChidren(deviceSet); @@ -160,7 +165,7 @@ }; deviceListFLayout.AddChidren(text3Btn); ///绾㈠瀹濆悕绉� - Button deviceNameBtn= new Button + Button deviceNameBtn = new Button { Y = Application.GetRealHeight(13), X = Application.GetRealWidth(161), @@ -177,12 +182,18 @@ var dropdownIconBtn = new Button { Y = Application.GetRealHeight(13), - X = Application.GetRealWidth(343-8-16), + X = Application.GetRealWidth(343 - 8 - 16), Width = Application.GetRealWidth(16), Height = Application.GetRealWidth(16), UnSelectedImagePath = "PirIcon/dropdown.png", }; deviceListFLayout.AddChidren(dropdownIconBtn); + + deviceNameBtn.MouseUpEventHandler += (sender, e) => + { + + + }; #endregion int line = 0; @@ -206,9 +217,9 @@ UnSelectedImagePath = "PirIcon/Infraredtreasure.png", }; currpirdeviceFLayout.AddChidren(deviceIconBtn); - var iconNameBtn = new Button + var iconNameBtn = new Button { - Y = deviceIconBtn.Bottom+Application.GetRealHeight(8), + Y = deviceIconBtn.Bottom + Application.GetRealHeight(8), Width = Application.GetRealWidth(80), Height = Application.GetRealHeight(17), TextSize = TextSize.text12, @@ -228,67 +239,150 @@ clickBtn.MouseUpEventHandler += (sender, e) => { //1=绌鸿皟;2=鐢佃;3=椋庢墖;4=鏈洪《鐩�;5=DVD/EVD/VCD;6=鎶曞奖浠�;7=鑷畾涔�; - int if_value =int.Parse(clickBtn.Tag.ToString()); - var list11 = new List<string> { - "鐖变綘", "鍝庡懄","鍩冨強","鍝堝紬鎹㈠3鍝堝紬", "鐖卞痉鍗庡v","淇哄嚑涓柉浜�", - "鎷滀簡", "宸村+", "鐧惧か", "鐧惧悎鍦扮悊璇句綘鎵撶畻", "涓嶅害鑰侀浼忔灔", "姣斿埌涔濈偣", - "杞︾珯","娴嬭瘯","姝ゅ湴", "鎵嶇湅瑙佸ソ寰楀揩","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - "绛夊緟鏈轰細鍚�","鐨勫鎴�", "澶氬枬鐐�", "鐧昏鍝︾劧鍚�", "鎵撶數璇�", - "鎭╄偆闇滅湅灏辩湅浜�", "楗挎os","鎭堕瓟鍩�","鍎跨鑱斿姩", "鎭╁叚棰楀瓙寮规媺鎷夎¥娲楁尽浜�","鍙戝ぇ瀛︾敓鍙戝彂", - "鐪熷帀瀹砳鍙戝灏�", "鐭ラ亾浣犱粯娆句簡鍙�", "灏厭鍥炲", "鏀硅繘鐨勮瘽", "澶╁ぉ閫熷害鍥炵瓟", "澶ソ浜嗗紑杞�", - "鍑忚偉鐨勭湅杩�","妗″嚭鍙e閭�","濡傛灉瑙夊緱", "寰堣垝鏈嶇殑","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - "榫欏嵎椋庝簭澶у彂","鍘诲ソ鐪�", "澶氬枬鐐�", "濂芥氮璐瑰ソ", "鎵撶數璇�"}; - System.Threading.Tasks.Task.Run(() => + int if_value = int.Parse(clickBtn.Tag.ToString()); + var jobDeviceType = DeviceTypeList.Find((c) => c.deviceType == GetTypeString(if_value)); + if (jobDeviceType == null) { - Application.RunOnMainThread(() => + return; + } + if (if_value == 7) + { + Method method = new Method(); + method.AddControl(); + } + else + { + GetBrandList(jobDeviceType.id, (brandList) => { - switch (if_value) + var brandSupportStrList= GetBrandSupport(if_value); + var strList = new List<string>(); + for (int str = 0; str < brandList.Count; str++) { - case 1: - { - } - break; - case 2: - { - } - break; - case 3: - { - } - break; - case 4: - { - } - break; - case 5: - { - } - break; - case 6: - { - } - break; - case 7: - { - Method method = new Method(); - method.AddControl(); - - } - break; + string s = brandList[str].brandName; + var bool_if = brandSupportStrList.Find((c)=>s.Contains(c)); + if (bool_if!=null) + { + strList.Add(s); + } } - - - //BrandList brandList = new BrandList(); - //MainPage.BasePageView.AddChidren(brandList); - //brandList.Show(list11, null); - //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + Application.RunOnMainThread(()=> { + BrandList brandObj = new BrandList(); + MainPage.BasePageView.AddChidren(brandObj); + brandObj.Show(brandList, strList, null); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }); + }); - }); + + } + + }; } + GetDeviceTypeList(); + } + /// <summary> + /// 鑾峰彇鍝佺墝鏀寔 + /// </summary> + /// <param name="index">绱㈠紩鍊�</param> + private List<string> GetBrandSupport(int index) + { + List<string> strList = new List<string>(); + switch (index) + { + case 1: + { + strList.Add("鏍煎姏"); + strList.Add("缇庣殑"); + strList.Add("娴峰皵"); + strList.Add("鏉句笅"); + strList.Add("娴蜂俊"); + strList.Add("闀胯櫣"); + } + break; + case 2: + { + strList.Add("鍒涚淮"); + strList.Add("TCL"); + strList.Add("娴蜂俊"); + strList.Add("闀胯櫣"); + strList.Add("娴峰皵"); + strList.Add("涓夋槦"); + strList.Add("涔愯"); + strList.Add("绱㈠凹"); + strList.Add("LG涔愰噾"); + } + break; + case 3: + { + } + break; + case 4: + { + } + break; + case 5: + { + } + break; + case 6: + { + } + break; + + } + return strList; + } + /// <summary> + /// 鑾峰彇璁惧绫诲瀷str + /// </summary> + /// <param name="index">绱㈠紩鍊�</param> + private string GetTypeString(int index) + { + string type = ""; + switch (index) + { + case 1: + { + type = "ac"; + } + break; + case 2: + { + type = "tv"; + } + break; + case 3: + { + type = "fan"; + } + break; + case 4: + { + type = "set_top_box"; + } + break; + case 5: + { + type = "dvd"; + } + break; + case 6: + { + type = "projector"; + } + break; + case 7: + { + type = "PirIcon/custom.png"; + } + break; + + } + return type; } /// <summary> /// 璁剧疆鍥剧墖鍜屽娉� @@ -296,44 +390,157 @@ /// <param name="index">绱㈠紩鍊�</param> /// <param name="deviceIconBtn">鍥炬爣Btn</param> /// <param name="deviceNameBtn">璁惧澶囨敞Btn</param> - private void GetIconAndText(int index,Button deviceIconBtn, Button deviceNameBtn) { - string iconPath = ""; - int deviceNameIndex=0; + private void GetIconAndText(int index, Button deviceIconBtn, Button deviceNameBtn) + { + string iconPath = ""; + int deviceNameIndex = 0; switch (index) { - case 1: { + case 1: + { iconPath = "PirIcon/air.png"; deviceNameIndex = StringId.kongtiao; - } break; - case 2: { + } + break; + case 2: + { iconPath = "PirIcon/tv.png"; deviceNameIndex = StringId.dianshi; - } break; - case 3: { + } + break; + case 3: + { iconPath = "PirIcon/fan.png"; deviceNameIndex = StringId.fengshan; - } break; - case 4: { + } + break; + case 4: + { iconPath = "PirIcon/stb.png"; deviceNameIndex = StringId.jidinghe; - } break; - case 5: { + } + break; + case 5: + { iconPath = "PirIcon/dvd.png"; deviceNameIndex = StringId.dvd; - } break; - case 6: { + } + break; + case 6: + { iconPath = "PirIcon/projector.png"; deviceNameIndex = StringId.touyingyi; - } break; - case 7: { + } + break; + case 7: + { iconPath = "PirIcon/custom.png"; deviceNameIndex = StringId.zidingyi; - } break; + } + break; } deviceIconBtn.UnSelectedImagePath = iconPath; deviceNameBtn.TextID = deviceNameIndex; } - + /// <summary> + /// 璇诲彇绾㈠璁惧绫诲瀷鍒楄〃 + /// </summary> + private void GetDeviceTypeList() + { + PirSend.GetDeviceTypesList(this, (responsePackNew) => + { + + if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") + { + //娓呯┖涔嬪墠鏁版嵁 + DeviceTypeList.Clear(); + var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString()); + for (int a = 0; a < jArray.Count; a++) + { + var jay = jArray[a]; + var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); + var objDeviceType = Newtonsoft.Json.JsonConvert.DeserializeObject<DeviceType>(str); + if (objDeviceType != null) + { + if (null == DeviceTypeList.Find((c) => c.id == objDeviceType.id)) + { + DeviceTypeList.Add(objDeviceType); + } + } + } + } + else + { + Method method = new Method(); + method.ErrorShow(responsePackNew); + } + }, "", "璁惧绫诲瀷鍒楄〃"); + } + + /// <summary> + /// 璇诲彇绾㈠璁惧绫诲瀷鐨勫搧鐗屽垪琛� + /// </summary> + private void GetBrandList(string id,Action<List<Brand>> actionBrand) + { + List<Brand> brandList = new List<Brand>(); + PirSend.GetDeviceTypesList(this, (responsePackNew) => + { + + if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") + { + //娓呯┖涔嬪墠鏁版嵁 + brandList.Clear(); + var jArray = Newtonsoft.Json.Linq.JArray.Parse(responsePackNew.Data.ToString()); + for (int a = 0; a < jArray.Count; a++) + { + var jay = jArray[a]; + var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); + var brand = Newtonsoft.Json.JsonConvert.DeserializeObject<Brand>(str); + if (brand != null) + { + if (null == brandList.Find((c) => c.id == brand.id)) + { + brandList.Add(brand); + } + } + } + actionBrand(brandList); + } + else + { + Method method = new Method(); + method.ErrorShow(responsePackNew); + } + }, id, "鍝佺墝鍒楄〃"); + } + + } + class DeviceType + { + /// <summary> + /// 璁惧绫诲瀷涓婚敭Id + /// </summary> + public string id = string.Empty; + /// <summary> + /// 璁惧绫诲瀷(鎶曞奖浠�,椋庢墖,鏈洪《鐩�...) + /// </summary> + public string deviceType = string.Empty; + } + public class Brand + { + /// <summary> + /// 鍝佺墝涓婚敭Id + /// </summary> + public string id = string.Empty; + /// <summary> + /// 璁惧绫诲瀷涓婚敭Id + /// </summary> + public string deviceTypeId = string.Empty; + /// <summary> + /// 鍝佺墝鍚嶇О + /// </summary> + public string brandName = string.Empty; + } } -- Gitblit v1.8.0