restauração

This commit is contained in:
Luiz Silva 2024-05-07 10:50:06 -03:00
parent c7c8e377c3
commit 4d5c641223
357 changed files with 23543 additions and 591 deletions

View file

@ -1,2 +0,0 @@
const alfabeto = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".split("");
export const aleatorio = (tamanho) => Array.from({ length: tamanho || 8 }, () => `ale-${alfabeto[Math.floor(Math.random() * 1000) % alfabeto.length]}`).join("");

View file

@ -1,48 +0,0 @@
import { z } from "zod";
export declare const InterfaceAuntenticacao: z.ZodObject<{
codigo_usuario: z.ZodString;
nome_usuario: z.ZodString;
email_usuario: z.ZodString;
documento_usuario: z.ZodString;
organizacao: z.ZodString;
rotas: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
sistema: z.ZodString;
sistema_cor: z.ZodString;
sistema_nome: z.ZodString;
sistema_logo: z.ZodString;
/** as url de integração serão armazenadas pelo sistema resíduos e identificado pelo código do token */
codigo_token: z.ZodString;
url_usuarios: z.ZodString;
url_empreendedores: z.ZodString;
url_empreendimentos: z.ZodString;
}, "strip", z.ZodTypeAny, {
codigo_usuario: string;
nome_usuario: string;
email_usuario: string;
documento_usuario: string;
organizacao: string;
rotas: {};
sistema: string;
sistema_cor: string;
sistema_nome: string;
sistema_logo: string;
codigo_token: string;
url_usuarios: string;
url_empreendedores: string;
url_empreendimentos: string;
}, {
codigo_usuario: string;
nome_usuario: string;
email_usuario: string;
documento_usuario: string;
organizacao: string;
rotas: {};
sistema: string;
sistema_cor: string;
sistema_nome: string;
sistema_logo: string;
codigo_token: string;
url_usuarios: string;
url_empreendedores: string;
url_empreendimentos: string;
}>;

View file

@ -1,21 +0,0 @@
import { z } from "zod";
export const InterfaceAuntenticacao = z.object({
// usuários
codigo_usuario: z.string().uuid(),
nome_usuario: z.string(),
email_usuario: z.string(),
documento_usuario: z.string(),
organizacao: z.string(),
rotas: z.object({}),
// Dados do sistema
sistema: z.string(),
sistema_cor: z.string(),
sistema_nome: z.string(),
sistema_logo: z.string(),
// integrações
/** as url de integração serão armazenadas pelo sistema resíduos e identificado pelo código do token */
codigo_token: z.string(),
url_usuarios: z.string().url(),
url_empreendedores: z.string().url(),
url_empreendimentos: z.string().url(),
});

View file

@ -1,2 +0,0 @@
/** Sistemas vão conversar por meio de autorizações tipar eles aqui */
export * from "./auntenticacaoResiduos";

View file

@ -1,16 +0,0 @@
export const uuid_null = "00000000-0000-0000-0000-000000000000";
/** Colunas Presentes n maioria das tabelas */
export var camposComuns;
(function (camposComuns) {
camposComuns["codigo"] = "codigo";
camposComuns["excluido"] = "excluido";
camposComuns["data_hora_criacao"] = "data_hora_criacao";
camposComuns["data_hora_atualizacao"] = "data_hora_atualizacao";
camposComuns["codigo_usuario_criacao"] = "codigo_usuario_criacao";
camposComuns["codigo_usuario_atualizacao"] = "codigo_usuario_atualizacao";
})(camposComuns || (camposComuns = {}));
/** Palavras comumente usadas */
export var tx;
(function (tx) {
tx["token"] = "token";
})(tx || (tx = {}));

View file

@ -1,11 +0,0 @@
export var operadores;
(function (operadores) {
operadores["="] = "=";
operadores["!="] = "!=";
operadores[">"] = ">";
operadores[">="] = ">=";
operadores["<"] = "<";
operadores["<="] = "<=";
operadores["like"] = "like";
operadores["in"] = "in";
})(operadores || (operadores = {}));

View file

@ -1 +0,0 @@
export * from "./urls";

View file

@ -1 +0,0 @@
export const cdn_carro_de_boi = "https://carro-de-boi-idz-one.b-cdn.net";

View file

@ -1,10 +0,0 @@
export * from "./respostas";
export * from "./autorizacoes";
export * from "./constantes";
export * from "./consulta";
export * from "./aleatorio";
export * from "./texto_busca";
export * from "./unidades_medida";
export * from "./uuid";
export * from "./provedores";
export * from "./ecosistema";

View file

@ -1,5 +0,0 @@
export var provedores;
(function (provedores) {
provedores["betha-sistemas"] = "Betha Sistemas";
provedores["e-licencie-gov"] = "e-licencie Gov";
})(provedores || (provedores = {}));

View file

@ -1,73 +0,0 @@
import { esperar } from "./variaveisComuns";
export const codigosErros = {
400: "Erro de requisição",
403: "Não autenticado",
500: "Erro interno",
504: "Tempo de resposta excedido",
};
export class Resposta {
constructor(funcaoErroInterno, opcoes) {
this.funcaoErroInterno = funcaoErroInterno;
this.detalhesErroInterno = (opcoes === null || opcoes === void 0 ? void 0 : opcoes.detalhesErroInterno) || false;
}
addResultado(resultado) {
return {
codigo: 200,
eErro: false,
valor: resultado,
erro: undefined,
};
}
addSucesso(resultado) {
return this.addResultado(resultado);
}
addTrue() {
return this.addResultado(true);
}
addErro(erro, codigo) {
return {
codigo: codigo || 400,
eErro: true,
erro: erro,
valor: undefined,
};
}
addErroEspera(erro) {
return {
codigo: 504,
eErro: true,
erro: erro || codigosErros[504],
valor: undefined,
};
}
addErroInterno(...opcoes) {
//comunica o suporte sobre o erro
this.funcaoErroInterno(...opcoes);
return {
codigo: 500,
eErro: true,
erro: "Erro interno: Contate o suporte técnico.",
valor: undefined,
detalhes: this.detalhesErroInterno ? opcoes : undefined,
};
}
async addPromise(promise, limiteEspera) {
try {
const resultado = await Promise.race([
Promise.resolve(promise())
.then((re) => this.addResultado(re))
.catch((er) => this.addErro(er.message || er)),
...(limiteEspera
? [esperar(limiteEspera).then(() => this.addErroEspera())]
: []),
]);
return resultado;
}
catch (error) {
return this.addErro("Erro na resolução da Promessa.");
}
}
}
export const respostaCM = new Resposta(() => {
//
});

View file

@ -1,71 +0,0 @@
export const gerarRespostas = (registrarErroInterno) => {
/**
* Gera uma resposta de sucesso
*/
const valor = (valor) => {
return {
cod: 200,
valor,
mensagem: undefined,
eErro: false,
eCerto: true,
};
};
/**
* Gera uma resposta de sucesso com valor true
*/
const valorTrue = () => {
return {
cod: 200,
valor: true,
mensagem: undefined,
eErro: false,
eCerto: true,
};
};
/**
* Gera uma resposta de erro conhecido
*/
const erro = (mensagem, detalhes) => {
return {
cod: 400,
valor: undefined,
mensagem,
eErro: true,
eCerto: false,
detalhes,
};
};
/**
* Gera uma resposta de erro de permissão,será necessário fazer o login novamente
*/
const erroPermissao = (mensagem, detalhes) => {
return {
cod: 403,
valor: undefined,
mensagem: mensagem || "Sem permissão para esse recurso.",
eErro: true,
eCerto: false,
detalhes,
};
};
/**
* Gera uma resposta de erro desconhecido, geralmente tem origem de um exception
*/
const erroInterno = (parametros, mensagem) => {
const resRegistro = registrarErroInterno(parametros);
const mensagemFim = `${mensagem || "Erro interno"}`;
return Object.assign({ cod: 500, valor: undefined, mensagem: mensagemFim, eErro: true, eCerto: false }, resRegistro);
};
return {
valor,
valorTrue,
erro,
erroPermissao,
erroInterno,
};
};
/**
* Uso de respostas em comuns
*/
export const respostaComuns = gerarRespostas(() => ({}));

View file

@ -1,11 +0,0 @@
/** gerar o texto de busca removendo caracteres especies e caixa alta */
export const texto_busca = (...texto) => texto
.map((txt) => txt === null || txt === undefined
? ""
: String(txt)
.normalize("NFD")
// biome-ignore lint/suspicious/noMisleadingCharacterClass: <explanation>
.replace(/[\u0300-\u036f]/g, "")
.replace(/\s+/g, " ")
.toLowerCase())
.join(" ");

View file

@ -1,72 +0,0 @@
export const unidades_medida = [
{
unidade: "kg",
nome: "Quilograma",
unidade_normalizada: "kg",
normalizar: (valor) => valor,
tipo: "massa",
},
{
unidade: "g",
nome: "Grama",
unidade_normalizada: "kg",
normalizar: (valor) => valor / 1000,
tipo: "massa",
},
{
unidade: "ton",
nome: "Tonelada",
unidade_normalizada: "kg",
normalizar: (valor) => valor * 1000,
tipo: "massa",
},
{
unidade: "L",
nome: "Litro",
unidade_normalizada: "L",
normalizar: (valor) => valor,
tipo: "volume",
},
{
unidade: "m3",
nome: "Metro Cúbico",
unidade_normalizada: "L",
normalizar: (valor) => valor * 1000,
tipo: "volume",
},
{
unidade: "mL",
nome: "Mililitro",
unidade_normalizada: "L",
normalizar: (valor) => valor / 1000,
tipo: "volume",
},
{
unidade: "cm",
nome: "Centímetro",
unidade_normalizada: "m",
normalizar: (valor) => valor / 100,
tipo: "comprimento",
},
{
unidade: "mm",
nome: "Milímetro",
unidade_normalizada: "m",
normalizar: (valor) => valor / 1000,
tipo: "comprimento",
},
{
unidade: "m",
nome: "Metro",
unidade_normalizada: "m",
normalizar: (valor) => valor,
tipo: "comprimento",
},
{
unidade: "km",
nome: "Quilômetro",
unidade_normalizada: "m",
normalizar: (valor) => valor * 1000,
tipo: "comprimento",
},
];

View file

@ -1,12 +0,0 @@
//Gerar uma uuid V4
const letras = "0123456789abcdef".split("");
export const uuid = () => {
letras.sort(() => Math.random() - 0.5);
const modelo = "xxxxxxxx-xxxx-4xxx-xxxx-xxxxxxxxxxxx".split("");
const retorno = modelo
.map((letra) => letra === "x"
? letras[((1000 * Math.random()) | 0) % letras.length]
: letra)
.join("");
return retorno;
};

View file

@ -1 +0,0 @@
export const esperar = (ms) => new Promise((resolve) => setTimeout(() => resolve(true), ms));

View file

@ -1 +0,0 @@
export declare const aleatorio: (tamanho?: number) => string;

View file

