From a9d1161b1df96e7ddad566335989a1444e433ef5 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期二, 28 三月 2023 11:54:45 +0800 Subject: [PATCH] 2023年03月28日11:52:02 --- HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs | 194 ++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 176 insertions(+), 18 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs index 68af545..9cfe721 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs @@ -55,12 +55,38 @@ #region 缂栬緫璁惧鐘舵�� switch (device.spk) { + //鎻掑骇(鏈塙SB) + case SPK.PanelSocket: + { + #region 鐣岄潰 + ///鎬绘帶寮�鍏� + LogicView.FunTypeView view1 = new LogicView.FunTypeView(); + view1.btnText.TextID = StringId.zongkogkaiguan; + view1.btnState.Name = "鎬绘帶寮�鍏�"; + fLayout.AddChidren(view1.FLayoutView()); + ///璁惧寤舵椂iewv + DelayView(fLayout, view1.frameLayout.Bottom); + #endregion + #region 鐐瑰嚮浜嬩欢 + ///鎬绘帶寮�鍏崇偣鍑讳簨浠� + view1.btnClick.MouseUpEventHandler += (sender, e) => + { + SwitchViewMethod(device, view1.btnState, 2); + }; + if (edit) + { + //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� + GetEditDeviceState(device, index, view1.btnState, null, null, null); + } + #endregion + } + break; //寮�鍏崇伅鍏� case SPK.AirSwitch: case SPK.LightSwitch: - //鎻掑骇 - case SPK.PanelSocket: case SPK.ElectricSocket: + //鏈烘鎵� + case SPK.MechanicalArm: { #region 鐣岄潰 ///寮�鍏� @@ -89,7 +115,6 @@ case SPK.LightDimming: case SPK.LightRGB: case SPK.LightRGBW: - case SPK.LightCCT: { #region 鐣岄潰 ///寮�鍏� @@ -121,6 +146,54 @@ { //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� GetEditDeviceState(device, index, lightSwitchView.btnState, brightnessView.btnState, null, null); + } + #endregion + } + break; + case SPK.LightCCT: + { + #region 鐣岄潰 + ///寮�鍏� + LogicView.FunTypeView lightSwitchView = new LogicView.FunTypeView(); + lightSwitchView.btnText.TextID = StringId.switchLogic; + fLayout.AddChidren(lightSwitchView.FLayoutView()); + ///浜害 + LogicView.FunTypeView brightnessView = new LogicView.FunTypeView(); + brightnessView.frameLayout.Y = lightSwitchView.frameLayout.Bottom; + brightnessView.btnText.TextID = StringId.brightnesLogic; + fLayout.AddChidren(brightnessView.FLayoutView()); + brightnessView.btnState.Text = "5%";//浜у搧缁忕悊鏅撹緣瑕佹眰鏀圭殑 2021-11-06 + ///鑹叉俯 + LogicView.FunTypeView colorTemperatureView = new LogicView.FunTypeView(); + colorTemperatureView.frameLayout.Y = brightnessView.frameLayout.Bottom; + colorTemperatureView.btnText.TextID = StringId.ColorTemperature; + fLayout.AddChidren(colorTemperatureView.FLayoutView()); + colorTemperatureView.btnState.Text = "2700k"; + ///璁惧寤舵椂iewv + DelayView(fLayout, colorTemperatureView.frameLayout.Bottom); + #endregion + #region 鐐瑰嚮浜嬩欢 + ///寮�鍏崇偣鍑讳簨浠� + lightSwitchView.btnClick.MouseUpEventHandler += (sender, e) => + { + SwitchViewMethod(device, lightSwitchView.btnState, 2); + }; + ///浜害鐐瑰嚮浜嬩欢 + brightnessView.btnClick.MouseUpEventHandler += (sender, e) => + { + BrightnessMethod(device, brightnessView.btnState, brightnessView.btnText.Text); + + }; + ///鑹叉俯鐐瑰嚮浜嬩欢 + colorTemperatureView.btnClick.MouseUpEventHandler += (sender, e) => + { + ColorTemperatureMethod(device, colorTemperatureView.btnState, colorTemperatureView.btnText.Text); + + }; + if (edit) + { + //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� + GetEditDeviceState(device, index, lightSwitchView.btnState, brightnessView.btnState, colorTemperatureView.btnState, null); } #endregion } @@ -503,9 +576,14 @@ LogicView.FunTypeView funTypeView = new LogicView.FunTypeView(); funTypeView.btnText.TextID = StringId.tishiyin; fLayout.AddChidren(funTypeView.FLayoutView()); + ///闊抽噺 + LogicView.FunTypeView volView = new LogicView.FunTypeView(); + volView.frameLayout.Y = funTypeView.frameLayout.Bottom; + volView.btnText.TextID = StringId.volumeMusic; + fLayout.AddChidren(volView.FLayoutView()); ///璁惧寤舵椂iewv - DelayView(fLayout, funTypeView.frameLayout.Bottom); + DelayView(fLayout, volView.frameLayout.Bottom); #endregion #region 鐐瑰嚮浜嬩欢 ///鎻愮ず璇煶鐐瑰嚮浜嬩欢 @@ -521,25 +599,30 @@ { //HDL_ON.DriverLayer.Control.Ins.GetMusicDirectory(device); //var palyListName = Music.SendMethod.mMethod.GetListName(device); - var palyList= Music.SendMethod.Current.GetListMusic(device, "hdl_special"); - List<string> musicNameList = new List<string>(); + var palyList= Music.SendMethod.Current.GetSingleSongList(device, "hdl_special",""); + List<string> songNameList = new List<string>(); for (int i = 0; i < palyList.songs.Count; i++) { - var music = palyList.songs[i]; - musicNameList.Add(music.name); + var song = palyList.songs[i]; + songNameList.Add(song.name); } Application.RunOnMainThread(() => { loading.Hide(); PublicInterface publicInterface = new PublicInterface(); - publicInterface.FrameOrVv(this, musicNameList, new List<string> { funTypeView.btnState.Text }, palyList.group, (index2) => + publicInterface.FrameOrVv(this, songNameList, new List<string> { funTypeView.btnState.Text }, palyList.group, (index2) => { - var musicSelecetd = palyList.songs[index2]; + var songSelecetd = palyList.songs[index2]; //鐣岄潰鏄剧ず閫変腑鍊� - funTypeView.btnState.Text = musicSelecetd.name; + funTypeView.btnState.Text = songSelecetd.name; //鏁版嵁灏佽 AddDictionary("playlist_name", palyList.group);//鍒楄〃鍚� - AddDictionary("song_name", musicSelecetd.name);//姝屾洸鍚� + AddDictionary("song_name", songSelecetd.name);//姝屾洸鍚� + if (!string.IsNullOrEmpty(songSelecetd.url)) + { + //瀛樺湪url灏变竴璧峰彂閫佽繃鍘� + AddDictionary("url", songSelecetd.url); + } },false); @@ -549,11 +632,24 @@ }); }; + ///闊抽噺鐐瑰嚮浜嬩欢 + volView.btnClick.MouseUpEventHandler += (sender, e) => + { + selectedState = device.spk + "_volume"; + new LogicView.TipPopView { }.InputBox(StringId.volumeMusic, volView.btnState.Text, (value) => + { + + //鐣岄潰鏄剧ず閫変腑鍊� + volView.btnState.Text =value; + //鏁版嵁灏佽 + AddDictionary("volume", value);//闊抽噺 + },0,100); + }; if (edit) { //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� - GetEditDeviceState(device, index, funTypeView.btnState, null, null, null); + GetEditDeviceState(device, index, funTypeView.btnState, volView.btnState, null, null); } #endregion @@ -622,16 +718,35 @@ if (!_bool) { //娌℃湁寮�鍏冲氨榛樿娣诲姞-寮�-灞炴�� - Dictionary<string, string> diction = new Dictionary<string, string>(); - diction.Add("key", "on_off"); - diction.Add("value", "on"); + Dictionary<string, string> diction = new Dictionary<string, string> + { + { "key", "on_off" }, + { "value", "on" } + }; dicSateteList.Add(diction); + } + } + break; + //闊充箰 + case SPK.MusicStandard: + case SPK.AvMusic: + { + string volume = "volume"; + var dicObj = dicSateteList.Find((dic) => dic.ContainsValue(volume)); + if (dicObj != null) + { + //鏈夐厤缃煶涔愰煶閲忓睘鎬э紝瑕侀噸鏂版帓鍒�,闊抽噺鍦ㄥ墠闈� + var dicList = new List<Dictionary<string, string>>(); + dicList.Add(dicObj);//鍏堟坊鍔犻煶閲忓睘鎬� + var diclist = dicSateteList.FindAll((dic) => !dic.ContainsValue(volume)); + dicList.AddRange(diclist);//鍐嶆坊鍔犲叾瀹冨睘鎬� + dicSateteList = dicList;//閲嶆柊璧嬪�� } } break; } - outputDevice.status = dicSateteList; + outputDevice.status.AddRange(dicSateteList); if (edit) { @@ -733,6 +848,17 @@ selectedState = device.spk + "_" + strValue; //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; string keyVlaue = "on_off"; + switch (device.spk) + { + case SPK.PanelSocket: + { + if (button.Name == "鎬绘帶寮�鍏�") + { + keyVlaue = "on_off_master"; + } + } + break; + } //鏁版嵁灏佽 AddDictionary(keyVlaue, strValue); }); @@ -787,6 +913,38 @@ } /// <summary> + /// 鑹叉俯(cct)=鍔熻兘涓嬩竴绾х晫闈� + /// </summary> + /// <param name="device"></param> + /// <param name="button"></param> + private void ColorTemperatureMethod(Entity.Function device, Button button, string titleName) + { + #region 鐣岄潰 + //涔嬪墠鐨勭姸鎬佸�� + string stateVlaue = button.Text; + LogicView.ColorTemperature brightness = new LogicView.ColorTemperature(); + brightness.FLayoutView(this, titleName, stateVlaue, (colorTemperatureValue, unitStr) => + { + //鐣岄潰鏄剧ず閫変腑鍊� + button.Text = colorTemperatureValue + unitStr; + selectedState = device.spk + colorTemperatureValue.ToString(); + //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�; + string keyVlaue = ""; + switch (device.spk) + { + case SPK.LightCCT: + { + keyVlaue = "cct"; + } + break; + } + //鏁版嵁灏佽 + AddDictionary(keyVlaue, colorTemperatureValue); + }); + #endregion + + } + /// <summary> /// 鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� /// </summary> /// <param name="device">缂栬緫璁惧</param> @@ -804,7 +962,7 @@ if (dicList.Count != 0) { //鏈夋暟鎹噸鏂拌祴鍊� - dicSateteList = dicList; + dicSateteList.AddRange(dicList); } if (this.btnDelay != null) { -- Gitblit v1.8.0