authentication
This commit is contained in:
@@ -1,2 +1,3 @@
|
||||
export * from './user.repository';
|
||||
export * from './ssouser.repository';
|
||||
export * from './role.repository';
|
||||
|
||||
14
api/src/model/repositories/role.repository.ts
Normal file
14
api/src/model/repositories/role.repository.ts
Normal file
@@ -0,0 +1,14 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { Repository, DataSource } from 'typeorm';
|
||||
import { Role } from '../entitites';
|
||||
|
||||
@Injectable()
|
||||
export class RoleRepository extends Repository<Role> {
|
||||
constructor(dataSource: DataSource) {
|
||||
super(Role, dataSource.createEntityManager());
|
||||
}
|
||||
|
||||
getStandardRole(): Promise<Role> {
|
||||
return this.findOne({ where: { name: 'develop' } });
|
||||
}
|
||||
}
|
||||
@@ -3,12 +3,14 @@ import { Repository, DataSource } from 'typeorm';
|
||||
import { User } from '../entitites';
|
||||
import { CreateUserDto } from '../dto/create-user.dto';
|
||||
import { SsoUserRepository } from './ssouser.repository';
|
||||
import { RoleRepository } from './role.repository';
|
||||
|
||||
@Injectable()
|
||||
export class UserRepository extends Repository<User> {
|
||||
constructor(
|
||||
dataSource: DataSource,
|
||||
private ssoRepo: SsoUserRepository,
|
||||
private roleRepo: RoleRepository,
|
||||
) {
|
||||
super(User, dataSource.createEntityManager());
|
||||
}
|
||||
@@ -38,6 +40,7 @@ export class UserRepository extends Repository<User> {
|
||||
externalId: createUserDto.externalId,
|
||||
});
|
||||
created.external = sso;
|
||||
created.role = await this.roleRepo.getStandardRole();
|
||||
const user = await this.save(created);
|
||||
sso.user = user;
|
||||
this.ssoRepo.save(sso);
|
||||
|
||||
Reference in New Issue
Block a user