@ -1,48 +0,0 @@
import { z } from "zod";
export declare const InterfaceAuntenticacao: z.ZodObject<{
codigo_usuario: z.ZodString;
nome_usuario: z.ZodString;
email_usuario: z.ZodString;
documento_usuario: z.ZodString;
organizacao: z.ZodString;
rotas: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
sistema: z.ZodString;
sistema_cor: z.ZodString;
sistema_nome: z.ZodString;
sistema_logo: z.ZodString;
/** as url de integração serão armazenadas pelo sistema resíduos e identificado pelo código do token */
codigo_token: z.ZodString;
url_usuarios: z.ZodString;
url_empreendedores: z.ZodString;
url_empreendimentos: z.ZodString;
}, "strip", z.ZodTypeAny, {
codigo_usuario: string;
nome_usuario: string;
email_usuario: string;
documento_usuario: string;
organizacao: string;
rotas: {};
sistema: string;
sistema_cor: string;
sistema_nome: string;
sistema_logo: string;
codigo_token: string;
url_usuarios: string;
url_empreendedores: string;
url_empreendimentos: string;
}, {
codigo_usuario: string;
nome_usuario: string;
email_usuario: string;
documento_usuario: string;
organizacao: string;
rotas: {};
sistema: string;
sistema_cor: string;
sistema_nome: string;
sistema_logo: string;
codigo_token: string;
url_usuarios: string;
url_empreendedores: string;
url_empreendimentos: string;
}>;

View file

@ -1,2 +0,0 @@
/** Sistemas vão conversar por meio de autorizações tipar eles aqui */
export * from "./auntenticacaoResiduos";

View file

@ -1,14 +0,0 @@
export declare const uuid_null = "00000000-0000-0000-0000-000000000000";
/** Colunas Presentes n maioria das tabelas */
export declare enum camposComuns {
codigo = "codigo",
excluido = "excluido",
data_hora_criacao = "data_hora_criacao",
data_hora_atualizacao = "data_hora_atualizacao",
codigo_usuario_criacao = "codigo_usuario_criacao",
codigo_usuario_atualizacao = "codigo_usuario_atualizacao"
}
/** Palavras comumente usadas */
export declare enum tx {
token = "token"
}

View file

@ -1,26 +0,0 @@
export declare enum operadores {
"=" = "=",
"!=" = "!=",
">" = ">",
">=" = ">=",
"<" = "<",
"<=" = "<=",
like = "like",
in = "in"
}
export type tipoFiltro = {
coluna: string;
valor: any;
operador: keyof typeof operadores | operadores;
ou?: boolean;
};
export type interfaceConsulta = {
offset?: number;
limit?: number;
filtros?: tipoFiltro[];
ordem?: string;
ordemTipo?: "asc" | "desc";
colunas?: string[];
apenasConsulta?: boolean;
apenasContagem?: boolean;
};

View file

@ -1 +0,0 @@
export * from "./urls";

View file

@ -1 +0,0 @@
export declare const cdn_carro_de_boi = "https://carro-de-boi-idz-one.b-cdn.net";

View file

@ -1,10 +0,0 @@
export * from "./respostas";
export * from "./autorizacoes";
export * from "./constantes";
export * from "./consulta";
export * from "./aleatorio";
export * from "./texto_busca";
export * from "./unidades_medida";
export * from "./uuid";
export * from "./provedores";
export * from "./ecosistema";

View file

@ -1,4 +0,0 @@
export declare enum provedores {
"betha-sistemas" = "Betha Sistemas",
"e-licencie-gov" = "e-licencie Gov"
}

View file

@ -1,36 +0,0 @@
export declare const codigosErros: {
400: string;
403: string;
500: string;
504: string;
};
export interface tipoRespostaSucesso<T> {
codigo: 200;
eErro: false;
valor: T;
erro: undefined;
detalhes?: any[];
}
export interface tipoRespostaErro {
codigo: keyof typeof codigosErros;
eErro: true;
erro: string;
valor: undefined;
detalhes?: any[];
}
export type tipoResposta<T> = tipoRespostaSucesso<T> | tipoRespostaErro;
export declare class Resposta<opcoesErroInterno extends any[]> {
funcaoErroInterno: (...opcoes: opcoesErroInterno) => void | Promise<void>;
detalhesErroInterno: boolean;
constructor(funcaoErroInterno: (...arg1: opcoesErroInterno) => void | Promise<void>, opcoes?: {
detalhesErroInterno?: boolean;
});
addResultado<T>(resultado: T): tipoResposta<T>;
addSucesso(resultado: string): tipoResposta<string>;
addTrue(): tipoResposta<true>;
addErro(erro: string, codigo?: keyof typeof codigosErros): tipoRespostaErro;
addErroEspera(erro?: string): tipoRespostaErro;
addErroInterno(...opcoes: opcoesErroInterno): tipoRespostaErro;
addPromise<T>(promise: () => Promise<T> | T, limiteEspera?: number): Promise<tipoResposta<T>>;
}
export declare const respostaCM: Resposta<[]>;

View file

@ -1,34 +0,0 @@
export type tipoRespostaSucesso<T> = {
cod: 200;
valor: T;
mensagem: undefined;
eErro: false;
eCerto: true;
detalhe?: undefined;
};
export type tipoRespostaErro = {
cod: 400 | 403 | 500;
valor: undefined;
mensagem: string;
eErro: true;
eCerto: false;
detalhes?: string[];
};
export type tipoResposta<T> = tipoRespostaSucesso<T> | tipoRespostaErro;
export declare const gerarRespostas: <T>(registrarErroInterno: (erro: T) => Partial<tipoRespostaErro>) => {
valor: <T_1>(valor: T_1) => tipoRespostaSucesso<T_1>;
valorTrue: () => tipoRespostaSucesso<true>;
erro: (mensagem: string, detalhes?: string[]) => tipoRespostaErro;
erroPermissao: (mensagem?: string, detalhes?: string[]) => tipoRespostaErro;
erroInterno: (parametros: T, mensagem?: string) => tipoRespostaErro;
};
/**
* Uso de respostas em comuns
*/
export declare const respostaComuns: {
valor: <T>(valor: T) => tipoRespostaSucesso<T>;
valorTrue: () => tipoRespostaSucesso<true>;
erro: (mensagem: string, detalhes?: string[]) => tipoRespostaErro;
erroPermissao: (mensagem?: string, detalhes?: string[]) => tipoRespostaErro;
erroInterno: (parametros: unknown, mensagem?: string) => tipoRespostaErro;
};

View file

@ -1,2 +0,0 @@
/** gerar o texto de busca removendo caracteres especies e caixa alta */
export declare const texto_busca: (...texto: any[]) => string;

View file

@ -1,7 +0,0 @@
export declare const unidades_medida: {
unidade: string;
nome: string;
unidade_normalizada: string;
normalizar: (valor: number) => number;
tipo: "massa" | "volume" | "comprimento";
}[];

View file

@ -1 +0,0 @@
export declare const uuid: () => string;

View file

@ -1 +0,0 @@
export declare const esperar: (ms: number) => Promise<true>;

View file

@ -0,0 +1,4 @@
export declare const efluenteRefatorado: ($D$124: string, $E$121: number, $D$85: string, $E$82: number, $E$140: string, D140: number, D132: number, E102: string, E121: number, D53: number, D69: any, D145: any, D34: string, D70: any, D95: number, D108: any, D63: number, D102: number, D103: number, $E$48: string, $E$63: string, E82: number, D64: number, D74: string, D109: any, D146: any, D113: string, D39: string) => {
total: number;
biogenico: number;
};

249
dist/GEE/Escopo1/efluenteRefatorado.js vendored Normal file
View file

