141 lines
No EOL
5.3 KiB
JavaScript
141 lines
No EOL
5.3 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.fontesEscopo2EletricidadeEsc = void 0;
|
|
const resposta_1 = require("../../../resposta");
|
|
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
|
|
const listaEnergia_1 = require("../../ListasFatoresEmissao/listaEnergia");
|
|
const listas_1 = require("../../ListasFatoresEmissao/listas");
|
|
const interfaces_1 = require("../../interfaces");
|
|
exports.fontesEscopo2EletricidadeEsc = {
|
|
escopo: "Escopo2",
|
|
idTipoFonte: "eletricidadeEsc",
|
|
descricao: "Eletricidade escolha por compra",
|
|
estruturaCadastro: [
|
|
{
|
|
idCampo: "tipoFonte",
|
|
descricao: "Tipo de fonte de geração de energia",
|
|
tipo: interfaces_1.tiposCamposGee.opcoes,
|
|
opcoes: [
|
|
"Eólica",
|
|
"Fotovoltaica",
|
|
"Heliotérmica",
|
|
"Geotérmica",
|
|
"Hidroelétrica",
|
|
"Termoelétrica",
|
|
"Maremotriz",
|
|
],
|
|
},
|
|
{
|
|
idCampo: "combustivel",
|
|
descricao: "Combustível",
|
|
tipo: interfaces_1.tiposCamposGee.opcoes,
|
|
opcoes: listas_1.listaEnergiaEmissoes,
|
|
},
|
|
{
|
|
idCampo: "possuiFator",
|
|
descricao: "Você possui o fator de emissão para essa fonte?",
|
|
tipo: interfaces_1.tiposCamposGee.opcoes,
|
|
opcoes: ["Sim", "Não"],
|
|
},
|
|
{
|
|
idCampo: "eficiencia",
|
|
descricao: "Qual a eficiência da planta geradora?",
|
|
tipo: interfaces_1.tiposCamposGee.numero,
|
|
},
|
|
],
|
|
estruturaRegistro: [
|
|
{
|
|
campo: "eletricidade",
|
|
descricao: "Eletricidade abordagem Esc.Compra",
|
|
tipo: interfaces_1.tiposCamposGee.numero,
|
|
},
|
|
{
|
|
campo: "fatorEmissao",
|
|
descricao: "Fator de emissão CH4 sugerido",
|
|
tipo: interfaces_1.tiposCamposGee.numero,
|
|
},
|
|
{
|
|
campo: "fatorEmissaoCO2",
|
|
descricao: "Fator de emissão CO2 sugerido",
|
|
tipo: interfaces_1.tiposCamposGee.numero,
|
|
},
|
|
{
|
|
campo: "fatorEmissaoN2O",
|
|
descricao: "Fator de emissão N2O sugerido",
|
|
tipo: interfaces_1.tiposCamposGee.numero,
|
|
},
|
|
{
|
|
campo: "fatorEmissaoBio",
|
|
descricao: "Fator de emissão CH4 Biogênico sugerido",
|
|
tipo: interfaces_1.tiposCamposGee.numero,
|
|
},
|
|
],
|
|
formula: ({ cad, reg }) => {
|
|
const tipoFonte = cad.tipoFonte;
|
|
if (!tipoFonte) {
|
|
return resposta_1.respostaCM.addErro("Não foi encontrado tipo de fonte");
|
|
}
|
|
const combustivel = listaEnergia_1.listaEnergia.find((a) => a.ref == cad.combustivel) || null;
|
|
if (combustivel == null) {
|
|
console.log("teste");
|
|
}
|
|
const possuiFator = cad.possuiFator;
|
|
if (!possuiFator) {
|
|
return resposta_1.respostaCM.addErro("Não foi encontrado possui fator?");
|
|
}
|
|
const eficiencia = cad.eficiencia;
|
|
if (!eficiencia) {
|
|
return resposta_1.respostaCM.addErro("não foi encontrado eficiencia");
|
|
}
|
|
let [CO2, CH4, N2O, BIO, i] = [0, 0, 0, 0, 0];
|
|
const fatores = (index, TipoComb) => {
|
|
if (combustivel == null) {
|
|
return;
|
|
}
|
|
if (combustivel.combustivel == TipoComb) {
|
|
CH4 = listaEnergia_1.listaEnergia[index].fator_emissao_CH4;
|
|
CO2 = listaEnergia_1.listaEnergia[index].fator_emissao_CO2;
|
|
N2O = listaEnergia_1.listaEnergia[index].fator_emissao_N2O;
|
|
BIO = listaEnergia_1.listaEnergia[index].fator_emissao_CO2;
|
|
}
|
|
};
|
|
for (i = 0; i < 50; i++) {
|
|
fatores(i, listaEnergia_1.listaEnergia[i].combustivel);
|
|
}
|
|
const emissaoCH4 = (Number(reg.eletricidade) / (cad.eficiencia / 100)) * CH4;
|
|
const emissaoCO2 = (Number(reg.eletricidade) / (cad.eficiencia / 100)) * CO2;
|
|
const emissaoN2O = (Number(reg.eletricidade) / (cad.eficiencia / 100)) * N2O;
|
|
let carbono = 0;
|
|
let bio = 0;
|
|
if (tipoFonte == "Termoelétrica") {
|
|
carbono =
|
|
emissaoCH4 * Number(gwp_1.gwp[0].gwp) +
|
|
emissaoCO2 * Number(gwp_1.gwp[1].gwp) +
|
|
emissaoN2O * Number(gwp_1.gwp[2].gwp);
|
|
bio = Number(reg.eletricidade) * BIO;
|
|
}
|
|
else {
|
|
if (possuiFator == "Não") {
|
|
carbono =
|
|
emissaoCH4 * Number(gwp_1.gwp[0].gwp) * 0 +
|
|
emissaoCO2 * Number(gwp_1.gwp[1].gwp) * 0 +
|
|
emissaoN2O * Number(gwp_1.gwp[2].gwp) * 0;
|
|
bio = Number(reg.eletricidade) * BIO * 0;
|
|
}
|
|
else {
|
|
carbono =
|
|
emissaoCH4 * Number(gwp_1.gwp[0].gwp) +
|
|
emissaoCO2 * Number(gwp_1.gwp[1].gwp) +
|
|
emissaoN2O * Number(gwp_1.gwp[2].gwp);
|
|
}
|
|
}
|
|
return resposta_1.respostaCM.addResultado([carbono, bio]);
|
|
},
|
|
condicaoCadastro: [
|
|
{
|
|
campos: ["combustivel"],
|
|
condicao: ({ tipoFonte }) => tipoFonte == "Termoelétrica",
|
|
},
|
|
],
|
|
};
|
|
//# sourceMappingURL=eletricidadeEsc.js.map
|