@@ -9,21 +9,30 @@ import { UserGroup } from '../entities/UserGroup';
 | 
				
			|||||||
export class CreateUser {
 | 
					export class CreateUser {
 | 
				
			||||||
    @IsString()
 | 
					    @IsString()
 | 
				
			||||||
    firstname: string;
 | 
					    firstname: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @IsString()
 | 
					    @IsString()
 | 
				
			||||||
 | 
					    @IsOptional()
 | 
				
			||||||
    middlename?: string;
 | 
					    middlename?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @IsOptional()
 | 
					    @IsOptional()
 | 
				
			||||||
    @IsString()
 | 
					    @IsString()
 | 
				
			||||||
    username?: string;
 | 
					    username?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @IsPhoneNumber("ZZ")
 | 
					    @IsPhoneNumber("ZZ")
 | 
				
			||||||
    @IsOptional()
 | 
					    @IsOptional()
 | 
				
			||||||
    phone?: string;
 | 
					    phone?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @IsString()
 | 
					    @IsString()
 | 
				
			||||||
    password: string;
 | 
					    password: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @IsString()
 | 
					    @IsString()
 | 
				
			||||||
    lastname: string;
 | 
					    lastname: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @IsEmail()
 | 
					    @IsEmail()
 | 
				
			||||||
    @IsString()
 | 
					    @IsString()
 | 
				
			||||||
 | 
					    @IsOptional()
 | 
				
			||||||
    email?: string;
 | 
					    email?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @IsOptional()
 | 
					    @IsOptional()
 | 
				
			||||||
    groupId?: number[] | number
 | 
					    groupId?: number[] | number
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -58,15 +67,14 @@ export class CreateUser {
 | 
				
			|||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        const new_uuid = uuid.v4()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        newUser.email = this.email
 | 
					        newUser.email = this.email
 | 
				
			||||||
        newUser.username = this.username
 | 
					        newUser.username = this.username
 | 
				
			||||||
        newUser.firstname = this.firstname
 | 
					        newUser.firstname = this.firstname
 | 
				
			||||||
        newUser.middlename = this.middlename
 | 
					        newUser.middlename = this.middlename
 | 
				
			||||||
        newUser.lastname = this.lastname
 | 
					        newUser.lastname = this.lastname
 | 
				
			||||||
        newUser.uuid = new_uuid
 | 
					        newUser.uuid = uuid.v4()
 | 
				
			||||||
        newUser.password = await argon2.hash(this.password + new_uuid);
 | 
					        newUser.phone = this.phone
 | 
				
			||||||
 | 
					        newUser.password = await argon2.hash(this.password + newUser.uuid);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        console.log(newUser)
 | 
					        console.log(newUser)
 | 
				
			||||||
        return newUser;
 | 
					        return newUser;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -13,7 +13,6 @@ export class User {
 | 
				
			|||||||
  * autogenerated unique id (primary key).
 | 
					  * autogenerated unique id (primary key).
 | 
				
			||||||
  */
 | 
					  */
 | 
				
			||||||
  @PrimaryGeneratedColumn()
 | 
					  @PrimaryGeneratedColumn()
 | 
				
			||||||
  @IsOptional()
 | 
					 | 
				
			||||||
  @IsInt()
 | 
					  @IsInt()
 | 
				
			||||||
  id: number;
 | 
					  id: number;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -21,30 +20,30 @@ export class User {
 | 
				
			|||||||
  * uuid
 | 
					  * uuid
 | 
				
			||||||
  */
 | 
					  */
 | 
				
			||||||
  @Column()
 | 
					  @Column()
 | 
				
			||||||
  @IsUUID("4")
 | 
					  @IsUUID(4)
 | 
				
			||||||
  uuid: string;
 | 
					  uuid: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * user email
 | 
					  * user email
 | 
				
			||||||
  */
 | 
					  */
 | 
				
			||||||
  @Column()
 | 
					  @Column({ nullable: true })
 | 
				
			||||||
  @IsEmail()
 | 
					  @IsEmail()
 | 
				
			||||||
  email: string;
 | 
					  email?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * user phone
 | 
					  * user phone
 | 
				
			||||||
  */
 | 
					  */
 | 
				
			||||||
  @Column()
 | 
					  @Column({ nullable: true })
 | 
				
			||||||
  @IsPhoneNumber("ZZ")
 | 
					 | 
				
			||||||
  @IsOptional()
 | 
					  @IsOptional()
 | 
				
			||||||
  phone: string;
 | 
					  @IsPhoneNumber("ZZ")
 | 
				
			||||||
 | 
					  phone?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * username
 | 
					  * username
 | 
				
			||||||
  */
 | 
					  */
 | 
				
			||||||
  @Column()
 | 
					  @Column({ nullable: true })
 | 
				
			||||||
  @IsString()
 | 
					  @IsString()
 | 
				
			||||||
  username: string;
 | 
					  username?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * firstname
 | 
					  * firstname
 | 
				
			||||||
@@ -57,10 +56,10 @@ export class User {
 | 
				
			|||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * middlename
 | 
					  * middlename
 | 
				
			||||||
  */
 | 
					  */
 | 
				
			||||||
  @Column()
 | 
					  @Column({ nullable: true })
 | 
				
			||||||
  @IsString()
 | 
					  @IsString()
 | 
				
			||||||
  @IsOptional()
 | 
					  @IsOptional()
 | 
				
			||||||
  middlename: string;
 | 
					  middlename?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * lastname
 | 
					  * lastname
 | 
				
			||||||
@@ -83,7 +82,7 @@ export class User {
 | 
				
			|||||||
  */
 | 
					  */
 | 
				
			||||||
  @IsOptional()
 | 
					  @IsOptional()
 | 
				
			||||||
  @ManyToOne(() => Permission, permission => permission.users, { nullable: true })
 | 
					  @ManyToOne(() => Permission, permission => permission.users, { nullable: true })
 | 
				
			||||||
  permissions: Permission[];
 | 
					  permissions?: Permission[];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * groups
 | 
					  * groups
 | 
				
			||||||
@@ -105,21 +104,22 @@ export class User {
 | 
				
			|||||||
  */
 | 
					  */
 | 
				
			||||||
  @IsInt()
 | 
					  @IsInt()
 | 
				
			||||||
  @Column({ default: 1 })
 | 
					  @Column({ default: 1 })
 | 
				
			||||||
  refreshTokenCount: number;
 | 
					  refreshTokenCount?: number;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
  * profilepic
 | 
					  * profilepic
 | 
				
			||||||
  */
 | 
					  */
 | 
				
			||||||
  @Column()
 | 
					  @Column({ nullable: true })
 | 
				
			||||||
  @IsString()
 | 
					  @IsString()
 | 
				
			||||||
  profilePic: string;
 | 
					  @IsOptional()
 | 
				
			||||||
 | 
					  profilePic?: string;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
   * actions
 | 
					   * actions
 | 
				
			||||||
   */
 | 
					   */
 | 
				
			||||||
  @IsOptional()
 | 
					  @IsOptional()
 | 
				
			||||||
  @OneToMany(() => UserAction, action => action.user, { nullable: true })
 | 
					  @OneToMany(() => UserAction, action => action.user, { nullable: true })
 | 
				
			||||||
  actions: UserAction
 | 
					  actions: UserAction[]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
   * calculate all permissions
 | 
					   * calculate all permissions
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user