diff --git a/src/modules/ai-job/learning-analysis-snapshot-builder.ts b/src/modules/ai-job/learning-analysis-snapshot-builder.ts index eab8fda..60e9604 100644 --- a/src/modules/ai-job/learning-analysis-snapshot-builder.ts +++ b/src/modules/ai-job/learning-analysis-snapshot-builder.ts @@ -183,7 +183,7 @@ export class LearningAnalysisSnapshotBuilder { private async aggregateStudyMetrics(userId: string, start: Date, end: Date) { try { const activities = await this.prisma.dailyLearningActivity.findMany({ - where: { userId, date: { gte: start, lte: end } }, + where: { userId, activityDate: { gte: start, lte: end } }, select: { durationSeconds: true, activeRecallCount: true, reviewCount: true, readingSeconds: true }, }); const totalDuration = activities.reduce((s, a) => s + (a.durationSeconds || 0), 0); @@ -208,7 +208,7 @@ export class LearningAnalysisSnapshotBuilder { take: 200, }), ]); - const ratings = reviews.filter(r => typeof r.rating === 'number').map(r => r.rating as number); + const ratings = reviews.map(r => parseInt(r.rating, 10)).filter(n => !isNaN(n)); const accuracy = ratings.length > 0 ? ratings.filter(r => r >= 3).length / ratings.length : 0; return { reviewDueCount: dueCount,