"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.escopo3rodoviario1 = void 0; const resposta_1 = require("../../../../resposta"); const fatorEmissaoCombustivel_1 = require("../../../ListasFatoresEmissao/fatorEmissaoCombustivel"); const gwp_1 = require("../../../ListasFatoresEmissao/gwp"); const listaFatorAno_1 = require("../../../ListasFatoresEmissao/listaFatorAno"); const listaRodoviarioMes_1 = require("../../../ListasFatoresEmissao/listaRodoviarioMes"); const listas_1 = require("../../../ListasFatoresEmissao/listas"); const tiposVeiculos_1 = require("../../../ListasFatoresEmissao/tiposVeiculos"); const interfaces_1 = require("../../../interfaces"); exports.escopo3rodoviario1 = { escopo: "Escopo3", idTipoFonte: "escopo3rodoviario1", descricao: "(Upstream) Rodoviário por tipo e ano da frota", estruturaCadastro: [ { idCampo: "tipo", descricao: "Tipo de veículo ", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: listas_1.listaVeiculos, }, { idCampo: "ano", descricao: "Ano do veículo", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: listas_1.listaAno, }, ], estruturaRegistro: [ { campo: "consumo", descricao: "Consumo de combustível", tipo: interfaces_1.tiposCamposGee.numero, }, { campo: "unidade", descricao: "Unidade de medida consumida", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["m³ (GNV)", "Litros"], }, ], formula: ({ cad, reg, inventario, fonte, registro }) => { //Cadastro const detalheTipoVeiculo = Object.values(tiposVeiculos_1.tiposDeVeiculosDetalhe).find((a) => a.descricao == cad.tipo); if (!detalheTipoVeiculo) { return resposta_1.respostaCM.addErro("não foi encontrado tipo de veiculo"); } const ano = cad.ano; if (!ano) { return resposta_1.respostaCM.addErro("não foi encontrado tipo de veiculo"); } const consumo = reg.consumo; //Fatores de emissão let [CH4, CO2, N2O, BIO, QTDCombustivelBio, QTDCombustivelFossil] = [ 0, 0, 0, 0, 0, 0, ]; const mesAno = fonte.quantidadeRegistros; //Calculo por ano if (mesAno == 1) { if (detalheTipoVeiculo.categoria == "Gasolina") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_N2O; BIO = 1; QTDCombustivelFossil = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000] .percGasolina); QTDCombustivelBio = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio); } else if (detalheTipoVeiculo.categoria == "Etanol") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_N2O; BIO = 1; QTDCombustivelFossil = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000] .percGasolina); QTDCombustivelBio = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio); } else if (detalheTipoVeiculo.categoria == "GNV") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[2].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[2].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[2].fator_emissao_N2O; BIO = 1; QTDCombustivelFossil = consumo; } else if (detalheTipoVeiculo.categoria == "Diesel") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_N2O; BIO = 1; QTDCombustivelFossil = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000] .percGasolina); QTDCombustivelBio = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio); } } const periodo = Number((registro.periodoInicio || "").split("-")[1]); //Calculo por mes if (mesAno != 1) { console.log(periodo); if (detalheTipoVeiculo.categoria == "Gasolina") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_N2O; BIO = 1; if (periodo == 1) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolJan); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolJan); } if (periodo == 2) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolFev); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolFev); } if (periodo == 3) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolMar); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolMar); } if (periodo == 4) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolAbr); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolAbr); } if (periodo == 5) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolMai); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolMai); } if (periodo == 6) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolJun); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolJun); } if (periodo == 7) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolJul); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolJul); } if (periodo == 8) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolAgo); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolAgo); } if (periodo == 9) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolSet); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolSet); } if (periodo == 10) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolOut); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolOut); } if (periodo == 11) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolNov); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolNov); } if (periodo == 12) { QTDCombustivelFossil = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolDez); QTDCombustivelBio = consumo * (1 - listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2006] .etanolDez); } } else if (detalheTipoVeiculo.categoria == "Etanol") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_N2O; BIO = 1; QTDCombustivelFossil = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000] .percGasolina); QTDCombustivelBio = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio); } else if (detalheTipoVeiculo.categoria == "GNV") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[2].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[2].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[2].fator_emissao_N2O; BIO = 1; QTDCombustivelFossil = consumo; } else if (detalheTipoVeiculo.categoria == "Diesel") { CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CH4; CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CO2; N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_N2O; // eslint-disable-next-line @typescript-eslint/no-unused-vars BIO = 1; QTDCombustivelFossil = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000] .percGasolina); // eslint-disable-next-line @typescript-eslint/no-unused-vars QTDCombustivelBio = consumo * (1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio); } } //Calculo const emissaoCO2 = (CO2 * QTDCombustivelFossil) / 1000; const emissaoCH4 = (CH4 * consumo) / 1000; const emissaoN2O = (N2O * consumo) / 1000; const carbono = emissaoCO2 * Number(gwp_1.gwp[0].gwp) + emissaoCH4 * Number(gwp_1.gwp[1].gwp) + emissaoN2O * Number(gwp_1.gwp[2].gwp); const bio = QTDCombustivelBio * Number(gwp_1.gwp[3].gwp); //Arredondadmento return resposta_1.respostaCM.addResultado([carbono, bio]); }, }; //# sourceMappingURL=rodoviario1.js.map