mirror of
https://github.com/christianvidalwolf-prog/CrazeAnalytix.git
synced 2026-08-03 13:55:23 +02:00
Update Forecast Period to YTD logic
This commit is contained in:
@@ -49,7 +49,13 @@ const ForecastRow: React.FC<{
|
||||
}
|
||||
|
||||
// Calculations for new columns
|
||||
const forecastPeriod = item.forecastUnits || 0;
|
||||
// Forecast Period: Sum of forecast units for active months (YTD)
|
||||
const forecastPeriod = useMemo(() => {
|
||||
return activeMonths.reduce((sum, month) => {
|
||||
return sum + (item.monthlyData?.[month]?.forecastUnits || 0);
|
||||
}, 0);
|
||||
}, [item, activeMonths]);
|
||||
|
||||
const actualUnits = item.actualUnits || 0;
|
||||
const annualForecast = item.annualForecast || 0;
|
||||
|
||||
@@ -180,12 +186,19 @@ const ForecastView: React.FC<ForecastViewProps> = ({
|
||||
}, [data, filters.line, filters.asin, filters.sku]);
|
||||
|
||||
const globalSummary = useMemo(() => {
|
||||
return baseFilteredData.reduce((acc, curr) => ({
|
||||
return baseFilteredData.reduce((acc, curr) => {
|
||||
// Calculate Forecast Period (YTD) for this item
|
||||
const itemPeriodForecast = activeMonths.reduce((sum, month) => {
|
||||
return sum + (curr.monthlyData?.[month]?.forecastUnits || 0);
|
||||
}, 0);
|
||||
|
||||
return {
|
||||
actualUnits: acc.actualUnits + (curr.actualUnits || 0),
|
||||
forecastUnits: acc.forecastUnits + (curr.forecastUnits || 0),
|
||||
forecastUnits: acc.forecastUnits + itemPeriodForecast,
|
||||
annualForecast: acc.annualForecast + (curr.annualForecast || 0),
|
||||
}), { actualUnits: 0, forecastUnits: 0, annualForecast: 0 });
|
||||
}, [baseFilteredData]);
|
||||
};
|
||||
}, { actualUnits: 0, forecastUnits: 0, annualForecast: 0 });
|
||||
}, [baseFilteredData, activeMonths]);
|
||||
|
||||
const chartData = useMemo(() => {
|
||||
const dataMap = new Map<string, { name: string; actual: number; forecast: number }>();
|
||||
|
||||
Reference in New Issue
Block a user