61 lines
2.1 KiB
JavaScript
61 lines
2.1 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const Operador_1 = require("../entity/Operador");
|
|
const class_validator_1 = require("class-validator");
|
|
const typeorm_1 = require("typeorm");
|
|
class OperadorController {
|
|
static async create(req, res) {
|
|
const { usuario, secreto, admin } = req.body;
|
|
const operador = new Operador_1.Operador();
|
|
operador.usuario = usuario;
|
|
operador.secreto = secreto;
|
|
operador.admin = admin;
|
|
const errors = await class_validator_1.validate(operador);
|
|
if (errors.length > 0) {
|
|
res.status(400).send(errors);
|
|
}
|
|
operador.hashPassword();
|
|
const repository = typeorm_1.getRepository(Operador_1.Operador);
|
|
try {
|
|
await repository.save(operador);
|
|
}
|
|
catch (e) {
|
|
res.status(409).send('username already in use');
|
|
}
|
|
res.status(201).send('User created');
|
|
}
|
|
static async getAll(req, res) {
|
|
const repository = typeorm_1.getRepository(Operador_1.Operador);
|
|
const result = await repository.find({
|
|
select: ['id', 'usuario', 'admin']
|
|
});
|
|
res.status(200).json(result);
|
|
}
|
|
static async getOne(req, res) {
|
|
const id = +req.params.id;
|
|
const repository = typeorm_1.getRepository(Operador_1.Operador);
|
|
try {
|
|
const operador = await repository.findOneOrFail(id, {
|
|
select: ['id', 'usuario', 'admin']
|
|
});
|
|
res.status(200).json(operador);
|
|
}
|
|
catch (e) {
|
|
res.status(404).send('User not found');
|
|
}
|
|
}
|
|
static async remove(req, res) {
|
|
const id = +req.params.id;
|
|
const repository = typeorm_1.getRepository(Operador_1.Operador);
|
|
try {
|
|
const operador = await repository.findOneOrFail(id);
|
|
repository.remove(operador);
|
|
res.status(204).send();
|
|
}
|
|
catch (error) {
|
|
res.status(404).send('User not found');
|
|
}
|
|
}
|
|
}
|
|
exports.OperadorController = OperadorController;
|
|
//# sourceMappingURL=Operador.js.map
|