index.js 1.08 KB
module.exports = function(comprobante, cuerpos) {

  return new Promise((resolve, reject) => {

    var idTransaccion = comprobante.idTransaccion;

    knex('planex_transacciones')
      .where({ id: idTransaccion } )
      .then(function(transax) {

        transax = transax[0];

        fs.readFile(config.dirDestino + '\\' + transax.archivoRecibido, 'utf8', (err, fileString) => {

          if (err) {
            reject(err);
            return;
          }

          var planex = require('../planex')(fileString);

          var result = require('./todos')(planex, cuerpos, fileString, idTransaccion);

          var nombreRecadv = 'RECADV_' + planex.identificaxMensaje.idMensaje + '.txt';

          fs.writeFile(config.dirRecadv + '/' + nombreRecadv, result, err => {

            if (err) return reject(err);

            knex('planex_transacciones')
              .where({ id: idTransaccion })
              .update({ archivoEnviado: nombreRecadv, estado: 1 })
              .then(resolve)
              .catch(reject);

          });

        });

      })
      .catch(reject);

  });
}