From a9cae33ca0d9edb9cb1461acbf707f4a6aaff7e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Faleiros?= Date: Mon, 17 Aug 2026 12:38:27 -0300 Subject: [PATCH] Refine pending data tables --- src/pages/PlanningIssues.tsx | 55 ++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 31 deletions(-) diff --git a/src/pages/PlanningIssues.tsx b/src/pages/PlanningIssues.tsx index ad0b399..3a96f65 100644 --- a/src/pages/PlanningIssues.tsx +++ b/src/pages/PlanningIssues.tsx @@ -8,7 +8,6 @@ import RefreshStatus from '../components/RefreshStatus'; import SkuPlanningModal from '../components/SkuPlanningModal'; import { classifyCutFamily, CUT_FAMILY_RULES, type CutFamilyKey } from '../analytics/cutting'; import { fetchCuttingSettings, fetchProductAnalytics, fetchStock, fetchSupplySummary, saveCuttingSettings } from '../dataService'; -import { buildConsumptionReferencePath } from '../catalogLinks'; import { getProductTypeConfig, resolveProductType, type ProductTypeKey } from '../productClassification'; import { parseProductName } from '../productParsing'; import type { CutProductOverride, CuttingSettings, DateRange, ProductAnalyticsItem, StockData, SupplySummary } from '../types'; @@ -157,7 +156,7 @@ const PlanningIssues = () => { const [editingProduct, setEditingProduct] = useState(null); const [isSaving, setIsSaving] = useState(false); const [currentPage, setCurrentPage] = useState(1); - const [itemsPerPage, setItemsPerPage] = useState(20); + const [itemsPerPage, setItemsPerPage] = useState(10); useEffect(() => { let isMounted = true; @@ -594,32 +593,28 @@ const PlanningIssues = () => { ) : activeQueue === 'negative_stock' ? ( visibleNegativeStockRows.length ? (
-
-

Saldos negativos

-

São exibidos para conferência, mas contam como zero disponível no planejamento.

+
+

Saldos negativos

Visíveis para auditoria; o planejamento considera saldo disponível igual a zero.

+ {formatNumber(visibleNegativeStockRows.length)} materiais
- +
- - - - - + + + + {paginatedNegativeStockRows.map(row => ( - - - - + + + ))} @@ -648,33 +643,31 @@ const PlanningIssues = () => { ) ) : visibleMissingCompositionRows.length ? (
-
-

SKUs sem composição

-

Estes produtos continuam operando, mas não geram demanda de material até receberem composição.

+
+

SKUs sem composição

Continuam operando, mas não entram na necessidade de materiais até receberem uma composição.

+ {formatNumber(visibleMissingCompositionRows.length)} SKUs
-
SKUMaterialSaldo informadoTratamento no planoAçãoMaterialSaldo informadoPlanejamentoAções
#{row.produto_id}

{row.nome}

{formatNumber(Number(row.saldo), 2)} un.0 disponível

{row.nome}

#{row.produto_id}

{formatNumber(Number(row.saldo), 2)} un.

informado no Tiny

Usa 0 disponível - - Conferir - +
+
- - - - - - + + + + + {paginatedMissingCompositionRows.map(row => ( - - +
SKUProdutoVendidoEstoqueSugestão de corteAçõesProdutoVendidoEstoqueCortar agoraAções
#{row.productId}

{row.name}

{row.name}

#{row.productId}

{formatNumber(row.quantitySold)} un. {formatNumber(row.stockQuantity)} un. {formatNumber(row.suggestedQuantity)} un.
- +