返回提交历史
Modified
src/services/guildService.ts
+9
-2
XFEstudio/XFESpaceNinjaServer
chore: fill in guild member data asynchronously (#1715)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/1715 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
bc5dc02f
代码差异
1 个文件
+9
-2
@@ -59,6 +59,7 @@ export const getGuildClient = async (guild: TGuildDatabaseDocument, accountId: s
59
59
60
60
const members: IGuildMemberClient[] = [];
61
61
let missingEntry = true;
62
const dataFillInPromises: Promise<void>[] = [];
62
63
for (const guildMember of guildMembers) {
63
64
const member: IGuildMemberClient = {
64
65
_id: toOid(guildMember.accountId),
@@ -70,8 +71,12 @@ export const getGuildClient = async (guild: TGuildDatabaseDocument, accountId: s
70
71
if (guildMember.accountId.equals(accountId)) {
71
72
missingEntry = false;
72
73
} else {
73
member.DisplayName = (await Account.findById(guildMember.accountId, "DisplayName"))!.DisplayName;
74
await fillInInventoryDataForGuildMember(member);
74
dataFillInPromises.push(
75
(async (): Promise<void> => {
76
member.DisplayName = (await Account.findById(guildMember.accountId, "DisplayName"))!.DisplayName;
77
})()
78
);
79
dataFillInPromises.push(fillInInventoryDataForGuildMember(member));
75
80
}
76
81
members.push(member);
77
82
}
@@ -90,6 +95,8 @@ export const getGuildClient = async (guild: TGuildDatabaseDocument, accountId: s
90
95
});
91
96
}
92
97
98
await Promise.all(dataFillInPromises);
99
93
100
return {
94
101
_id: toOid(guild._id),
95
102
Name: guild.Name,