diff --git a/src/app/admin/page.tsx b/src/app/admin/page.tsx index 9e4985b..29989d0 100644 --- a/src/app/admin/page.tsx +++ b/src/app/admin/page.tsx @@ -30,7 +30,8 @@ export default async function AdminPage() { const stats = await getGlobalApiStats(); // Fetch recent API usage - const { data: recentUsage } = await supabase + console.log('[Admin Page] Fetching recent API usage...'); + const { data: recentUsage, error: recentError } = await supabase .from('api_usage') .select(` *, @@ -41,6 +42,8 @@ export default async function AdminPage() { .order('created_at', { ascending: false }) .limit(50); + console.log('[Admin Page] Recent usage - count:', recentUsage?.length, 'error:', recentError); + // Fetch per-user statistics const { data: userStats } = await supabase .from('api_usage') diff --git a/src/services/analyze-bottle.ts b/src/services/analyze-bottle.ts index 364c2eb..116ba8a 100644 --- a/src/services/analyze-bottle.ts +++ b/src/services/analyze-bottle.ts @@ -5,6 +5,8 @@ import { BottleMetadataSchema, AnalysisResponse } from '@/types/whisky'; import { createServerActionClient } from '@supabase/auth-helpers-nextjs'; import { cookies } from 'next/headers'; import { createHash } from 'crypto'; +import { trackApiUsage } from './track-api-usage'; +import { checkCreditBalance, deductCredits } from './credit-service'; export async function analyzeBottle(base64Image: string): Promise { const supabase = createServerActionClient({ cookies }); @@ -16,10 +18,21 @@ export async function analyzeBottle(base64Image: string): Promise