wxr
2023-06-05 753e67c3705dddb8e913bd853db151f94f81d600
HDL_ON/UI/UI2/FuntionControlView/Music/CommonMethod.cs
New file
@@ -0,0 +1,137 @@
using System;
using System.Collections.Generic;
using HDL_ON.UI.Music;
namespace HDL_ON.UI.UI2.FuntionControlView.Music
{
    public class CommonMethod
    {
        public CommonMethod()
        {
        }
        private static CommonMethod commonMethod = null;
        public static CommonMethod Current
        {
            get
            {
                if (commonMethod == null)
                {
                    commonMethod = new CommonMethod();
                }
                return commonMethod;
            }
        }
        /// <summary>
        /// 获取【音乐列表】
        /// </summary>
        /// <param name="listName">列表名</param>
        /// <param name="source">音乐源</param>
        /// <returns></returns>
        public SongList GetSongListMemory(string listName, string source)
        {
            for (int i = 0; i < A31MusicModel.Current.AllMusicLists.Count; i++)
            {
                var songList = A31MusicModel.Current.AllMusicLists[i];
                if (songList.source == source && songList.group == listName)
                {
                    return songList;
                }
            }
            return new SongList() {group=listName,source=source};
        }
        /// <summary>
        /// 添加【音乐列表】(存在移除再添加)
        /// </summary>
        /// <param name="newSongList">音乐列表</param>
        ///  <param name="source">音乐源</param>
        public void AddSongListMemory(SongList newSongList, string source)
        {
            newSongList.source = source;//更新音乐源
            int existsInt = -1;
            for (int i = 0; i < A31MusicModel.Current.AllMusicLists.Count; i++)
            {
                var songList = A31MusicModel.Current.AllMusicLists[i];
                if (songList.source == newSongList.source && songList.group == newSongList.group)
                {
                    existsInt = i;
                    break;
                }
            }
            if (existsInt > -1)
            {
                //存在移除再添加
                A31MusicModel.Current.AllMusicLists.RemoveAt(existsInt);
                A31MusicModel.Current.AllMusicLists.Insert(existsInt, newSongList);
            }
            else
            {
                //添加
                A31MusicModel.Current.AllMusicLists.Add(newSongList);
            }
        }
        /// <summary>
        /// 获取【音乐源】列表名列表
        /// </summary>
        /// <param name="source">音乐源</param>
        /// <returns></returns>
        public List<ListName> GetListNameListMemory(string source)
        {
            for (int i = 0; i < A31MusicModel.Current.AllSourceGroupList.Count; i++)
            {
                var group = A31MusicModel.Current.AllSourceGroupList[i];
                if (group.source == source)
                {
                    return group.groupList;
                }
            }
            return new List<ListName>();
        }
        /// <summary>
        /// 添加【音乐源】(存在移除再添加)
        /// </summary>
        /// <param name="groupLists"></param>
        public void AddSourceGroupListMemory(GroupList groupLists)
        {
            int existsInt = -1;
            for (int i = 0; i < A31MusicModel.Current.AllSourceGroupList.Count; i++)
            {
                var group = A31MusicModel.Current.AllSourceGroupList[i];
                if (group.sid == groupLists.sid && group.source == groupLists.source)
                {
                    existsInt = i;
                    break;
                }
            }
            if (existsInt > -1)
            {
                //存在移除再添加
                A31MusicModel.Current.AllSourceGroupList.RemoveAt(existsInt);
                A31MusicModel.Current.AllSourceGroupList.Insert(existsInt, groupLists);
            }
            else
            {
                //添加
                A31MusicModel.Current.AllSourceGroupList.Add(groupLists);
            }
        }
    }
}