diff --git a/src/app/DRE/analitico.tsx b/src/app/DRE/analitico.tsx
index d2cd729..977cd59 100644
--- a/src/app/DRE/analitico.tsx
+++ b/src/app/DRE/analitico.tsx
@@ -481,12 +481,12 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
// Definir colunas do DataGridPro na ordem solicitada
const columns = React.useMemo(() => {
const dateCellRenderer = (params: any) => {
- if (!params.value) return "-";
- try {
- return new Date(params.value).toLocaleDateString("pt-BR");
- } catch (error) {
- return params.value;
- }
+ if (!params.value) return "-";
+ try {
+ return new Date(params.value).toLocaleDateString("pt-BR");
+ } catch (error) {
+ return params.value;
+ }
};
const currencyCellRenderer = (params: any, showZero: boolean = false) => {
@@ -609,40 +609,40 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
sortable: true,
resizable: true,
},
- {
- field: "valor",
- headerName: "Vl.Realizado",
- type: "number" as const,
- width: 140,
- sortable: true,
- resizable: true,
+ {
+ field: "valor",
+ headerName: "Vl.Realizado",
+ type: "number" as const,
+ width: 140,
+ sortable: true,
+ resizable: true,
renderCell: (params: any) => currencyCellRenderer(params, true),
},
- {
- field: "valor_previsto",
- headerName: "Vl.Previsto",
- type: "number" as const,
- width: 130,
- sortable: true,
- resizable: true,
+ {
+ field: "valor_previsto",
+ headerName: "Vl.Previsto",
+ type: "number" as const,
+ width: 130,
+ sortable: true,
+ resizable: true,
renderCell: (params: any) => currencyCellRenderer(params, false),
},
- {
- field: "valor_confirmado",
- headerName: "Vl.Confirmado",
- type: "number" as const,
- width: 140,
- sortable: true,
- resizable: true,
+ {
+ field: "valor_confirmado",
+ headerName: "Vl.Confirmado",
+ type: "number" as const,
+ width: 140,
+ sortable: true,
+ resizable: true,
renderCell: (params: any) => currencyCellRenderer(params, false),
},
- {
- field: "valor_pago",
- headerName: "Vl.Pago",
- type: "number" as const,
+ {
+ field: "valor_pago",
+ headerName: "Vl.Pago",
+ type: "number" as const,
width: 120,
- sortable: true,
- resizable: true,
+ sortable: true,
+ resizable: true,
renderCell: (params: any) => currencyCellRenderer(params, false),
},
{
@@ -823,10 +823,10 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
// Função para renderizar o conteúdo principal do componente (reutilizável)
const renderAnaliticoContent = (isMaximized: boolean = false) => {
- return (
+ return (
<>
- {/* Filtros Externos Ativos */}
- {(filtrosExternos.dataInicio || filtrosExternos.centroCusto || filtrosExternos.codigoGrupo || filtrosExternos.codigoConta) && (
+ {/* Filtros Externos Ativos - Apenas quando maximizado */}
+ {isMaximized && (filtrosExternos.dataInicio || filtrosExternos.centroCusto || filtrosExternos.codigoGrupo || filtrosExternos.codigoConta) && (
Filtros aplicados pela tabela DRE Gerencial:
@@ -854,72 +854,74 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
)}
-
- {/* Controls */}
-
- {data.length > 0 && (
+
+ {/* Controls - Apenas quando maximizado */}
+ {isMaximized && (
+
+ {data.length > 0 && (
+
+ )}
- )}
-
+
+ )}
+
+ {/* DataGridPro */}
+
+
+
+
+
+ Total de Registros: {sortedAndFilteredData.length}
+
+
+ Valor Total:
+ {new Intl.NumberFormat("pt-BR", {
+ style: "currency",
+ currency: "BRL",
+ }).format(valorTotal)}
+
+
+
- {/* DataGridPro */}
-
-
-
-
-
- Total de Registros: {sortedAndFilteredData.length}
-
-
- Valor Total:
- {new Intl.NumberFormat("pt-BR", {
- style: "currency",
- currency: "BRL",
- }).format(valorTotal)}
-
-
-
-
-
-
row.id || `row-${row.recnum || Math.random()}`}
- sx={{
- overflowAnchor: 'none',
+ row.id || `row-${row.recnum || Math.random()}`}
+ sx={{
+ overflowAnchor: 'none',
height: "100%",
display: "flex",
flexDirection: "column",
@@ -943,7 +945,7 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
overflow: "hidden !important",
position: "relative",
zIndex: 100,
- backgroundColor: "#f9fafb",
+ backgroundColor: "#f9fafb",
flexShrink: 0,
flexGrow: 0,
},
@@ -951,8 +953,8 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
position: "relative !important",
backgroundColor: "#f9fafb !important",
zIndex: 100,
- borderBottom: "1px solid #e5e7eb",
- },
+ borderBottom: "1px solid #e5e7eb",
+ },
"& .MuiDataGrid-columnHeader": {
backgroundColor: "#f9fafb !important",
},
@@ -962,10 +964,10 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
"& .MuiDataGrid-columnHeadersInner": {
backgroundColor: "#f9fafb !important",
},
- "& .MuiDataGrid-cell": {
- borderBottom: "1px solid #f0f0f0",
- fontSize: "0.875rem",
- },
+ "& .MuiDataGrid-cell": {
+ borderBottom: "1px solid #f0f0f0",
+ fontSize: "0.875rem",
+ },
// Container do virtualScroller - deve ter scroll e ocupar espaço restante
"& .MuiDataGrid-container--bottom": {
flex: 1,
@@ -976,7 +978,7 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
flexDirection: "column",
},
// Apenas o virtualScroller deve ter scroll
- "& .MuiDataGrid-virtualScroller": {
+ "& .MuiDataGrid-virtualScroller": {
overflowY: "auto !important",
overflowX: "auto !important",
height: "100% !important",
@@ -1004,137 +1006,137 @@ export default function AnaliticoComponent({ filtros }: AnaliticoProps) {
},
"& .MuiDataGrid-row": {
minWidth: "max-content",
- },
- "& .MuiDataGrid-toolbarContainer": {
- backgroundColor: "#f8fafc",
- borderBottom: "1px solid #e5e7eb",
- padding: "8px 16px",
- },
+ },
+ "& .MuiDataGrid-toolbarContainer": {
+ backgroundColor: "#f8fafc",
+ borderBottom: "1px solid #e5e7eb",
+ padding: "8px 16px",
+ },
"& .MuiDataGrid-scrollbar": {
display: "none",
},
- // Ocultar todos os ícones nativos das colunas
- "& .MuiDataGrid-columnHeaderMenuContainer": {
- display: "none !important",
- },
- "& .MuiDataGrid-columnHeaderMenuButton": {
- display: "none !important",
- },
- "& .MuiDataGrid-columnHeaderSortIcon": {
- display: "none !important",
- },
- "& .MuiDataGrid-columnHeaderSortIconContainer": {
- display: "none !important",
- },
- "& .MuiDataGrid-iconButtonContainer": {
- display: "none !important",
- },
- "& .MuiDataGrid-columnHeaderSeparator": {
- display: "none !important",
- },
- "& .MuiDataGrid-columnHeaderSortButton": {
- display: "none !important",
- },
- // Ocultar qualquer ícone de menu adicional
- "& .MuiDataGrid-menuIcon": {
- display: "none !important",
- },
- "& .MuiDataGrid-menuIconButton": {
- display: "none !important",
- },
- "& .MuiDataGrid-columnHeaderMenuIcon": {
- display: "none !important",
- },
- "& .MuiDataGrid-columnHeaderMenuIconButton": {
- display: "none !important",
- },
- "& .MuiDataGrid-menuContainer": {
- display: "none !important",
- },
- "& .MuiDataGrid-menu": {
- display: "none !important",
- },
- // Ocultar footer de paginação
- "& .MuiDataGrid-footerContainer": {
- display: "none !important",
- },
- "& .MuiDataGrid-pagination": {
- display: "none !important",
- },
- "& .MuiTablePagination-root": {
- display: "none !important",
- },
- // Garantir que nosso botão customizado apareça
- "& .MuiDataGrid-columnHeaderTitleContainer": {
- width: "100%",
- display: "flex",
- alignItems: "center",
- justifyContent: "space-between",
- },
- }}
- />
-
+ // Ocultar todos os ícones nativos das colunas
+ "& .MuiDataGrid-columnHeaderMenuContainer": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-columnHeaderMenuButton": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-columnHeaderSortIcon": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-columnHeaderSortIconContainer": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-iconButtonContainer": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-columnHeaderSeparator": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-columnHeaderSortButton": {
+ display: "none !important",
+ },
+ // Ocultar qualquer ícone de menu adicional
+ "& .MuiDataGrid-menuIcon": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-menuIconButton": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-columnHeaderMenuIcon": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-columnHeaderMenuIconButton": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-menuContainer": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-menu": {
+ display: "none !important",
+ },
+ // Ocultar footer de paginação
+ "& .MuiDataGrid-footerContainer": {
+ display: "none !important",
+ },
+ "& .MuiDataGrid-pagination": {
+ display: "none !important",
+ },
+ "& .MuiTablePagination-root": {
+ display: "none !important",
+ },
+ // Garantir que nosso botão customizado apareça
+ "& .MuiDataGrid-columnHeaderTitleContainer": {
+ width: "100%",
+ display: "flex",
+ alignItems: "center",
+ justifyContent: "space-between",
+ },
+ }}
+ />
+
{/* Card de Agregação Customizado */}
- {sortedAndFilteredData.length > 0 && (
-
-
-
-
-
- Vl.Realizado:
-
- {new Intl.NumberFormat("pt-BR", {
- style: "currency",
- currency: "BRL",
- }).format(columnTotals.valor)}
-
-
-
-
- Vl.Previsto:
-
- {new Intl.NumberFormat("pt-BR", {
- style: "currency",
- currency: "BRL",
- }).format(columnTotals.valor_previsto)}
-
-
-
-
- Vl.Confirmado:
-
- {new Intl.NumberFormat("pt-BR", {
- style: "currency",
- currency: "BRL",
- }).format(columnTotals.valor_confirmado)}
-
-
-
-
- Vl.Pago:
-
- {new Intl.NumberFormat("pt-BR", {
- style: "currency",
- currency: "BRL",
- }).format(columnTotals.valor_pago)}
-
-
-
-
-
- Total de Registros: {sortedAndFilteredData.length}
-
-
-
-
- )}
+ {sortedAndFilteredData.length > 0 && (
+
+
+
+
+
+ Vl.Realizado:
+
+ {new Intl.NumberFormat("pt-BR", {
+ style: "currency",
+ currency: "BRL",
+ }).format(columnTotals.valor)}
+
-
-
+
+
+ Vl.Previsto:
+
+ {new Intl.NumberFormat("pt-BR", {
+ style: "currency",
+ currency: "BRL",
+ }).format(columnTotals.valor_previsto)}
+
+
+
+
+ Vl.Confirmado:
+
+ {new Intl.NumberFormat("pt-BR", {
+ style: "currency",
+ currency: "BRL",
+ }).format(columnTotals.valor_confirmado)}
+
+
+
+
+ Vl.Pago:
+
+ {new Intl.NumberFormat("pt-BR", {
+ style: "currency",
+ currency: "BRL",
+ }).format(columnTotals.valor_pago)}
+
+
+
+
+
+ Total de Registros: {sortedAndFilteredData.length}
+
+
+
+
+ )}
+
+
+
>
);
};