🎨 GameAccount 字段变更,AppData 初始添加 cookie 项

This commit is contained in:
BTMuli
2023-05-22 16:14:25 +08:00
parent 1033aad7f3
commit b6ce309455
3 changed files with 13 additions and 68 deletions

2
src/types/Game.d.ts vendored
View File

@@ -8,7 +8,7 @@
declare namespace BTMuli.User.Game { declare namespace BTMuli.User.Game {
/** /**
* @description 游戏账号 * @description 游戏账号
* @see TGRequest.User.byCookie.getGameAccounts * @see TGRequest.User.byCookie.getAccounts
* @since Alpha v0.2.0 * @since Alpha v0.2.0
* @property {string} game_biz 游戏 biz例如 hk4e_cn * @property {string} game_biz 游戏 biz例如 hk4e_cn
* @property {string} game_uid 游戏 uid * @property {string} game_uid 游戏 uid

View File

@@ -40,16 +40,16 @@ function initGameAccountTable (): string[] {
sqlRes.push(` sqlRes.push(`
CREATE TABLE IF NOT EXISTS GameAccount CREATE TABLE IF NOT EXISTS GameAccount
( (
gameBiz TEXT NOT NULL, game_biz TEXT NOT NULL,
gameUid TEXT NOT NULL, game_uid TEXT NOT NULL,
isChosen BOOLEAN DEFAULT 0, is_chosen BOOLEAN DEFAULT 0,
isOfficial BOOLEAN DEFAULT 0, is_official BOOLEAN DEFAULT 0,
level INTEGER DEFAULT 0, level INTEGER DEFAULT 0,
nickname TEXT DEFAULT NULL, nickname TEXT DEFAULT NULL,
region TEXT DEFAULT NULL, region TEXT DEFAULT NULL,
regionName TEXT DEFAULT NULL, region_name TEXT DEFAULT NULL,
updated TEXT DEFAULT NULL, updated TEXT DEFAULT NULL,
PRIMARY KEY (gameBiz, gameUid) PRIMARY KEY (game_biz, game_uid)
); );
`); `);
return sqlRes; return sqlRes;
@@ -191,6 +191,12 @@ async function initAppData (): Promise<string[]> {
VALUES ('dataUpdated', '${dataUpdated}', datetime('now', 'localtime')) VALUES ('dataUpdated', '${dataUpdated}', datetime('now', 'localtime'))
ON CONFLICT(key) DO UPDATE SET value = '${dataUpdated}', updated = datetime('now', 'localtime'); ON CONFLICT(key) DO UPDATE SET value = '${dataUpdated}', updated = datetime('now', 'localtime');
`); `);
// 初始化 cookie
sqlRes.push(`
INSERT INTO AppData (key, value, updated)
VALUES ('cookie', '{}', datetime('now', 'localtime'))
ON CONFLICT(key) DO NOTHING;
`);
return sqlRes; return sqlRes;
} }

View File

@@ -69,54 +69,6 @@ class TGSqlite {
return res; return res;
} }
/**
* @description 封装-根据 table keys 获取数据
* @memberOf TGSqlite
* @since Alpha v0.2.0
* @param {string} table 表名
* @param {string} keyName 键名
* @param {string} keyValue 键值
* @returns {Promise<unknown[]>} 数据
*/
public async getDataByKey (table: string, keyName: string, keyValue: string): Promise<unknown[]> {
const db = await Database.load(this.dbPath);
const sql = `SELECT * FROM ${table} WHERE ${keyName}='${keyValue}';`;
const res: unknown[] = await db.select(sql);
await db.close();
return res;
}
/**
* @description 封装-保存数据
* @memberOf TGSqlite
* @since Alpha v0.2.0
* @param {string} sql sql语句
* @returns {Promise<void>}
*/
public async saveData (sql: string): Promise<void> {
const db = await Database.load(this.dbPath);
await db.execute(sql);
await db.close();
}
/**
* @description 输入 cookie
* @memberOf TGSqlite
* @since Alpha v0.2.0
* @param {string} cookie
* @returns {Promise<void>}
*/
public async inputCookie (cookie: string): Promise<void> {
const db = await Database.load(this.dbPath);
const sql = `
INSERT INTO AppData (key, value, updated)
VALUES ('cookie', '${cookie}', datetime('now', 'localtime'))
ON CONFLICT(key) DO UPDATE SET value = '${cookie}',updated = datetime('now', 'localtime');
`;
await db.execute(sql);
await db.close();
}
/** /**
* @description 获取 cookie * @description 获取 cookie
* @memberOf TGSqlite * @memberOf TGSqlite
@@ -131,19 +83,6 @@ class TGSqlite {
return JSON.parse(res[0].value); return JSON.parse(res[0].value);
} }
/**
* @description 获取 cookie 某项值
* @memberOf TGSqlite
* @since Alpha v0.2.0
* @param {string} itemKey 项名
* @returns {Promise<string>} 项值
*/
public async getCookieItem (itemKey: string): Promise<string> {
const cookie = await this.getCookie();
if (Object.keys(cookie).includes(itemKey)) return cookie[itemKey];
return "";
}
/** /**
* @description 保存 appData * @description 保存 appData
* @memberOf TGSqlite * @memberOf TGSqlite