feat: 修復並正式支持聯絡人
* wip(ui): 增刪
This commit is contained in:
@@ -18,7 +18,7 @@ export default class UserApi extends BaseApi {
|
||||
}
|
||||
try {
|
||||
const access_token = TokenManager.decode(args.access_token as string)
|
||||
|
||||
|
||||
if (access_token.expired_time < Date.now()) return {
|
||||
msg: "登錄令牌失效",
|
||||
code: 401,
|
||||
@@ -135,7 +135,7 @@ export default class UserApi extends BaseApi {
|
||||
msg: "參數缺失",
|
||||
code: 400,
|
||||
}
|
||||
|
||||
|
||||
const token = TokenManager.decode(args.token as string)
|
||||
if (!this.checkToken(token)) return {
|
||||
code: 401,
|
||||
@@ -144,9 +144,9 @@ export default class UserApi extends BaseApi {
|
||||
|
||||
const user = User.findById(token.author)
|
||||
if (args.nickname != null)
|
||||
user!.setNickName(args.nickname as string)
|
||||
user!.setNickName(args.nickname as string)
|
||||
if (args.username != null)
|
||||
user!.setUserName(args.username as string)
|
||||
user!.setUserName(args.username as string)
|
||||
|
||||
return {
|
||||
msg: "成功",
|
||||
@@ -192,14 +192,21 @@ export default class UserApi extends BaseApi {
|
||||
msg: "令牌無效",
|
||||
}
|
||||
|
||||
const user = User.findById(token.author)
|
||||
const user = User.findById(token.author) as User
|
||||
const contacts = user.getContactsList()
|
||||
contacts.push(ChatPrivate.getChatIdByUsersId(token.author, token.author))
|
||||
|
||||
return {
|
||||
msg: "成功",
|
||||
code: 200,
|
||||
data: {
|
||||
contacts: user!.getContactsList().map((id) => {
|
||||
title: Chat.findById(id)?.bean.title
|
||||
contacts_list: contacts.map((id) => {
|
||||
const chat = Chat.findById(id)
|
||||
return {
|
||||
id,
|
||||
title: chat?.getTitle(user) || "未知",
|
||||
avatar: chat?.getAvatarFileHash(user) ? "uploaded_files/" + chat?.getAvatarFileHash(user) : undefined
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -230,6 +237,6 @@ export default class UserApi extends BaseApi {
|
||||
* 公開資料
|
||||
* ================================================
|
||||
*/
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -36,7 +36,7 @@ export default class User {
|
||||
/* 用戶名, 可選 */ username TEXT,
|
||||
/* 昵称 */ nickname TEXT NOT NULL,
|
||||
/* 头像, 可选 */ avatar_file_hash TEXT,
|
||||
/* 聯絡人組 */ contact_groups TEXT NOT NULL,
|
||||
/* 聯絡人組 */ contacts_list TEXT NOT NULL,
|
||||
/* 设置 */ settings TEXT NOT NULL
|
||||
);
|
||||
`)
|
||||
@@ -80,7 +80,7 @@ export default class User {
|
||||
)[0]
|
||||
)
|
||||
avatar && user.setAvatar(avatar)
|
||||
user.addContact(ChatPrivate.getChatIdByUsersId(user.bean.id, user.bean.id))
|
||||
ChatPrivate.findOrCreateForPrivate(user, user)
|
||||
return user
|
||||
}
|
||||
|
||||
@@ -133,9 +133,7 @@ export default class User {
|
||||
return JSON.parse(this.bean.contacts_list) as string[]
|
||||
} catch (e) {
|
||||
console.log(chalk.yellow(`警告: 聯絡人組解析失敗: ${(e as Error).message}`))
|
||||
return [
|
||||
this.bean.id
|
||||
]
|
||||
return []
|
||||
}
|
||||
}
|
||||
getNickName(): string {
|
||||
|
||||
Reference in New Issue
Block a user