"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const Papa = require("papaparse"); const fs = require("fs"); const Carrito_1 = require("../entity/Carrito"); const typeorm_1 = require("typeorm"); const Tipo_1 = require("../entity/Tipo"); const Equipo_1 = require("../entity/Equipo"); class CarritoController { async carga(req, res) { const cargaFile = req.file; if (!cargaFile) { res.status(400).send({ status: false, data: 'No file is selected.' }); return false; } const fileReadResult = fs.readFileSync(cargaFile.path, 'utf-8'); const parseResult = await Papa.parse(fileReadResult, { header: true }); console.log(parseResult); let data = {}; try { for (const i in parseResult.data) { data = parseResult.data[i]; if (!data.kiosko || !data.alias_carrito || !data.no_serie || !data.no_inventario) { continue; } console.log(data); await this.saveCarrito(data); } } catch (err) { res.status(400).send(err.message); return; } res.status(200).send('okay'); } async saveCarrito(data) { const carritoRepository = typeorm_1.getRepository(Carrito_1.Carrito); const tipoRepository = typeorm_1.getRepository(Tipo_1.Tipo); const equipoRepository = typeorm_1.getRepository(Equipo_1.Equipo); const tipo = new Tipo_1.Tipo(); const carrito = new Carrito_1.Carrito(); const equipo = new Equipo_1.Equipo(); const tipoFind = await tipoRepository.findOne({ where: { nombre: data.tipo } }); if (!tipoFind) { tipo.nombre = data.tipo; } const carritoFind = await carritoRepository.findOne({ where: { kiosko: data.kiosko, alias: data.alias_carrito, tipo: tipoFind } }); if (!carritoFind) { carrito.kiosko = data.kiosko; carrito.alias = data.alias_carrito; carrito.tipo = !tipoFind ? tipo : tipoFind; } equipo.alias = data.equipo_carrito; equipo.noSerie = data.no_serie; equipo.noInventario = data.no_inventario; equipo.carrito = !carritoFind ? carrito : carritoFind; if (!tipoFind) await tipoRepository.save(tipo); if (!carritoFind) await carritoRepository.save(carrito); await equipoRepository.save(equipo); } } exports.CarritoController = CarritoController; //# sourceMappingURL=Carrito.js.map