"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fontesEscopo1Efluente = void 0; const resposta_1 = require("../../resposta"); const listas_1 = require("../ListasFatoresEmissao/listas"); const listas_2 = require("../ListasFatoresEmissao/listas"); const interfaces_1 = require("../interfaces"); const efluenteRefatorado_1 = require("./efluenteRefatorado"); exports.fontesEscopo1Efluente = { escopo: "Escopo1", idTipoFonte: "combustaoEfluentes", descricao: "Efluentes", estruturaCadastro: [ //PASSO 1 { idCampo: "tipoEfluente", descricao: "Qual o tipo de efluente gerado?", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: listas_2.listaEfluentes2, }, { idCampo: "passaTratamento", descricao: "O efluente passa por algum tipo de tratamento?", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["Sim", "Não"], }, { idCampo: "lancaAmbiente", descricao: "O efluente é lançado ao ambiente?", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["Sim", "Não"], }, { idCampo: "tipoDisposicao", descricao: "Caso o efluente seja lançado ao ambiente, qual a sua disposição final?", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: [ "Efluente parado a céu aberto", "Lançamento em reservatórios, lagos e estuários", "Lançamento em corpos dágua (que não reservatórios, lagos e estuários)", "Lançamento em corpos dágua (não especificado)", ], }, //PASSO 2 { idCampo: "doisTrat", descricao: "São aplicados, sequencialmente, dois tipos de tratamentos anaeróbicos ao efluente gerado?", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["Sim", "Não"], }, //PASSO 3 é o cadastro //PASSO 4 Componente orgânico degradável do efluente { idCampo: "componenteOrg", descricao: "Componente orgânico degradável do efluente", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "uniComponenteOrg", descricao: "Unidade do componente orgânico degradável do efluente", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["kgDBO/m3", "kgDQO/m3"], }, { idCampo: "qtdNitrogenio", descricao: "Quantidade de Nitrogênio no efluente gerado kgN/m3", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "fatorEfluente", descricao: "Fator de emissão de N2O pela descarga de efluente kgN2O-N/kgN", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "nitrogenioRemovido", descricao: "Componente orgânico removido com o lodo no ano do inventário [kgN/ano]", tipo: interfaces_1.tiposCamposGee.numero, }, { //PASSO 5 seleção idCampo: "tratamentoEfluente", descricao: "Escolha o tipo de tratamento aplicado ao efluente", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: listas_1.listaEfluentes, }, { //PASSO 6 idCampo: "recuperada", descricao: "Quantidade de CH4 recuperada do tratamento tCH4/ano", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "destinoGas", descricao: "No ano do inventário, qual o destino do biogás recuperado?", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["Queima em flare", "Geração de energia"], }, //PASSO 7 reg //PASSO 8 Componente orgânico degradável do efluente { idCampo: "componenteOrg2", descricao: "Componente orgânico degradável do efluente", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "uniComponenteOrg2", descricao: "Unidade do componente orgânico degradável do efluente", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["kgDBO/m3", "kgDQO/m3"], }, { idCampo: "qtdNitrogenio2", descricao: "Quantidade de Nitrogênio no efluente gerado kgN/m3", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "fatorEfluente2", descricao: "Fator de emissão de N2O pela descarga de efluente kgN2O-N/kgN", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "nitrogenioRemovido2", descricao: "Nitrogênio removido com o lodo no ano do inventário [kgN/ano]", tipo: interfaces_1.tiposCamposGee.numero, }, //PASSO 9 { idCampo: "tratamentoEfluente2", descricao: "Escolha o tipo de tratamento aplicado ao efluente", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: listas_1.listaEfluentes, }, { //PASSO 10 idCampo: "recuperada2", descricao: "Quantidade de CH4 recuperada do tratamento", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "destinoGas2", descricao: "No ano do inventário, qual o destino do biogás recuperado? ", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["Queima em flare", "Geração de energia"], }, //PASSO 11 reg //PASSO 12 { idCampo: "uniComponenteOrg3", descricao: "Unidade do componente orgânico degradável do efluente", tipo: interfaces_1.tiposCamposGee.opcoes, opcoes: ["kgDBO/m3", "kgDQO/m3"], }, { idCampo: "componenteOrg3", descricao: "Componente orgânico degradável do efluente", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "qtdNitrogenio3", descricao: "Quantidade de nitrogênio no efluente após tratamento", tipo: interfaces_1.tiposCamposGee.numero, }, { idCampo: "fatorEfluente3", descricao: "Fator de emissão de N2O da disposição final do efluente", tipo: interfaces_1.tiposCamposGee.numero, }, ], estruturaRegistro: [ //passo 2 { campo: "qtdEfluente", descricao: "Quantidade de efluente líquido gerada no ano do inventário [m³/ano]", tipo: interfaces_1.tiposCamposGee.numero, }, //passo 7 { campo: "qtdEfluente2", descricao: "Quantidade de efluente líquido após a aplicação do primeiro tratamento m³/ano", tipo: interfaces_1.tiposCamposGee.numero, }, //passo 11 { campo: "qtdEfluente3", descricao: "Quantidade de efluente líquido tratado lançado ao ambiente", tipo: interfaces_1.tiposCamposGee.numero, }, ], formula: ({ cad, reg }) => { const novoValor = (0, efluenteRefatorado_1.efluenteRefatorado)(cad.destinoGas2, //ok cad.recuperada2, //ok cad.destinoGas, //ok cad.recuperada, //ok cad.uniComponenteOrg3, //ok cad.componenteOrg3, //ok reg.qtdEfluente3, //ok cad.uniComponenteOrg2, //ok cad.recuperada2, //ok reg.qtdEfluente, //ok cad.qtdNitrogenio, //ok cad.qtdNitrogenio3, //ok cad.tipoEfluente, //ok cad.fatorEfluente, //ok reg.qtdEfluente2, //ok cad.qtdNitrogenio2, //ok cad.componenteOrg2, //ok cad.nitrogenioRemovido2, // ok cad.componenteOrg2, //ok cad.doisTrat, //ok cad.uniComponenteOrg, //ok cad.recuperada, //ok cad.componenteOrg, //ok cad.tratamentoEfluente, //ok cad.fatorEfluente2, //ok cad.fatorEfluente3, //ok cad.tratamentoEfluente2, //ok cad.tipoDisposicao); let [carbono, bio] = [0, 0]; carbono = novoValor.total; bio = novoValor.biogenico; /* let efluente = listaEfluente.find((a) => a.ref == cad.tratamentoEfluente) if (efluente == null) { efluente = listaEfluente.find((a) => a.ref == 12) } let efluente2 = listaEfluente2.find((a) => a.ref == cad.tratamentoEfluente2) if (efluente2 == null) { // eslint-disable-next-line @typescript-eslint/no-non-null-assertion efluente2 = listaEfluente2.find((a) => a.ref == 9)! } let [unidade] = [0] if (cad.uniComponenteOrg == 'kgDBO/m3') { unidade = 0.6 } else if (cad.uniComponenteOrg == 'kgDQO/m3') { unidade = 0.25 } let [unidade2] = [0] if (cad.uniComponenteOrg2 == 'kgDBO/m3') { unidade2 = 0.6 } else if (cad.uniComponenteOrg2 == 'kgDQO/m3') { unidade2 = 0.25 } let [unidade3] = [0] if (cad.uniComponenteOrg3 == 'kgDBO/m3') { unidade3 = 0.6 } else if (cad.uniComponenteOrg3 == 'kgDQO/m3') { unidade3 = 0.25 } let bio = 0 let carbono = 0 let ch4 = 0 let n2o = 0 let D69 = cad.qtdNitrogenio if (D69 == null || D69 == 0) { D69 = efluente2.teor } let D108 = cad.qtdNitrogenio2 if (D108 == null || D108 == 0) { D108 = efluente2.teor } let D145 = cad.qtdNitrogenio3 if (D145 == null || D145 == 0) { D145 = efluente2.teor } if (cad.doisTrat == 'Não') { ////////////////////////////////UM TIPO DE TRATAMENTO/////////////////////////////// ch4 = (reg.qtdEfluente * (cad.componenteOrg - cad.nitrogenioRemovido) * unidade) / 1000 - cad.recuperada + (reg.qtdEfluente3 * cad.componenteOrg3 * unidade3) / 1000 n2o = reg.qtdEfluente * D69 * (((44 / 28) * cad.fatorEfluente) / 1000) + reg.qtdEfluente2 * D108 * (((44 / 14) * cad.fatorEfluente) / 1000) + reg.qtdEfluente3 * D145 * (((44 / 28) * cad.fatorEfluente3) / 1000) bio = cad.recuperada * (44 / 16) //ok carbono = Number(gwp[1].gwp) * ch4 + Number(gwp[2].gwp) * n2o /////////////////////////////DOIS TIPOS DE TRATAMENTO///////////////////////////// } else if (cad.doisTrat == 'Sim') { ch4 = (reg.qtdEfluente * (cad.componenteOrg - cad.nitrogenioRemovido) * unidade) / 1000 - cad.recuperada + (reg.qtdEfluente2 * (cad.componenteOrg2 - cad.nitrogenioRemovido2) * unidade2) / 1000 - cad.recuperada2 n2o = reg.qtdEfluente * cad.qtdNitrogenio * (((44 / 28) * cad.fatorEfluente) / 1000) + reg.qtdEfluente2 * cad.qtdNitrogenio2 * (((44 / 14) * cad.fatorEfluente) / 1000) + reg.qtdEfluente3 * cad.qtdNitrogenio3 * (((44 / 28) * cad.fatorEfluente3) / 1000) bio = cad.recuperada * (44 / 16) + cad.recuperada2 * (44 / 16) carbono = Number(gwp[1].gwp) * ch4 + Number(gwp[2].gwp) * n2o } else { /////////////////////////////Nenhum tipo de tratamento/////////////////////////// ch4 = 0 n2o = 0 bio = 0 carbono = 0 } console.log('ch4', ch4) console.log('n2o', n2o) console.log('bio', bio) console.log('carbono', carbono) */ return resposta_1.respostaCM.addResultado([carbono, bio]); }, condicaoCadastro: [ { campos: [ "componenteOrg", "uniComponenteOrg", "qtdNitrogenio", "fatorEfluente", "nitrogenioRemovido", "tratamentoEfluente", "recuperada", "destinoGas", "doisTrat", ], condicao: ({ passaTratamento }) => passaTratamento == "Sim", }, { campos: [ "componenteOrg2", "uniComponenteOrg2", "qtdNitrogenio2", "fatorEfluente2", "nitrogenioRemovido2", "tratamentoEfluente2", "recuperada2", "destinoGas2", ], condicao: ({ doisTrat }) => doisTrat == "Sim", }, ], }; //# sourceMappingURL=escopo1Efluente.js.map