完成天赋数据获取 & 数据合并

This commit is contained in:
BTMuli
2023-06-29 09:18:57 +08:00
parent 2bf0b2db95
commit 1f1c25c0bd
6 changed files with 104 additions and 20 deletions

View File

@@ -2,7 +2,7 @@
* @file plugins Sqlite index.ts
* @description Sqlite 数据库操作类
* @author BTMuli<bt-muli@outlook.com>
* @since Alpha v0.2.0
* @since Alpha v0.2.1
*/
// tauri
@@ -433,6 +433,27 @@ class Sqlite {
await db.close();
}
/**
* @description 保存用户角色天赋数据
* @since Alpha v0.2.1
* @param {string} uid 用户 uid
* @param {number} cid 角色 ID
* @param {TGApp.Sqlite.Character.RoleTalent[]} data 角色天赋数据
* @returns {Promise<void>}
*/
public async saveUserCharacterTalent(
uid: string,
cid: number,
data: TGApp.Sqlite.Character.RoleTalent[],
): Promise<void> {
const db = await Database.load(this.dbPath);
const sql = `UPDATE UserCharacters
SET talent = '${JSON.stringify(data)}', updated = datetime('now', 'localtime')
WHERE uid = '${uid}' AND cid = ${cid}`;
await db.execute(sql);
await db.close();
}
/**
* @description 获取用户角色数据
* @since Alpha v0.2.0

View File

@@ -2,7 +2,7 @@
* @file plugins Sqlite sql insertData.ts
* @description Sqlite 插入数据 sql 语句
* @author BTMuli <bt-muli@outlook.com>
* @since Alpha v0.2.0
* @since Alpha v0.2.1
*/
// utils
@@ -237,7 +237,7 @@ export function insertRecordData(data: TGApp.Game.Record.FullData, uid: string):
/**
* @description 插入用户角色数据
* @since Alpha v0.2.0
* @since Alpha v0.2.1
* @param {string} uid 用户 UID
* @param {TGApp.User.Character.Item[]} data 角色数据
* @returns {string} sql
@@ -247,10 +247,10 @@ export function insertRoleData(uid: string, data: TGApp.Game.Character.ListItem[
const role = transUserRoles(item);
return `
INSERT INTO UserCharacters (uid, cid, name, img, name, fetter, level, element, star, weapon, reliquary,
constellation, activeConstellation, costume, talent, updated)
constellation, activeConstellation, costume, updated)
VALUES (${uid}, ${role.cid}, '${role.name}', '${role.img}', '${role.name}', ${role.fetter}, ${role.level},
'${role.element}', ${role.star}, '${role.weapon}', '${role.reliquary}', '${role.constellation}',
${role.activeConstellation}, '${role.costume}', '${role.talent}', datetime('now', 'localtime'))
${role.activeConstellation}, '${role.costume}', datetime('now', 'localtime'))
ON CONFLICT(uid, cid) DO UPDATE
SET name = '${role.name}',
img = '${role.img}',
@@ -264,7 +264,6 @@ export function insertRoleData(uid: string, data: TGApp.Game.Character.ListItem[
constellation = '${role.constellation}',
activeConstellation = ${role.activeConstellation},
costume = '${role.costume}',
talent = '${role.talent}',
updated = datetime('now', 'localtime');
`;
});