diff --git a/src/app/DRE/teste.tsx b/src/app/DRE/teste.tsx index 9e72067..e7fa32b 100644 --- a/src/app/DRE/teste.tsx +++ b/src/app/DRE/teste.tsx @@ -775,63 +775,64 @@ export default function Teste() { }); break; - case "18": // Outras Receitas/Despesas = Grupo 14 + 15 + 16 + 17 + case "19": // Resultado Não Operacional = Grupo 14 + 15 + 16 + 17 + 18 mesesDisponiveis.forEach(mes => { const valor14 = obterValorGrupo("14", mes); const valor15 = obterValorGrupo("15", mes); const valor16 = obterValorGrupo("16", mes); const valor17 = obterValorGrupo("17", mes); - valoresPorMes[mes] = valor14 + valor15 + valor16 + valor17; + const valor18 = obterValorGrupo("18", mes); + valoresPorMes[mes] = valor14 + valor15 + valor16 + valor17 + valor18; }); break; - case "19": // LAIR = Grupo 10 + 13 + 18 + case "20": // LAIR = Grupo 10 + 13 + 19 mesesDisponiveis.forEach(mes => { const valor10 = obterValorGrupo("10", mes); const valor13 = obterValorGrupo("13", mes); - const valor18 = obterValorGrupo("18", mes); - valoresPorMes[mes] = valor10 + valor13 + valor18; + const valor19 = obterValorGrupo("19", mes); + valoresPorMes[mes] = valor10 + valor13 + valor19; }); break; - case "20": // IR = Se LAIR > 0 calcular 20% e resultado negativo (*-1), se não 0 + case "21": // IR = Se LAIR > 0 calcular 20% e resultado negativo (*-1), se não 0 mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); - if (valor19 > 0) { - valoresPorMes[mes] = (valor19 * 0.20) * -1; + const valor20 = obterValorGrupo("20", mes); + if (valor20 > 0) { + valoresPorMes[mes] = (valor20 * 0.20) * -1; } else { valoresPorMes[mes] = 0; } }); break; - case "21": // CSLL = Se LAIR > 0 calcular 9% e resultado negativo (*-1), se não 0 + case "22": // CSLL = Se LAIR > 0 calcular 9% e resultado negativo (*-1), se não 0 mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); - if (valor19 > 0) { - valoresPorMes[mes] = (valor19 * 0.09) * -1; + const valor20 = obterValorGrupo("20", mes); + if (valor20 > 0) { + valoresPorMes[mes] = (valor20 * 0.09) * -1; } else { valoresPorMes[mes] = 0; } }); break; - case "22": // Lucro Líquido = Grupo 19 + 20 + 21 + case "23": // Lucro Líquido = Grupo 20 + 21 + 22 mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); const valor20 = obterValorGrupo("20", mes); const valor21 = obterValorGrupo("21", mes); - valoresPorMes[mes] = valor19 + valor20 + valor21; + const valor22 = obterValorGrupo("22", mes); + valoresPorMes[mes] = valor20 + valor21 + valor22; }); break; - case "24": // EBITDA = Grupo 19 - (13 + 18 + 23) + case "25": // EBITDA = Grupo 20 - (13 + 19 + 24) mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); + const valor20 = obterValorGrupo("20", mes); const valor13 = obterValorGrupo("13", mes); - const valor18 = obterValorGrupo("18", mes); - const valor23 = obterValorGrupo("23", mes); - valoresPorMes[mes] = valor19 - (valor13 + valor18 + valor23); + const valor19 = obterValorGrupo("19", mes); + const valor24 = obterValorGrupo("24", mes); + valoresPorMes[mes] = valor20 - (valor13 + valor19 + valor24); }); break; } @@ -847,7 +848,7 @@ export default function Teste() { // Verificar se é um grupo calculado const codigoGrupo = items[0]?.codgrupo || ""; - const isCalculado = ["03", "05", "07", "10", "13", "18", "19", "20", "21", "22", "24"].includes(codigoGrupo); + const isCalculado = ["03", "05", "07", "10", "13", "19", "20", "21", "22", "23", "25"].includes(codigoGrupo); let valoresGrupoPorMes; if (isCalculado) { @@ -1084,6 +1085,10 @@ export default function Teste() { setCentrosCustoSelecionados([]); setContasSelecionadas([]); + // Limpar filtros de busca + setFiltroCentroCusto(""); + setFiltroConta(""); + // Limpar dados da tabela setData([]); setDadosFiltrados([]); @@ -1092,6 +1097,9 @@ export default function Teste() { setIsAllExpanded(false); setOrdemHierarquiaContasPrimeiro(false); + // Fechar o sheet de filtros + setIsFilterOpen(false); + // Recarregar opções e selecionar todos novamente carregarPeriodosDisponiveis(); }; @@ -1346,63 +1354,64 @@ export default function Teste() { }); break; - case "18": // Outras Receitas/Despesas = Grupo 14 + 15 + 16 + 17 + case "19": // Resultado Não Operacional = Grupo 14 + 15 + 16 + 17 + 18 mesesDisponiveis.forEach(mes => { const valor14 = obterValorGrupo("14", mes); const valor15 = obterValorGrupo("15", mes); const valor16 = obterValorGrupo("16", mes); const valor17 = obterValorGrupo("17", mes); - valoresPorMes[mes] = valor14 + valor15 + valor16 + valor17; + const valor18 = obterValorGrupo("18", mes); + valoresPorMes[mes] = valor14 + valor15 + valor16 + valor17 + valor18; }); break; - case "19": // LAIR = Grupo 10 + 13 + 18 + case "20": // LAIR = Grupo 10 + 13 + 19 mesesDisponiveis.forEach(mes => { const valor10 = obterValorGrupo("10", mes); const valor13 = obterValorGrupo("13", mes); - const valor18 = obterValorGrupo("18", mes); - valoresPorMes[mes] = valor10 + valor13 + valor18; + const valor19 = obterValorGrupo("19", mes); + valoresPorMes[mes] = valor10 + valor13 + valor19; }); break; - case "20": // IR = Se LAIR > 0 calcular 20% e resultado negativo (*-1), se não 0 + case "21": // IR = Se LAIR > 0 calcular 20% e resultado negativo (*-1), se não 0 mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); - if (valor19 > 0) { - valoresPorMes[mes] = (valor19 * 0.20) * -1; + const valor20 = obterValorGrupo("20", mes); + if (valor20 > 0) { + valoresPorMes[mes] = (valor20 * 0.20) * -1; } else { valoresPorMes[mes] = 0; } }); break; - case "21": // CSLL = Se LAIR > 0 calcular 9% e resultado negativo (*-1), se não 0 + case "22": // CSLL = Se LAIR > 0 calcular 9% e resultado negativo (*-1), se não 0 mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); - if (valor19 > 0) { - valoresPorMes[mes] = (valor19 * 0.09) * -1; + const valor20 = obterValorGrupo("20", mes); + if (valor20 > 0) { + valoresPorMes[mes] = (valor20 * 0.09) * -1; } else { valoresPorMes[mes] = 0; } }); break; - case "22": // Lucro Líquido = Grupo 19 + 20 + 21 + case "23": // Lucro Líquido = Grupo 20 + 21 + 22 mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); const valor20 = obterValorGrupo("20", mes); const valor21 = obterValorGrupo("21", mes); - valoresPorMes[mes] = valor19 + valor20 + valor21; + const valor22 = obterValorGrupo("22", mes); + valoresPorMes[mes] = valor20 + valor21 + valor22; }); break; - case "24": // EBITDA = Grupo 19 - (13 + 18 + 23) + case "25": // EBITDA = Grupo 20 - (13 + 19 + 24) mesesDisponiveis.forEach(mes => { - const valor19 = obterValorGrupo("19", mes); + const valor20 = obterValorGrupo("20", mes); const valor13 = obterValorGrupo("13", mes); - const valor18 = obterValorGrupo("18", mes); - const valor23 = obterValorGrupo("23", mes); - valoresPorMes[mes] = valor19 - (valor13 + valor18 + valor23); + const valor19 = obterValorGrupo("19", mes); + const valor24 = obterValorGrupo("24", mes); + valoresPorMes[mes] = valor20 - (valor13 + valor19 + valor24); }); break; } @@ -1418,7 +1427,7 @@ export default function Teste() { // Verificar se é um grupo calculado const codigoGrupo = items[0]?.codgrupo || ""; - const isCalculado = ["03", "05", "07", "10", "13", "18", "19", "20", "21", "22", "24"].includes(codigoGrupo); + const isCalculado = ["03", "05", "07", "10", "13", "19", "20", "21", "22", "23", "25"].includes(codigoGrupo); let valoresPorMes; if (isCalculado) { @@ -2140,9 +2149,9 @@ export default function Teste() { - {/* */} + diff --git a/src/app/api/analitico-oracle/route.ts b/src/app/api/analitico-oracle/route.ts index 4401a54..13c6254 100644 --- a/src/app/api/analitico-oracle/route.ts +++ b/src/app/api/analitico-oracle/route.ts @@ -120,13 +120,13 @@ export async function GET(request: NextRequest) { // Transformar os dados do Oracle para o formato esperado pelo componente const transformedData = data.map((item: any) => { // Debug dos valores monetários - console.log('🔍 Item original:', { - VLREALIZADO: item.VLREALIZADO, - VLPREVISTO: item.VLPREVISTO, - VLCONFIRMADO: item.VLCONFIRMADO, - VLPAGO: item.VLPAGO, - tipo_VLREALIZADO: typeof item.VLREALIZADO - }); + // console.log('🔍 Item original:', { + // VLREALIZADO: item.VLREALIZADO, + // VLPREVISTO: item.VLPREVISTO, + // VLCONFIRMADO: item.VLCONFIRMADO, + // VLPAGO: item.VLPAGO, + // tipo_VLREALIZADO: typeof item.VLREALIZADO + // }); return { codigo_grupo: item.CODGRUPO || "", diff --git a/src/app/api/dre-oracle/route.ts b/src/app/api/dre-oracle/route.ts index 4509281..4469378 100644 --- a/src/app/api/dre-oracle/route.ts +++ b/src/app/api/dre-oracle/route.ts @@ -170,110 +170,111 @@ function criarGruposCalculados(dados: any[]) { isCalculado: true }); - // 18 - Outras Receitas / Despesas (14 + 15 + 16 + 17) + // 19 - Resultado Não Operacional (14 + 15 + 16 + 17 + 18) const prejuizosPerdas = valoresPorGrupo['14'] || 0; const inativas = valoresPorGrupo['15'] || 0; const diretoria = valoresPorGrupo['16'] || 0; const lancamentosSemCC = valoresPorGrupo['17'] || 0; - const outrasReceitasDespesas = prejuizosPerdas + inativas + diretoria + lancamentosSemCC; + const receitasDespesasNaoOperacional = valoresPorGrupo['18'] || 0; + const resultadoNaoOperacional = prejuizosPerdas + inativas + diretoria + lancamentosSemCC + receitasDespesasNaoOperacional; gruposCalculados.push({ codfilial: "001", data_competencia: mes, data_cai: mes, - grupo: "18 - OUTRAS RECEITAS / DESPESAS", + grupo: "19 - RESULTADO NÃO OPERACIONAL", subgrupo: "CALCULADO", centro_custo: "CALCULADO", codigo_conta: 0, - conta: "OUTRAS RECEITAS / DESPESAS", - valor: outrasReceitasDespesas.toString(), - codgrupo: "18", + conta: "RESULTADO NÃO OPERACIONAL", + valor: resultadoNaoOperacional.toString(), + codgrupo: "19", isCalculado: true }); - // 19 - LAIR (10 + 13 + 18) - const lair = resultadoOperacional + resultadoFinanceiro + outrasReceitasDespesas; + // 20 - LAIR (10 + 13 + 19) + const lair = resultadoOperacional + resultadoFinanceiro + resultadoNaoOperacional; gruposCalculados.push({ codfilial: "001", data_competencia: mes, data_cai: mes, - grupo: "19 - LAIR", + grupo: "20 - LAIR", subgrupo: "CALCULADO", centro_custo: "CALCULADO", codigo_conta: 0, conta: "LAIR", valor: lair.toString(), - codgrupo: "19", + codgrupo: "20", isCalculado: true }); - // 20 - IR (se LAIR > 0 calcular 20% e resultado negativo, se não 0) + // 21 - IR (se LAIR > 0 calcular 20% e resultado negativo, se não 0) const ir = lair > 0 ? -(lair * 0.20) : 0; gruposCalculados.push({ codfilial: "001", data_competencia: mes, data_cai: mes, - grupo: "20 - IR", + grupo: "21 - IR", subgrupo: "CALCULADO", centro_custo: "CALCULADO", codigo_conta: 0, conta: "IMPOSTO DE RENDA", valor: ir.toString(), - codgrupo: "20", + codgrupo: "21", isCalculado: true }); - // 21 - CSLL (se LAIR > 0 calcular 9% e resultado negativo, se não 0) + // 22 - CSLL (se LAIR > 0 calcular 9% e resultado negativo, se não 0) const csll = lair > 0 ? -(lair * 0.09) : 0; gruposCalculados.push({ codfilial: "001", data_competencia: mes, data_cai: mes, - grupo: "21 - CSLL", + grupo: "22 - CSLL", subgrupo: "CALCULADO", centro_custo: "CALCULADO", codigo_conta: 0, conta: "CONTRIBUIÇÃO SOCIAL SOBRE LUCRO LÍQUIDO", valor: csll.toString(), - codgrupo: "21", + codgrupo: "22", isCalculado: true }); - // 22 - Lucro Líquido (19 + 20 + 21) + // 23 - Lucro Líquido (20 + 21 + 22) const lucroLiquido = lair + ir + csll; gruposCalculados.push({ codfilial: "001", data_competencia: mes, data_cai: mes, - grupo: "22 - LUCRO LÍQUIDO", + grupo: "23 - LUCRO LÍQUIDO", subgrupo: "CALCULADO", centro_custo: "CALCULADO", codigo_conta: 0, conta: "LUCRO LÍQUIDO", valor: lucroLiquido.toString(), - codgrupo: "22", + codgrupo: "23", isCalculado: true }); - // 24 - EBITDA (19 - (13 + 18 + 23)) - const despesaTributaria = valoresPorGrupo['23'] || 0; - const ebitda = lair - (resultadoFinanceiro + outrasReceitasDespesas + despesaTributaria); + // 25 - EBITDA (20 - (13 + 19 + 24)) + const despesaTributaria = valoresPorGrupo['24'] || 0; + const ebitda = lair - (resultadoFinanceiro + resultadoNaoOperacional + despesaTributaria); gruposCalculados.push({ codfilial: "001", data_competencia: mes, data_cai: mes, - grupo: "24 - EBITDA", + grupo: "25 - EBITDA", subgrupo: "CALCULADO", centro_custo: "CALCULADO", codigo_conta: 0, conta: "EBITDA", valor: ebitda.toString(), - codgrupo: "24", + codgrupo: "25", isCalculado: true }); });