generator-nest-js-boilerplate
Version:
This generator will help you to build your own Nest.js Mongodb API using TypeScript 4
68 lines (59 loc) • 1.89 kB
text/typescript
import {
Controller,
Get,
NotFoundException,
UseGuards, UseInterceptors,
} from '@nestjs/common';
import {
ApiTags,
ApiOkResponse,
ApiNotFoundResponse,
ApiUnauthorizedResponse,
} from '@nestjs/swagger';
import RequestUser from '@decorators/request-user.decorator';
import { Roles, RolesEnum } from '@decorators/roles.decorator';
import IsLoggedGuard from '@guards/is-logged.guard';
import RolesGuard from '@guards/roles.guard';
import { AllUsersResponseEntity, UserResponseEntity } from '@v1/users/entities/user-response.entity';
import Serialize from '@decorators/serialization.decorator';
import WrapResponseInterceptor from '@interceptors/wrap-response.interceptor';
import UserEntity from './schemas/user.entity';
import UsersService from './users.service';
export default class UsersController {
constructor(private readonly usersService: UsersService) {}
async getAllVerified(): Promise<UserEntity[] | []> {
const foundUsers: UserEntity[] | [] = await this.usersService.getAll();
return foundUsers;
}
async getById(
user: UserEntity,
): Promise<UserEntity | never> {
const foundUser = await this.usersService.getVerifiedUserById(user.id);
if (!foundUser) {
throw new NotFoundException('The user does not exist');
}
return foundUser;
}
}