This repository has been archived on 2024-10-02. You can view files and clone it, but cannot push or open issues or pull requests.
smart-tag/methods/bindTicketShelving.js

74 lines
3.1 KiB
JavaScript

const express = require('express');
const router = express.Router(); // eslint-disable-line
// const filter = require('../utilities/filter');
const select = require('../db/selectDB');
const maxWagon = require('../db/maxWagon');
router.get('/:collectionFk', async(req, res) => {
// var shelving = "BCD";///introducida por el usuario O en leida de la bbdd?
// var collectionFk = '273449';
const collectionFk = req.params.collectionFk;
ticketCollection(collectionFk);
res.json({message: 'SUCCESS'});
});
module.exports = router;
function ticketCollection(collectionFk) {// parametro collectionFk
select.select(collectionFk, function(err, data) {
maxWagon.maxWagon(collectionFk, function(err, max) {
// aqui iria una función para pedir el numero de shelvings correspondientes
let shelving = ['ABC', 'DFG', 'HIJ'];
// if(filter.isShelving(shelving)){
insertTicket(data, shelving, max);
// }else{
// console.log("¡MATRICULA INCORRECTA!")
// }
});
});
}
function insertTicket(consultaSql, shelving, max) {
const config = require('../config');
const got = require('got');
(async() => {
const info = await config.info;
let key = info.data.token;
let currentUser = info.data.currentUser;
(async() => {
for (let i = 0; i < consultaSql.length; i++) {
for (let j = 0; j < consultaSql[i].Level.toString().length; j++) {
const {body} = await got.post('http://app.etiquetaselectronicas.com:9999/item/batchImportItem', { // eslint-disable-line
json: {
agencyId: currentUser.agencyId,
merchantId: currentUser.merchantId,
storeId: currentUser.storeId,
unitName: currentUser.unitName,
itemList: [
{
attrCategory: 'verdnatura',
attrName: 'conTicket',
barCode: shelving[consultaSql[i].Wagon - 1] + consultaSql[i].Level.toString().charAt(j), // Matricula + nivel
itemTitle: 'Etiqueta Con ticket',
productCode: consultaSql[i].Ticket, // Ticket
custFeature1: consultaSql[i].Client, // Client
custFeature2: consultaSql[i].Agency // Agencia de transporte
}
]
},
responseType: 'json',
headers: {
'Authorization': key
}
});
return true;
// console.log(body,consultaSql[i].Ticket,shelving[consultaSql[i].Wagon-1],consultaSql[i].Level.toString().charAt(j))
}
}
})();
})();
}
exports.insertTicket = insertTicket;