@plasoft/boletos 1.0.37 → 1.0.38
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.js +74 -10
- package/build/index.mjs +74 -10
- package/package.json +1 -1
package/build/index.js
CHANGED
|
@@ -1408,9 +1408,7 @@ function gerarRemessa3({ dados }) {
|
|
|
1408
1408
|
arquivo.add(multaAtraso.padStart(4, "0"));
|
|
1409
1409
|
arquivo.add(" ".padEnd(12, " "));
|
|
1410
1410
|
arquivo.add("01");
|
|
1411
|
-
|
|
1412
|
-
const especie = tipo_documento === "F" ? "0" /* FATURA */ : tipo_documento === "N" ? "1" /* NOTA */ : "2" /* LANCAMENTO */;
|
|
1413
|
-
arquivo.add((especie + boleto.numeroDocumento + "/" + boleto.parcela).padEnd(10, " "));
|
|
1411
|
+
arquivo.add(boleto.identificacaoTitulo.padEnd(10, " "));
|
|
1414
1412
|
arquivo.add((0, import_date_fns4.format)(new Date(boleto.vencimento), "ddMMyy"));
|
|
1415
1413
|
arquivo.add(Number(boleto.valor).toFixed(2).replace(".", "").padStart(13, "0"));
|
|
1416
1414
|
arquivo.add(" ".padEnd(9, " "));
|
|
@@ -1480,10 +1478,17 @@ function gerarRetorno3({ dados }) {
|
|
|
1480
1478
|
continue;
|
|
1481
1479
|
}
|
|
1482
1480
|
const meu_numero = linha.substring(116, 126).trim();
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1481
|
+
let tipo_documento = "";
|
|
1482
|
+
let id_documento = "";
|
|
1483
|
+
if (meu_numero.includes("-")) {
|
|
1484
|
+
const [tipo, id] = meu_numero.split("-");
|
|
1485
|
+
tipo_documento = tipo;
|
|
1486
|
+
id_documento = id;
|
|
1487
|
+
}
|
|
1488
|
+
let especie = "INDEFINIDO";
|
|
1489
|
+
if (tipo_documento.length) {
|
|
1490
|
+
especie = tipo_documento === "N" ? "NFE" : tipo_documento === "F" ? "FAT" : tipo_documento === "L" ? "FIN" : "INDEFINIDO";
|
|
1491
|
+
}
|
|
1487
1492
|
const valor_titulo = Number(linha.substring(152, 165)) / 100;
|
|
1488
1493
|
const abatimento = Number(linha.substring(227, 240)) / 100;
|
|
1489
1494
|
let valor_desconto = Number(linha.substring(240, 253)) / 100;
|
|
@@ -1499,7 +1504,7 @@ function gerarRetorno3({ dados }) {
|
|
|
1499
1504
|
const descontos = abatimento + valor_desconto;
|
|
1500
1505
|
const valor_total = valor_titulo + valor_multa + valor_juros - descontos;
|
|
1501
1506
|
documentos.push({
|
|
1502
|
-
id_documento
|
|
1507
|
+
id_documento,
|
|
1503
1508
|
especie,
|
|
1504
1509
|
valor: valor_pago,
|
|
1505
1510
|
valor_multa,
|
|
@@ -2347,7 +2352,7 @@ function gerarRemessa5({ dados }) {
|
|
|
2347
2352
|
arquivo.add("000000000000000");
|
|
2348
2353
|
arquivo.add("000000000000000");
|
|
2349
2354
|
arquivo.add("000000000000000");
|
|
2350
|
-
arquivo.add(
|
|
2355
|
+
arquivo.add(boleto.identificacaoTitulo.padEnd(25, " "));
|
|
2351
2356
|
arquivo.add(protesto);
|
|
2352
2357
|
arquivo.add(diasProtesto);
|
|
2353
2358
|
arquivo.add(baixarDevolver);
|
|
@@ -2444,7 +2449,63 @@ function gerarRemessa5({ dados }) {
|
|
|
2444
2449
|
}
|
|
2445
2450
|
|
|
2446
2451
|
// src/banks/banco-brasil/gerarRetorno.ts
|
|
2447
|
-
function gerarRetorno4() {
|
|
2452
|
+
function gerarRetorno4({ dados }) {
|
|
2453
|
+
try {
|
|
2454
|
+
const { arquivo } = dados;
|
|
2455
|
+
const documentos = [];
|
|
2456
|
+
for (let i = 0; i < arquivo.length; i++) {
|
|
2457
|
+
let linha = arquivo[i];
|
|
2458
|
+
const banco = linha.substring(0, 3);
|
|
2459
|
+
if (banco !== "001" /* BANCO_BRASIL */) {
|
|
2460
|
+
continue;
|
|
2461
|
+
}
|
|
2462
|
+
const ocorrencia = linha.substring(15, 17);
|
|
2463
|
+
if (ocorrencia !== "06" && ocorrencia !== "17") {
|
|
2464
|
+
continue;
|
|
2465
|
+
}
|
|
2466
|
+
let segmento = linha.substring(13, 14);
|
|
2467
|
+
if (segmento === "T") {
|
|
2468
|
+
const meu_numero = linha.substring(105, 130).trimEnd();
|
|
2469
|
+
let tipo_documento = "INDEFINIDO";
|
|
2470
|
+
let id_documento = meu_numero;
|
|
2471
|
+
if (meu_numero.includes("-")) {
|
|
2472
|
+
const [tipo, id] = meu_numero.split("-");
|
|
2473
|
+
tipo_documento = tipo;
|
|
2474
|
+
id_documento = id;
|
|
2475
|
+
}
|
|
2476
|
+
const especie = tipo_documento.length ? tipo_documento : "INDEFINIDO";
|
|
2477
|
+
linha = arquivo[++i];
|
|
2478
|
+
segmento = linha.substring(13, 14);
|
|
2479
|
+
if (segmento === "U") {
|
|
2480
|
+
const valorAbatimentoString = linha.substring(47, 62);
|
|
2481
|
+
const valorAbatimento = Number(valorAbatimentoString) / 100;
|
|
2482
|
+
const valorDescontoString = linha.substring(32, 47);
|
|
2483
|
+
const valorDesconto = Number(valorDescontoString) / 100;
|
|
2484
|
+
const valorPagoString = linha.substring(77, 92);
|
|
2485
|
+
const valorPago = Number(valorPagoString) / 100;
|
|
2486
|
+
const valorJurosString = linha.substring(17, 32);
|
|
2487
|
+
const valorJuros = Number(valorJurosString) / 100;
|
|
2488
|
+
const valorMulta = 0;
|
|
2489
|
+
const descontos = valorAbatimento + valorDesconto;
|
|
2490
|
+
const valorTotal = valorPago - valorJuros + descontos;
|
|
2491
|
+
const documento = {
|
|
2492
|
+
id_documento,
|
|
2493
|
+
especie,
|
|
2494
|
+
valor: valorPago,
|
|
2495
|
+
valor_multa: valorMulta,
|
|
2496
|
+
valor_juros: valorJuros,
|
|
2497
|
+
valor_desconto: valorDesconto,
|
|
2498
|
+
valor_total: valorTotal
|
|
2499
|
+
};
|
|
2500
|
+
documentos.push(documento);
|
|
2501
|
+
}
|
|
2502
|
+
}
|
|
2503
|
+
}
|
|
2504
|
+
return documentos;
|
|
2505
|
+
} catch (error) {
|
|
2506
|
+
console.log(error);
|
|
2507
|
+
return null;
|
|
2508
|
+
}
|
|
2448
2509
|
}
|
|
2449
2510
|
|
|
2450
2511
|
// src/banks/banco-brasil/index.ts
|
|
@@ -2523,6 +2584,9 @@ function retorno({ banco, dados }) {
|
|
|
2523
2584
|
if (banco === "748" /* SICREDI */) {
|
|
2524
2585
|
return sicredi.gerarRetorno({ banco, dados });
|
|
2525
2586
|
}
|
|
2587
|
+
if (banco === "001" /* BANCO_BRASIL */) {
|
|
2588
|
+
return bancoBrasil.gerarRetorno({ banco, dados });
|
|
2589
|
+
}
|
|
2526
2590
|
}
|
|
2527
2591
|
|
|
2528
2592
|
// src/config/index.ts
|
package/build/index.mjs
CHANGED
|
@@ -1371,9 +1371,7 @@ function gerarRemessa3({ dados }) {
|
|
|
1371
1371
|
arquivo.add(multaAtraso.padStart(4, "0"));
|
|
1372
1372
|
arquivo.add(" ".padEnd(12, " "));
|
|
1373
1373
|
arquivo.add("01");
|
|
1374
|
-
|
|
1375
|
-
const especie = tipo_documento === "F" ? "0" /* FATURA */ : tipo_documento === "N" ? "1" /* NOTA */ : "2" /* LANCAMENTO */;
|
|
1376
|
-
arquivo.add((especie + boleto.numeroDocumento + "/" + boleto.parcela).padEnd(10, " "));
|
|
1374
|
+
arquivo.add(boleto.identificacaoTitulo.padEnd(10, " "));
|
|
1377
1375
|
arquivo.add(format3(new Date(boleto.vencimento), "ddMMyy"));
|
|
1378
1376
|
arquivo.add(Number(boleto.valor).toFixed(2).replace(".", "").padStart(13, "0"));
|
|
1379
1377
|
arquivo.add(" ".padEnd(9, " "));
|
|
@@ -1443,10 +1441,17 @@ function gerarRetorno3({ dados }) {
|
|
|
1443
1441
|
continue;
|
|
1444
1442
|
}
|
|
1445
1443
|
const meu_numero = linha.substring(116, 126).trim();
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1444
|
+
let tipo_documento = "";
|
|
1445
|
+
let id_documento = "";
|
|
1446
|
+
if (meu_numero.includes("-")) {
|
|
1447
|
+
const [tipo, id] = meu_numero.split("-");
|
|
1448
|
+
tipo_documento = tipo;
|
|
1449
|
+
id_documento = id;
|
|
1450
|
+
}
|
|
1451
|
+
let especie = "INDEFINIDO";
|
|
1452
|
+
if (tipo_documento.length) {
|
|
1453
|
+
especie = tipo_documento === "N" ? "NFE" : tipo_documento === "F" ? "FAT" : tipo_documento === "L" ? "FIN" : "INDEFINIDO";
|
|
1454
|
+
}
|
|
1450
1455
|
const valor_titulo = Number(linha.substring(152, 165)) / 100;
|
|
1451
1456
|
const abatimento = Number(linha.substring(227, 240)) / 100;
|
|
1452
1457
|
let valor_desconto = Number(linha.substring(240, 253)) / 100;
|
|
@@ -1462,7 +1467,7 @@ function gerarRetorno3({ dados }) {
|
|
|
1462
1467
|
const descontos = abatimento + valor_desconto;
|
|
1463
1468
|
const valor_total = valor_titulo + valor_multa + valor_juros - descontos;
|
|
1464
1469
|
documentos.push({
|
|
1465
|
-
id_documento
|
|
1470
|
+
id_documento,
|
|
1466
1471
|
especie,
|
|
1467
1472
|
valor: valor_pago,
|
|
1468
1473
|
valor_multa,
|
|
@@ -2310,7 +2315,7 @@ function gerarRemessa5({ dados }) {
|
|
|
2310
2315
|
arquivo.add("000000000000000");
|
|
2311
2316
|
arquivo.add("000000000000000");
|
|
2312
2317
|
arquivo.add("000000000000000");
|
|
2313
|
-
arquivo.add(
|
|
2318
|
+
arquivo.add(boleto.identificacaoTitulo.padEnd(25, " "));
|
|
2314
2319
|
arquivo.add(protesto);
|
|
2315
2320
|
arquivo.add(diasProtesto);
|
|
2316
2321
|
arquivo.add(baixarDevolver);
|
|
@@ -2407,7 +2412,63 @@ function gerarRemessa5({ dados }) {
|
|
|
2407
2412
|
}
|
|
2408
2413
|
|
|
2409
2414
|
// src/banks/banco-brasil/gerarRetorno.ts
|
|
2410
|
-
function gerarRetorno4() {
|
|
2415
|
+
function gerarRetorno4({ dados }) {
|
|
2416
|
+
try {
|
|
2417
|
+
const { arquivo } = dados;
|
|
2418
|
+
const documentos = [];
|
|
2419
|
+
for (let i = 0; i < arquivo.length; i++) {
|
|
2420
|
+
let linha = arquivo[i];
|
|
2421
|
+
const banco = linha.substring(0, 3);
|
|
2422
|
+
if (banco !== "001" /* BANCO_BRASIL */) {
|
|
2423
|
+
continue;
|
|
2424
|
+
}
|
|
2425
|
+
const ocorrencia = linha.substring(15, 17);
|
|
2426
|
+
if (ocorrencia !== "06" && ocorrencia !== "17") {
|
|
2427
|
+
continue;
|
|
2428
|
+
}
|
|
2429
|
+
let segmento = linha.substring(13, 14);
|
|
2430
|
+
if (segmento === "T") {
|
|
2431
|
+
const meu_numero = linha.substring(105, 130).trimEnd();
|
|
2432
|
+
let tipo_documento = "INDEFINIDO";
|
|
2433
|
+
let id_documento = meu_numero;
|
|
2434
|
+
if (meu_numero.includes("-")) {
|
|
2435
|
+
const [tipo, id] = meu_numero.split("-");
|
|
2436
|
+
tipo_documento = tipo;
|
|
2437
|
+
id_documento = id;
|
|
2438
|
+
}
|
|
2439
|
+
const especie = tipo_documento.length ? tipo_documento : "INDEFINIDO";
|
|
2440
|
+
linha = arquivo[++i];
|
|
2441
|
+
segmento = linha.substring(13, 14);
|
|
2442
|
+
if (segmento === "U") {
|
|
2443
|
+
const valorAbatimentoString = linha.substring(47, 62);
|
|
2444
|
+
const valorAbatimento = Number(valorAbatimentoString) / 100;
|
|
2445
|
+
const valorDescontoString = linha.substring(32, 47);
|
|
2446
|
+
const valorDesconto = Number(valorDescontoString) / 100;
|
|
2447
|
+
const valorPagoString = linha.substring(77, 92);
|
|
2448
|
+
const valorPago = Number(valorPagoString) / 100;
|
|
2449
|
+
const valorJurosString = linha.substring(17, 32);
|
|
2450
|
+
const valorJuros = Number(valorJurosString) / 100;
|
|
2451
|
+
const valorMulta = 0;
|
|
2452
|
+
const descontos = valorAbatimento + valorDesconto;
|
|
2453
|
+
const valorTotal = valorPago - valorJuros + descontos;
|
|
2454
|
+
const documento = {
|
|
2455
|
+
id_documento,
|
|
2456
|
+
especie,
|
|
2457
|
+
valor: valorPago,
|
|
2458
|
+
valor_multa: valorMulta,
|
|
2459
|
+
valor_juros: valorJuros,
|
|
2460
|
+
valor_desconto: valorDesconto,
|
|
2461
|
+
valor_total: valorTotal
|
|
2462
|
+
};
|
|
2463
|
+
documentos.push(documento);
|
|
2464
|
+
}
|
|
2465
|
+
}
|
|
2466
|
+
}
|
|
2467
|
+
return documentos;
|
|
2468
|
+
} catch (error) {
|
|
2469
|
+
console.log(error);
|
|
2470
|
+
return null;
|
|
2471
|
+
}
|
|
2411
2472
|
}
|
|
2412
2473
|
|
|
2413
2474
|
// src/banks/banco-brasil/index.ts
|
|
@@ -2486,6 +2547,9 @@ function retorno({ banco, dados }) {
|
|
|
2486
2547
|
if (banco === "748" /* SICREDI */) {
|
|
2487
2548
|
return sicredi.gerarRetorno({ banco, dados });
|
|
2488
2549
|
}
|
|
2550
|
+
if (banco === "001" /* BANCO_BRASIL */) {
|
|
2551
|
+
return bancoBrasil.gerarRetorno({ banco, dados });
|
|
2552
|
+
}
|
|
2489
2553
|
}
|
|
2490
2554
|
|
|
2491
2555
|
// src/config/index.ts
|