@ -0,0 +1,249 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.efluenteRefatorado = void 0;
/** Simula função soma do excel */
const SOMA = (...vl) => vl.reduce((a, b) => a + b, 0);
/** Simula função SE do excel */
const SE = (condicao, valorVerdadeiro, valorFalso) => (condicao ? valorVerdadeiro : valorFalso);
/** Simula função SEERRO do excel */
const SEERRO = (valor, valorErro) => {
try {
return valor();
}
catch (e) {
return valorErro;
}
};
/** Emula o PROCV no excel */
const PROCV = (busca, matriz, index, valorErro) => {
const linha = matriz.find(([chave]) => chave === busca);
if (!linha)
return valorErro;
const retorno = linha[index - 1];
return retorno === undefined ? valorErro : retorno;
};
const forcaErro = () => {
return;
};
const ÉERROS = (verificar) => {
try {
const valor = verificar();
if ([
"#N/D",
"#NOME?",
"#REF!",
"#VALOR!",
"#DIV/0!",
"#NULO!",
"#NUM!",
].includes(valor)) {
return true;
}
if (typeof valor === "number" && Number.isNaN(valor)) {
return true;
}
if (valor === null || valor === undefined) {
return true;
}
return false;
}
catch (e) {
return true;
}
};
const efluenteRefatorado = (
/** No ano do inventário, qual o destino do biogás recuperado? */
$D$124,
/** Quantidade 4 de CH4 recuperada do tratamento [tCH4/ano] */
$E$121,
/** No ano do inventário, qual o destino do biogás recuperado? */
$D$85,
/** Quantidade 2 de CH4 recuperada do tratamento [tCH4/ano] */
$E$82,
/** Unidade */
$E$140,
/**Componente orgânico degradável do efluente*/
D140,
/** Componente orgânico degradável do efluente */
D132,
/** Unidade */
E102,
/**Quantidade 3 de CH4 recuperada do tratamento*/
E121,
/**Quantidade de efluente líquido gerada no ano do inventário*/
D53,
/** Quantidade de Nitrogênio no efluente gerado, na entrada do tratamento*/
D69,
/** Quantidade de nitrogênio no efluente após tratamento*/
D145,
/** QQual o tipo de efluente gerado?*/
D34,
/** Fator de emissão de N2O do tratamento do efluente*/
D70,
/** Quantidade de efluente líquido após a aplicação do primeiro tratamento*/
D95,
/** Quantidade de nitrogênio no efluente após o primeiro tratamento*/
D108,
/** Componente orgânico degradável do efluente, na entrada do tratamento*/
D63,
/** Componente orgânico degradável do efluente, na entrada do tratamento*/
D102,
/** Componente orgânico do efluente removido com o lodo*/
D103,
/** São aplicados, sequencialmente, dois tipos de tratamentos ao efluente gerado?*/
$E$48,
/** unidade*/
$E$63,
/** Quantidade 1 de CH4 recuperada do tratamento*/
E82,
/** Componente orgânico do efluente removido com o lodo*/
D64,
/** Escolha o tipo de tratamento do efluente*/
D74,
/** Fator de emissão de N2O do tratamento do efluente*/
D109,
/** Fator de emissão de N2O da disposição final do efluente*/
D146,
/** Escolha o tipo de tratamento aplicado ao efluente*/
D113,
/** Caso o efluente tratado seja lançado ao ambiente, qual a sua disposição final?*/
D39) => {
/** Emissões de N2O por tratamento e/ou disposição final de efluentes [tN2O/ano] */
const efu_tipo_de_eflu = [
["Efluentes do refino de álcool", 2.4],
["Efluentes da produção de cerveja e malte", 0.06],
["Efluentes da processamento de peixes", 0.6],
["Efluentes da produção de ferro e aço", 0.25],
["Efluentes de frigoríficos", 0.19],
["Efluentes da produção de fertilizantes nitrogenados", 0.5],
["Efluentes da produção de plásticos e resinas", 0.25],
["Efluentes da produção de amido", 0.9],
];
const eflu_tipo_tratamento_MCF = [
[
"Tratamento aeróbio (lodo ativado, lagoa aerada, etc)",
0.03,
0.02,
0.01,
0.016,
],
["Fossa séptica", 0.5, 0.3, 0.13, 0.0],
["Reator anaeróbio", 0.8, 0.48, 0.2, 0.0],
["Lagoa anaeróbia profunda (profundidade > 2 metros)", 0.8, 0.48, 0.2, 0.0],
["Lagoa anaeróbia rasa (profundidade < 2 metros)", 0.2, 0.12, 0.05, 0.0],
["Lagoa facultativa (profundidade < 2 metros)", 0.2, 0.12, 0.05, 0.0],
["Lagoa de maturação (profundidade < 2 metros)", 0.2, 0.12, 0.05, 0.0],
["Fossas secas", 0.1, 0.06, 0.03, 0.0],
["Lançamento em corpos d'água (não especificado)", 0.11, 0.07, 0.03, 0.005],
[
" Lançamento em corpos d'água (que não reservatórios, lagos e estuários)",
0.04,
0.02,
0.01,
0.005,
],
["Lançamento em reservatórios, lagos e estuários", 0.19, 0.11, 0.05, 0.005],
["Efluente parado a céu aberto", 0.5, 0.3, 0.13, 0.005],
];
const D77 = SE(D70 == "", SE(ÉERROS(() => (44 / 28) * PROCV(D74, eflu_tipo_tratamento_MCF, 5, forcaErro())), 0, (44 / 28) * PROCV(D74, eflu_tipo_tratamento_MCF, 5, forcaErro())), (44 / 28) * D70);
const D116 = SE(D109 == "", SE(ÉERROS(() => (44 / 14) *
PROCV(D113, eflu_tipo_tratamento_MCF.map(([v1, , , v4]) => [v1, v4]), 2, forcaErro())), 0, (44 / 14) *
PROCV(D113, eflu_tipo_tratamento_MCF.map(([v1, , , , v5]) => [v1, v5]), 2, forcaErro())), (44 / 14) * D109);
const D149 = SE(D146 == "", SE(ÉERROS(() => (44 / 28) * PROCV(D39, eflu_tipo_tratamento_MCF, 5, forcaErro())), 0, (44 / 28) * PROCV(D39, eflu_tipo_tratamento_MCF, 5, forcaErro())), (44 / 28) * D146);
const $E$155 = SEERRO(() => SOMA((D53 *
SE(D69 == "", SEERRO(PROCV(D34, efu_tipo_de_eflu, 2, 0), 0), D69) *
D77) /
1000, (D95 *
SE(D108 == "", SEERRO(() => PROCV(D34, efu_tipo_de_eflu, 2, 0), 0), D108) *
D116) /
1000, (D132 *
SE(D145 == "", SEERRO(() => PROCV(D34, efu_tipo_de_eflu, 2, 0), 0), D145) *
D149) /
1000), 0);
const D148 = SE(ÉERROS(() => PROCV(D39, eflu_tipo_tratamento_MCF.map(([v1, , , v4]) => [v1, v4]), 2, forcaErro())), 0, PROCV(D39, eflu_tipo_tratamento_MCF.map(([v1, , , v4]) => [v1, v4]), 4, forcaErro()));
const D147 = SE(ÉERROS(() => PROCV(D39, eflu_tipo_tratamento_MCF.map(([v1, , , v3]) => [v1, v3]), 3, forcaErro())), 0, PROCV(D39, eflu_tipo_tratamento_MCF.map(([v1, , , v3]) => [v1, v3]), 3, forcaErro()));
const D115 = SE(ÉERROS(() => PROCV(D113, eflu_tipo_tratamento_MCF.map(([v1, , , v4]) => [v1, v4]), 4, forcaErro())), 0, PROCV(D113, eflu_tipo_tratamento_MCF.map(([v1, , , v4]) => [v1, v4]), 4, forcaErro()));
const D114 = SE(ÉERROS(() => PROCV(D113, eflu_tipo_tratamento_MCF, 3, forcaErro())), 0, PROCV(D113, eflu_tipo_tratamento_MCF, 3, forcaErro()));
const D76 = SE(ÉERROS(() => PROCV(D74, eflu_tipo_tratamento_MCF.map(([v1, , , v4]) => [v1, v4]), 2, forcaErro())), 0, PROCV(D74, eflu_tipo_tratamento_MCF, 4, forcaErro()));
const D75 = SE(ÉERROS(() => PROCV(D74, eflu_tipo_tratamento_MCF.map(([v1, , v3]) => [v1, v3]), 2, forcaErro())), 0, PROCV(D74, eflu_tipo_tratamento_MCF.map(([v1, , v3]) => [v1, v3]), 2, forcaErro()));
/** Metano (CH4)*/
const gwp_CH4 = 28;
const gwp_N2O = 265;
/** Emissões de CH4 por tratamento e/ou disposição final de efluentes [tCH4/ano] */
const $E154 = SOMA((D53 *
(D63 - D64) *
SE($E$63 == "[kgDQO/m3]", D76, SE($E$63 == "[kgDBO/m3]", D75, 0))) /
1000 -
SE($E$63 == "", 0, E82), SE($E$48 == "Sim", (D95 *
(D102 - D103) *
SE(E102 == "[kgDQO/m3]", D115, SE(E102 == "[kgDBO/m3]", D114, 0))) /
1000 -
SE(E102 == "", 0, E121), 0), (D132 *
D140 *
SE($E$140 == "[kgDQO/m3]", D148, SE($E$140 == "[kgDBO/m3]", D147, 0))) /
1000);
const $E$154 = $E154;
const $F$154 = SE($E154 < 0, "O dado de metano recuperado é maior que o de metano gerado. Revise seus cálculos.", "");
const $Listas = { $BZ$3: "Queima em flare", $BZ$4: "Geração de energia" };
/** outras fontes co2 */
const total_EFL_outras_CO2e = SOMA(0);
/** Emissões em CO2e por tratamento e/ou disposição final de efluentes [tCO2e/ano] */
const EFL_CO2e = SEERRO(() => SE($E154 < 0, 0, $E$154 * gwp_CH4 + $E$155 * gwp_N2O), 0);
/** Relato por outras ferramentas */
const total_EFL_outras_biog = SOMA(0);
/** Emissões em CO2 biogênico por tratamento de efluentes [tCO2/ano] */
const EFL_biogênico = SE($F$154 == "", SE($D$85 == $Listas.$BZ$3, $E$82 * (44 / 16), 0) +
SE($D$124 == $Listas.$BZ$3, $E$121 * (44 / 16), 0), 0);
/** Emissões totais em CO2 equivalente (toneladas métricas) */
const total = SOMA(EFL_CO2e, total_EFL_outras_CO2e);
/** Emissões totais de CO2 biogênico (toneladas métricas) */
const biogenico = SOMA(EFL_biogênico, total_EFL_outras_biog);
console.log({
total,
biogenico,
});
console.log({
$D$124,
$E$121,
$D$85,
$E$82,
$E$140,
D140,
D132,
E102,
E121,
D53,
D69,
D145,
D34,
D70,
D95,
D108,
D63,
D102,
D103,
$E$48,
$E$63,
E82,
D64,
D74,
D109,
D146,
D113,
D39,
});
console.log({
EFL_CO2e,
$E154,
$E$154,
gwp_CH4,
$E$155,
gwp_N2O,
});
return {
total,
biogenico,
};
};
exports.efluenteRefatorado = efluenteRefatorado;
//# sourceMappingURL=efluenteRefatorado.js.map

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../interfaces";
export declare const fontesEscopo1AtividadesAgro: tipoFonteObjeto<[
"descricao",
"gas"
], [
"emissoes",
"emissoesCO2bio",
"remocoesCO2bio"
]>;

View file

