From d8f2a2d3ee29e3c097bd3d122c4f2d5f5b3a2c9c Mon Sep 17 00:00:00 2001 From: faris Aljohari <83524184+farisaljohari@users.noreply.github.com> Date: Mon, 15 Jul 2024 15:45:46 +0300 Subject: [PATCH] Add profile picture, region, and timezone fields to UserEntity --- .../src/modules/user/entities/user.entity.ts | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/libs/common/src/modules/user/entities/user.entity.ts b/libs/common/src/modules/user/entities/user.entity.ts index c432751..5b754e8 100644 --- a/libs/common/src/modules/user/entities/user.entity.ts +++ b/libs/common/src/modules/user/entities/user.entity.ts @@ -1,5 +1,5 @@ import { DeviceUserPermissionEntity } from '../../device-user-permission/entities/device.user.permission.entity'; -import { Column, Entity, OneToMany } from 'typeorm'; +import { Column, Entity, ManyToOne, OneToMany } from 'typeorm'; import { UserDto } from '../dtos'; import { AbstractEntity } from '../../abstract/entities/abstract.entity'; import { UserSpaceEntity } from '../../user-space/entities'; @@ -7,6 +7,9 @@ import { UserRoleEntity } from '../../user-role/entities'; import { DeviceNotificationEntity } from '../../device-notification/entities'; import { UserNotificationEntity } from '../../user-notification/entities'; import { DeviceEntity } from '../../device/entities'; +import { defaultProfilePicture } from '@app/common/constants/default.profile.picture'; +import { RegionEntity } from '../../region/entities'; +import { TimeZoneEntity } from '../../timezone/entities'; @Entity({ name: 'user' }) export class UserEntity extends AbstractEntity { @@ -17,6 +20,13 @@ export class UserEntity extends AbstractEntity { }) public uuid: string; + @Column({ + nullable: true, + type: 'text', + default: defaultProfilePicture, + }) + public profilePicture: string; + @Column({ nullable: false, unique: true, @@ -78,6 +88,12 @@ export class UserEntity extends AbstractEntity { nullable: true, }) roles: UserRoleEntity[]; + @ManyToOne(() => RegionEntity, (region) => region.users, { nullable: true }) + region: RegionEntity; + @ManyToOne(() => TimeZoneEntity, (timezone) => timezone.users, { + nullable: true, + }) + timezone: TimeZoneEntity; constructor(partial: Partial) { super(); Object.assign(this, partial);