summaryrefslogtreecommitdiff
path: root/packages/backend/src/models
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-05-28 02:03:05 -0400
committerHazelnoot <acomputerdog@gmail.com>2025-06-04 10:45:21 -0400
commitb05ccbc3aca8e008555736f25760f9f2b1b2a5e7 (patch)
tree5033241e53cccf7a1c0659c1cf37f87e705e6d1b /packages/backend/src/models
parentadd relation from user->user_profile to speed up UserEntityService.pack and p... (diff)
downloadsharkey-b05ccbc3aca8e008555736f25760f9f2b1b2a5e7.tar.gz
sharkey-b05ccbc3aca8e008555736f25760f9f2b1b2a5e7.tar.bz2
sharkey-b05ccbc3aca8e008555736f25760f9f2b1b2a5e7.zip
add relations from abuse_user_report->user_profile to speed up admin/abuse-user-reports endpoint
Diffstat (limited to 'packages/backend/src/models')
-rw-r--r--packages/backend/src/models/AbuseUserReport.ts22
1 files changed, 22 insertions, 0 deletions
diff --git a/packages/backend/src/models/AbuseUserReport.ts b/packages/backend/src/models/AbuseUserReport.ts
index 8f8d759004..c1a44c3d40 100644
--- a/packages/backend/src/models/AbuseUserReport.ts
+++ b/packages/backend/src/models/AbuseUserReport.ts
@@ -5,6 +5,7 @@
import { PrimaryColumn, Entity, Index, JoinColumn, Column, ManyToOne } from 'typeorm';
import { MiInstance } from '@/models/Instance.js';
+import { MiUserProfile } from '@/models/UserProfile.js';
import { id } from './util/id.js';
import { MiUser } from './User.js';
@@ -25,6 +26,13 @@ export class MiAbuseUserReport {
@JoinColumn()
public targetUser: MiUser | null;
+ @ManyToOne(() => MiUserProfile, {
+ onDelete: 'CASCADE',
+ createForeignKeyConstraints: false,
+ })
+ @JoinColumn({ name: 'targetUserId', referencedColumnName: 'userId' })
+ public targetUserProfile: MiUserProfile | null;
+
@Index()
@Column(id())
public reporterId: MiUser['id'];
@@ -35,6 +43,13 @@ export class MiAbuseUserReport {
@JoinColumn()
public reporter: MiUser | null;
+ @ManyToOne(() => MiUserProfile, {
+ onDelete: 'CASCADE',
+ createForeignKeyConstraints: false,
+ })
+ @JoinColumn({ name: 'reporterId', referencedColumnName: 'userId' })
+ public reporterProfile: MiUserProfile | null;
+
@Column({
...id(),
nullable: true,
@@ -47,6 +62,13 @@ export class MiAbuseUserReport {
@JoinColumn()
public assignee: MiUser | null;
+ @ManyToOne(() => MiUserProfile, {
+ onDelete: 'CASCADE',
+ createForeignKeyConstraints: false,
+ })
+ @JoinColumn({ name: 'assigneeId', referencedColumnName: 'userId' })
+ public assigneeProfile: MiUserProfile | null;
+
@Index()
@Column('boolean', {
default: false,