mirror of
https://github.com/BTMuli/TeyvatGuide.git
synced 2025-12-13 09:28:14 +08:00
🎨 格式化代码
This commit is contained in:
@@ -110,11 +110,32 @@ class TGSqlite {
|
|||||||
const sql = `
|
const sql = `
|
||||||
INSERT INTO AppData (key, value, updated)
|
INSERT INTO AppData (key, value, updated)
|
||||||
VALUES ('cookie', '${cookie}', datetime('now', 'localtime'))
|
VALUES ('cookie', '${cookie}', datetime('now', 'localtime'))
|
||||||
ON CONFLICT(key) DO UPDATE SET value = '${cookie}', updated = datetime('now', 'localtime');`;
|
ON CONFLICT(key) DO UPDATE SET value = '${cookie}',updated = datetime('now', 'localtime');
|
||||||
|
`;
|
||||||
await db.execute(sql);
|
await db.execute(sql);
|
||||||
await db.close();
|
await db.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description 获取 cookie
|
||||||
|
* @memberof TGSqlite
|
||||||
|
* @since Alpha v0.2.0
|
||||||
|
* @returns {Promise<string>}
|
||||||
|
*/
|
||||||
|
public async getCookie (): Promise<string> {
|
||||||
|
const db = await Database.load(this.dbPath);
|
||||||
|
const sql = "SELECT value FROM AppData WHERE key='cookie';";
|
||||||
|
const cookieSelect: Array<{ value: string }> = await db.select(sql);
|
||||||
|
await db.close();
|
||||||
|
const cookieGet = JSON.parse(cookieSelect[0].value);
|
||||||
|
let res = "";
|
||||||
|
const cookieKeys = Object.keys(cookieGet);
|
||||||
|
for (const key of cookieKeys) {
|
||||||
|
if (cookieGet[key] !== "") res += `${key}=${cookieGet[key]};`;
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description 保存 appData
|
* @description 保存 appData
|
||||||
* @memberof TGSqlite
|
* @memberof TGSqlite
|
||||||
@@ -128,7 +149,8 @@ class TGSqlite {
|
|||||||
const sql = `
|
const sql = `
|
||||||
INSERT INTO AppData (key, value, updated)
|
INSERT INTO AppData (key, value, updated)
|
||||||
VALUES ('${key}', '${value}', datetime('now', 'localtime'))
|
VALUES ('${key}', '${value}', datetime('now', 'localtime'))
|
||||||
ON CONFLICT(key) DO UPDATE SET value = '${value}', updated = datetime('now', 'localtime');`;
|
ON CONFLICT(key) DO UPDATE SET value = '${value}',updated = datetime('now', 'localtime');
|
||||||
|
`;
|
||||||
await db.execute(sql);
|
await db.execute(sql);
|
||||||
await db.close();
|
await db.close();
|
||||||
}
|
}
|
||||||
@@ -151,23 +173,23 @@ class TGSqlite {
|
|||||||
/**
|
/**
|
||||||
* @description 检测数据库完整性
|
* @description 检测数据库完整性
|
||||||
* @memberof TGSqlite
|
* @memberof TGSqlite
|
||||||
* @since Alpha v0.1.4
|
* @since Alpha v0.2.0
|
||||||
* @returns {Promise<boolean>}
|
* @returns {Promise<boolean>}
|
||||||
*/
|
*/
|
||||||
public async check (): Promise<boolean> {
|
public async check (): Promise<boolean> {
|
||||||
const db = await Database.load(this.dbPath);
|
const db = await Database.load(this.dbPath);
|
||||||
let isVertified = false;
|
let isVerified = false;
|
||||||
// 检测数据表是否都存在
|
// 检测数据表是否都存在
|
||||||
const sqlT = "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;";
|
const sqlT = "SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;";
|
||||||
const res: Array<{ name: string }> = await db.select(sqlT);
|
const res: Array<{ name: string }> = await db.select(sqlT);
|
||||||
// 考虑到 sqlite_sequence 表,所以需要 +1
|
// 考虑到 sqlite_sequence 表,所以需要 +1
|
||||||
if (res.length === this.tables.length + 1) {
|
if (res.length === this.tables.length + 1) {
|
||||||
if (this.tables.every((item) => res.map((i) => i.name).includes(item))) {
|
if (this.tables.every((item) => res.map((i) => i.name).includes(item))) {
|
||||||
isVertified = true;
|
isVerified = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
await db.close();
|
await db.close();
|
||||||
return isVertified;
|
return isVerified;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -210,7 +232,7 @@ class TGSqlite {
|
|||||||
*/
|
*/
|
||||||
public async getAchievementSeries (): Promise<BTMuli.SQLite.AchievementSeries[]> {
|
public async getAchievementSeries (): Promise<BTMuli.SQLite.AchievementSeries[]> {
|
||||||
const db = await Database.load(this.dbPath);
|
const db = await Database.load(this.dbPath);
|
||||||
const sql = "SELECT * FROM AchievementSeries ORDER BY `order` ASC;";
|
const sql = "SELECT * FROM AchievementSeries ORDER BY `order`;";
|
||||||
const res: BTMuli.SQLite.AchievementSeries[] = await db.select(sql);
|
const res: BTMuli.SQLite.AchievementSeries[] = await db.select(sql);
|
||||||
await db.close();
|
await db.close();
|
||||||
return res;
|
return res;
|
||||||
@@ -225,7 +247,10 @@ class TGSqlite {
|
|||||||
*/
|
*/
|
||||||
public async getNameCard (seriesId: number): Promise<BTMuli.SQLite.NameCard> {
|
public async getNameCard (seriesId: number): Promise<BTMuli.SQLite.NameCard> {
|
||||||
const db = await Database.load(this.dbPath);
|
const db = await Database.load(this.dbPath);
|
||||||
const sql = `SELECT * FROM NameCard WHERE name=(SELECT nameCard FROM AchievementSeries WHERE id=${seriesId});`;
|
const sql = `SELECT *
|
||||||
|
FROM NameCard
|
||||||
|
WHERE name = (SELECT nameCard FROM AchievementSeries WHERE id = ${seriesId});
|
||||||
|
`;
|
||||||
const res: BTMuli.SQLite.NameCard[] = await db.select(sql);
|
const res: BTMuli.SQLite.NameCard[] = await db.select(sql);
|
||||||
await db.close();
|
await db.close();
|
||||||
return res[0];
|
return res[0];
|
||||||
@@ -242,9 +267,9 @@ class TGSqlite {
|
|||||||
const db = await Database.load(this.dbPath);
|
const db = await Database.load(this.dbPath);
|
||||||
let sql;
|
let sql;
|
||||||
if (seriesId) {
|
if (seriesId) {
|
||||||
sql = `SELECT * FROM Achievements WHERE series=${seriesId} ORDER BY isCompleted ASC, \`order\` ASC;`;
|
sql = `SELECT * FROM Achievements WHERE series=${seriesId} ORDER BY isCompleted, \`order\`;`;
|
||||||
} else {
|
} else {
|
||||||
sql = "SELECT * FROM Achievements ORDER BY isCompleted ASC, `order` ASC;";
|
sql = "SELECT * FROM Achievements ORDER BY isCompleted, `order`;";
|
||||||
}
|
}
|
||||||
const res: BTMuli.SQLite.Achievements[] = await db.select(sql);
|
const res: BTMuli.SQLite.Achievements[] = await db.select(sql);
|
||||||
await db.close();
|
await db.close();
|
||||||
@@ -277,9 +302,14 @@ class TGSqlite {
|
|||||||
let sql;
|
let sql;
|
||||||
if (keyword.startsWith("v")) {
|
if (keyword.startsWith("v")) {
|
||||||
const version = keyword.replace("v", "");
|
const version = keyword.replace("v", "");
|
||||||
sql = `SELECT * FROM Achievements WHERE version LIKE '%${version}%' ORDER BY isCompleted ASC, \`order\` ASC;`;
|
sql = `SELECT * FROM Achievements WHERE version LIKE '%${version}%' ORDER BY isCompleted, \`order\`;`;
|
||||||
} else {
|
} else {
|
||||||
sql = `SELECT * FROM Achievements WHERE name LIKE '%${keyword}%' OR description LIKE '%${keyword}%' ORDER BY isCompleted ASC, \`order\` ASC;`;
|
sql = `SELECT *
|
||||||
|
FROM Achievements
|
||||||
|
WHERE name LIKE '%${keyword}%'
|
||||||
|
OR description LIKE '%${keyword}%'
|
||||||
|
ORDER BY isCompleted, \`order\`;
|
||||||
|
`;
|
||||||
}
|
}
|
||||||
const res: BTMuli.SQLite.Achievements[] = await db.select(sql);
|
const res: BTMuli.SQLite.Achievements[] = await db.select(sql);
|
||||||
await db.close();
|
await db.close();
|
||||||
|
|||||||
Reference in New Issue
Block a user