Add profile picture, region, and timezone fields to UserEntity

This commit is contained in:
faris Aljohari
2024-07-15 15:45:46 +03:00
parent 369dee5c97
commit d8f2a2d3ee

View File

@ -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<UserDto> {
@ -17,6 +20,13 @@ export class UserEntity extends AbstractEntity<UserDto> {
})
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<UserDto> {
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<UserEntity>) {
super();
Object.assign(this, partial);