add: update user

This commit is contained in:
ilham 2021-12-23 16:16:10 +07:00
parent e4c92ef967
commit 356db39cfe

View File

@ -19,6 +19,8 @@ export class UsersService {
constructor(
@InjectRepository(User)
private usersRepository: Repository<User>,
@InjectRepository(UserDetail)
private userDetailRepository: Repository<UserDetail>,
@Inject(
forwardRef(() => {
return CoaService;
@ -289,8 +291,16 @@ export class UsersService {
}
async update(id: string, updateUserDto: UpdateUserDto, currentUser: any) {
let userData;
let userDetailData;
try {
await this.usersRepository.findOneOrFail(id);
userData = await this.usersRepository.findOneOrFail(id);
userDetailData = await this.userDetailRepository.findOneOrFail({
where: {
user: userData,
},
});
} catch (e) {
if (e instanceof EntityNotFoundError) {
throw new HttpException(
@ -320,14 +330,15 @@ export class UsersService {
);
}
const userData = new User();
userData.id = id;
userData.username = updateUserDto.username;
userData.partner = updateUserDto.partner;
userDetailData.name = updateUserDto.name;
userDetailData.phone_number = updateUserDto.phone_number;
await this.connection.transaction(async (manager) => {
const result = await manager.update(User, { id: id }, userData);
await manager.save(userData);
await manager.save(userDetailData);
});
return userData;