@ -0,0 +1,57 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1AtividadesAgro = void 0;
const resposta_1 = require("../../resposta");
const gwp_1 = require("../ListasFatoresEmissao/gwp");
const listas_1 = require("../ListasFatoresEmissao/listas");
const interfaces_1 = require("../interfaces");
exports.fontesEscopo1AtividadesAgro = {
escopo: "Escopo1",
idTipoFonte: "atividadesAgro",
descricao: "Atividades Agrícolas",
estruturaCadastro: [
{
idCampo: "descricao",
descricao: "Descrição da atividade",
tipo: interfaces_1.tiposCamposGee.texto,
},
{
idCampo: "gas",
descricao: "Gás de Efeito Estufa",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaGasComposto2,
},
],
estruturaRegistro: [
{
campo: "emissoes",
descricao: "Emissões GEE em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissoesCO2bio",
descricao: "Emissões de CO2 biogênico em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "remocoesCO2bio",
descricao: "Remoções de CO2 biogênico em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const tipoGas = gwp_1.gwp.find((a) => a.ref == cad.gas);
if (!tipoGas) {
return resposta_1.respostaCM.addErro("Não foi encontrado tipo de Gás ou Composto");
}
const descricao = cad.descricao;
if (!descricao) {
return resposta_1.respostaCM.addErro("Não foi encontrado descrição");
}
const emissao = reg.emissoes;
const bio = reg.emissoesCO2bio;
const carbono = Number(emissao) * Number(tipoGas.gwp);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1AtividadesAgro.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1AtividadesAgro.js","sourceRoot":"","sources":["../../../src/GEE/Escopo1/escopo1AtividadesAgro.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,qDAAkD;AAClD,2DAAmE;AACnE,8CAAqE;AAExD,QAAA,2BAA2B,GAGpC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,gBAAgB;IAC7B,SAAS,EAAE,sBAAsB;IACjC,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,wBAAwB;YACnC,IAAI,EAAE,2BAAc,CAAC,KAAK;SAC3B;QACD;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,sBAAsB;YACjC,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,0BAAiB;SAC1B;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,2BAA2B;YACtC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,wCAAwC;YACnD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,wCAAwC;YACnD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,SAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,qBAAU,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE7B,MAAM,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC;QAE/B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEtD,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

8
dist/GEE/Escopo1/escopo1CombuEst.d.ts vendored Normal file
View file

@ -0,0 +1,8 @@
import { type tipoFonteObjeto } from "../interfaces";
export declare const fontesEscopo1CombEsta: tipoFonteObjeto<[
"tipo",
"setor"
], [
"consumo",
"unidade"
]>;

171
dist/GEE/Escopo1/escopo1CombuEst.js vendored Normal file
View file

@ -0,0 +1,171 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1CombEsta = void 0;
const resposta_1 = require("../../resposta");
const gwp_1 = require("../ListasFatoresEmissao/gwp");
const listaEmissoes_1 = require("../ListasFatoresEmissao/listaEmissoes");
const listaFatorAno_1 = require("../ListasFatoresEmissao/listaFatorAno");
const listas_1 = require("../ListasFatoresEmissao/listas");
const interfaces_1 = require("../interfaces");
exports.fontesEscopo1CombEsta = {
escopo: "Escopo1",
idTipoFonte: "combustaoEst",
descricao: "Combustão Estacionária",
estruturaCadastro: [
{
idCampo: "setor",
descricao: "Tipo de Emissão do setor",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaFatoresEmissao,
},
{
idCampo: "tipo",
descricao: "Tipo de combustível",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaCombustiveis,
},
],
estruturaRegistro: [
{
campo: "consumo",
descricao: "Consumo do combustível",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "unidade",
descricao: "Unidade de medida consumida",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: ["kg", "m³", "TJ", "Litros", "Toneladas"],
},
],
formula: ({ cad, reg, inventario }) => {
const combustivel = listaEmissoes_1.listaEmissoes.find((a) => a.ref == cad.tipo);
if (!combustivel) {
return resposta_1.respostaCM.addErro("Não foi encontrado combustível");
}
const setor = cad.setor;
const QTDCombustivel = Number(reg.consumo);
let [CH4, CO2, N2O, BIO, QTDCombustivelBio, QTDCombustivelFossil] = [
0, 0, 0, 0, 0, 0,
];
if (combustivel.combustivel == "Óleo Diesel (comercial)") {
QTDCombustivelFossil =
QTDCombustivel *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
QTDCombustivelBio =
QTDCombustivel *
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio;
}
else if (combustivel.combustivel == "Gasolina Automotiva (comercial)") {
QTDCombustivelFossil =
QTDCombustivel *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio = QTDCombustivel - QTDCombustivelFossil;
}
else if (combustivel.combustivel == "Lenha Comercial") {
QTDCombustivelFossil = 0;
QTDCombustivelBio = QTDCombustivel;
}
else if (combustivel.combustivel == "Lenha para Carvoejamento") {
QTDCombustivelFossil = 0;
QTDCombustivelBio = QTDCombustivel;
}
else if (combustivel.combustivel == "Carvão Vegetal") {
QTDCombustivelFossil = 0;
QTDCombustivelBio = QTDCombustivel;
}
else if (combustivel.combustivel == "Resíduos Vegetais") {
QTDCombustivelFossil = 0;
QTDCombustivelBio = QTDCombustivel;
}
else if (combustivel.combustivel == "Lenha para Queima Direta") {
QTDCombustivelFossil = 0;
QTDCombustivelBio = QTDCombustivel;
}
else if (combustivel.combustivel == "Gás Liquefeito de Petróleo (GLP)") {
QTDCombustivelFossil = QTDCombustivel;
QTDCombustivelBio = 0;
}
else {
QTDCombustivelFossil = QTDCombustivel;
QTDCombustivelBio = QTDCombustivel;
}
if (setor == interfaces_1.setorGee.comercial) {
CH4 = combustivel.setor_CH4_comercial;
CO2 = combustivel.fatores_emissao_CO2_kg_TJ;
N2O = combustivel.setor_N2O_comercial;
BIO = Number(combustivel.biogenics);
}
else if (setor == interfaces_1.setorGee.energia) {
CH4 = combustivel.setor_CH4_energia;
CO2 = combustivel.fatores_emissao_CO2_kg_TJ;
N2O = combustivel.setor_N2O_energia;
BIO = Number(combustivel.biogenics);
}
else if (setor == interfaces_1.setorGee.manufatura) {
CH4 = combustivel.setor_CH4_manufatura;
CO2 = combustivel.fatores_emissao_CO2_kg_TJ;
N2O = combustivel.setor_N2O_manufatura;
BIO = Number(combustivel.biogenics);
}
else if (setor == interfaces_1.setorGee.residencial) {
CH4 = combustivel.setor_CH4_residencial;
CO2 = combustivel.fatores_emissao_CO2_kg_TJ;
N2O = combustivel.setor_N2O_residencial;
BIO = Number(combustivel.biogenics);
}
else {
return resposta_1.respostaCM.addErro("Não foi encontrado setor");
}
let carbono = 0;
if (combustivel.combustivel == "Lenha Comercial") {
carbono =
QTDCombustivelBio * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelBio * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
}
else if (combustivel.combustivel == "Lenha para Carvoejamento") {
carbono =
QTDCombustivelBio * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelBio * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
}
else if (combustivel.combustivel == "Carvão Vegetal") {
carbono =
QTDCombustivelBio * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelBio * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
}
else if (combustivel.combustivel == "Resíduos Vegetais") {
carbono =
QTDCombustivelBio * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelBio * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
}
else if (combustivel.combustivel == "Lenha para Queima Direta") {
carbono =
QTDCombustivelBio * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelBio * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
}
else if (combustivel.combustivel == "Bagaço de Cana") {
carbono =
QTDCombustivelBio * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelBio * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
}
else {
carbono =
QTDCombustivelFossil * (CO2 / 1000) * Number(gwp_1.gwp[0].gwp) +
QTDCombustivelFossil * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelFossil * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
}
const bio = QTDCombustivelBio * (BIO / 1000);
console.log("carbono", carbono);
console.log("bio", bio);
console.log("QTDCombustivelFossil", QTDCombustivelFossil);
console.log("QTDCombustivelBio", QTDCombustivelBio);
console.log("CO2", CO2);
console.log("CH4", CH4);
console.log("N2O", N2O);
console.log("BIO", BIO);
console.log("QTDCombustivel", QTDCombustivel);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1CombuEst.js.map

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,2 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const fontesEscopo1Aereo: tipoFonteObjeto<["tipoAereo"], ["consumo"]>;

View file

@ -0,0 +1,54 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1Aereo = void 0;
const resposta_1 = require("../../../resposta");
const fatorEmissaoCombustivel_1 = require("../../ListasFatoresEmissao/fatorEmissaoCombustivel");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const listas_1 = require("../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../interfaces");
exports.fontesEscopo1Aereo = {
escopo: "Escopo1",
idTipoFonte: "combustaoMovelAereo",
descricao: "Combustão Móvel Aéreo",
estruturaCadastro: [
{
idCampo: "tipoAereo",
descricao: "Tipo de combustível Aereo",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaCombuAereo,
},
],
estruturaRegistro: [
{
campo: "consumo",
descricao: "Consumo de combustível em Litros",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const tipoCombustivel = fatorEmissaoCombustivel_1.listaAereo.find((a) => a.ref == cad.tipoAereo);
if (!tipoCombustivel) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de combustivel aereo");
}
const QTDCombustivel = Number(reg.consumo);
let [CH4, CO2, N2O] = [0, 0, 0];
if (tipoCombustivel.combustivel == "Gasolina de Aviação") {
CH4 = fatorEmissaoCombustivel_1.listaAereo[0].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaAereo[0].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaAereo[0].fator_emissao_N2O;
}
else if (tipoCombustivel.combustivel == "Querosene de Aviação") {
CH4 = fatorEmissaoCombustivel_1.listaAereo[1].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaAereo[1].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaAereo[1].fator_emissao_N2O;
}
else {
return resposta_1.respostaCM.addErro("não foi encontrado fator de emissao");
}
const carbono = QTDCombustivel * (CO2 / 1000) * Number(gwp_1.gwp[0].gwp) +
QTDCombustivel * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivel * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
return resposta_1.respostaCM.addResultado([carbono, null]);
},
};
//# sourceMappingURL=escopo1Aereo.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1Aereo.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo1/escopo1CombuMovel/escopo1Aereo.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,gGAAgF;AAChF,wDAAqD;AACrD,8DAAoE;AACpE,iDAAwE;AAE3D,QAAA,kBAAkB,GAAgD;IAC7E,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,qBAAqB;IAClC,SAAS,EAAE,uBAAuB;IAClC,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,2BAA2B;YACtC,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,wBAAe;SACxB;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,kCAAkC;YAC7C,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IAED,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,eAAe,GAAG,oCAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QAEvE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,qBAAU,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAE3C,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAEhC,IAAI,eAAe,CAAC,WAAW,IAAI,qBAAqB,EAAE,CAAC;YACzD,GAAG,GAAG,oCAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;YACtC,GAAG,GAAG,oCAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;YACtC,GAAG,GAAG,oCAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;QACxC,CAAC;aAAM,IAAI,eAAe,CAAC,WAAW,IAAI,sBAAsB,EAAE,CAAC;YACjE,GAAG,GAAG,oCAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;YACtC,GAAG,GAAG,oCAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;YACtC,GAAG,GAAG,oCAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,OAAO,qBAAU,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,OAAO,GACX,cAAc,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAClD,cAAc,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAClD,cAAc,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAErD,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,7 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const fontesEscopo1Ferroviario: tipoFonteObjeto<[
"tipoFerroviario"
], [
"consumo",
"unidade"
]>;

View file

@ -0,0 +1,164 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1Ferroviario = 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 listas_1 = require("../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../interfaces");
exports.fontesEscopo1Ferroviario = {
escopo: "Escopo1",
idTipoFonte: "combustaoMovelFerroviario",
descricao: "Combustão Móvel Ferroviário",
estruturaCadastro: [
{
idCampo: "tipoFerroviario",
descricao: "Tipo de combustível Ferroviario",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaCombuFerreo,
},
],
estruturaRegistro: [
{
campo: "consumo",
descricao: "Consumo de combustível em Litros",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "unidade",
descricao: "Unidade de medida consumida",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: ["Toneladas", "Litros"],
},
],
formula: ({ cad, reg, inventario }) => {
const tipoCombustivel = fatorEmissaoCombustivel_1.listaFerroviario.find((a) => a.ref == cad.tipoFerroviario);
if (!tipoCombustivel) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de combustivel ferroviário");
}
const consumo = Number(reg.consumo);
let [CH4, CO2, N2O, BIO, QTDCombustivelBio, QTDCombustivelFossil] = [
0, 0, 0, 0, 0, 0,
];
if (tipoCombustivel.combustivel == "Biodiesel (B100)") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[0].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[0].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[0].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 3100 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[1].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[1].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[1].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 3300 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[2].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[2].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[2].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 3700 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[3].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[3].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[3].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 4200 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[4].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[4].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[4].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 4500 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[5].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[5].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[5].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 4700 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[6].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[6].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[6].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 5200 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[7].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[7].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[7].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 5900 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[8].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[8].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[8].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor 6000 kcal / kg") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[9].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[9].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[9].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Carvão Vapor sem Especificação") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[10].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[10].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[10].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Coque de Carvão Mineral") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[11].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[11].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[11].fator_emissao_N2O;
QTDCombustivelFossil = consumo;
BIO = 1;
QTDCombustivelBio = 1;
}
else if (tipoCombustivel.combustivel == "Óleo Diesel (comercial)") {
CH4 = fatorEmissaoCombustivel_1.listaFerroviario[12].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.listaFerroviario[12].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.listaFerroviario[12].fator_emissao_N2O;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio =
consumo *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
BIO = 1;
QTDCombustivelBio = 1;
}
else {
return resposta_1.respostaCM.addErro("não foi encontrado fator de emissao");
}
const carbono = QTDCombustivelFossil * (CO2 / 1000) * Number(gwp_1.gwp[0].gwp) +
QTDCombustivelFossil * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelFossil * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
const bio = BIO * (QTDCombustivelBio / 1000) * Number(gwp_1.gwp[3].gwp);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Ferroviario.js.map

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,6 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const fontesEscopo1Hidroviario: tipoFonteObjeto<[
"tipoHidro"
], [
"consumo"
]>;

View file

@ -0,0 +1,73 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1Hidroviario = 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 listas_1 = require("../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../interfaces");
exports.fontesEscopo1Hidroviario = {
escopo: "Escopo1",
idTipoFonte: "combustaoMovelHidroviario",
descricao: "Combustão Móvel Hidroviário",
estruturaCadastro: [
{
idCampo: "tipoHidro",
descricao: "Tipo de combustível Hidroviario",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaCombuHidro,
},
],
estruturaRegistro: [
{
campo: "consumo",
descricao: "Consumo de combustível em Litros",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg, inventario }) => {
const tipoCombustivel = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel.find((a) => a.ref == cad.tipoHidro);
if (!tipoCombustivel) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de combustivel aereo");
}
const consumo = Number(reg.consumo);
let [CH4, CO2, N2O, QTDCombustivelBio, QTDCombustivelFossil] = [
0, 0, 0, 0, 0, 0,
];
const BIO = 1;
if (tipoCombustivel.combustivel == "Gasolina Automotiva (pura)") {
CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_N2O;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio =
consumo *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
}
else if (tipoCombustivel.combustivel == "Óleo Combustível") {
QTDCombustivelFossil = consumo;
CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[7].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[7].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[7].fator_emissao_N2O;
}
else if (tipoCombustivel.combustivel == "Óleo Diesel (puro)") {
QTDCombustivelFossil = consumo;
CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_N2O;
}
else {
return resposta_1.respostaCM.addErro("não foi encontrado fator de emissao");
}
const carbono = QTDCombustivelFossil * (CO2 / 1000) * Number(gwp_1.gwp[0].gwp) +
QTDCombustivelFossil * (CH4 / 1000) * Number(gwp_1.gwp[1].gwp) +
QTDCombustivelFossil * (N2O / 1000) * Number(gwp_1.gwp[2].gwp);
const bio = BIO * QTDCombustivelBio;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Hidroviario.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1Hidroviario.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo1/escopo1CombuMovel/escopo1Hidroviario.ts"],"names":[],"mappings":"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"}

View file

@ -0,0 +1,8 @@
import { type tipoFonteObjeto } from "../../../interfaces";
export declare const fontesEscopo1Rodoviario: tipoFonteObjeto<[
"tipo",
"ano"
], [
"consumo",
"unidade"
]>;

View file

@ -0,0 +1,298 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1Rodoviario = 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.fontesEscopo1Rodoviario = {
escopo: "Escopo1",
idTipoFonte: "combustaoMovelRodoviario",
descricao: "Combustão Móvel Rodoviário (Por ano, tipo e quantidade de combustível)",
estruturaCadastro: [
{
idCampo: "tipo",
descricao: "Tipo de combustível",
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 }) => {
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;
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[10].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000]
.percGasolina);
QTDCombustivelBio = consumo - QTDCombustivelFossil;
}
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000]
.percGasolina);
QTDCombustivelBio = consumo - QTDCombustivelFossil;
}
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 = 0;
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[9].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000]
.percGasolina);
QTDCombustivelBio = consumo - QTDCombustivelFossil;
}
}
const periodo = Number((registro.periodoInicio || "").split("-")[1]);
//Calculo por mes
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[10].fator_emissao_CO2;
if (periodo == 1) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolJan);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolJan);
}
if (periodo == 2) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolFev);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolFev);
}
if (periodo == 3) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolMar);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolMar);
}
if (periodo == 4) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolAbr);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolAbr);
}
if (periodo == 5) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolMai);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolMai);
}
if (periodo == 6) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolJun);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolJun);
}
if (periodo == 7) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolJul);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolJul);
}
if (periodo == 8) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolAgo);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolAgo);
}
if (periodo == 9) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolSet);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolSet);
}
if (periodo == 10) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolOut);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolOut);
}
if (periodo == 11) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolNov);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolNov);
}
if (periodo == 12) {
QTDCombustivelFossil =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.etanolDez);
QTDCombustivelBio =
consumo *
(1 -
listaRodoviarioMes_1.listaRodoviarioMes[Number(inventario.anoInventario) - 2000]
.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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000]
.percGasolina);
QTDCombustivelBio = consumo - QTDCombustivelFossil;
}
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 = 0;
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[9].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000]
.percGasolina);
QTDCombustivelBio = consumo - QTDCombustivelFossil;
}
}
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 = (BIO * QTDCombustivelBio) / 1000;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Rodoviario.js.map

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,7 @@
import { type tipoFonteObjeto } from "../../../interfaces";
export declare const fontesEscopo1Rodoviario2: tipoFonteObjeto<[
"tipo"
], [
"consumo",
"unidade"
]>;

