mirror of
https://github.com/MrSedan/neuro-reply-website.git
synced 2026-01-15 04:59:42 +03:00
Added user controller and getUser method
This commit is contained in:
27
backend/src/modules/user/user.service.ts
Normal file
27
backend/src/modules/user/user.service.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { Injectable, Logger } from '@nestjs/common';
|
||||
import { InjectRepository } from '@nestjs/typeorm';
|
||||
import { User } from 'libs/database/user.entity';
|
||||
import { Repository } from 'typeorm';
|
||||
import { IGetUser } from './user.dto';
|
||||
|
||||
@Injectable()
|
||||
export class UserService {
|
||||
private readonly logger: Logger = new Logger(UserService.name);
|
||||
constructor(@InjectRepository(User) private userRepository: Repository<User>) {}
|
||||
|
||||
async getUser(data: IGetUser) {
|
||||
try {
|
||||
this.logger.debug(`[admin.getUser] data: ${JSON.stringify(data)}`);
|
||||
let user = await this.userRepository.findOne({
|
||||
where: { id: data.id },
|
||||
});
|
||||
if (!user) {
|
||||
user = await this.userRepository.save({ id: data.id, user_name: data.username });
|
||||
this.logger.log(`User ${data.id} created`);
|
||||
}
|
||||
return user;
|
||||
} catch (error) {
|
||||
this.logger.log(`[getUser] ${JSON.stringify({ error })}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user