diff --git a/src/pages/OlistSync.tsx b/src/pages/OlistSync.tsx index 134425c..57616b8 100644 --- a/src/pages/OlistSync.tsx +++ b/src/pages/OlistSync.tsx @@ -91,6 +91,7 @@ const OlistSync = () => { const [syncRunsPage, setSyncRunsPage] = useState(1); const [importRunsPage, setImportRunsPage] = useState(1); const [supplierReferencesPage, setSupplierReferencesPage] = useState(1); + const [importView, setImportView] = useState<'suppliers' | 'files'>('suppliers'); const loadStatus = useCallback(async (initial = false) => { if (initial) setIsLoading(true); @@ -361,21 +362,32 @@ const OlistSync = () => { ; })} -
-

Referências por fornecedor

Sugestões calculadas a partir das OPs finalizadas com fornecedor e rendimento.

{supplierReferences.length.toLocaleString('pt-BR')} referências
-
- {!supplierReferences.length &&

Nenhuma referência por fornecedor disponível.

} - {visibleSupplierReferences.map(item =>

{item.supplier}

{item.familyKey} · {yieldFamilyLabels[item.familyKey] || 'Família de corte'} · {item.sampleCount.toLocaleString('pt-BR')} OPs

{Math.round(item.recommendedUnitsPerRoll!).toLocaleString('pt-BR')} un./rolo

)} +
+
+
+ + +
+

{importView === 'suppliers' ? `${supplierReferences.length.toLocaleString('pt-BR')} referências` : `${(importData?.runsTotal || 0).toLocaleString('pt-BR')} arquivos`}

- {!!supplierReferences.length && } -
-
-

Arquivos importados

Status de cada CSV recebido da Olist.

{(importData?.runsTotal || 0).toLocaleString('pt-BR')} arquivos
-
- {!importData?.runs.length &&

Nenhum CSV de OPs finalizadas importado.

} - {importData?.runs.map(run =>

{run.filename}

{formatDateTime(run.startedAt)} · {run.totalRows.toLocaleString('pt-BR')} linhas

{run.errorMessage &&

{run.errorMessage}

}
{run.imported} novas{run.updated} atualizadas{run.skipped} ignoradas{run.failed} falhas
)} + +
+ {importView === 'suppliers' ? <> +
Fornecedor e famíliaRendimento
+
+ {!supplierReferences.length &&

Nenhuma referência por fornecedor disponível.

} + {visibleSupplierReferences.map(item =>

{item.supplier}

{item.familyKey} · {yieldFamilyLabels[item.familyKey] || 'Família de corte'} · {item.sampleCount.toLocaleString('pt-BR')} OPs

{Math.round(item.recommendedUnitsPerRoll!).toLocaleString('pt-BR')} un./rolo

)} +
+ {!!supplierReferences.length && } + : <> +
ArquivoStatus da importação
+
+ {!importData?.runs.length &&

Nenhum CSV de OPs finalizadas importado.

} + {importData?.runs.map(run =>

{run.filename}

{formatDateTime(run.startedAt)} · {run.totalRows.toLocaleString('pt-BR')} linhas

{run.errorMessage &&

{run.errorMessage}

}
{run.imported} novas{run.updated} atualizadas{run.skipped} ignoradas{run.failed} falhas
)} +
+ {!!importData && } + }
- {!!importData && }