"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.escopo3ferroviario1 = void 0; const resposta_1 = require("../../../../resposta"); const gwp_1 = require("../../../ListasFatoresEmissao/gwp"); const listaConcessionaria_1 = require("../../../ListasFatoresEmissao/listaConcessionaria"); const listas_1 = require("../../../ListasFatoresEmissao/listas"); const interfaces_1 = require("../../../interfaces"); exports.escopo3ferroviario1 = { escopo: "Escopo3", idTipoFonte: "escopo3ferroviario1", descricao: "(Upstream) Transporte Ferroviário por carga fracionada e distância", estruturaCadastro: [ { idCampo: "descricao", descricao: "Descrição da frota de trens", tipo: interfaces_1.tiposCamposGee.texto, }, { idCampo: "concessionaria", descricao: "Concessionária", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: listas_1.listaConcessionarias, }, ], estruturaRegistro: [ { campo: "distancia", descricao: "Distância percorrida (km)", tipo: interfaces_1.tiposCamposGee.numero, }, { campo: "carga", descricao: "Carga transportada (tonelada)", tipo: interfaces_1.tiposCamposGee.numero, }, ], formula: ({ cad, reg }) => { const fator = listaConcessionaria_1.listaConcessionaria.find((a) => a.ref == cad.concessionaria); if (!fator) { return resposta_1.respostaCM.addErro("não foi encontrado tipo de veiculo"); } const distancia = reg.distancia; const carga = reg.carga; const massa = carga * distancia; const emissaoCO2 = (massa * fator.CO2) / 1000; const emissaoCH4 = (massa * fator.CH4) / 1000; const emissaoN2O = (massa * fator.N2O) / 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 = 0; //Arredondamento para duas casas do valor return resposta_1.respostaCM.addResultado([carbono, bio]); }, }; //# sourceMappingURL=ferroviario1.js.map