From 7cf82866bff8144dd89746beecb8d185f7f8595e Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期四, 04 六月 2020 13:06:44 +0800 Subject: [PATCH] 2020-06-04-1 --- HDL_ON/UI/Music/View/DialogView.cs | 120 ++++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 84 insertions(+), 36 deletions(-) diff --git a/HDL_ON/UI/Music/View/DialogView.cs b/HDL_ON/UI/Music/View/DialogView.cs index 3b45ea7..ed6f4de 100644 --- a/HDL_ON/UI/Music/View/DialogView.cs +++ b/HDL_ON/UI/Music/View/DialogView.cs @@ -11,6 +11,7 @@ /// <param name="musicInfo"></param> public void FieListView(MusicInfo musicInfo) { + #region //涓绘帶浠� Dialog dialog = new Dialog() { @@ -85,7 +86,7 @@ }; topFra.AddChidren(addIconBtn); - + #endregion VerticalScrolViewLayout verticalScrolViewLayout = new VerticalScrolViewLayout { Y = Application.GetRealHeight(70), @@ -227,6 +228,9 @@ /// </summary> public void PlayMergence() { + + #region + //涓绘帶浠� Dialog dialog = new Dialog() { @@ -394,40 +398,50 @@ }; PlayRow.AddChidren(lineBtn); } + #endregion confirmBtn.MouseUpEventHandler += (sender, e) => { - if (playList1.Count <= 1) { new PublicAssmebly().TipMsgAutoClose("鑷冲皯閫変腑涓や釜浠ヤ笂鎾斁鍣�", false); return; } - - var playList2 = new List<A31MusicModel>(); - for (int i = 0; i < playList1.Count; i++) + ///鏌ヨ鏄惁宸茬粡瀛樺湪涓绘挱鏀�; + var host_Music_If = playList1.Find((c) => c.ServerClientType == 1); + if (host_Music_If == null) { - var musics = playList1[i]; - if (musics.A31PlayStatus.playSource == "play") + + var playList2 = new List<A31MusicModel>(); + for (int i = 0; i < playList1.Count; i++) { - playList2.Add(musics); + var musics = playList1[i]; + if (musics.A31PlayStatus.playSource == "play") + { + playList2.Add(musics); + } + } - } - - if (playList2.Count == 0) - { - SelectedPlayerView(dialog, playList1, playList1); - } - else if (playList2.Count == 1) - { - dialog.Close(); - var player = playList2[0]; - Threading(player, playList1); + if (playList2.Count == 0) + { + SelectedPlayerView(dialog, playList1, playList1); + } + else if (playList2.Count == 1) + { + //鍙湁涓�涓挱鏀惧櫒鍦ㄦ挱鏀�,榛樿涓轰富鎾彂鍣�; + dialog.Close(); + var player = playList2[0]; + Threading(player, playList1); + } + else + { + SelectedPlayerView(dialog, playList1, playList2); + } } else { - SelectedPlayerView(dialog, playList1, playList2); + Threading(host_Music_If, playList1); } }; } @@ -438,7 +452,7 @@ /// /// <param name="musicList2">鏄剧ず鍦ㄦ挱鏀鹃煶涔愭挱鏀惧櫒鍒楄〃</param> void SelectedPlayerView(Dialog dialogF, List<A31MusicModel> musicList1, List<A31MusicModel> musicList2) { - + #region //涓绘帶浠� Dialog dialog = new Dialog() { @@ -584,7 +598,7 @@ }; addFlieRow.AddChidren(lineBtn); } - + #endregion confirmBtn.MouseUpEventHandler += (sender, e) => { if (selectedBtn.Name.ToString() == "No") @@ -643,6 +657,7 @@ continue; } System.Threading.Thread.Sleep(1000);//绛夊緟涓�绉掑啀鍙戞暟鎹� + var dd = SendMethod.OpenWeb("http://" + clientMusic.IPAddress + "/httpapi.asp?command=ConnectMasterAp:ssid=" + ssid + ":ch=" + serverIfon.WifiChannel + ":auth=OPEN:encry=NONE:pwd=:chext=0:JoinGroupMaster:eth" + serverIfon.eth2 + ":wifi" + serverIfon.ra0 + ":uuid" + serverIfon.uuid); if (null == SendMethod.OpenWeb("http://" + clientMusic.IPAddress + "/httpapi.asp?command=ConnectMasterAp:ssid=" + ssid + ":ch=" + serverIfon.WifiChannel + ":auth=OPEN:encry=NONE:pwd=:chext=0:JoinGroupMaster:eth" + serverIfon.eth2 + ":wifi" + serverIfon.ra0 + ":uuid" + serverIfon.uuid)) { if (null == SendMethod.OpenWeb("http://" + clientMusic.IPAddress + "/httpapi.asp?command=ConnectMasterAp:ssid=" + ssid + ":ch=" + serverIfon.WifiChannel + ":auth=OPEN:encry=NONE:pwd=:chext=0:JoinGroupMaster:eth" + serverIfon.eth2 + ":wifi" + serverIfon.ra0 + ":uuid" + serverIfon.uuid)) @@ -725,6 +740,8 @@ /// </summary> public void DetachPlayMergence(A31MusicModel a31player) { + + #region //涓绘帶浠� Dialog dialog = new Dialog() { @@ -810,10 +827,24 @@ Width = Application.GetRealWidth(344), }; dialogFra.AddChidren(verticalScrolViewLayout); - var slaveList= new List<Slave>(); + + var playList1 = new List<A31MusicModel>(); + playList1.Add(a31player); for (int i = 0; i < a31player.Slave.slave_list.Count; i++) { var slave = a31player.Slave.slave_list[i]; + var music_If = A31MusicModel.A31MusicModelList.Find((c) => c.UniqueDeviceName == slave.uuid.Replace("uuid:", "")); + if (music_If != null) + { + playList1.Add(music_If); + } + } + + + var playList2 = new List<A31MusicModel>(); + for (int i = 0; i < playList1.Count; i++) + { + var player = playList1[i]; RowLayout PlayRow = new RowLayout { Height = Application.GetRealHeight(50), @@ -833,7 +864,7 @@ TextColor = Color.TextColor, TextSize = TextSize.Text14, TextAlignment = TextAlignment.CenterLeft, - Text = slave.name, + Text = player.Name, }; PlayRow.AddChidren(PlayNameBtn); @@ -854,7 +885,7 @@ Button clickBtn = new Button { Height = Application.GetRealHeight(50), - Tag = slave.uuid.Replace("uuid:", ""), + Tag = player.UniqueDeviceName, }; PlayRow.AddChidren(clickBtn); @@ -862,19 +893,19 @@ { clickBtn.IsSelected = !clickBtn.IsSelected; selectedIconBtn.IsSelected = clickBtn.IsSelected; - var uuid = slaveList.Find((obj) => obj.uuid.Replace("uuid:", "") == clickBtn.Tag.ToString()); + var uuid = playList2.Find((obj) => obj.UniqueDeviceName== clickBtn.Tag.ToString()); if (selectedIconBtn.IsSelected) { if (uuid == null) { - slaveList.Add(slave); + playList2.Add(player); } } else { if (uuid != null) { - slaveList.Remove(slave); + playList2.Remove(player); } } }; @@ -889,9 +920,10 @@ }; PlayRow.AddChidren(lineBtn); } + #endregion confirmBtn.MouseUpEventHandler += (sender, e) => { - if (slaveList.Count == 0) + if (playList1.Count == 0) { new PublicAssmebly().TipMsgAutoClose("杩樻病鏈夐�夋嫨瑙i櫎缁勬挱鏀惧櫒", false); return; @@ -904,21 +936,37 @@ { try { - for (int i = 0; i < slaveList.Count; i++) + var play_If = playList1.Find((obj) => obj.UniqueDeviceName == a31player.UniqueDeviceName); + if (play_If == null) { - var clientMusic = slaveList[i]; - if (null == SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:SlaveKickout:" + clientMusic.ip)) + //瀛愰煶绠变笌涓婚煶绠辨柇寮�鐨勫懡浠� + for (int i = 0; i < playList1.Count; i++) { - if (null == SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:SlaveKickout:" + clientMusic.ip)) + var clientMusic = playList1[i]; + if (null == SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:SlaveKickout:" + clientMusic.IPAddress)) + { + if (null == SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:SlaveKickout:" + clientMusic.IPAddress)) + { + + } + } + ///姣忚В闄や竴涓挱鏀惧櫒闇�瑕佺瓑寰�3绉� + System.Threading.Thread.Sleep(3000);//绛夊緟3绉掑啀鍙戞暟鎹� + } + } + else + { + //瑙f暎缁勭殑鍛戒护 + if (null == SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:Ungroup")) + { + if (null == SendMethod.OpenWeb("http://" + a31player.IPAddress + "/httpapi.asp?command=multiroom:Ungroup")) { } } - System.Threading.Thread.Sleep(2000);//绛夊緟2绉掑啀鍙戞暟鎹� - } DateTime dateTime = DateTime.Now; - while ((DateTime.Now - dateTime).TotalMilliseconds < 10 * 1000) + while ((DateTime.Now - dateTime).TotalMilliseconds < 12 * 1000) { System.Threading.Thread.Sleep(1000); try -- Gitblit v1.8.0