From 3e30e7130c69fab0c252321e9a040462823f1e2a Mon Sep 17 00:00:00 2001 From: jasonchenwork Date: Thu, 15 May 2025 16:53:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=BB=9E=E6=92=AD=E6=AC=A1?= =?UTF-8?q?=E6=95=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DBObj/SongListManager.cs | 29 +++++++++++++++++++++++++++++ OverlayFormObj/OverlayForm.cs | 1 + 2 files changed, 30 insertions(+) diff --git a/DBObj/SongListManager.cs b/DBObj/SongListManager.cs index ca8b105..42ebe39 100644 --- a/DBObj/SongListManager.cs +++ b/DBObj/SongListManager.cs @@ -468,6 +468,35 @@ namespace DBObj } } + public void AddSongCount(string songNumber) + { + string databaseFileName = "KSongDatabase.db"; + string databasePath = Path.Combine(Application.StartupPath, databaseFileName); + string connectionString = String.Format("Data Source={0};Version=3;", databasePath); + + using (var connection = new SQLiteConnection(connectionString)) + { + try + { + connection.Open(); + string sql = "UPDATE SongLibrary SET `點播次數`= `點播次數` + 1 WHERE `歌曲編號` = @songNumber"; + using (var command = new SQLiteCommand(sql, connection)) + { + command.Parameters.AddWithValue("@songNumber", songNumber); + command.ExecuteNonQuery(); + } + connection.Close(); + Console.WriteLine("Success to add song counts: " + sql); + + } + catch (Exception ex) + { + Console.WriteLine("Failed to add song counts: " + ex.Message); + } + } + } + + public List SearchSongsBySinger(string keyword) { diff --git a/OverlayFormObj/OverlayForm.cs b/OverlayFormObj/OverlayForm.cs index f8ef67a..0a2342a 100644 --- a/OverlayFormObj/OverlayForm.cs +++ b/OverlayFormObj/OverlayForm.cs @@ -1511,6 +1511,7 @@ private void DisplaySongsInLanguage(string language, Category category) VideoPlayerForm.Instance.SetPlayingSongList(PrimaryForm.userRequestedSongs); PrimaryForm.currentSongIndexInHistory += 1; } + SongListManager.Instance.AddSongCount(songData.SongNumber); VideoPlayerForm.Instance.UpdateNextSongFromPlaylist(); PrimaryForm.PrintPlayingSongList(); }