mirror of
https://github.com/BTMuli/TeyvatGuide.git
synced 2026-03-28 05:59:46 +08:00
🔧 更新 AppData 类型定义,简化插入数据逻辑
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
/**
|
||||
* Sqlite 数据库操作类
|
||||
* @since Beta v0.9.5
|
||||
* @since Beta v0.9.9
|
||||
*/
|
||||
|
||||
import showSnackbar from "@comp/func/snackbar.js";
|
||||
@@ -104,33 +104,25 @@ class Sqlite {
|
||||
return localVersion !== dbVersion;
|
||||
}
|
||||
|
||||
/**
|
||||
* 插入应用数据
|
||||
* @since Alpha v0.2.0
|
||||
* @param key - 键
|
||||
* @param value - 值
|
||||
* @returns sql
|
||||
*/
|
||||
insertAppData(key: string, value: string): string {
|
||||
return `
|
||||
INSERT INTO AppData (key, value, updated)
|
||||
VALUES ('${key}', '${value}', datetime('now', 'localtime'))
|
||||
ON CONFLICT(key) DO UPDATE SET value = '${value}',
|
||||
updated = datetime('now', 'localtime');
|
||||
`;
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存 appData
|
||||
* @since Beta v0.3.3
|
||||
* @since Beta v0.9.9
|
||||
* @param key - 键
|
||||
* @param value - 值
|
||||
* @returns 无返回值
|
||||
*/
|
||||
public async saveAppData(key: string, value: string): Promise<void> {
|
||||
const db = await this.getDB();
|
||||
const sql = this.insertAppData(key, value);
|
||||
await db.execute(sql);
|
||||
await db.execute(
|
||||
`
|
||||
INSERT INTO AppData (key, value, updated)
|
||||
VALUES ($1, $2, datetime('now', 'localtime'))
|
||||
ON CONFLICT(key)
|
||||
DO UPDATE SET value = $2,
|
||||
updated = datetime('now', 'localtime');
|
||||
`,
|
||||
[key, value],
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
24
src/types/Sqlite/AppData.d.ts
vendored
24
src/types/Sqlite/AppData.d.ts
vendored
@@ -1,34 +1,16 @@
|
||||
/**
|
||||
* AppData 表类型定义文件
|
||||
* @since Beta v0.4.1
|
||||
* @since Beta v0.9.9
|
||||
*/
|
||||
|
||||
declare namespace TGApp.Sqlite.AppData {
|
||||
/**
|
||||
* AppData 表键值
|
||||
* @since Beta v0.4.1
|
||||
* @TODO 枚举
|
||||
*/
|
||||
enum DBKey {
|
||||
/** 应用版本 */
|
||||
APP_VERSION = "appVersion",
|
||||
/** 数据库更新时间 */
|
||||
DATA_UPDATED = "dataUpdated",
|
||||
/** 当前用户 Cookie */
|
||||
COOKIE = "cookie",
|
||||
/** 设备信息 */
|
||||
DEVICE_INFO = "deviceInfo",
|
||||
/** 数据目录 */
|
||||
USER_DIR = "userDir",
|
||||
}
|
||||
|
||||
/**
|
||||
* AppData 行数据
|
||||
* @since Beta v0.3.3
|
||||
* @since Beta v0.9.9
|
||||
*/
|
||||
type Item = {
|
||||
/** 键 */
|
||||
key: DBKey;
|
||||
key: string;
|
||||
/** 值 */
|
||||
value: string;
|
||||
/** 更新时间 */
|
||||
|
||||
Reference in New Issue
Block a user