src/user/service/profile.service.ts
Properties |
|
Methods |
|
constructor(profileRepository: ProfileRepository)
|
||||||
|
Defined in src/user/service/profile.service.ts:14
|
||||||
|
Parameters :
|
| findByUserId | ||||||
findByUserId(userId: string)
|
||||||
|
Defined in src/user/service/profile.service.ts:21
|
||||||
|
Parameters :
Returns :
Promise<ProfileEntity>
|
| Async saveProfile | |||||||||
saveProfile(profile: ProfileEntity, data: UpdateUserProfileDTO)
|
|||||||||
|
Defined in src/user/service/profile.service.ts:25
|
|||||||||
|
Parameters :
Returns :
Promise<ProfileEntity>
|
| Private Readonly logger |
Default value : new Logger(ProfileService.name)
|
|
Defined in src/user/service/profile.service.ts:14
|
import {
Inject,
Injectable,
Logger,
BadRequestException,
} from '@nestjs/common';
import { ProfileRepository } from '../repository/profile.repository';
import { ProfileEntity } from '../entity/profile.entity';
import { SAVE_PROFILE_FAILED } from '../../common/error/keys';
import { UpdateUserProfileDTO } from '../request/dto/update-user-profile.dto';
@Injectable()
export class ProfileService {
private readonly logger = new Logger(ProfileService.name);
constructor(
@Inject(ProfileRepository)
private readonly profileRepository: ProfileRepository
) {}
findByUserId(userId: string): Promise<ProfileEntity> {
return this.profileRepository.findByUserId(userId);
}
async saveProfile(
profile: ProfileEntity,
data: UpdateUserProfileDTO
): Promise<ProfileEntity> {
return this.profileRepository
.save({ ...profile, ...data })
.catch((error) => {
this.logger.error(error);
throw new BadRequestException(SAVE_PROFILE_FAILED);
});
}
}