View file

@ -0,0 +1,144 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1Rodoviario2 = 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 listas_1 = require("../../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../../interfaces");
exports.fontesEscopo1Rodoviario2 = {
escopo: "Escopo1",
idTipoFonte: "combustaoMovelRodoviario2",
descricao: "Combustão Móvel Rodoviário (Por tipo e quantidade de combustível)",
estruturaCadastro: [
{
idCampo: "tipo",
descricao: "Tipo de combustível",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaRodoviario2combustivel,
},
],
estruturaRegistro: [
{
campo: "consumo",
descricao: "Consumo de combustível em Litros",
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 }) => {
const combustivel = fatorEmissaoCombustivel_1.listaRodoviario2.find((a) => a.ref == cad.tipo);
if (!combustivel) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de veiculo");
}
const consumo = Number(reg.consumo);
let [CH4, CO2, N2O, BIO, QTDCombustivelBio, QTDCombustivelFossil] = [
0, 0, 0, 0, 0, 0,
];
if (combustivel.combustivel == "Biodiesel(B100)") {
CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[9].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[9].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[9].fator_emissao_N2O;
BIO = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[9].fator_emissao_CO2;
QTDCombustivelFossil = 0;
QTDCombustivelBio = consumo;
}
else if (combustivel.combustivel == "Etanol Hidratado") {
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CO2;
QTDCombustivelFossil = 0;
QTDCombustivelBio = consumo;
}
else if (combustivel.combustivel == "Gás Liquefeito de Petróleo (GLP)") {
CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[3].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[3].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[3].fator_emissao_N2O;
BIO = 0;
QTDCombustivelFossil = consumo;
QTDCombustivelBio = 0;
}
else if (combustivel.combustivel == "Óleo Diesel (comercial)") {
CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[22].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[22].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[22].fator_emissao_N2O;
BIO = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[9].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio = consumo - QTDCombustivelFossil;
}
else if (combustivel.combustivel == "Gás Natural Veicular (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 = 0;
QTDCombustivelFossil = consumo;
}
else if (combustivel.combustivel == "Gasolina Automotiva (comercial)") {
CH4 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[23].fator_emissao_CH4;
CO2 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[23].fator_emissao_CO2;
N2O = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[23].fator_emissao_N2O;
BIO = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[10].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio = consumo - QTDCombustivelFossil;
}
else if (combustivel.combustivel == "Gasolina Automotiva (pura)") {
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio =
consumo *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
}
else if (combustivel.combustivel == "Óleo Diesel (puro)") {
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CO2;
QTDCombustivelFossil =
consumo *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio =
consumo *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
}
const emissaoCO2 = (CO2 * QTDCombustivelFossil) / 1000;
const emissaoCH4 = (CH4 * QTDCombustivelFossil) / 1000 + (CH4 * QTDCombustivelBio) / 1000;
const emissaoN2O = (N2O * QTDCombustivelFossil) / 1000 + (N2O * QTDCombustivelBio) / 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 = (BIO * QTDCombustivelBio) / 1000;
console.log("carbono", carbono);
console.log("bio", bio);
console.log("emissaoCO2", emissaoCO2);
console.log("emissaoCH4", emissaoCH4);
console.log("emissaoN2O", emissaoN2O);
console.log("QTDCombustivelFossil", QTDCombustivelFossil);
console.log("QTDCombustivelBio", QTDCombustivelBio);
console.log("CH4", CH4);
console.log("CO2", CO2);
console.log("N2O", N2O);
console.log("BIO", BIO);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Rodoviario2.js.map

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,7 @@
import { type tipoFonteObjeto } from "../../../interfaces";
export declare const fontesEscopo1Rodoviario3: tipoFonteObjeto<[
"tipo",
"ano"
], [
"distancia"
]>;

View file

@ -0,0 +1,116 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1Rodoviario3 = 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 listas_1 = require("../../../ListasFatoresEmissao/listas");
const tiposVeiculos_1 = require("../../../ListasFatoresEmissao/tiposVeiculos");
const interfaces_1 = require("../../../interfaces");
exports.fontesEscopo1Rodoviario3 = {
escopo: "Escopo1",
idTipoFonte: "combustaoMovelRodoviario3",
descricao: "Combustão Móvel Rodoviário (Por distância percorrida no ano)",
estruturaCadastro: [
{
idCampo: "tipo",
descricao: "Tipo da frota 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: "distancia",
descricao: "Distância mensal percorrida (Km)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg, inventario }) => {
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 ano da frota");
}
const distancia = reg.distancia;
let [CH4, CO2, N2O, BIO, QTDCombustivelBio, QTDCombustivelFossil] = [
0, 0, 0, 0, 0, 0,
];
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[0].fator_emissao_CO2;
QTDCombustivelFossil =
distancia *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio =
distancia *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
}
//Seleção de etanol
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[8].fator_emissao_CO2;
QTDCombustivelFossil =
distancia *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio =
distancia *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
}
//Seleção do GNV
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 = 0;
QTDCombustivelFossil = distancia;
}
//Seleção do Diesel
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 = fatorEmissaoCombustivel_1.fatorEmissaoCombustivel[1].fator_emissao_CO2;
QTDCombustivelFossil =
distancia *
(1 -
listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percGasolina);
QTDCombustivelBio =
distancia *
(1 - listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].percBio);
}
const fatores = listaFatorAno_1.listaFatorAno.find((a) => a.ano == Number(ano));
fatores?.automovelEtanol;
const fatorAno = listaFatorAno_1.listaFatorAno.find((a) => a.ano == Number(ano));
if (!fatorAno) {
return resposta_1.respostaCM.addErro("não foi encontrado fator de ano");
}
const consumoMedio = fatorAno[detalheTipoVeiculo.tipo];
const calculoCombustivel = distancia / consumoMedio;
const emissaoCO2 = QTDCombustivelFossil * (CO2 / 1000);
const emissaoCH4 = (CH4 * calculoCombustivel) / 1000;
const emissaoN2O = (N2O * calculoCombustivel) / 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 = (BIO * QTDCombustivelBio) / 1000;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Rodoviario3.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1Rodoviario3.js","sourceRoot":"","sources":["../../../../../src/GEE/Escopo1/escopo1CombuMovel/escopo1Rodoviario/escopo1Rodoviario3.ts"],"names":[],"mappings":"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"}

32
dist/GEE/Escopo1/escopo1Efluente.d.ts vendored Normal file
View file

@ -0,0 +1,32 @@
import { type tipoFonteObjeto } from "../interfaces";
export declare const fontesEscopo1Efluente: tipoFonteObjeto<[
"tipoEfluente",
"passaTratamento",
"lancaAmbiente",
"tipoDisposicao",
"doisTrat",
"componenteOrg",
"uniComponenteOrg",
"qtdNitrogenio",
"fatorEfluente",
"nitrogenioRemovido",
"tratamentoEfluente",
"recuperada",
"destinoGas",
"componenteOrg2",
"uniComponenteOrg2",
"qtdNitrogenio2",
"fatorEfluente2",
"nitrogenioRemovido2",
"tratamentoEfluente2",
"recuperada2",
"destinoGas2",
"uniComponenteOrg3",
"componenteOrg3",
"qtdNitrogenio3",
"fatorEfluente3"
], [
"qtdEfluente",
"qtdEfluente2",
"qtdEfluente3"
]>;

367
dist/GEE/Escopo1/escopo1Efluente.js vendored Normal file
View file

@ -0,0 +1,367 @@
"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

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,8 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const fontesEscopo1EmissoesSF6: tipoFonteObjeto<[
"gas"
], [
"estoqueInicio",
"estoqueFinal",
"estoqueComprado"
]>;

View file

