优化代码逻辑

pull/1686/head
lyswhut 2023-10-03 15:10:48 +08:00
parent ac7daa70f7
commit d7816729d0
4 changed files with 19 additions and 11 deletions

View File

@ -82,6 +82,7 @@ declare namespace LX {
interface MusicInfoOtherSource extends Omit<MusicInfoOnline, 'listId'> {
source_id: string
order: number
}
}

View File

@ -1,5 +1,5 @@
import type Database from 'better-sqlite3'
import { DB_VERSION } from './tables'
import tables, { DB_VERSION } from './tables'
// const migrateV1 = (db: Database.Database) => {
// const sql = `
@ -30,16 +30,9 @@ const migrateV1 = (db: Database.Database) => {
// 修复 v2.4.0 的默认数据库版本号不对的问题
const existsTable = db.prepare('SELECT name FROM "main".sqlite_master WHERE type=\'table\' AND name=\'dislike_list\';').get()
if (!existsTable) {
const sql = `
CREATE TABLE "dislike_list" (
"type" TEXT NOT NULL,
"content" TEXT NOT NULL,
"meta" TEXT
);
`
const sql = tables.get('dislike_list') as string
db.exec(sql)
}
db.prepare('UPDATE "main"."db_info" SET "field_value"=@value WHERE "field_name"=@name').run({ name: 'version', value: DB_VERSION })
}
export default (db: Database.Database) => {
@ -50,6 +43,7 @@ export default (db: Database.Database) => {
switch (version) {
case '1':
migrateV1(db)
db.prepare('UPDATE "main"."db_info" SET "field_value"=@value WHERE "field_name"=@name').run({ name: 'version', value: DB_VERSION })
break
}
}

View File

@ -24,7 +24,7 @@ const toDBMusicInfo = (id: string, musicInfos: LX.Music.MusicInfo[]): LX.DBServi
* @returns
*/
export const getMusicInfoOtherSource = (id: string): LX.Music.MusicInfoOnline[] => {
const list = queryMusicInfo(id).map(info => {
const list = queryMusicInfo(id).sort((a, b) => a.order - b.order).map(info => {
return {
id: info.id,
name: info.name,

View File

@ -101,7 +101,20 @@
// 'table_download_list',
// ]
const tables = new Map<string, string>()
type Tables = 'db_info'
| 'my_list'
| 'my_list_music_info'
| 'index_my_list_music_info'
| 'my_list_music_info_order'
| 'index_my_list_music_info_order'
| 'music_info_other_source'
| 'index_music_info_other_source'
| 'lyric'
| 'music_url'
| 'download_list'
| 'dislike_list'
const tables = new Map<Tables, string>()
tables.set('db_info', `