diff --git a/src/app/DRE/analitico.tsx b/src/app/DRE/analitico.tsx index ca6458f..0953cf6 100644 --- a/src/app/DRE/analitico.tsx +++ b/src/app/DRE/analitico.tsx @@ -310,30 +310,26 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) { })); }, []); - // Função para contar filtros aplicados + // Função para contar filtros aplicados (apenas filtros internos do modal customizado) const getFilterCount = React.useCallback(() => { let count = 0; - // Contar filtros de coluna + // Contar filtros de coluna (filtros do modal customizado) count += Object.keys(columnFilters).length; - // Contar filtro global + // Contar filtro global (se aplicável) if (globalFilter && globalFilter.trim() !== "") { count += 1; } - // Contar filtros externos (se aplicáveis) - if (filtrosExternos.codigoConta || filtrosExternos.centroCusto) { - count += 1; - } - return count; - }, [columnFilters, globalFilter, filtrosExternos]); + }, [columnFilters, globalFilter]); - // Função para limpar todos os filtros + // Função para limpar todos os filtros internos (mantém filtros externos) const clearAllFilters = React.useCallback(() => { setColumnFilters({}); setColumnSorts({}); + setGlobalFilter(""); }, []); // Atualizar filtros externos quando os props mudarem @@ -905,6 +901,8 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) { slots={{ toolbar: GridToolbar }} disableColumnMenu={true} disableColumnSorting={true} + pagination={false} + disableVirtualization={false} initialState={{ aggregation: { model: { @@ -928,7 +926,10 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) { borderBottom: "1px solid #f0f0f0", fontSize: "0.875rem", }, - "& .MuiDataGrid-virtualScroller": { overflowY: "auto" }, + "& .MuiDataGrid-virtualScroller": { + overflowY: "auto", + maxHeight: "calc(40vh - 120px)" + }, "& .MuiDataGrid-toolbarContainer": { backgroundColor: "#f8fafc", borderBottom: "1px solid #e5e7eb", diff --git a/src/app/DRE/teste.tsx b/src/app/DRE/teste.tsx index 5c5eb8f..3e014e5 100644 --- a/src/app/DRE/teste.tsx +++ b/src/app/DRE/teste.tsx @@ -264,13 +264,7 @@ export default function Teste() { // Extrair centros de custo únicos com nome e código const centrosCustoUnicos = [...new Set(dadosCompletos.map((item: DREItem) => item.centro_custo))].sort() as string[]; - // Filtrar centro de custo com código específico - const centrosCustoFiltrados = centrosCustoUnicos.filter(centro => { - const item = dadosCompletos.find((d: DREItem) => d.centro_custo === centro); - return item?.codigo_centro_custo !== "002.003.017"; - }); - - setOpcoesCentrosCusto(centrosCustoFiltrados); + setOpcoesCentrosCusto(centrosCustoUnicos); // Criar objeto de códigos dos centros de custo const codigos: Record = {}; @@ -294,9 +288,19 @@ export default function Teste() { }); setCodigosContas(codigosContasObj); - // Inicializar com todos os itens selecionados - setCentrosCustoSelecionados(centrosCustoUnicos); - setContasSelecionadas(contasUnicas); + // Inicializar com todos os itens selecionados, exceto o centro de custo 002.003.017 e conta 100050 + const centrosCustoIniciaisSelecionados = centrosCustoUnicos.filter(centro => { + const item = dadosCompletos.find((d: DREItem) => d.centro_custo === centro); + return item?.codigo_centro_custo !== "002.003.017"; + }); + + const contasIniciaisSelecionadas = contasUnicas.filter(conta => { + const item = dadosCompletos.find((d: DREItem) => d.conta === conta); + return item?.codigo_conta?.toString() !== "100050"; + }); + + setCentrosCustoSelecionados(centrosCustoIniciaisSelecionados); + setContasSelecionadas(contasIniciaisSelecionadas); } catch (error) { console.error("Erro ao carregar períodos:", error);