Skip to content

Commit 6d9d4f9

Browse files
author
hezhilong
committed
V1.0
1 parent ae72cc4 commit 6d9d4f9

File tree

4 files changed

+16
-10
lines changed

4 files changed

+16
-10
lines changed

FishFM/Assets/avalonia-logo.ico

0 Bytes
Binary file not shown.

FishFM/FishFM.csproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
<CFBundleSignature>????</CFBundleSignature>
1717
<CFBundleExecutable>FishFM</CFBundleExecutable>
1818
<CFBundleIconFile>FishFM.icns</CFBundleIconFile>
19+
<CFBundleShortVersionString>1.0</CFBundleShortVersionString>
1920
<NSPrincipalClass>NSApplication</NSPrincipalClass>
2021
<NSHighResolutionCapable>true</NSHighResolutionCapable>
2122
</PropertyGroup>
@@ -54,5 +55,8 @@
5455
<None Update="libbass.so">
5556
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
5657
</None>
58+
<None Update="FishFM.icns">
59+
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
60+
</None>
5761
</ItemGroup>
5862
</Project>

FishFM/FishFM.icns

60.3 KB
Binary file not shown.

FishFM/Helper/DbHelper.cs

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using System.Collections.Generic;
3+
using System.IO;
34
using FishFM.Models;
45
using LiteDB;
56
using Newtonsoft.Json;
@@ -10,7 +11,8 @@ public class DbHelper
1011
{
1112
private const string FmSongTable = "t_fm_songs";
1213
private const string LikeTable = "t_liked_songs";
13-
private static Random Rdm = new Random();
14+
private static readonly string DbPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "MyFM.db");
15+
private static readonly Random Rdm = new Random();
1416

1517
public static bool UpsertSongs(List<SongResult> list, string date, string type)
1618
{
@@ -19,14 +21,14 @@ public static bool UpsertSongs(List<SongResult> list, string date, string type)
1921
{
2022
dbSongs.Add(songResult.ToDbSong(type, date));
2123
}
22-
using var db = new LiteDatabase("./MyFM.db");
24+
using var db = new LiteDatabase(DbPath);
2325
var col = db.GetCollection<DbSong>(FmSongTable);
2426
return col.Upsert(dbSongs) >= 0;
2527
}
2628

2729
public static List<SongResult> GetSongs(string date, string type)
2830
{
29-
using var db = new LiteDatabase("./MyFM.db");
31+
using var db = new LiteDatabase(DbPath);
3032
var col = db.GetCollection<DbSong>(FmSongTable);
3133
var list = col.Query()
3234
.Where(s => s.FmType == type && (string.IsNullOrEmpty(date) || s.AddDate == date)).ToList();
@@ -44,7 +46,7 @@ public static List<SongResult> GetSongs(string date, string type)
4446

4547
public static SongResult? GetLastSong(string type)
4648
{
47-
using var db = new LiteDatabase("./MyFM.db");
49+
using var db = new LiteDatabase(DbPath);
4850
var col = db.GetCollection<DbSong>(FmSongTable);
4951
var lastSong = col.Query()
5052
.Where(s => s.FmType == type).OrderByDescending(s=>s.AddDate).Limit(1).FirstOrDefault();
@@ -57,7 +59,7 @@ public static List<SongResult> GetSongs(string date, string type)
5759

5860
public static List<SongResult> GetSongsByIds(List<string> ids)
5961
{
60-
using var db = new LiteDatabase("./MyFM.db");
62+
using var db = new LiteDatabase(DbPath);
6163
var col = db.GetCollection<DbSong>(FmSongTable);
6264
var list = col.Query()
6365
.Where(s => ids.Contains(s.Id)).ToList();
@@ -75,7 +77,7 @@ public static List<SongResult> GetSongsByIds(List<string> ids)
7577

7678
public static List<SongResult> GetRandomSongs()
7779
{
78-
using var db = new LiteDatabase("./MyFM.db");
80+
using var db = new LiteDatabase(DbPath);
7981
var col = db.GetCollection<DbSong>(FmSongTable);
8082
var offset = Rdm.Next(0, col.Count());
8183
var list = col.Query()
@@ -94,14 +96,14 @@ public static List<SongResult> GetRandomSongs()
9496

9597
public static void LikeSong(SongResult songResult)
9698
{
97-
using var db = new LiteDatabase("./MyFM.db");
99+
using var db = new LiteDatabase(DbPath);
98100
var col = db.GetCollection<LikedSong>(LikeTable);
99101
col.Upsert(new LikedSong(){Id = songResult.ToDbSong("","").Id});
100102
}
101103

102104
public static void DislikeSong(SongResult songResult)
103105
{
104-
using var db = new LiteDatabase("./MyFM.db");
106+
using var db = new LiteDatabase(DbPath);
105107
var col = db.GetCollection<LikedSong>(LikeTable);
106108
col.Delete(songResult.ToDbSong("","").Id);
107109
}
@@ -112,14 +114,14 @@ public static bool IsSongLiked(SongResult? songResult)
112114
{
113115
return false;
114116
}
115-
using var db = new LiteDatabase("./MyFM.db");
117+
using var db = new LiteDatabase(DbPath);
116118
var col = db.GetCollection<LikedSong>(LikeTable);
117119
return col.Exists(x=>x.Id == songResult.ToDbSong("","").Id);
118120
}
119121

120122
public static List<string> GetAllLikedSong()
121123
{
122-
using var db = new LiteDatabase("./MyFM.db");
124+
using var db = new LiteDatabase(DbPath);
123125
var col = db.GetCollection<LikedSong>(LikeTable);
124126
return col.Query().Select(x =>x.Id).ToList();
125127
}

0 commit comments

Comments
 (0)