update

parent 718404e2
import { UserService } from "@/services/user.service";
import { RequestHandler } from "express";
import { plainToInstance } from 'class-transformer';
// import { SignInUserDto } from "@/dto/sign-in-user.dto";
import { RegistrationUserDto } from "@/dto/registration-user.dto";
import { SignInUserDto } from "@/dto/sign-in-user.dto";
import { formatErrors } from "@/helpers/formatErrors";
export class UserController {
private service: UserService;
......@@ -18,14 +18,26 @@ export class UserController {
const user = await this.service.signIn(signInDto)
res.send(user)
} catch (e) {
res.status(401).send((e as Error).message)
if (Array.isArray(e)) {
res.status(400).send(formatErrors(e));
} else {
res.status(500).send(e);
}
}
}
registration: RequestHandler = async (req, res): Promise<void> => {
const registrationInDto = plainToInstance(RegistrationUserDto, req.body)
const user = await this.service.registration(registrationInDto)
res.send(user)
try {
const registrationInDto = plainToInstance(RegistrationUserDto, req.body)
const user = await this.service.registration(registrationInDto)
res.send(user)
} catch (e) {
if (Array.isArray(e)) {
res.status(400).send(formatErrors(e));
} else {
res.status(500).send(e);
}
}
}
validateToken: RequestHandler = async (req, res): Promise<void> => {
......
import { SignInUserDto } from "@/dto/sign-in-user.dto"
import { RegistrationUserDto } from "@/dto/registration-user.dto"
import { userRepo } from "@/repositories/user.repository"
import { validate } from "class-validator"
export class UserService {
async signIn(signInUserDto: SignInUserDto) {
const errors = await validate(signInUserDto, { whitelist: true })
if (errors.length) throw errors
return await userRepo.signIn(signInUserDto)
}
async registration(registrationUserDto: RegistrationUserDto) {
const errors = await validate(registrationUserDto, { whitelist: true })
if (errors.length) throw errors
return await userRepo.registration(registrationUserDto)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment