From 39fd6e9dd92f3eb97ddd379002ec0f4b69a1a5f6 Mon Sep 17 00:00:00 2001 From: faris Aljohari <83524184+farisaljohari@users.noreply.github.com> Date: Mon, 23 Dec 2024 00:01:11 -0600 Subject: [PATCH] Add project relationship to InviteUserEntity and invitedUsers to ProjectEntity --- .../modules/Invite-user/entities/Invite-user.entity.ts | 8 ++++++++ .../common/src/modules/project/entities/project.entity.ts | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/libs/common/src/modules/Invite-user/entities/Invite-user.entity.ts b/libs/common/src/modules/Invite-user/entities/Invite-user.entity.ts index e2414f5..c93f94b 100644 --- a/libs/common/src/modules/Invite-user/entities/Invite-user.entity.ts +++ b/libs/common/src/modules/Invite-user/entities/Invite-user.entity.ts @@ -15,6 +15,7 @@ import { UserEntity } from '../../user/entities'; import { SpaceEntity } from '../../space/entities'; import { RoleType } from '@app/common/constants/role.type.enum'; import { InviteUserDto, InviteUserSpaceDto } from '../dtos'; +import { ProjectEntity } from '../../project/entities'; @Entity({ name: 'invite-user' }) @Unique(['email', 'invitationCode']) @@ -91,6 +92,13 @@ export class InviteUserEntity extends AbstractEntity { (inviteUserSpace) => inviteUserSpace.inviteUser, ) spaces: InviteUserSpaceEntity[]; + + @ManyToOne(() => ProjectEntity, (project) => project.invitedUsers, { + nullable: true, + }) + @JoinColumn({ name: 'project_uuid' }) + public project: ProjectEntity; + constructor(partial: Partial) { super(); Object.assign(this, partial); diff --git a/libs/common/src/modules/project/entities/project.entity.ts b/libs/common/src/modules/project/entities/project.entity.ts index 01fba17..ee6a2c5 100644 --- a/libs/common/src/modules/project/entities/project.entity.ts +++ b/libs/common/src/modules/project/entities/project.entity.ts @@ -4,6 +4,7 @@ import { ProjectDto } from '../dtos'; import { CommunityEntity } from '../../community/entities'; import { SpaceModelEntity } from '../../space-model'; import { UserEntity } from '../../user/entities'; +import { InviteUserEntity } from '../../Invite-user/entities'; @Entity({ name: 'project' }) @Unique(['name']) @@ -32,6 +33,9 @@ export class ProjectEntity extends AbstractEntity { @OneToMany(() => UserEntity, (user) => user.project) public users: UserEntity[]; + @OneToMany(() => InviteUserEntity, (inviteUser) => inviteUser.project) + public invitedUsers: InviteUserEntity[]; + constructor(partial: Partial) { super(); Object.assign(this, partial);