From 0ee75b88cfe03e46289de0de96e8ed4580c797d3 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期二, 27 九月 2022 14:04:21 +0800 Subject: [PATCH] Merge branch 'Dev-Branch' into dev--wxr --- HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs | 271 +++++++++++++++--------------------------------------- 1 files changed, 75 insertions(+), 196 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs b/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs index 15371bc..1207c0b 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Music/A31MusicModel.cs @@ -13,86 +13,18 @@ static readonly string a31MusiceModeListFilePath = "A31MusiceModeListFilePath"; static A31MusicModel() { - Refresh(); + //Refresh(); } - static List<System.Threading.Thread> updataMusicStatesListThread = new List<System.Threading.Thread>(); - /// <summary> - /// 璇诲彇闊充箰鐘舵�� - /// </summary> - public static void ReadMusicStates() - { - RemoveListThread(); - if (GetCollection) - { - for (int i = 0; i < A31MusicModelList.Count; i++) - { - var a31player = A31MusicModelList[i]; - var musicThread = new System.Threading.Thread(() => - { - while (true) - { - System.Threading.Thread.Sleep(1000); - if (!a31player.IsOnLine) - { - continue; - } - SendMethod.ReadStatus(a31player); - } - }) - { IsBackground = true, Name = "A31" }; - musicThread.Start(); - updataMusicStatesListThread.Add(musicThread); - } - } - } + /// <summary> /// 闊充箰鍔熻兘 /// </summary> public Function functionMusic = new Function(); - /// <summary> - /// 绉婚櫎涔嬪墠鐨勭嚎绋� - /// </summary> - public static void RemoveListThread() - { - for (int i = 0; i < updataMusicStatesListThread.Count;) - { - try - { - var thread = updataMusicStatesListThread[i]; - if (thread.IsAlive) - { - thread.Abort(); - } - updataMusicStatesListThread.Remove(thread); - } - catch (Exception e) - { - MainPage.Log("clearA31Threads error : " + e.Message); - } - finally - { - MainPage.Log("clearA31Threads over"); - } - } - } - /// <summary> - /// 闊充箰鍒楄〃閲屾槸鍚︽湁闊充箰琚敹钘忚繃 - /// </summary> - static bool GetCollection - { - get - { - for (int i = 0; i < A31MusicModelList.Count; i++) - { - if (A31MusicModelList[i].functionMusic.collect) - { - return true; //鏌ヨ鏄惁鏈夐煶涔愯鏀惰棌杩� - } - } - return false; - } - } + + + + /// <summary> ///淇濆瓨褰撳墠闊充箰鍒楄〃 /// </summary> @@ -120,44 +52,24 @@ A31MusicModelList.RemoveAll((obj) => obj == null); } - /// <summary> - /// 闊充箰鎾斁鍣ㄥ悕绉� - /// </summary> - public string Name = string.Empty; + /// <summary> /// 涓婁竴娆℃洿鏂扮殑鏃堕棿 - /// 璁板綍鏁版嵁鍙嶉鐨勬椂闂�(鍥犱负鏈夋椂闂寸綉缁滃樊鏁版嵁涓嶅洖澶嶏紝瀵艰嚧鍒锋柊褰撳墠鎾斁闊充箰鏃堕棿涓嶆纭�) + /// 璁板綍鏁版嵁鍙嶉鐨勬椂闂�(鍥犱负鏈夋椂鍊欑綉缁滃樊鏁版嵁涓嶅洖澶嶏紝瀵艰嚧鍒锋柊褰撳墠鎾斁闊充箰鏃堕棿涓嶆纭�) /// ((褰撳墠鏃堕棿)DateTime.Now - (璁板綍鏃堕棿)LastDateTimeLastDateTime).TotalSeconds=璇樊鏃堕棿(绉�) /// </summary> public DateTime LastDateTime; /// <summary> - /// IP鍦板潃 + /// 璁板綍婊戝姩闊抽噺鏉℃椂闂�<鐢ㄦ潵澶勭悊闊抽噺璺冲姩> /// </summary> - public string IPAddress = "192.168.1.100"; + public static DateTime ProgressDateTime = DateTime.MinValue; - /// <summary> - /// 绔彛 - /// </summary> - public int Port = 49153; - - /// <summary> - /// 鏄惁鏄挱鏀惧櫒鍒楄〃鏈�鍚庝竴涓�(true) - /// </summary> - public bool IsEnd = false; - - public int A31DeviceType; - - //public string a31Source = "wifi"; - //public string a31Source = string.Empty; /// <summary> /// 闊充箰鎾斁鍣↖D /// </summary> public string UniqueDeviceName = string.Empty; - /// <summary> - /// 褰撳墠鎾斁鐘舵�� - /// </summary> - public A31PlayStatus A31PlayStatus = new A31PlayStatus(); + public MusicInfo CurrentMusic = new MusicInfo(); @@ -172,53 +84,15 @@ public bool IsCanShow = true; /// <summary> - /// 鏄惁鍦ㄧ嚎锛屽鏋滃湪绾垮氨鍏佽璇诲彇淇℃伅 - /// </summary> - public bool IsOnLine = true; - - - /// <summary> /// 鍒楄〃 /// </summary> - public List<PalyListInfo> palyListInfos = new List<PalyListInfo>(); + public List<PalyList> palyLists = new List<PalyList>(); /// <summary> /// 鍠滅埍闊充箰鍒楄〃 /// </summary> public List<Songs> LoveMusicInfoList = new List<Songs>(); - /// <summary> - /// DLNA鎵�鏈夊垪琛� - /// </summary> - public List<Songs> dlnaMusicInfoLists = new List<Songs>(); - - /// <summary> - /// 鐢靛彴鎵�鏈夊垪琛� - /// </summary> - public List<Songs> CnRadioInfoList = new List<Songs>(); - - /// <summary> - /// vTuner鐢靛彴鎵�鏈夊垪琛� - /// </summary> - public List<Songs> vTunerList = new List<Songs>(); - - /// <summary> - /// 鍠滅埍鐢靛彴鍒楄〃 - /// </summary> - public List<Songs> LoveRadioInfoList = new List<Songs>(); - - /// <summary> - /// Pandora鐢靛彴鎵�鏈夊垪琛� - /// </summary> - public List<Songs> PanRadioInfoList = new List<Songs>(); - /// <summary> - /// usb鍒楄〃 - /// </summary> - public List<Songs> USBList = new List<Songs>(); - /// <summary> - /// Tidal鍠滅埍鍒楄〃 - /// </summary> - public List<Songs> TidalLikelist = new List<Songs>(); /// <summary> ///鍒涘缓闊充箰鏂囦欢鍒楄〃 /// </summary> @@ -228,72 +102,31 @@ /// </summary> public static A31MusicModel Current; - public int _ServerClientType; - /// <summary> - /// -1琛ㄧず浠庣殑0琛ㄧず榛樿1琛ㄧず涓荤殑 - /// </summary> - public int ServerClientType - { - get - { - return _ServerClientType; - } - set - { - _ServerClientType = value; - if (value == 0) - { - //name = Name; - } - } - } - /// <summary> - /// 璁板綍涓绘挱鏀惧櫒IP - /// </summary> - public string MainPlayIP = string.Empty; - public string _MainPlayName = string.Empty; - /// <summary> - /// 璁板綍涓绘挱鏀惧櫒鍚嶇О - /// </summary> - public string MainPlayName - { - get - { - return _MainPlayName; - } - set - { - _MainPlayName = value; - //if(ServerClientType == 1) - //{ - // name = value; - //} - } - } + + /// <summary> /// 鎸囧畾鍒楄〃鍚嶈幏鍙栭煶涔愬垪琛� /// </summary> /// <returns></returns> public List<Songs> GetSongList(string listName) { - var list = palyListInfos.Find((o)=>o.group==listName); - if (list==null) { + var list = palyLists.Find((o) => o.group == listName); + if (list == null) + { return new List<Songs>(); } return list.songs; } - /// <summary> - /// 璁板綍涓绘挱鏀惧櫒鏄惁琚敹钘�(绉�妗″畾涔夌殑) - /// </summary> - public bool MainPlayCollection = false; + public Slaves Slave = new Slaves(); - /// <summary> - /// 璁板綍鏃堕棿 - /// </summary> - public static DateTime ProgressDateTime = DateTime.Now; + /// <summary> + /// 鍒ゆ柇鏄惁鏄痡son鏁版嵁 + /// </summary> + /// <param name="json"></param> + /// <returns></returns> public static bool IsJson(string json) { try @@ -361,11 +194,28 @@ public string version = string.Empty; public string uuid = string.Empty; } + + [System.Serializable] + /// <summary> + /// 鏀寔澶氫釜闊充箰 + /// </summary> + public class PalyListInfo + { + /// <summary> + /// 闊充箰sid + /// </summary> + public string sid = string.Empty; + /// <summary> + /// 瑙i噴澶氫釜闊充箰 + /// </summary> + public List<PalyList> playlist = new List<PalyList>(); + } + [System.Serializable] /// <summary> /// 鍒楄〃淇℃伅 /// </summary> - public class PalyListInfo + public class PalyList { /// <summary> /// 鍒楄〃鍚� @@ -377,7 +227,7 @@ public List<Songs> songs = new List<Songs>(); } [System.Serializable] - public class Songs:MusicInfo + public class Songs : MusicInfo { /// <summary> /// 姝屾洸鍚嶇О @@ -395,11 +245,40 @@ /// 绫诲瀷<鑷繁鐢�> /// </summary> public string type = string.Empty; - - - - + /// <summary> + /// 鍒楄〃鍚嶅拰group缁勫悕鏄竴鏍风殑 + /// </summary> + public string listName = string.Empty; } + [System.Serializable] + /// <summary> + /// 鍒楄〃鍚嶅垪琛� + /// </summary> + public class GroupList + { + /// <summary> + ///璁惧sid + /// </summary> + public string sid = string.Empty; + /// <summary> + /// 鍒楄〃鍚嶉泦鍚� + /// </summary> + public List<ListName> groupList = new List<ListName>(); + + } + [System.Serializable] + /// <summary> + /// 鍒楄〃鍚� + /// </summary> + public class ListName + { + /// <summary> + /// 缁勫悕=鍒楄〃鍚� + /// </summary> + public string group = string.Empty; + + } + } \ No newline at end of file -- Gitblit v1.8.0