Search by userNotes, notes in playerList and friendsList

This commit is contained in:
Natsumi
2025-06-09 09:07:52 +12:00
parent 98c3e43561
commit 5b7da6a91f
8 changed files with 209 additions and 15 deletions

View File

@@ -43,13 +43,7 @@ class Database {
`CREATE TABLE IF NOT EXISTS ${Database.userPrefix}_avatar_history (avatar_id TEXT PRIMARY KEY, created_at TEXT, time INTEGER)`
);
await sqliteService.executeNonQuery(
`CREATE TABLE IF NOT EXISTS memos (user_id TEXT PRIMARY KEY, edited_at TEXT, memo TEXT)`
);
await sqliteService.executeNonQuery(
`CREATE TABLE IF NOT EXISTS world_memos (world_id TEXT PRIMARY KEY, edited_at TEXT, memo TEXT)`
);
await sqliteService.executeNonQuery(
`CREATE TABLE IF NOT EXISTS avatar_memos (avatar_id TEXT PRIMARY KEY, edited_at TEXT, memo TEXT)`
`CREATE TABLE IF NOT EXISTS ${Database.userPrefix}_notes (user_id TEXT PRIMARY KEY, display_name TEXT, note TEXT, created_at TEXT)`
);
}
@@ -87,6 +81,15 @@ class Database {
await sqliteService.executeNonQuery(
`CREATE TABLE IF NOT EXISTS favorite_avatar (id INTEGER PRIMARY KEY, created_at TEXT, avatar_id TEXT, group_name TEXT)`
);
await sqliteService.executeNonQuery(
`CREATE TABLE IF NOT EXISTS memos (user_id TEXT PRIMARY KEY, edited_at TEXT, memo TEXT)`
);
await sqliteService.executeNonQuery(
`CREATE TABLE IF NOT EXISTS world_memos (world_id TEXT PRIMARY KEY, edited_at TEXT, memo TEXT)`
);
await sqliteService.executeNonQuery(
`CREATE TABLE IF NOT EXISTS avatar_memos (avatar_id TEXT PRIMARY KEY, edited_at TEXT, memo TEXT)`
);
}
async getFeedDatabase() {
@@ -2846,6 +2849,43 @@ class Database {
);
return result;
}
// user notes
async addUserNote(note) {
sqliteService.executeNonQuery(
`INSERT OR REPLACE INTO ${Database.userPrefix}_notes (user_id, display_name, note, created_at) VALUES (@user_id, @display_name, @note, @created_at)`,
{
'@user_id': note.userId,
'@display_name': note.displayName,
'@note': note.note,
'@created_at': note.createdAt
}
);
}
async getAllUserNotes() {
var data = [];
await sqliteService.execute((dbRow) => {
var row = {
userId: dbRow[0],
displayName: dbRow[1],
note: dbRow[2],
createdAt: dbRow[3]
};
data.push(row);
}, `SELECT user_id, display_name, note, created_at FROM ${Database.userPrefix}_notes`);
return data;
}
async deleteUserNote(userId) {
sqliteService.executeNonQuery(
`DELETE FROM ${Database.userPrefix}_notes WHERE user_id = @userId`,
{
'@userId': userId
}
);
}
}
var self = new Database();