Files
sistema_combustible/backend/src/modules/auth/auth.controller.ts

89 lines
1.7 KiB
TypeScript

import { Request, Response } from "express";
import { AuthService } from "./auth.service";
const authService = new AuthService();
export class AuthController {
async login (
req:Request,
res:Response
){
try {
const {
userName,
password
} = req.body;
//Validar datos de entrada
if(!userName || !password){
return res.status(400).json({
message:"Usuario y contraseña son requeridos"
});
}
const result = await authService.login(
userName,
password
);
res.json(result);
} catch(error:any){
res.status(500).json({
message:error.message
});
}
}
async logout(
req:Request,
res:Response
){
try{
const user = (req as any).user;
const result = await authService.logout(user.id);
res.json(result);
}catch(error) {
res.status(500).json({
message:"Error al cerrar sesión",
error
});
}
}
async changePassword(
req: Request,
res: Response
) {
try {
const user = (req as any).user;
const result = await authService.changePassword(
user.id,
req.body
);
res.status(200).json(result);
} catch (error: any) {
res.status(500).json({
message: error.message,
});
}
}
}