From dd07cd6f523e68c35034a14d87a6e28acfc7ccb6 Mon Sep 17 00:00:00 2001 From: jasonchenwork Date: Mon, 14 Apr 2025 16:12:49 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=9E=E5=88=A5(=E5=85=A8)SQL=E6=9F=A5?= =?UTF-8?q?=E8=A9=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PrimaryForm.CategorySearch.ChinaSongs.cs | 8 +++++--- .../PrimaryForm.CategorySearch.LoveDuet.cs | 6 ++++-- .../PrimaryForm.CategorySearch.MedleyDance.cs | 6 ++++-- .../PrimaryForm.CategorySearch.Nineties.cs | 6 ++++-- .../PrimaryForm.CategorySearch.NostalgicSongs.cs | 6 ++++-- .../PrimaryForm.CategorySearch.TalentShow.cs | 6 ++++-- .../PrimaryForm.CategorySearch.VietnameseSongs.cs | 6 ++++-- .../CategorySearch/PrimaryForm.CategorySearch.cs | 11 +++++++++-- PrimaryFormParts/PrimaryForm.cs | 14 +++++++------- 9 files changed, 45 insertions(+), 24 deletions(-) diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.ChinaSongs.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.ChinaSongs.cs index c08ea7f..1767867 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.ChinaSongs.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.ChinaSongs.cs @@ -11,10 +11,12 @@ namespace DualScreenDemo nostalgicSongsButton.BackgroundImage = nostalgicSongsNormalBackground; chinaSongsButton.BackgroundImage = chinaActiveBackground; - - chinaSongs = allSongs.Where(song => song.SongGenre.Contains("F1")) + + /*chinaSongs = allSongs.Where(song => song.SongGenre.Contains("F1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("F1"); // Set the query for SQL to filter by genre "F1" + var chinaSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = chinaSongs; totalPages = (int)Math.Ceiling((double)chinaSongs.Count / itemsPerPage); diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.LoveDuet.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.LoveDuet.cs index 2838c2a..98b2cc5 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.LoveDuet.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.LoveDuet.cs @@ -12,9 +12,11 @@ namespace DualScreenDemo chinaSongsButton.BackgroundImage = chinaNormalBackground; - loveDuetSongs = allSongs.Where(song => song.SongGenre.Contains("A1")) + /*loveDuetSongs = allSongs.Where(song => song.SongGenre.Contains("A1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("A1"); // Set the query for SQL to filter by genre "F1" + var loveDuetSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = loveDuetSongs; totalPages = (int)Math.Ceiling((double)loveDuetSongs.Count / itemsPerPage); diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.MedleyDance.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.MedleyDance.cs index 0a22e1e..6f285d5 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.MedleyDance.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.MedleyDance.cs @@ -12,9 +12,11 @@ namespace DualScreenDemo chinaSongsButton.BackgroundImage = chinaNormalBackground; - medleyDanceSongs = allSongs.Where(song => song.SongGenre.Contains("C1")) + /*medleyDanceSongs = allSongs.Where(song => song.SongGenre.Contains("C1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("C1"); // Set the query for SQL to filter by genre "F1" + var medleyDanceSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = medleyDanceSongs; totalPages = (int)Math.Ceiling((double)medleyDanceSongs.Count / itemsPerPage); diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.Nineties.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.Nineties.cs index cc1bd3e..96cff47 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.Nineties.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.Nineties.cs @@ -12,9 +12,11 @@ namespace DualScreenDemo chinaSongsButton.BackgroundImage = chinaNormalBackground; - ninetiesSongs = allSongs.Where(song => song.SongGenre.Contains("D1")) + /*ninetiesSongs = allSongs.Where(song => song.SongGenre.Contains("D1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("D1"); // Set the query for SQL to filter by genre "F1" + var ninetiesSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = ninetiesSongs; totalPages = (int)Math.Ceiling((double)ninetiesSongs.Count / itemsPerPage); diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.NostalgicSongs.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.NostalgicSongs.cs index 0db3095..3fde3fd 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.NostalgicSongs.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.NostalgicSongs.cs @@ -12,9 +12,11 @@ namespace DualScreenDemo chinaSongsButton.BackgroundImage = chinaNormalBackground; - nostalgicSongs = allSongs.Where(song => song.SongGenre.Contains("E1")) + /*nostalgicSongs = allSongs.Where(song => song.SongGenre.Contains("E1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("E1"); // Set the query for SQL to filter by genre "F1" + var nostalgicSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = nostalgicSongs; totalPages = (int)Math.Ceiling((double)nostalgicSongs.Count / itemsPerPage); diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.TalentShow.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.TalentShow.cs index 185c659..5018064 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.TalentShow.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.TalentShow.cs @@ -12,9 +12,11 @@ namespace DualScreenDemo chinaSongsButton.BackgroundImage = chinaNormalBackground; - talentShowSongs = allSongs.Where(song => song.SongGenre.Contains("B1")) + /*talentShowSongs = allSongs.Where(song => song.SongGenre.Contains("B1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("B1"); // Set the query for SQL to filter by genre "F1" + var talentShowSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = talentShowSongs; totalPages = (int)Math.Ceiling((double)talentShowSongs.Count / itemsPerPage); diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.VietnameseSongs.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.VietnameseSongs.cs index 4bc6d31..854e690 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.VietnameseSongs.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.VietnameseSongs.cs @@ -12,9 +12,11 @@ namespace DualScreenDemo chinaSongsButton.BackgroundImage = chinaNormalBackground; - vietnameseSongs = allSongs.Where(song => song.SongGenre.Contains("G1")) + /*vietnameseSongs = allSongs.Where(song => song.SongGenre.Contains("G1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("G1"); // Set the query for SQL to filter by genre "F1" + var vietnameseSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = vietnameseSongs; totalPages = (int)Math.Ceiling((double)vietnameseSongs.Count / itemsPerPage); diff --git a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.cs b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.cs index 846439c..72da610 100644 --- a/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.cs +++ b/PrimaryFormParts/CategorySearch/PrimaryForm.CategorySearch.cs @@ -177,9 +177,11 @@ namespace DualScreenDemo chinaSongsButton.BackgroundImage = chinaNormalBackground; - loveDuetSongs = allSongs.Where(song => song.SongGenre.Contains("A1")) + /*loveDuetSongs = allSongs.Where(song => song.SongGenre.Contains("A1")) .OrderByDescending(song => song.Plays) - .ToList(); + .ToList();*/ + string query = SetQueryforSQL("A1"); + var loveDuetSongs = SearchSongs_Mysql(query); currentPage = 0; currentSongList = loveDuetSongs; totalPages = (int)Math.Ceiling((double)loveDuetSongs.Count / itemsPerPage); @@ -248,5 +250,10 @@ namespace DualScreenDemo } + + private string SetQueryforSQL(string contains){ + string query = $"SELECT * FROM SongLibrary WHERE `分類` LIKE '%{contains}%' ORDER BY `點播次數` DESC"; + return query; + } } } \ No newline at end of file diff --git a/PrimaryFormParts/PrimaryForm.cs b/PrimaryFormParts/PrimaryForm.cs index 6fa8150..809e46c 100644 --- a/PrimaryFormParts/PrimaryForm.cs +++ b/PrimaryFormParts/PrimaryForm.cs @@ -189,13 +189,13 @@ namespace DualScreenDemo private List yingWenSongs2; private List riYuSongs2; private List hanYuSongs2; - private List loveDuetSongs; - private List talentShowSongs; - private List medleyDanceSongs; - private List ninetiesSongs; - private List nostalgicSongs; - private List chinaSongs; - private List vietnameseSongs; + //private List loveDuetSongs; + //private List talentShowSongs; + //private List medleyDanceSongs; + //private List ninetiesSongs; + //private List nostalgicSongs; + //private List chinaSongs; + //private List vietnameseSongs; public static List userRequestedSongs; public static List playedSongsHistory; public static List playStates;