@ -0,0 +1,50 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1EmissoesSF6 = void 0;
const resposta_1 = require("../../../resposta");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const listas_1 = require("../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../interfaces");
exports.fontesEscopo1EmissoesSF6 = {
escopo: "Escopo1",
idTipoFonte: "EmissoesFugSF6",
descricao: "Emissões Fugitivas (Por SF6 & NF3)",
estruturaCadastro: [
{
idCampo: "gas",
descricao: "Gás",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaGwpSf6,
},
],
estruturaRegistro: [
{
campo: "estoqueInicio",
descricao: "Estoque de Gás no início do ano (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "estoqueFinal",
descricao: "Estoque de Gás no final do ano (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "estoqueComprado",
descricao: "Estoque de Gás comprado no ano (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const tipoGas = gwp_1.gwp.find((a) => a.ref == cad.gas);
if (!tipoGas) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de Gás ou Composto");
}
const carbono = ((Number(reg.estoqueComprado) -
Number(reg.estoqueFinal) +
Number(reg.estoqueInicio)) *
Number(tipoGas.gwp)) /
1000;
return resposta_1.respostaCM.addResultado([carbono, null]);
},
};
//# sourceMappingURL=escopo1EmissoesSF6.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1EmissoesSF6.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo1/escopo1EmissoesFug/escopo1EmissoesSF6.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,wDAAqD;AACrD,8DAAgE;AAChE,iDAAwE;AAE3D,QAAA,wBAAwB,GAGjC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,gBAAgB;IAC7B,SAAS,EAAE,oCAAoC;IAC/C,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,oBAAW;SACpB;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,eAAe;YACtB,SAAS,EAAE,sCAAsC;YACjD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE,qCAAqC;YAChD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,iBAAiB;YACxB,SAAS,EAAE,qCAAqC;YAChD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,SAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,OAAO,GACX,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC1B,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC;QAEP,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,10 @@
import { type tipoFonteObjeto } from "../../../interfaces";
export declare const fontesEscopo1EmissoesRAC: tipoFonteObjeto<[
"gas"
], [
"carga",
"capacidadeDispensada",
"capacidadeNovas",
"recarga",
"recuperado"
]>;

View file

@ -0,0 +1,62 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1EmissoesRAC = void 0;
const resposta_1 = require("../../../../resposta");
const gwp_1 = require("../../../ListasFatoresEmissao/gwp");
const listas_1 = require("../../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../../interfaces");
exports.fontesEscopo1EmissoesRAC = {
escopo: "Escopo1",
idTipoFonte: "emissoesRAC",
descricao: "Emissões Fugitivas RAC (Por ciclo de vida)",
estruturaCadastro: [
{
idCampo: "gas",
descricao: "Gás",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaGasComposto2,
},
],
estruturaRegistro: [
{
campo: "carga",
descricao: "Cargas de Unidades Novas (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "capacidadeNovas",
descricao: "Capacidade de Unidades Novas (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "recarga",
descricao: "Recarga de unidades existentes (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "capacidadeDispensada",
descricao: "Capacidade de unidades dispensadas (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "recuperado",
descricao: "Recuperado de unidades dispensadas (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const tipoGas = gwp_1.gwp.find((a) => a.ref == cad.gas);
if (!tipoGas) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de Gás ou Composto");
}
const carbono = ((Number(reg.carga) -
Number(reg.capacidadeNovas) +
Number(reg.recarga) +
Number(reg.capacidadeDispensada) -
Number(reg.recuperado)) *
Number(tipoGas.gwp)) /
1000;
return resposta_1.respostaCM.addResultado([carbono, null]);
},
};
//# sourceMappingURL=escopo1EmissoesRAC.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1EmissoesRAC.js","sourceRoot":"","sources":["../../../../../src/GEE/Escopo1/escopo1EmissoesFug/rac/escopo1EmissoesRAC.ts"],"names":[],"mappings":";;;AAAA,mDAAkD;AAClD,2DAAwD;AACxD,iEAAyE;AACzE,oDAA2E;AAE9D,QAAA,wBAAwB,GAGjC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,4CAA4C;IACvD,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,0BAAiB;SAC1B;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,+BAA+B;YAC1C,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,iBAAiB;YACxB,SAAS,EAAE,mCAAmC;YAC9C,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,qCAAqC;YAChD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,sBAAsB;YAC7B,SAAS,EAAE,yCAAyC;YACpD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,yCAAyC;YACpD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,SAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAElD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,OAAO,GACX,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;YACjB,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;YACnB,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACvB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC;QAEP,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,8 @@
import { type tipoFonteObjeto } from "../../../interfaces";
export declare const fontesEscopo1EmissoesRAC2: tipoFonteObjeto<[
"gas"
], [
"variacaoEstoque",
"quantidadeTransferida",
"mudancaCapacidade"
]>;

View file

@ -0,0 +1,50 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1EmissoesRAC2 = void 0;
const resposta_1 = require("../../../../resposta");
const gwp_1 = require("../../../ListasFatoresEmissao/gwp");
const listas_1 = require("../../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../../interfaces");
exports.fontesEscopo1EmissoesRAC2 = {
escopo: "Escopo1",
idTipoFonte: "emissoesRAC2",
descricao: "Emissões Fugitivas RAC (Por balanço de massa)",
estruturaCadastro: [
{
idCampo: "gas",
descricao: "Gás",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaGasComposto2,
},
],
estruturaRegistro: [
{
campo: "variacaoEstoque",
descricao: "Estoque de Gás no início do ano (Kg) ",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "quantidadeTransferida",
descricao: "Estoque de Gás no final do ano (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "mudancaCapacidade",
descricao: "Estoque de Gás comprado no ano (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const tipoGas = gwp_1.gwp.find((a) => a.ref == cad.gas);
if (!tipoGas) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de Gás ou Composto");
}
const carbono = ((Number(reg.mudancaCapacidade || 0) +
Number(reg.quantidadeTransferida || 0) +
Number(reg.variacaoEstoque || 0)) *
Number(tipoGas.gwp)) /
1000;
return resposta_1.respostaCM.addResultado([carbono, null]);
},
};
//# sourceMappingURL=escopo1EmissoesRAC2.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1EmissoesRAC2.js","sourceRoot":"","sources":["../../../../../src/GEE/Escopo1/escopo1EmissoesFug/rac/escopo1EmissoesRAC2.ts"],"names":[],"mappings":";;;AAAA,mDAAkD;AAClD,2DAAwD;AACxD,iEAAyE;AACzE,oDAA2E;AAE9D,QAAA,yBAAyB,GAGlC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,cAAc;IAC3B,SAAS,EAAE,+CAA+C;IAC1D,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,0BAAiB;SAC1B;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,iBAAiB;YACxB,SAAS,EAAE,uCAAuC;YAClD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,uBAAuB;YAC9B,SAAS,EAAE,qCAAqC;YAChD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,mBAAmB;YAC1B,SAAS,EAAE,qCAAqC;YAChD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,SAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,OAAO,GACX,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,CAAC;YACtC,MAAM,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC;QAEP,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../../../interfaces";
export declare const fontesEscopo1EmissoesRAC3: tipoFonteObjeto<[
"gas",
"tipoEquipamento"
], [
"unidadesNovas",
"unidadesOperação",
"unidadesDispensadas"
]>;

View file

