mirror of
https://github.com/christianvidalwolf-prog/CrazeAnalytix.git
synced 2026-08-03 13:15:24 +02:00
Refactor: Switched all exports to .xlsx and enhanced Weekly Grid export
This commit is contained in:
@@ -246,15 +246,30 @@ const WeeklyGrid: React.FC<WeeklyGridProps> = ({ data, top50Ranking, onDrillDown
|
||||
allWeeks.forEach(week => {
|
||||
rowData[`${week} Units`] = row.unitsByWeek[week] || 0;
|
||||
rowData[`${week} Spend`] = row.spendByWeek[week] || 0;
|
||||
rowData[`${week} GV`] = row.gvByWeek[week] || 0;
|
||||
});
|
||||
return rowData;
|
||||
});
|
||||
|
||||
// Add Totals row
|
||||
const totalsRow: any = {
|
||||
SKU: 'TOTALS',
|
||||
ASIN: '',
|
||||
Title: 'ALL FILTERED PRODUCTS',
|
||||
Line: '',
|
||||
};
|
||||
allWeeks.forEach(week => {
|
||||
totalsRow[`${week} Units`] = weekTotals[week]?.units || 0;
|
||||
totalsRow[`${week} Spend`] = weekTotals[week]?.spend || 0;
|
||||
totalsRow[`${week} GV`] = weekTotals[week]?.gv || 0;
|
||||
});
|
||||
exportData.push(totalsRow);
|
||||
|
||||
const ws = XLSX.utils.json_to_sheet(exportData);
|
||||
const wb = XLSX.utils.book_new();
|
||||
XLSX.utils.book_append_sheet(wb, ws, 'Weekly Sales');
|
||||
XLSX.writeFile(wb, `Weekly_Sales_Export_${new Date().toISOString().slice(0, 10)}.xlsx`);
|
||||
}, [sortedRows, allWeeks]);
|
||||
}, [sortedRows, allWeeks, weekTotals]);
|
||||
|
||||
return (
|
||||
<div className="flex flex-col gap-4 animate-fade-in">
|
||||
|
||||
Reference in New Issue
Block a user