@@ -104,11 +104,11 @@ export class StatsService {
104104 const memberId = user ?. id ?? interaction . member ?. user . id ;
105105 const guildId = interaction . guild ?. id ;
106106
107- if ( ! memberId || ! guildId ) return "Something went wrong" ;
107+ if ( ! memberId || ! guildId ) return null ;
108108
109109 const embed = await StatsService . getUserStatsEmbed ( memberId , guildId ) ;
110110
111- if ( ! embed ) return "Something went wrong" ;
111+ if ( ! embed ) return null ;
112112
113113 return embed ;
114114 }
@@ -132,7 +132,7 @@ export class StatsService {
132132 : null ;
133133
134134 // Execute all initial queries in parallel
135- const [ lastVoice , lastMessage , helpCount , helpReceivedCount ] =
135+ const [ lastVoice , lastMessage , helpCount , helpReceivedCount , userRoles ] =
136136 await Promise . all ( [
137137 prisma . guildVoiceEvents . findMany ( {
138138 where : { guildId, memberId } ,
@@ -150,6 +150,10 @@ export class StatsService {
150150 prisma . memberHelper . count ( {
151151 where : { guildId, threadOwnerId : memberId } ,
152152 } ) ,
153+ prisma . memberRole . findMany ( {
154+ where : { memberId, guildId } ,
155+ select : { name : true , roleId : true } ,
156+ } ) ,
153157 ] ) ;
154158
155159 // Execute stats queries in parallel
@@ -196,7 +200,7 @@ export class StatsService {
196200 oneDayVoiceSum,
197201 } ) ;
198202
199- return embed ;
203+ return { embed, roles : userRoles . map ( ( role ) => role . name ) } ;
200204 }
201205
202206 static async voiceStats ( memberId : string , guildId : string , lookback : number ) {
0 commit comments