unos minutos antes de
This commit is contained in:
+122
-104
@@ -1,11 +1,11 @@
|
||||
import { Usuario } from '@src/entity/Usuario'
|
||||
import { Request, Response } from 'express'
|
||||
import { validate } from 'class-validator'
|
||||
import { getRepository } from 'typeorm'
|
||||
import { AuthController } from './Auth'
|
||||
import { Usuario } from "@src/entity/Usuario";
|
||||
import { Request, Response } from "express";
|
||||
import { validate } from "class-validator";
|
||||
import { getRepository } from "typeorm";
|
||||
import { AuthController } from "./Auth";
|
||||
export class UsuarioController {
|
||||
static async create (req: Request, res: Response) {
|
||||
console.log(req.file)
|
||||
static async create(req: Request, res: Response) {
|
||||
console.log(req.file);
|
||||
const {
|
||||
id,
|
||||
nombre,
|
||||
@@ -15,165 +15,183 @@ export class UsuarioController {
|
||||
numeroTelefonico,
|
||||
institucion,
|
||||
secreto,
|
||||
interno
|
||||
} = JSON.parse(req.body.usuario)
|
||||
interno,
|
||||
} = JSON.parse(req.body.usuario);
|
||||
|
||||
const identificacion = req.file
|
||||
const identificacion = req.file;
|
||||
if (!interno && !identificacion) {
|
||||
res.status(400).send({
|
||||
status: false,
|
||||
data: 'Un usuario externo tiene que mandar fotoo de su identificacion'
|
||||
})
|
||||
return false
|
||||
data: "Un usuario externo tiene que mandar fotoo de su identificacion",
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
const usuario = new Usuario()
|
||||
usuario.id = id
|
||||
usuario.nombre = nombre
|
||||
usuario.apellidoPaterno = apellidoPaterno
|
||||
usuario.apellidoMaterno = apellidoMaterno
|
||||
usuario.correoAlternativo = correoAlternativo
|
||||
usuario.numeroTelefonico = numeroTelefonico
|
||||
usuario.identificacion = interno ? 'null' : JSON.stringify(identificacion)
|
||||
usuario.institucion = institucion
|
||||
usuario.secreto = secreto
|
||||
usuario.interno = interno
|
||||
const usuario = new Usuario();
|
||||
usuario.id = id;
|
||||
usuario.nombre = nombre;
|
||||
usuario.apellidoPaterno = apellidoPaterno;
|
||||
usuario.apellidoMaterno = apellidoMaterno;
|
||||
usuario.correoAlternativo = correoAlternativo;
|
||||
usuario.numeroTelefonico = numeroTelefonico;
|
||||
usuario.identificacion = interno ? "null" : JSON.stringify(identificacion);
|
||||
usuario.institucion = institucion;
|
||||
usuario.secreto = secreto;
|
||||
usuario.interno = interno;
|
||||
|
||||
usuario.hashPassword()
|
||||
usuario.hashPassword();
|
||||
|
||||
const errors = await validate(usuario)
|
||||
const errors = await validate(usuario);
|
||||
if (errors.length > 0) {
|
||||
res.status(400).send(errors)
|
||||
res.status(400).send(errors);
|
||||
}
|
||||
|
||||
const repository = getRepository(Usuario)
|
||||
const repository = getRepository(Usuario);
|
||||
try {
|
||||
await repository.save(usuario)
|
||||
await repository.save(usuario);
|
||||
} catch (e) {
|
||||
res.status(409).send(e.message)
|
||||
return
|
||||
res.status(409).send(e.message);
|
||||
return;
|
||||
}
|
||||
res.status(201).send('User create')
|
||||
res.status(201).send("User create");
|
||||
}
|
||||
|
||||
static async getAll (req: Request, res: Response) {
|
||||
const respository = getRepository(Usuario)
|
||||
static async getAll(req: Request, res: Response) {
|
||||
const respository = getRepository(Usuario);
|
||||
const result = await respository.find({
|
||||
select: ['id', 'nombre', 'apellidoMaterno', 'apellidoPaterno']
|
||||
})
|
||||
res.status(200).json(result)
|
||||
select: ["id", "nombre", "apellidoMaterno", "apellidoPaterno"],
|
||||
});
|
||||
res.status(200).json(result);
|
||||
}
|
||||
|
||||
static async getOne (req: Request, res: Response) {
|
||||
const respository = getRepository(Usuario)
|
||||
const id: number = +req.params.id
|
||||
static async getOne(req: Request, res: Response) {
|
||||
const respository = getRepository(Usuario);
|
||||
const id: number = +req.params.id;
|
||||
try {
|
||||
const result = await respository.findOneOrFail(id, {
|
||||
select: ['id', 'nombre', 'apellidoMaterno', 'apellidoPaterno']
|
||||
})
|
||||
res.status(200).json(result)
|
||||
select: ["id", "nombre", "apellidoMaterno", "apellidoPaterno"],
|
||||
});
|
||||
res.status(200).json(result);
|
||||
} catch (e) {
|
||||
res.status(404).send('Usuario no encontrado')
|
||||
res.status(404).send("Usuario no encontrado");
|
||||
}
|
||||
}
|
||||
|
||||
static async login (req: Request, res: Response) {
|
||||
const repository = getRepository(Usuario)
|
||||
const { id, secreto } = req.body
|
||||
static async login(req: Request, res: Response) {
|
||||
const repository = getRepository(Usuario);
|
||||
const { id, secreto } = req.body;
|
||||
try {
|
||||
const usuario = await repository.findOne({
|
||||
where: {
|
||||
id
|
||||
}
|
||||
})
|
||||
id,
|
||||
},
|
||||
});
|
||||
if (!usuario) {
|
||||
throw new Error('*Usuario o contraseña invalidos')
|
||||
throw new Error("*Usuario o contraseña invalidos");
|
||||
}
|
||||
if (!usuario.checkIfUnencryptedPasswordIsValid(secreto)) {
|
||||
throw new Error('Usuario o *contraseña invalidos')
|
||||
throw new Error("Usuario o *contraseña invalidos");
|
||||
}
|
||||
const token = await AuthController.signUsuario(
|
||||
usuario.interno ? 'usuarioInterno' : 'usuarioExterno',
|
||||
usuario.interno ? "usuarioInterno" : "usuarioExterno",
|
||||
usuario.id
|
||||
)
|
||||
console.log(token)
|
||||
);
|
||||
console.log(token);
|
||||
res.status(200).json({
|
||||
nombre: usuario.nombre,
|
||||
apellidoPaterno: usuario.apellidoPaterno,
|
||||
apellidoMaterno: usuario.apellidoMaterno,
|
||||
interno: usuario.interno,
|
||||
token
|
||||
})
|
||||
token,
|
||||
});
|
||||
} catch (err) {
|
||||
res.status(400).send(err.message)
|
||||
res.status(400).send(err.message);
|
||||
}
|
||||
}
|
||||
|
||||
static async verificar (req: Request, res: Response) {
|
||||
const usuarios = ['415112132', '41511216']
|
||||
const externos = ['315112132', '31511216']
|
||||
static async verificar(req: Request, res: Response) {
|
||||
const usuarios = ["415112132", "41511216"];
|
||||
const externos = ["315112132", "31511216"];
|
||||
|
||||
const usuarioId = req.params.id
|
||||
const usuarioId = req.params.id;
|
||||
|
||||
const usuarioInterno = {
|
||||
nombre: 'Arturo',
|
||||
apellidoPaterno: 'Guerrero',
|
||||
apellidoMaterno: 'Lopez',
|
||||
institucion: 'Fes acatlan',
|
||||
carrera: 'Matematicas aplicadas',
|
||||
interno: true
|
||||
}
|
||||
nombre: "Arturo",
|
||||
apellidoPaterno: "Guerrero",
|
||||
apellidoMaterno: "Lopez",
|
||||
institucion: "Fes acatlan",
|
||||
carrera: "Matematicas aplicadas",
|
||||
interno: true,
|
||||
};
|
||||
const alumnos = [
|
||||
{
|
||||
cuenta: 124493,
|
||||
nombre: 'Nora',
|
||||
apellidoPaterno: 'Goris',
|
||||
apellidoMaterno: 'Mayans',
|
||||
institucion: 'FES Acatlan',
|
||||
carrera: 'Sociologia',
|
||||
interno: false
|
||||
nombre: "Nora",
|
||||
apellidoPaterno: "Goris",
|
||||
apellidoMaterno: "Mayans",
|
||||
institucion: "FES Acatlan",
|
||||
carrera: "Sociologia",
|
||||
interno: false,
|
||||
},
|
||||
{
|
||||
cuenta: 91770,
|
||||
nombre: 'Manuel',
|
||||
apellidoPaterno: 'Martinez',
|
||||
apellidoMaterno: 'Justo',
|
||||
institucion: 'FES Acatlan',
|
||||
carrera: 'Derecho',
|
||||
interno: false
|
||||
nombre: "Manuel",
|
||||
apellidoPaterno: "Martinez",
|
||||
apellidoMaterno: "Justo",
|
||||
institucion: "FES Acatlan",
|
||||
carrera: "Derecho",
|
||||
interno: false,
|
||||
},
|
||||
{
|
||||
cuenta: 123456789,
|
||||
nombre: 'Enrique',
|
||||
apellidoPaterno: 'Graue',
|
||||
apellidoMaterno: 'Wiechers',
|
||||
institucion: 'Facultad de Mediciona',
|
||||
carrera: 'Medicina',
|
||||
interno: false
|
||||
nombre: "Enrique",
|
||||
apellidoPaterno: "Graue",
|
||||
apellidoMaterno: "Wiechers",
|
||||
institucion: "Facultad de Mediciona",
|
||||
carrera: "Medicina",
|
||||
interno: false,
|
||||
},
|
||||
{
|
||||
cuenta: 40108,
|
||||
nombre: 'Fernando',
|
||||
apellidoPaterno: 'Martinez',
|
||||
apellidoMaterno: 'Ramirez',
|
||||
institucion: 'Facultad de Ciencias',
|
||||
carrera: 'Matematicas',
|
||||
interno: false
|
||||
nombre: "Fernando",
|
||||
apellidoPaterno: "Martinez",
|
||||
apellidoMaterno: "Ramirez",
|
||||
institucion: "Facultad de Ciencias",
|
||||
carrera: "Matematicas",
|
||||
interno: false,
|
||||
},
|
||||
{
|
||||
cuenta: 808684,
|
||||
nombre: "Fernando Israel",
|
||||
apellidoPaterno: "González",
|
||||
apellidoMaterno: "Trejo",
|
||||
institucion: "FES Acatlán",
|
||||
carrera: "MAC",
|
||||
interno: false,
|
||||
},
|
||||
{
|
||||
cuenta: 836807,
|
||||
nombre: "Samuel",
|
||||
apellidoPaterno: "Ornelas",
|
||||
apellidoMaterno: "Rosales",
|
||||
institucion: "FES Acatlán",
|
||||
carrera: "MAC",
|
||||
interno: false,
|
||||
},
|
||||
{
|
||||
cuenta: 415112133,
|
||||
nombre: 'arturo',
|
||||
apellidoPaterno: 'Guerrero',
|
||||
apellidoMaterno: 'Lopez',
|
||||
institucion: 'FES Iztacala',
|
||||
carrera: 'Biologia',
|
||||
interno: false
|
||||
}
|
||||
]
|
||||
nombre: "arturo",
|
||||
apellidoPaterno: "Guerrero",
|
||||
apellidoMaterno: "Lopez",
|
||||
institucion: "FES Iztacala",
|
||||
carrera: "Biologia",
|
||||
interno: false,
|
||||
},
|
||||
];
|
||||
for (let index = 0; index < alumnos.length; index++) {
|
||||
if (alumnos[index].cuenta === +usuarioId) {
|
||||
res.status(200).json(alumnos[index])
|
||||
return
|
||||
res.status(200).json(alumnos[index]);
|
||||
return;
|
||||
}
|
||||
}
|
||||
// const usuarioExterno = {
|
||||
@@ -193,6 +211,6 @@ export class UsuarioController {
|
||||
// res.status(200).json(usuarioExterno)
|
||||
// return
|
||||
// }
|
||||
res.status(400).json({ err: 'no se encontro un usuario' })
|
||||
res.status(400).json({ err: "no se encontro un usuario" });
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user