const config = require('../config'); const got = require('got'); const filter = require('../utilities/filter'); const insertDB = require('../db/insertDB'); const express = require('express'); const router = express.Router(); router.get('/', async(req, res) => { ///DATOS INTRODUCIDOS POR EL USUARIO//// var barcode = "A0A3B8224DBF"; //valido = "A0A3B82"+ 4 CARACTERES HEXADECIMALES (0-F) var shelving = "ABC"; //valido = 3 CARACTERES LETRAS (A-Z) var level = "4"; ////////////////////////////////////// const result = bindShelvingTag(barcode, shelving, level); if(result == 'INVALID_PLATE'){ res.json({message: 'MATRICULA INCORRECTA'}) }else if (result == 'INVALID_TAG_CODE'){ res.json({message: 'CODIGO DE ETIQUETA INCORRECTO'}) }else{ res.json({message: 'SUCCESS'}); } }); module.exports = router; function bindShelvingTag(barcode, shelving, level){ if(filter.isBarcode(barcode)){ if(filter.isShelving(shelving)){ let shelvingId = shelving + level; insertShelving(shelvingId); bindShelving(barcode, shelvingId); insertDB.insertDB(barcode, shelving, level); }else{ //console.log("¡MATRICULA INCORRECTA!"); return 'INVALID_PLATE'; } }else{ //console.log("¡CODIGO DE ETIQUETA INCORRECTO!") return 'INVALID_TAG_CODE'; } } function insertShelving(shelvingId){ (async() => { const info = await config.info let key = info.data.token let currentUser = info.data.currentUser; (async() => { const { body } = await got.post('http://app.etiquetaselectronicas.com:9999/item/batchImportItem', { json: { agencyId: currentUser.agencyId, merchantId: currentUser.merchantId, storeId: currentUser.storeId, unitName: currentUser.unitName, itemList: [ { attrCategory: "verdnatura", attrName: "sinTicket", barCode: shelvingId,//Matricula + nivel itemTitle: "Etiqueta Sin ticket", } ] }, responseType: 'json', headers: { "Authorization": key } }) //console.log("CARRO: ",body) })(); })(); } function bindShelving(barcode, shelvingId){ (async() => { const info = await config.info let key = info.data.token; (async() => { const { body } = await got.post('http://app.etiquetaselectronicas.com:9999/bind/batchBind', { json: { storeId: config.storeId, tagItemBinds: [{ eslBarcode: barcode, itemBarcode: shelvingId } ] }, responseType: 'json', headers: { "Authorization": key } }) //console.log("ETIQUETA: ",body) })(); })(); } exports.bindShelving = bindShelving;