🎨 del(bbs): 删除 bbsTable

This commit is contained in:
BTMuli
2023-04-25 17:18:22 +08:00
parent 35d9382643
commit 27828e3a40
5 changed files with 8 additions and 118 deletions

View File

@@ -15,7 +15,6 @@ const TGSql = {
app: initAppTable(),
achievement: initAchievementTable(),
achievementSeries: initAchievementSeriesTable(),
bbsPost: initBbsPostTable(),
},
initData: {
all: initSQLiteData(),
@@ -26,12 +25,10 @@ const TGSql = {
insert: {
achievement: insertAchievementData,
achievementSeries: insertAchievementSeriesData,
bbsPost: insertBBSPostData,
UIAF: importUIAFData,
},
update: {
achievement: updateAchievementData,
bbsPost: updateBBSPostData,
},
};
@@ -136,28 +133,6 @@ function initAchievementTable (): string[] {
`);
return sqlRes;
}
/**
* @description 初始化米游社帖子数据表
* @since Alpha v0.1.4
* @returns {string[]} sql
*/
function initBbsPostTable (): string[] {
const sqlRes = [];
// 创建米游社帖子数据表
sqlRes.push(`
CREATE TABLE IF NOT EXISTS BBSPost
(
id INTEGER PRIMARY KEY,
created TEXT DEFAULT NULL,
modified TEXT DEFAULT NULL,
isRead BOOLEAN DEFAULT 0,
updated TEXT DEFAULT NULL
);
`);
return sqlRes;
}
/**
* @description 初始化数据库表
* @since Alpha v0.1.4
@@ -168,7 +143,6 @@ function initSQLiteTable (): string[] {
sqlRes.push(...initAppTable());
sqlRes.push(...initAchievementSeriesTable());
sqlRes.push(...initAchievementTable());
sqlRes.push(...initBbsPostTable());
return sqlRes;
}
@@ -192,11 +166,6 @@ async function initAppData (): Promise<string[]> {
INSERT INTO AppData (key, value, updated)
VALUES ('dataUpdated', '${dataUpdated}', datetime('now', 'localtime'));
`);
// 初始化米游社帖子数据更新时间
sqlRes.push(`
INSERT INTO AppData (key, value, updated)
VALUES ('bbsPostLine', datetime('now', 'localtime'), datetime('now', 'localtime'));
`);
return sqlRes;
}
@@ -279,25 +248,6 @@ function insertAchievementData (data: BTMuli.Genshin.Achievement): string {
return sql;
}
/**
* @description 插入数据-米游社帖子
* @since Alpha v0.1.4
* @param {BTMuli.SQLite.BBSPost} data
* @param {string} bbsPostLine 米游社帖子数据更新时间
* @returns {string} sql
*/
function insertBBSPostData (data: BTMuli.SQLite.BBSPost, bbsPostLine: string): string {
// 将 bbsPostLine 与 data.created 跟 data.modified 比较,取最新的时间
const isRead = data.created <= bbsPostLine && data.modified <= bbsPostLine;
const sql = `
INSERT INTO BBSPost (id, created, modified, isRead, updated)
VALUES (${data.id}, '${data.created}', '${data.modified}', ${isRead ? 1 : 0}, datetime('now', 'localtime'))
ON CONFLICT(id) DO UPDATE
SET modified = '${data.modified}' WHERE id = ${data.id} AND modified != '${data.modified}';
`;
return sql;
}
/**
* @description 更新数据-成就
* @since Alpha v0.1.4
@@ -323,31 +273,6 @@ function updateAchievementData (data: BTMuli.Genshin.Achievement): string {
return sql;
}
/**
* @description 更新数据-米游社帖子
* @since Alpha v0.1.4
* @param {BTMuli.SQLite.BBSPost} data
* @param {boolean} isRead 是否已读
* @returns {string} sql
*/
function updateBBSPostData (data: BTMuli.SQLite.BBSPost, isRead: boolean = false): string {
let sql;
if (isRead) {
sql = `
UPDATE BBSPost
SET isRead = 1, updated = datetime('now', 'localtime')
WHERE id = ${data.id};
`;
} else {
sql = `
UPDATE BBSPost
SET modified = '${data.modified}', isRead = 0, updated = datetime('now', 'localtime')
WHERE id = ${data.id} AND OLD.modified != '${data.modified}';
`;
}
return sql;
}
/**
* @description 导入UIAF数据
* @since Alpha v0.1.4