Fix Performance page showing empty data
The trends and snapshots endpoints returned periodLabel ("last_30_days")
as the date field, which parseISO() couldn't parse, causing all records
to be filtered out. Now uses capturedAt timestamp for date filtering and
display.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -123,6 +123,7 @@ export default async function (fastify: FastifyInstance) {
|
|||||||
const rows = await db
|
const rows = await db
|
||||||
.select({
|
.select({
|
||||||
date: performanceSnapshots.periodLabel,
|
date: performanceSnapshots.periodLabel,
|
||||||
|
capturedAt: performanceSnapshots.capturedAt,
|
||||||
platformId: performanceSnapshots.platformId,
|
platformId: performanceSnapshots.platformId,
|
||||||
viewsSearch: performanceSnapshots.viewsSearch,
|
viewsSearch: performanceSnapshots.viewsSearch,
|
||||||
viewsListing: performanceSnapshots.viewsListing,
|
viewsListing: performanceSnapshots.viewsListing,
|
||||||
|
|||||||
@@ -206,7 +206,7 @@ export default function Performance() {
|
|||||||
|
|
||||||
const trends: TrendPoint[] = rawTrends?.length
|
const trends: TrendPoint[] = rawTrends?.length
|
||||||
? rawTrends.map((r: any) => ({
|
? rawTrends.map((r: any) => ({
|
||||||
date: r.date || r.periodLabel,
|
date: r.capturedAt ? r.capturedAt.split('T')[0].split(' ')[0] : r.date || r.periodLabel,
|
||||||
platform: r.platformId || r.platform,
|
platform: r.platformId || r.platform,
|
||||||
views_search: Number(r.viewsSearch ?? r.views_search ?? 0),
|
views_search: Number(r.viewsSearch ?? r.views_search ?? 0),
|
||||||
conversion_rate: Number(r.conversionRate ?? r.conversion_rate ?? 0),
|
conversion_rate: Number(r.conversionRate ?? r.conversion_rate ?? 0),
|
||||||
@@ -217,7 +217,7 @@ export default function Performance() {
|
|||||||
: MOCK_TRENDS;
|
: MOCK_TRENDS;
|
||||||
const snapshots: SnapshotRow[] = rawSnapshots?.length
|
const snapshots: SnapshotRow[] = rawSnapshots?.length
|
||||||
? rawSnapshots.map((r: any) => ({
|
? rawSnapshots.map((r: any) => ({
|
||||||
date: r.periodLabel || r.date,
|
date: r.capturedAt ? r.capturedAt.split('T')[0].split(' ')[0] : r.periodLabel || r.date,
|
||||||
platform: r.platformId || r.platform,
|
platform: r.platformId || r.platform,
|
||||||
views: Number(r.viewsSearch ?? r.views ?? 0),
|
views: Number(r.viewsSearch ?? r.views ?? 0),
|
||||||
clicks: Number(r.viewsListing ?? r.clicks ?? 0),
|
clicks: Number(r.viewsListing ?? r.clicks ?? 0),
|
||||||
|
|||||||
Reference in New Issue
Block a user