WIP
This commit is contained in:
@@ -181,5 +181,29 @@ public class AuthService : IAuthService
|
||||
Roles = roles,
|
||||
LanguagePreference = user.LanguagePreference,
|
||||
Permissions = await _permissions.GetEffectivePermissionsAsync(roles),
|
||||
MemberInfo = await BuildMemberInfoAsync(user),
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
/// Loads the linked member's display fields, or null when the account has no
|
||||
/// MemberId or its member record was soft-deleted (excluded by query filter).
|
||||
/// </summary>
|
||||
private async Task<MemberInfo?> BuildMemberInfoAsync(AppUser user)
|
||||
{
|
||||
if (user.MemberId is not int memberId)
|
||||
return null;
|
||||
|
||||
return await _db.Members
|
||||
.Where(member => member.Id == memberId)
|
||||
.Select(member => new MemberInfo
|
||||
{
|
||||
Id = member.Id,
|
||||
NickName = member.NickName,
|
||||
FirstName_en = member.FirstName_en,
|
||||
LastName_en = member.LastName_en,
|
||||
FirstName_zh = member.FirstName_zh,
|
||||
LastName_zh = member.LastName_zh,
|
||||
})
|
||||
.FirstOrDefaultAsync();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user