diff --git a/backend/index.js b/backend/index.js index 55f2de0..bfd2cc8 100644 --- a/backend/index.js +++ b/backend/index.js @@ -89,7 +89,8 @@ const formatRow = (row) => ({ Quantidade: row.quantidade, Valor_Unitario: parseFloat(row.valor_unitario), Recebido_Em: row.created_at, - ID_Pedido: row.pedido_id + ID_Pedido: row.pedido_id, + Fone_Cliente: row.cliente_fone }); // GET data (for the frontend) diff --git a/src/pages/Clients.tsx b/src/pages/Clients.tsx index 38ea435..0ca9be6 100644 --- a/src/pages/Clients.tsx +++ b/src/pages/Clients.tsx @@ -31,13 +31,17 @@ const Clients = () => { return orderDate >= dateRange.start && orderDate <= dateRange.end; }); - const clientMap: Record, lastPurchase: number }> = {}; + const clientMap: Record, lastPurchase: number, phone: string }> = {}; orders.forEach(order => { const clientName = order.Nome_Cliente || `Cliente Desconhecido (Pedido ${order.Valor_Pedido})`; if (!clientMap[clientName]) { - clientMap[clientName] = { totalSpent: 0, totalItems: 0, uniqueOrders: new Set(), lastPurchase: 0 }; + clientMap[clientName] = { totalSpent: 0, totalItems: 0, uniqueOrders: new Set(), lastPurchase: 0, phone: '' }; + } + + if (order.Fone_Cliente) { + clientMap[clientName].phone = order.Fone_Cliente; } // Calculate total spent based on quantity * unit price @@ -54,6 +58,7 @@ const Clients = () => { let result = Object.keys(clientMap).map(name => ({ name, + phone: clientMap[name].phone, totalSpent: clientMap[name].totalSpent, totalItems: clientMap[name].totalItems, orderCount: clientMap[name].uniqueOrders.size, // Grouped by unique date+value combinations @@ -129,6 +134,7 @@ const Clients = () => { onClick={() => { const exportData = clientsData.map(client => ({ 'Nome do Cliente': client.name, + 'Telefone/WhatsApp': client.phone || 'N/A', 'Total Gasto (R$)': client.totalSpent.toFixed(2).replace('.', ','), 'Produtos Comprados': client.totalItems, 'Total de Pedidos': client.orderCount, diff --git a/src/types.ts b/src/types.ts index 025e1e1..4854014 100644 --- a/src/types.ts +++ b/src/types.ts @@ -8,6 +8,7 @@ export interface OrderData { Valor_Unitario: number; Recebido_Em?: string; ID_Pedido?: string; + Fone_Cliente?: string; } export interface DateRange {