add relations from abuse_user_report->user_profile to speed up admin/abuse-user-reports endpoint

This commit is contained in:
Hazelnoot 2025-05-28 02:03:05 -04:00
parent 23302fe7d8
commit b05ccbc3ac
2 changed files with 31 additions and 1 deletions

View file

@ -120,7 +120,15 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
private queryService: QueryService,
) {
super(meta, paramDef, async (ps, me) => {
const query = this.queryService.makePaginationQuery(this.abuseUserReportsRepository.createQueryBuilder('report'), ps.sinceId, ps.untilId);
const query = this.queryService.makePaginationQuery(this.abuseUserReportsRepository.createQueryBuilder('report'), ps.sinceId, ps.untilId)
.leftJoinAndSelect('report.targetUser', 'targetUser')
.leftJoinAndSelect('report.targetUserProfile', 'targetUserProfile')
.leftJoinAndSelect('report.targetUserInstance', 'targetUserInstance')
.leftJoinAndSelect('report.reporter', 'reporter')
.leftJoinAndSelect('report.reporterUserProfile', 'reporterUserProfile')
.leftJoinAndSelect('report.assignee', 'assignee')
.leftJoinAndSelect('report.assigneeUserProfile', 'assigneeUserProfile')
;
switch (ps.state) {
case 'resolved': query.andWhere('report.resolved = TRUE'); break;