feat: translate CSV export headers to pt-BR and format currency values
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 1m3s

This commit is contained in:
Cauê Faleiros
2026-05-20 10:33:03 -03:00
parent ceecbc354d
commit c77da0a9d0
2 changed files with 20 additions and 2 deletions

View File

@@ -126,7 +126,16 @@ const Clients = () => {
</div>
<button
onClick={() => exportToCSV(clientsData, `clientes_${new Date().toISOString().split('T')[0]}.csv`)}
onClick={() => {
const exportData = clientsData.map(client => ({
'Nome do Cliente': client.name,
'Total Gasto (R$)': client.totalSpent.toFixed(2).replace('.', ','),
'Produtos Comprados': client.totalItems,
'Total de Pedidos': client.orderCount,
'Última Compra': new Date(client.lastPurchase).toLocaleDateString('pt-BR')
}));
exportToCSV(exportData, `clientes_${new Date().toISOString().split('T')[0]}.csv`);
}}
className="flex items-center justify-center gap-2 bg-dark-card border border-dark-border px-4 py-2.5 rounded-xl shadow-sm hover:border-brand-primary transition-colors text-sm font-medium text-dark-text cursor-pointer"
title="Exportar para CSV"
>

View File

@@ -91,7 +91,16 @@ const Products = () => {
</div>
<button
onClick={() => exportToCSV(productsData, `produtos_${new Date().toISOString().split('T')[0]}.csv`)}
onClick={() => {
const exportData = productsData.map(product => ({
'ID Produto': product.id,
'Descrição': product.name,
'Preço Atual (R$)': product.lastPrice.toFixed(2).replace('.', ','),
'Total Vendido (un.)': product.totalSold,
'Receita Gerada (R$)': product.revenue.toFixed(2).replace('.', ',')
}));
exportToCSV(exportData, `produtos_${new Date().toISOString().split('T')[0]}.csv`);
}}
className="flex items-center justify-center gap-2 bg-dark-card border border-dark-border px-4 py-2.5 rounded-xl shadow-sm hover:border-brand-primary transition-colors text-sm font-medium text-dark-text cursor-pointer"
title="Exportar para CSV"
>