This commit is contained in:
2021-06-22 20:45:25 -05:00
parent 14f9937d93
commit 600358d640
9 changed files with 628 additions and 83 deletions

114
routes/creditos.js Normal file
View File

@@ -0,0 +1,114 @@
const router = require("express").Router();
const Credito = require("../models/credito").Credito;
const itemCredito = require("../models/credito").itemCredito;
const { checkAuth } = require("../middlewares/authentication");
router.get("/credito", checkAuth, async (req, res) => {
var creditos;
let limite = req.get('limite');
creditos = await Credito.find({ user: req.userData._id }).sort({
date: "desc",
}).limit(parseInt(limite));
return res.send({
status: "ok",
data: creditos,
});
});
router.post("/credito", checkAuth, async (req, res) => {
const { nombreCredito,valor,tasa_interes } = req.body;
var creditos = await Credito.find({
user: req.userData._id,
nombreCredito: nombreCredito,
});
if (creditos.length == 0) {
const credito = new Credito({
nombreCredito: nombreCredito,
valor:valor,
tasa_interes:tasa_interes
});
credito.user = req.userData._id;
await credito.save();
return res.json({
status: "OK",
});
}
return res.status(500).json({
status: "FAIL",
});
});
router.delete("/credito", checkAuth, async (req, res) => {
try {
const userId = req.userData._id;
const id = req.query.id;
const resultado = await Credito.deleteOne({ user: userId, _id: id });
return res.json({ status: "ok", data: resultado });
} catch (error) {
console.log(error);
return res.status(500).json({ status: "fail", error: error });
}
});
router.put("/credito", checkAuth, async (req, res) => {
const { _id, fecha, detalle, valor, tipo } = req.body;
const credito_edit = await Credito.findOne({
_id: _id,
user: req.userData._id,
});
const itemP = new itemCredito({ fecha,detalle, valor, tipo });
credito_edit.datos.push(itemP);
await credito_edit.save();
res.json({
status: "OK",
});
});
router.get("/credito_items", checkAuth, async (req, res) => {
const _id = req.query.credito_id;
const credito_edit = await Credito.findOne({
_id: _id,
user: req.userData._id,
});
return res.json({
status: "OK",
data: credito_edit.datos,
});
});
router.delete("/creditoitem", checkAuth, async (req, res) => {
try {
const userId = req.userData._id;
const iditem = req.query.iditem;
const credito_id = req.query.idCredito;
var credito_edit = await Credito.findOne({
user: userId,
_id: credito_id,
});
console.log(credito_edit)
console.log("---------------")
credito_edit.datos.id(iditem).remove();
await credito_edit.save();
return res.json({ status: "ok" });
} catch (error) {
console.log(error);
return res.status(500).json({ status: "fail", error: error });
}
});
module.exports = router;