@ -0,0 +1,109 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1EmissoesRAC3 = void 0;
const resposta_1 = require("../../../../resposta");
const gwp_1 = require("../../../ListasFatoresEmissao/gwp");
const listas_1 = require("../../../ListasFatoresEmissao/listas");
const listas_2 = require("../../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../../interfaces");
exports.fontesEscopo1EmissoesRAC3 = {
escopo: "Escopo1",
idTipoFonte: "emissoesRAC3",
descricao: "Emissões Fugitivas RAC (Por triagem de fontes)",
estruturaCadastro: [
{
idCampo: "gas",
descricao: "Gás",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_2.listaGasComposto2,
},
{
idCampo: "tipoEquipamento",
descricao: "Tipo de Equipamento",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaTipoEquipamentoRAC,
},
],
estruturaRegistro: [
{
campo: "unidadesNovas",
descricao: "Carga das unidades novas(Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "unidadesOperação",
descricao: "Unidades em operação (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "unidadesDispensadas",
descricao: "Unidades dispensadas (Kg)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const tipoGas = gwp_1.gwp.find((a) => a.ref == cad.gas);
if (!tipoGas) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de Gás ou Composto");
}
const tipoEquipamento = cad.tipoEquipamento;
let [equipamento] = [0];
if (tipoEquipamento == "residencial") {
equipamento =
reg.unidadesNovas * (1 / 100) +
reg.unidadesOperação * (0.5 / 100) +
reg.unidadesDispensadas * (80 / 100) * (1 - 70 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "individual") {
equipamento =
reg.unidadesNovas * (3 / 100) +
reg.unidadesOperação * (15 / 100) +
reg.unidadesDispensadas * (80 / 100) * (1 - 70 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "comercial") {
equipamento =
reg.unidadesNovas * (3 / 100) +
reg.unidadesOperação * (35 / 100) +
reg.unidadesDispensadas * (100 / 100) * (1 - 70 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "transporte") {
equipamento =
reg.unidadesNovas * (1 / 100) +
reg.unidadesOperação * (50 / 100) +
reg.unidadesDispensadas * (50 / 100) * (1 - 70 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "industrial") {
equipamento =
reg.unidadesNovas * (3 / 100) +
reg.unidadesOperação * (25 / 100) +
reg.unidadesDispensadas * (100 / 100) * (1 - 90 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "frigorificos") {
equipamento =
reg.unidadesNovas * (1 / 100) +
reg.unidadesOperação * (15 / 100) +
reg.unidadesDispensadas * (100 / 100) * (1 - 95 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "arResidencial") {
equipamento =
reg.unidadesNovas * (1 / 100) +
reg.unidadesOperação * (10 / 100) +
reg.unidadesDispensadas * (80 / 100) * (1 - 80 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "arCarros") {
equipamento =
reg.unidadesNovas * (0.5 / 100) +
reg.unidadesOperação * (20 / 100) +
reg.unidadesDispensadas * (50 / 100) * (1 - 50 / 100) * tipoGas.gwp;
}
else if (tipoEquipamento == "arCaminhoes") {
equipamento =
reg.unidadesNovas * (0.5 / 100) +
reg.unidadesOperação * (20 / 100) +
reg.unidadesDispensadas * (50 / 100) * (1 - 50 / 100) * tipoGas.gwp;
}
const carbono = equipamento / 1000;
return resposta_1.respostaCM.addResultado([carbono, null]);
},
};
//# sourceMappingURL=escopo1EmissoesRAC3.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1EmissoesRAC3.js","sourceRoot":"","sources":["../../../../../src/GEE/Escopo1/escopo1EmissoesFug/rac/escopo1EmissoesRAC3.ts"],"names":[],"mappings":"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"}

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../interfaces";
export declare const fontesEscopo1MudancasSolo: tipoFonteObjeto<[
"atividade",
"gas"
], [
"emissoes",
"emissoesCO2bio",
"remocoesCO2bio"
]>;

56
dist/GEE/Escopo1/escopo1MudancasSolo.js vendored Normal file
View file

@ -0,0 +1,56 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo1MudancasSolo = void 0;
const resposta_1 = require("../../resposta");
const gwp_1 = require("../ListasFatoresEmissao/gwp");
const listas_1 = require("../ListasFatoresEmissao/listas");
const interfaces_1 = require("../interfaces");
exports.fontesEscopo1MudancasSolo = {
escopo: "Escopo1",
idTipoFonte: "mudancasSolo",
descricao: "Mudanças no uso do solo",
estruturaCadastro: [
{
idCampo: "atividade",
descricao: "Descrição da Atividade",
tipo: interfaces_1.tiposCamposGee.texto,
},
{
idCampo: "gas",
descricao: "Gás de Efeito Estufa (GEE)",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaSolo,
},
],
estruturaRegistro: [
{
campo: "emissoes",
descricao: "Emissões GEE em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissoesCO2bio",
descricao: "Emissões de CO2 biogênico em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "remocoesCO2bio",
descricao: "Remoções de CO2 biogênico em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const tipoGas = gwp_1.gwp.find((a) => a.ref == cad.gas);
if (!tipoGas) {
return resposta_1.respostaCM.addErro("Não foi encontrado tipo de Gás ou Composto");
}
const descricao = cad.atividade;
if (!descricao) {
return resposta_1.respostaCM.addErro("Não foi encontrado descrição da atividade");
}
const bio = reg.emissoesCO2bio;
const carbono = Number(reg.emissoes) * Number(tipoGas.gwp);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1MudancasSolo.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1MudancasSolo.js","sourceRoot":"","sources":["../../../src/GEE/Escopo1/escopo1MudancasSolo.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,qDAAkD;AAClD,2DAA2D;AAC3D,8CAAqE;AAExD,QAAA,yBAAyB,GAGlC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,cAAc;IAC3B,SAAS,EAAE,yBAAyB;IACpC,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,wBAAwB;YACnC,IAAI,EAAE,2BAAc,CAAC,KAAK;SAC3B;QACD;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,4BAA4B;YACvC,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,kBAAS;SAClB;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,2BAA2B;YACtC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,wCAAwC;YACnD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,wCAAwC;YACnD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,SAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,qBAAU,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAE3D,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../interfaces";
export declare const processosIndustriais: tipoFonteObjeto<[
"processo",
"gas"
], [
"emissoes",
"emissoesCO2bio",
"remocoesCO2bio"
]>;

56
dist/GEE/Escopo1/escopo1ProcessosInd.js vendored Normal file
View file

@ -0,0 +1,56 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.processosIndustriais = void 0;
const resposta_1 = require("../../resposta");
const gwp_1 = require("../ListasFatoresEmissao/gwp");
const listas_1 = require("../ListasFatoresEmissao/listas");
const interfaces_1 = require("../interfaces");
exports.processosIndustriais = {
escopo: "Escopo1",
idTipoFonte: "processosIndustriais",
descricao: "Processos Industriais",
estruturaCadastro: [
{
idCampo: "processo",
descricao: "Descrição do Processo Industrial",
tipo: interfaces_1.tiposCamposGee.texto,
},
{
idCampo: "gas",
descricao: "Gás de Efeito Estufa (GEE)",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaProcessosIndustriais,
},
],
estruturaRegistro: [
{
campo: "emissoes",
descricao: "Emissões GEE em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissoesCO2bio",
descricao: "Emissões de CO2 biogênico em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "remocoesCO2bio",
descricao: "Remoções de CO2 biogênico em toneladas",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const processo = cad.processo;
if (!processo) {
return resposta_1.respostaCM.addErro("Não foi encontrado a descrição do Processo Industrial");
}
const tipoGas = gwp_1.gwp.find((a) => a.ref == cad.gas);
if (!tipoGas) {
return resposta_1.respostaCM.addErro("Não foi encontrado tipo de Gás de GEE");
}
const bio = reg.emissoesCO2bio;
const carbono = Number(reg.emissoes) * Number(tipoGas.gwp);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1ProcessosInd.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1ProcessosInd.js","sourceRoot":"","sources":["../../../src/GEE/Escopo1/escopo1ProcessosInd.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,qDAAkD;AAClD,2DAA2E;AAC3E,8CAAqE;AAExD,QAAA,oBAAoB,GAG7B;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,sBAAsB;IACnC,SAAS,EAAE,uBAAuB;IAClC,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,UAAU;YACnB,SAAS,EAAE,kCAAkC;YAC7C,IAAI,EAAE,2BAAc,CAAC,KAAK;SAC3B;QACD;YACE,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,4BAA4B;YACvC,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,kCAAyB;SAClC;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,2BAA2B;YACtC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,wCAAwC;YACnD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,wCAAwC;YACnD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,qBAAU,CAAC,OAAO,CACvB,uDAAuD,CACxD,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,SAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC;QAE/B,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAE3D,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const residuosSolidosCompostagem: tipoFonteObjeto<[
"fatorEmissaoCH4",
"fatorEmissaoN2O",
"recuperado",
"destino"
], [
"compostagem"
]>;

View file

@ -0,0 +1,65 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.residuosSolidosCompostagem = void 0;
const resposta_1 = require("../../../resposta");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const interfaces_1 = require("../../interfaces");
exports.residuosSolidosCompostagem = {
escopo: "Escopo1",
idTipoFonte: "residuosSolidosCompostagem",
descricao: "Resíduos Sólidos - Compostagem",
estruturaCadastro: [
{
idCampo: "fatorEmissaoCH4",
descricao: "Fator de emissão de CH4",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "fatorEmissaoN2O",
descricao: "Fator de emissão de N2O",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "recuperado",
descricao: "Quantidade de CH4 recuperada do tratamento por compostagem",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "destino",
descricao: "Qual o destino do biogás recuperado? ",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: ["Queima em flare", "Geração de energia"],
},
],
estruturaRegistro: [
{
campo: "compostagem",
descricao: "Massa de resíduo destinado à compostagem",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const emissaoCH4 = cad.fatorEmissaoCH4;
if (!emissaoCH4) {
return resposta_1.respostaCM.addErro("Não foi encontrado emissaoCH4");
}
const emissaoN2O = cad.fatorEmissaoN2O;
if (!emissaoN2O) {
return resposta_1.respostaCM.addErro("Não foi encontrado emissaoN2O");
}
const recuperado = cad.recuperado;
if (!recuperado) {
return resposta_1.respostaCM.addErro("Não foi encontrado recuperado");
}
const destino = cad.destino;
if (!destino) {
return resposta_1.respostaCM.addErro("Não foi encontrado destino");
}
const carbono = (reg.compostagem * 10 ** -3 * cad.fatorEmissaoCH4 - cad.recuperado) *
Number(gwp_1.gwp[1].gwp) +
reg.compostagem * 10 ** -3 * cad.fatorEmissaoN2O * Number(gwp_1.gwp[2].gwp);
const bio = (44 / 16) * cad.recuperado;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Compostagem.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1Compostagem.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo1/escopo1ResiduosSolidos/escopo1Compostagem.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,wDAAqD;AACrD,iDAAwE;AAE3D,QAAA,0BAA0B,GAGnC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,4BAA4B;IACzC,SAAS,EAAE,gCAAgC;IAC3C,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,yBAAyB;YACpC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,yBAAyB;YACpC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,OAAO,EAAE,YAAY;YACrB,SAAS,EAAE,4DAA4D;YACvE,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,OAAO,EAAE,SAAS;YAClB,SAAS,EAAE,uCAAuC;YAClD,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;SAClD;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,aAAa;YACpB,SAAS,EAAE,0CAA0C;YACrD,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,qBAAU,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,OAAO,GACX,CAAC,GAAG,CAAC,WAAW,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,UAAU,CAAC;YACjE,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACpB,GAAG,CAAC,WAAW,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,eAAe,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAExE,MAAM,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC;QAEvC,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,9 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const residuosSolidosIncineracao: tipoFonteObjeto<[
"tipoResiduo"
], [
"emissao",
"emissaoCH4",
"emissaoN2O",
"emissaoBio"
]>;

View file

@ -0,0 +1,52 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.residuosSolidosIncineracao = void 0;
const resposta_1 = require("../../../resposta");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const interfaces_1 = require("../../interfaces");
exports.residuosSolidosIncineracao = {
escopo: "Escopo1",
idTipoFonte: "residuosSolidosIncineracao",
descricao: "Resíduos Sólidos - Incineração",
estruturaCadastro: [
{
idCampo: "tipoResiduo",
descricao: "Tipo de resíduo Incinerado",
tipo: interfaces_1.tiposCamposGee.texto,
},
],
estruturaRegistro: [
{
campo: "emissao",
descricao: "Emissões de CO2 (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissaoCH4",
descricao: "Emissões de CH4 (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissaoN2O",
descricao: "Emissões de N2O (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
campo: "emissaoBio",
descricao: "Emissões de CO2 Biogênico (t)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const descricao = cad.tipoResiduo;
if (!descricao) {
return resposta_1.respostaCM.addErro("Não foi encontrado um tipo de resíduo");
}
const bio = reg.emissaoBio;
const carbono = Number(reg.emissao) * Number(gwp_1.gwp[0].gwp) +
Number(reg.emissaoCH4) * Number(gwp_1.gwp[1].gwp) +
Number(reg.emissaoN2O) * Number(gwp_1.gwp[2].gwp);
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1Incineracao.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escopo1Incineracao.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo1/escopo1ResiduosSolidos/escopo1Incineracao.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,wDAAqD;AACrD,iDAAwE;AAE3D,QAAA,0BAA0B,GAGnC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,4BAA4B;IACzC,SAAS,EAAE,gCAAgC;IAC3C,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,aAAa;YACtB,SAAS,EAAE,4BAA4B;YACvC,IAAI,EAAE,2BAAc,CAAC,KAAK;SAC3B;KACF;IAED,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;QACD;YACE,KAAK,EAAE,YAAY;YACnB,SAAS,EAAE,+BAA+B;YAC1C,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,qBAAU,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC;QAE3B,MAAM,OAAO,GACX,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC3C,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,SAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAE9C,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,23 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const residuosSolidosAterrados: tipoFonteObjeto<[
"municipio",
"composicaoA",
"composicaoB",
"composicaoC",
"composicaoD",
"composicaoE",
"composicaoF",
"composicaoG",
"composicaoH",
"qualidade",
"concentracao",
"recuperacao",
"destino",
"qtdNitrogenio2",
"fatorEfluente2",
"nitrogenioRemovido2",
"residuosPrimeroTratamento",
"tratamentoEfluente2"
], [
"residuos"
]>;

View file

@ -0,0 +1,202 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.residuosSolidosAterrados = void 0;
const resposta_1 = require("../../../resposta");
const gwp_1 = require("../../ListasFatoresEmissao/gwp");
const listaAterro_1 = require("../../ListasFatoresEmissao/listaAterro");
const listaCidades_1 = require("../../ListasFatoresEmissao/listaCidades");
const listas_1 = require("../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../interfaces");
exports.residuosSolidosAterrados = {
escopo: "Escopo1",
idTipoFonte: "residuosSolidosAterrados",
descricao: "Resíduos Sólidos - Resíduos Aterrados",
estruturaCadastro: [
{
idCampo: "municipio",
descricao: "Município:",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaMunicipios,
},
{
idCampo: "composicaoA",
descricao: "Composição do resíduo A - Papéis/papelão",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoB",
descricao: "Composição do resíduo B - Resíduos têxteis",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoC",
descricao: "Composição do resíduo C - Resíduos alimentares",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoD",
descricao: "Composição do resíduo D - Madeira",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoE",
descricao: "Composição do resíduo E - Resíduos de jardim e parque",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoF",
descricao: "Composição do resíduo F - Fraldas",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoG",
descricao: "Composição do resíduo G - Borracha e couro",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "composicaoH",
descricao: "Composição do resíduo H - Lodo de esgoto",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "qualidade",
descricao: "Classificação da qualidade do aterro onde foram destinados os resíduos",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaAterros,
},
{
idCampo: "concentracao",
descricao: "Concentração do Biogás",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "recuperacao",
descricao: "Quantidade de CH4 recuperada do aterro",
tipo: interfaces_1.tiposCamposGee.numero,
},
{
idCampo: "destino",
descricao: "Qual o destino do biogás recuperado? ",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: ["Queima em flare", "Geração de energia"],
},
],
estruturaRegistro: [
{
campo: "residuos",
descricao: "Quantidade de resíduos enviados ao aterro no ano",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad }) => {
//Cadastro
const cidade = listaCidades_1.listaCidades.find((a) => a.ref == cad.municipio);
if (!cidade) {
return resposta_1.respostaCM.addErro("não foi encontrado cidade");
}
const tipoAterro = listaAterro_1.listaAterro.find((a) => a.ref == cad.qualidade);
if (!tipoAterro) {
return resposta_1.respostaCM.addErro("não foi encontrado cidade");
}
//Fatores de emissão
let [metano, oxidacao] = [0, 0];
if (tipoAterro.classificacao == "A") {
metano = listaAterro_1.listaAterro[0].metano;
oxidacao = listaAterro_1.listaAterro[0].oxidacao;
}
else if (tipoAterro.classificacao == "B") {
metano = listaAterro_1.listaAterro[2].metano;
oxidacao = listaAterro_1.listaAterro[2].oxidacao;
}
else if (tipoAterro.classificacao == "C") {
metano = listaAterro_1.listaAterro[3].metano;
oxidacao = listaAterro_1.listaAterro[3].oxidacao;
}
else if (tipoAterro.classificacao == "D") {
metano = listaAterro_1.listaAterro[4].metano;
oxidacao = listaAterro_1.listaAterro[4].oxidacao;
}
else if (tipoAterro.classificacao == "E") {
metano = listaAterro_1.listaAterro[5].metano;
oxidacao = listaAterro_1.listaAterro[5].oxidacao;
}
else {
return resposta_1.respostaCM.addErro("não foi encontrado fator de emissao");
}
//Calculo
const [CF85, CF86, CF87, CF88, CF89, CF90, CF91, CF92] = [
1, 1, 1, 1, 1, 1, 1, 1,
];
let [k_alimentos_lodo, k_papel_texteis, k_madeira, k_jardim_outros_nao_alimentos,] = [1, 1, 1, 1];
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_papel_texteis = 0.045;
}
else {
k_papel_texteis = 0.07;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_papel_texteis = 0.04;
}
else {
k_papel_texteis = 0.06;
}
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_madeira = 0.025;
}
else {
k_madeira = 0.035;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_madeira = 0.02;
}
else {
k_madeira = 0.03;
}
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_jardim_outros_nao_alimentos = 0.065;
}
else {
k_jardim_outros_nao_alimentos = 0.17;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_jardim_outros_nao_alimentos = 0.05;
}
else {
k_jardim_outros_nao_alimentos = 0.1;
}
if (cidade.tempMedia > 20) {
if (cidade.pluviosidade < 1000) {
k_alimentos_lodo = 0.085;
}
else {
k_alimentos_lodo = 0.4;
}
}
else if (cidade.pluviosidade / cidade.potencialEvapora < 1) {
k_alimentos_lodo = 0.06;
}
else {
k_alimentos_lodo = 0.185;
}
const somaDOC = CF85 * (1 - 2.71 ** -k_papel_texteis) +
CF86 * (1 - 2.71 ** -k_papel_texteis) +
CF87 * (1 - 2.71 ** -k_alimentos_lodo) +
CF88 * (1 - 2.71 ** -k_madeira) +
CF89 * (1 - 2.71 ** -k_jardim_outros_nao_alimentos) +
CF90 * (1 - 2.71 ** -k_jardim_outros_nao_alimentos) +
CF91 * (1 - 2.71 ** -k_jardim_outros_nao_alimentos) +
CF92 * (1 - 2.71 ** -k_alimentos_lodo);
const admin = somaDOC * cad.concentracao * 1.33;
const ch4 = (cad.recuperacao - admin) * (1 - oxidacao);
const carbono = ch4 * Number(gwp_1.gwp[1].gwp);
const bio = cad.recuperacao * metano;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=escopo1ResiduosAterrado.js.map

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,7 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const fontesEscopo2CompraTermica: tipoFonteObjeto<[
"tipo",
"eficiencia"
], [
"vapor"
]>;

View file

@ -0,0 +1,48 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo2CompraTermica = void 0;
const resposta_1 = require("../../../resposta");
const listas_1 = require("../../ListasFatoresEmissao/listas");
const interfaces_1 = require("../../interfaces");
exports.fontesEscopo2CompraTermica = {
escopo: "Escopo2",
idTipoFonte: "CompraTermica",
descricao: "Compra de energia térmica",
estruturaCadastro: [
{
idCampo: "tipo",
descricao: "Tipo de combustível",
tipo: interfaces_1.tiposCamposGee.opcoes,
opcoes: listas_1.listaCombustiveis,
},
{
idCampo: "eficiencia",
descricao: "Eficiência do Fervedor (%)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
estruturaRegistro: [
{
campo: "vapor",
descricao: "Vapor comprado (GJ)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg }) => {
const eficiencia = cad.eficiencia;
if (!eficiencia) {
return resposta_1.respostaCM.addErro("não foi encontrado eficiencia");
}
if (eficiencia > 100) {
return resposta_1.respostaCM.addErro("O valor da eficiencia deve estar entre 0 e 100");
}
const tipoCombustivel = cad.tipo;
if (!tipoCombustivel) {
return resposta_1.respostaCM.addErro("não foi encontrado tipo de combustivel");
}
const carbono = Number(reg.vapor) / (cad.eficiencia / 100);
const bio = carbono / 1000;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=compraTermica.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"compraTermica.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo2/compraTermica/compraTermica.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,8DAAsE;AACtE,iDAAwE;AAE3D,QAAA,0BAA0B,GAGnC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,eAAe;IAC5B,SAAS,EAAE,2BAA2B;IACtC,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,MAAM;YACf,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;YAC3B,MAAM,EAAE,0BAAiB;SAC1B;QACD;YACE,OAAO,EAAE,YAAY;YACrB,SAAS,EAAE,4BAA4B;YACvC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,qBAAqB;YAChC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE;QACxB,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,qBAAU,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;YACrB,OAAO,qBAAU,CAAC,OAAO,CACvB,gDAAgD,CACjD,CAAC;QACJ,CAAC;QACD,MAAM,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,qBAAU,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;QAE3D,MAAM,GAAG,GAAG,OAAO,GAAG,IAAI,CAAC;QAE3B,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,13 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const fontesEscopo2EletricidadeEsc: tipoFonteObjeto<[
"tipoFonte",
"combustivel",
"possuiFator",
"eficiencia"
], [
"eletricidade",
"fatorEmissao",
"fatorEmissaoCO2",
"fatorEmissaoN2O",
"fatorEmissaoBio"
]>;

View file

@ -0,0 +1,141 @@
"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

View file

@ -0,0 +1 @@
{"version":3,"file":"eletricidadeEsc.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo2/eletricidadeEsc/eletricidadeEsc.ts"],"names":[],"mappings":"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"}

View file

@ -0,0 +1,6 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const eletricidadeEscNaoRastreada: tipoFonteObjeto<[
"descricao"
], [
"eletricidade"
]>;

View file

@ -0,0 +1,35 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.eletricidadeEscNaoRastreada = void 0;
const resposta_1 = require("../../../resposta");
const listaFatorAno_1 = require("../../ListasFatoresEmissao/listaFatorAno");
const interfaces_1 = require("../../interfaces");
exports.eletricidadeEscNaoRastreada = {
escopo: "Escopo2",
idTipoFonte: "eletricidadeEscNaoRastreada",
descricao: "Eletricidade escolha por compra não rastreada",
estruturaCadastro: [
{
idCampo: "descricao",
descricao: "Descrição da Fonte",
tipo: interfaces_1.tiposCamposGee.texto,
},
],
estruturaRegistro: [
{
campo: "eletricidade",
descricao: "Eletricidade Comprada (MWh)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg, inventario }) => {
const desc = cad.descricao;
if (!desc) {
return resposta_1.respostaCM.addErro("não foi encontrado descrição");
}
const feSin = listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].feSin;
const carbono = Number(reg.eletricidade) * feSin;
return resposta_1.respostaCM.addResultado([carbono, null]);
},
};
//# sourceMappingURL=escNaoRastreada.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"escNaoRastreada.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo2/eletricidadeEsc/escNaoRastreada.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,4EAAyE;AACzE,iDAAwE;AAE3D,QAAA,2BAA2B,GAGpC;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,6BAA6B;IAC1C,SAAS,EAAE,+CAA+C;IAC1D,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,oBAAoB;YAC/B,IAAI,EAAE,2BAAc,CAAC,KAAK;SAC3B;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE,6BAA6B;YACxC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,qBAAU,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,KAAK,GAAG,6BAAa,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC;QAE3E,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;QAEjD,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}

View file

@ -0,0 +1,6 @@
import { type tipoFonteObjeto } from "../../interfaces";
export declare const fontesEscopo2IsoladoAM: tipoFonteObjeto<[
"descricao"
], [
"eletricidade"
]>;

View file

@ -0,0 +1,38 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fontesEscopo2IsoladoAM = void 0;
const resposta_1 = require("../../../resposta");
const listaFatorAno_1 = require("../../ListasFatoresEmissao/listaFatorAno");
const interfaces_1 = require("../../interfaces");
exports.fontesEscopo2IsoladoAM = {
escopo: "Escopo2",
idTipoFonte: "IsoladoAM",
descricao: "Eletricidade Localização AM",
estruturaCadastro: [
{
idCampo: "descricao",
descricao: "Descrição da Fonte",
tipo: interfaces_1.tiposCamposGee.texto,
},
],
estruturaRegistro: [
{
campo: "eletricidade",
descricao: "Eletricidade Comprada (MWh)",
tipo: interfaces_1.tiposCamposGee.numero,
},
],
formula: ({ cad, reg, inventario }) => {
const desc = cad.descricao;
if (!desc) {
return resposta_1.respostaCM.addErro("Não foi encontrado descrição");
}
const feSin = listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].feSin;
const AM = listaFatorAno_1.listaFatorAno[Number(inventario.anoInventario) - 2000].AM;
const carbono = (Number(reg.eletricidade) * feSin * 8) / 12 +
(Number(reg.eletricidade) * AM * 4) / 12;
const bio = 0;
return resposta_1.respostaCM.addResultado([carbono, bio]);
},
};
//# sourceMappingURL=LocalIsoladoAM.js.map

View file

@ -0,0 +1 @@
{"version":3,"file":"LocalIsoladoAM.js","sourceRoot":"","sources":["../../../../src/GEE/Escopo2/eletricidadeLocal/LocalIsoladoAM.ts"],"names":[],"mappings":";;;AAAA,gDAA+C;AAC/C,4EAAyE;AACzE,iDAAwE;AAE3D,QAAA,sBAAsB,GAG/B;IACF,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,WAAW;IACxB,SAAS,EAAE,6BAA6B;IACxC,iBAAiB,EAAE;QACjB;YACE,OAAO,EAAE,WAAW;YACpB,SAAS,EAAE,oBAAoB;YAC/B,IAAI,EAAE,2BAAc,CAAC,KAAK;SAC3B;KACF;IACD,iBAAiB,EAAE;QACjB;YACE,KAAK,EAAE,cAAc;YACrB,SAAS,EAAE,6BAA6B;YACxC,IAAI,EAAE,2BAAc,CAAC,MAAM;SAC5B;KACF;IACD,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,qBAAU,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,KAAK,GAAG,6BAAa,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC;QAE3E,MAAM,EAAE,GAAG,6BAAa,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC;QAErE,MAAM,OAAO,GACX,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE;YAC3C,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAE3C,MAAM,GAAG,GAAG,CAAC,CAAC;QAEd,OAAO,qBAAU,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}

Some files were not shown because too many files have changed in this diff Show more