Commit 08b1a9e3 authored by Wendy Fuertes's avatar Wendy Fuertes

Obtencion de leyenda aleatoriamente

parent 2cea8c87
......@@ -173,6 +173,7 @@ module.exports = (app) => {
for (let i = 0; i < agrupador.length; i++) {
console.log(agrupador[i].metodo);
const datos = await impuestos.sincronizar(agrupador[i].metodo, params);
console.log(datos);
if (datos.transaccion && (datos.listaActividades || datos.listaCodigos)) {
let t2;
try {
......@@ -214,11 +215,11 @@ module.exports = (app) => {
}
});
//registrar incio de operaciones
if (datos.listaCodigos.length < 1) {
veri=false;
if (datos.listaCodigos && datos.listaCodigos.length < 1) {
veri = false;
}
if (datos.listaActividades.length < 1) {
veri=false;
if (datos.listaActividades && datos.listaActividades.length < 1) {
veri = false;
}
await t2.commit();
} catch (e) {
......
......@@ -14,6 +14,7 @@ module.exports = (app) => {
//CREAR FACTURA
async function crear(factura, t) {
let leyenda = await app.dao.venta.leyendas();
const facturas = {};
const puntoVenta = await app.dao.punto_venta.getId(factura.audit_usuario.id_punto_venta, t);
// if (puntoVenta.tipoEmision !== 4) {
......@@ -82,6 +83,7 @@ module.exports = (app) => {
facturas[tipoDoc.codigo][tipoFac].cabecera.cufd = cufd;
facturas[tipoDoc.codigo][tipoFac].cabecera.caed = factura.caed;
facturas[tipoDoc.codigo][tipoFac].cabecera.usuario = factura.audit_usuario.usuario;
facturas[tipoDoc.codigo][tipoFac].cabecera.leyenda = leyenda.descripcion;
}
for (let key in facturas) {
const facturaFirmada = await app.dao.factura.firmar(app.dao.factura.setNill(facturas[key]));
......
......@@ -176,6 +176,7 @@ module.exports = (app) => {
}
async function post(eventoC, usuario, t) {
console.log("----...--- registra eventoC", eventoC)
let eventoRes = await models.evento_significativo.findOne({
attributes: ['id_evento'],
where: {
......@@ -188,16 +189,17 @@ module.exports = (app) => {
transaction: t
});
if (!eventoRes) {
return await models.evento_significativo.create({
var eventoNuevo = await models.evento_significativo.create({
tipo: eventoC.tipo,
fecha_inicio: eventoC.fecha_inicio,
descripcion: eventoC.descripcion.toUpperCase(),
fid_punto_venta: eventoC.idPuntoVenta,
codigo_evento: eventoC.codigoEvento,
_usuario_creacion: usuario.usuario
_usuario_creacion: (usuario.usuario) ? usuario.usuario: usuario
}, {
transaction: t
}).then(async resp =>{
})/* .then(async resp =>{
console.log("----...--- registra evento", resp)
try{
const conn = await impuestos.verificarComunicacion();
if (conn === 66) {
......@@ -208,7 +210,19 @@ module.exports = (app) => {
} catch (e) {
return resp.id_evento;
}
});
}); */
if (eventoNuevo) {
try{
const conn = await impuestos.verificarComunicacion();
if (conn === 66) {
await enviarEvento(eventoNuevo.id_evento, usuario, t);
} else {
throw Error(await app.dao.catalogo.getError(1, conn.toString(), t));
}
} catch (e) {
return eventoNuevo.id_evento;
}
}
} else {
throw Error('El Evento Significativo ya fue creado')
}
......
......@@ -106,6 +106,7 @@ module.exports = (app) => {
}
async function crear(factura, t) {
let leyenda = await app.dao.venta.leyendas();
const facturas = {}, nro = {};
const puntoVenta = await app.dao.punto_venta.getId(factura.audit_usuario.id_punto_venta, t);
if (puntoVenta.tipoEmision > 2) {
......@@ -158,6 +159,7 @@ module.exports = (app) => {
facturas[tipoDoc.codigo][tipoFac].cabecera.cuf = await app.dao.cuf(facturas[tipoDoc.codigo][tipoFac].cabecera.nitEmisor, facturas[tipoDoc.codigo][tipoFac].cabecera.fechaEmision, facturas[tipoDoc.codigo][tipoFac].cabecera.codigoSucursal, app.config.impuestos.codigoModalidad, factura.tipoEmision, tipoDoc.codigoDocumentoFiscal, facturas[tipoDoc.codigo][tipoFac].cabecera.codigoDocumentoSector, facturas[tipoDoc.codigo][tipoFac].cabecera.numeroFactura, facturas[tipoDoc.codigo][tipoFac].cabecera.codigoPuntoVenta);
facturas[tipoDoc.codigo][tipoFac].cabecera.cufd = cufd;
facturas[tipoDoc.codigo][tipoFac].cabecera.usuario = factura.audit_usuario.usuario;
facturas[tipoDoc.codigo][tipoFac].cabecera.leyenda = leyenda.descripcion;
}
for (let key in facturas) {
const facturaFirmada = await firmar(setNill(facturas[key]));
......@@ -166,7 +168,6 @@ module.exports = (app) => {
if (validation) {
throw Error('La estructura XML no cumple las especificaciones XSD de Impuestos Nacionales.');
}
console.log(facturaFirmada);
const idCliente = facturas[key][tipoFac].cabecera.codigoCliente;
const venta = await app.dao.venta.post(facturas[key][tipoFac].cabecera.numeroFactura, facturas[key][tipoFac].cabecera.numeroDocumento, facturas[key][tipoFac].cabecera.nombreRazonSocial, facturas[key][tipoFac].cabecera.montoTotal, factura.tipoEmision, 1, facturaFirmada, facturas[key][tipoFac].cabecera.cuf, cufd, key, puntoVenta.idPuntoVenta, factura.audit_usuario.usuario, facturas[key][tipoFac].cabecera.fechaEmision, idCliente, null, null, t);
//crear detalle
......@@ -427,6 +428,7 @@ module.exports = (app) => {
}
async function crearPaquete(facturas, audit_usuario, t) {
let leyenda = await app.dao.venta.leyendas();
const puntoVenta = await app.dao.punto_venta.getId(audit_usuario.id_punto_venta, t);
if (puntoVenta.tipoEmision > 2) {
throw Error('Tipo de emisión incompatible en el punto de venta del usuario.');
......@@ -486,6 +488,7 @@ module.exports = (app) => {
factura[tipoFac].cabecera.cuf = await app.dao.cuf(factura[tipoFac].cabecera.nitEmisor, factura[tipoFac].cabecera.fechaEmision, factura[tipoFac].cabecera.codigoSucursal, app.config.impuestos.codigoModalidad, facturas[j].tipoEmision, tipoDoc.codigoDocumentoFiscal, factura[tipoFac].cabecera.codigoDocumentoSector, factura[tipoFac].cabecera.numeroFactura, factura[tipoFac].cabecera.codigoPuntoVenta);
factura[tipoFac].cabecera.cufd = cufd;
factura[tipoFac].cabecera.usuario = audit_usuario.usuario;
factura[tipoFac].cabecera.leyenda = leyenda.descripcion;
}
const facturaFirmada = await firmar(setNill(factura));
const schema = xsd.parse(fs.readFileSync(`${_path}/xml/${archivo}.xsd`).toString('utf8').replace('http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd', `${_path}/xml/xmldsig-core-schema.xsd`));
......
......@@ -4,7 +4,7 @@ const { gzip } = require('node-gzip');
const Sequelize = require('sequelize');
const Op = Sequelize.Op;
const crypto = require('crypto');
const convert = require('xml-js');
module.exports = (app) => {
const impuestos = require('../services/impuestos/facturaElectronicaEstandar')(app);
const impuestos2 = require('../services/impuestos/notaFiscalElectronicaTasaCero')(app);
......@@ -282,9 +282,8 @@ module.exports = (app) => {
}
async function get(id, t) {
const leyenda = await app.dao.catalogo.getLeyendas('11');
return await models.venta.findByPk(id, {
attributes: ['id_venta', 'numero_factura', 'cuf', 'cufd', 'fecha_emision', 'fid_cliente', 'monto', 'codigo_documento_sector'],
attributes: ['id_venta', 'numero_factura', 'cuf', 'cufd', 'fecha_emision', 'fid_cliente', 'monto', 'codigo_documento_sector', 'factura'],
include: [
{
attributes: ['codigo'],
......@@ -318,11 +317,13 @@ module.exports = (app) => {
transaction: t
}).then(async res => {
if (res) {
const factura = convert.xml2js(res.factura, { compact: true, ignoreComment: true, fullTagEmptyElement: true });
//const leyenda = await app.dao.catalogo.getLeyendas('11');
const venta = res.toJSON();
venta.fecha_emision = moment(venta.fecha_emision).format('DD/MM/YYYY');
venta.qr = `${app.config.impuestos.codigoQr}&var1=${venta.cuf}&var2=${venta.punto_venta.sucursal.nit}&var3=${venta.numero_factura}`;
venta.literal = await app.dao.numerosLiteral(parseFloat(venta.monto));
venta.leyenda = leyenda;
venta.leyenda = factura.facturaElectronicaEstandar.cabecera.leyenda._text;
return venta;
} else {
return null;
......@@ -814,6 +815,12 @@ module.exports = (app) => {
}
async function leyendas(){
let leyendas=[11, 20, 30, 13, 5/* , 10 */, 15/* , 28 */, 36, 19, 23, 29, 7, 40, 6, 8, 18];
var leyendaElegida = Math.floor(Math.random() * leyendas.length);
return await app.dao.catalogo.getLeyendas(leyendas[leyendaElegida].toString())
}
return {
getId,
getPendiente,
......@@ -841,6 +848,7 @@ module.exports = (app) => {
listar_contingencia,
registrarObs,
buscarIdsVal,
ventasPorPeriodo
ventasPorPeriodo,
leyendas
};
};
......@@ -2626,7 +2626,50 @@ module.exports = {
{fid_punto_venta:1,agrupador:'CODIGOS_ESPECIALES',codigo:'1',descripcion:'CUFD EXTENDIDO'},
{fid_punto_venta:1,agrupador:'CODIGOS_ESPECIALES',codigo:'2',descripcion:'CAED'},
{fid_punto_venta:1,agrupador:'CODIGOS_ESPECIALES',codigo:'3',descripcion:'CAEDFEP'},
{fid_punto_venta:1,agrupador:'CODIGOS_ESPECIALES',codigo:'4',descripcion:'CUAPE'}
{fid_punto_venta:1,agrupador:'CODIGOS_ESPECIALES',codigo:'4',descripcion:'CUAPE'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'1',descripcion:'Ley N° 453: Los medios de comunicación deben promover el respeto de los derechos de los usuarios y consumidores.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'2',descripcion:'Ley N° 453: La entidad financiera debe informar por escrito los motivos por los cuales se denegó un crédito.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'3',descripcion:'Ley N° 453: La entidad financiera debe facilitar en cualquier momento y gratuitamente, toda información de los movimientos bancarios, financieros o de crédito.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'4',descripcion:'Ley N° 453: Los medios de comunicación deben evitar contenidos inapropiados que vulneren la protección de niñas, niños y adolescentes.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'5',descripcion:'Ley N° 453: Puedes acceder a la reclamación cuando tus derechos han sido vulnerados.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'6',descripcion:'Ley N° 453: El proveedor debe brindar atención sin discriminación, con respeto, calidez y cordialidad a los usuarios y consumidores.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'7',descripcion:'Ley N° 453: Tienes derecho a un trato equitativo sin discriminación en la oferta de servicios.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'8',descripcion:'Ley N° 453: El proveedor de productos debe habilitar medios e instrumentos para efectuar consultas y reclamaciones.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'9',descripcion:'Ley N° 453: Está prohibido importar, distribuir o comercializar productos expirados o prontos a expirar.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'10',descripcion:'Ley N° 453: Los contratos de adhesión deben redactarse en términos claros, comprensibles, legibles y deben informar todas las facilidades y limitaciones.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'11',descripcion:'Ley N° 453: Si se te ha vulnerado algún derecho puedes exigir la reposición o restauración.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'12',descripcion:'Ley N° 453: Las publicaciones, mensajes e imágenes no deben promover la sumisión o explotación de las mujeres.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'13',descripcion:'Ley N° 453: Tienes derecho a recibir información que te proteja de la publicidad engañosa.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'14',descripcion:'Ley N° 453: En caso de incumplimiento a lo ofertado o convenido, el proveedor debe reparar o sustituir el servicio.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'15',descripcion:'Ley N° 453: El proveedor debe exhibir certificaciones de habilitación o documentos que acrediten las capacidades u ofertas de servicios especializados.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'16',descripcion:'Ley N° 453: Las publicaciones, mensajes e imágenes no deben deshonrar y atentar contra la dignidad e imagen de la mujer'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'17',descripcion:'Ley N° 453: Los alimentos declarados de primera necesidad deben ser suministrados de manera adecuada, oportuna, continua y a precio justo.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'18',descripcion:'Ley N° 453: Se debe promover el consumo solidario, justo, en armonía con la Madre Tierra y precautelando el hábitat, en el marco del Vivir Bien.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'19',descripcion:'Ley N° 453: Tienes derecho a recibir información sobre las características y contenidos de los servicios que utilices.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'20',descripcion:'Ley N° 453: El proveedor deberá dar cumplimiento a las condiciones ofertadas.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'21',descripcion:'Ley N° 453: Tienes derecho a recibir información sobre las características y contenidos de los productos que consumes.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'22',descripcion:'Ley N° 453: Tienes derecho a un trato equitativo sin discriminación en la oferta de productos.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'23',descripcion:'Ley N° 453: En caso de incumplimiento a lo ofertado o convenido, el proveedor debe reparar o sustituir el servicio.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'24',descripcion:'Ley N° 453: Está prohibido importar, distribuir o comercializar productos prohibidos o retirados en el país de origen por atentar a la integridad física y a la salud.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'25',descripcion:'Ley N° 453: Se debe brindar alternativas de pago por servicios utilizados en emergencia médica u hospitalaria, no pudiendo retenerse al usuario por deuda.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'26',descripcion:'Ley N° 453: Se debe otorgar el auxilio y atención necesarios en casos de urgencia o emergencia hospitalaria, sin aducir excusa alguna.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'27',descripcion:'Ley N° 453: Tienes derecho a denunciar la existencia de productos y servicios que pongan en riesgo tu salud o integridad física.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'28',descripcion:'Ley N° 453: El proveedor de servicios debe habilitar medios e instrumentos para efectuar consultas y reclamaciones.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'29',descripcion:'Ley N° 453: El proveedor deberá suministrar el servicio en las modalidades y términos ofertados o convenidos.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'30',descripcion:'Ley N° 453: Están prohibidas las prácticas comerciales abusivas, tienes derecho a denunciarlas.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'31',descripcion:'Ley N° 453: El proveedor deberá entregar el producto en las modalidades y términos ofertados o convenidos.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'32',descripcion:'Ley N° 453: La entidad financiera tiene la obligación de promover la educación financiera.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'33',descripcion:'Ley N° 453: Cuando lo solicite el paciente, se debe informar los resultados de exámenes, diagnósticos y estudios de laboratorio.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'34',descripcion:'Ley N° 453: En caso de incumplimiento a lo ofertado o convenido, el proveedor debe reparar o sustituir el producto.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'35',descripcion:'Ley N° 453: La entidad financiera debe facilitar en cualquier momento y gratuitamente, toda información de los movimientos bancarios, financieros o de crédito.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'36',descripcion:'Ley N° 453: La interrupción del servicio debe comunicarse con anterioridad a las Autoridades que correspondan y a los usuarios afectados.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'37',descripcion:'Ley N° 453: El prestador de servicio médico debe prescribir medicamentos debidamente autorizados por el Ministerio de Salud.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'38',descripcion:'Ley N° 453: El prestador de servicio médico debe brindar atención de calidad al paciente.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'39',descripcion:'Ley N° 453: Los medios de comunicación deben difundir mensajes o programas de educación de consumo responsable y sustentable.'},
{fid_punto_venta:1,agrupador:'LEYENDAS',codigo:'40',descripcion:'Ley N° 453: Los servicios deben suministrarse en condiciones de inocuidad, calidad y seguridad.'}
], {});
},
......
......@@ -84,8 +84,8 @@ html
br
div(style="width: 100%; text-align: center; font-size: 100%;") "ESTA FACTURA CONTRIBUYE AL DESARROLLO DEL PAÍS. EL USO ILÍCITO DE ÉSTA SERÁ SANCIONADO DE ACUERDO A LEY"
br
//- div(style="width: 100%; text-align: center; font-size: 75%;") #{leyenda.descripcion}
div(style="width: 100%; text-align: center; font-size: 75%;") Ley N° 453: Si se te ha vulnerado algún derecho puedes exigir la reposición o restauración.
div(style="width: 100%; text-align: center; font-size: 75%;") #{leyenda}
//- div(style="width: 100%; text-align: center; font-size: 75%;") Ley N° 453: Si se te ha vulnerado algún derecho puedes exigir la reposición o restauración.
br
div(style="width: 100%; text-align: center; font-size: 100%;") RECIBIDO POR LA ADMINISTRACIÓN TRIBUTARIA
......
......@@ -86,9 +86,9 @@ html
br
div(style="width: 100%; text-align: center; font-size: 100%;") "ESTA DOCUMENTO FISCAL CONTRIBUYE AL DESARROLLO DE NUESTRO PAÍS, EL USO ILICITO ES SANCIONADO PENALMENTE"
br
//- div(style="width: 100%; text-align: center; font-size: 75%;") #{leyenda.descripcion}
//- div(style="width: 100%; text-align: center; font-size: 75%;") EN CUMPLIMIENTO DE LA LEY N° 453 DE 4 DE DICIEMBRE DE 2013, LEY GENERAL DE LOS DERECHOS DE LAS USUARIAS Y LOS USUARIOS DE LAS CONSUMIDORAS Y LOS CONSUMIDORES
div(style="width: 100%; text-align: center; font-size: 75%;") Ley N° 453: Si se te ha vulnerado algún derecho puedes exigir la reposición o restauración.
//- div(style="width: 100%; text-align: center; font-size: 75%;") Ley N° 453: Si se te ha vulnerado algún derecho puedes exigir la reposición o restauración.
div(style="width: 100%; text-align: center; font-size: 75%;") #{leyenda}
br
div(style="width: 100%; text-align: center; font-size: 100%;") RECIBIDO POR LA ADMINISTRACIÓN TRIBUTARIA
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment