Files
step3/api/QuestionsApi/Models/DashboardModels.cs
T

57 lines
1.9 KiB
C#

namespace QuestionsApi.Models;
public sealed class DashboardResponse
{
public int QuestionBankRating { get; set; } = 1000;
public int RatedQuestionCount { get; set; }
public int CcsRating { get; set; } = 1000;
public int RatedCcsCaseCount { get; set; }
public int QuestionsCompleted { get; set; }
public int CcsCasesCompleted { get; set; }
public int FirstAttemptAccuracy { get; set; }
public int AccuracySampleSize { get; set; }
public int QuestionsThisWeek { get; set; }
public int StudyTimeSecondsThisWeek { get; set; }
public int CurrentStreak { get; set; }
public int MissedQuestionCount { get; set; }
public int BookmarkCount { get; set; }
public int NoteCount { get; set; }
public List<DashboardTrendPoint> PerformanceTrend { get; set; } = [];
public List<DashboardSystemPerformance> Systems { get; set; } = [];
public List<DashboardActivityDay> WeeklyActivity { get; set; } = [];
public List<DashboardRecentActivity> RecentActivity { get; set; } = [];
}
public sealed class DashboardTrendPoint
{
public DateTime DateUtc { get; set; }
public int Correct { get; set; }
public int Total { get; set; }
public int Accuracy { get; set; }
}
public sealed class DashboardSystemPerformance
{
public string System { get; set; } = "General";
public int Correct { get; set; }
public int Total { get; set; }
public int Accuracy { get; set; }
}
public sealed class DashboardActivityDay
{
public DateTime DateUtc { get; set; }
public int Questions { get; set; }
public int CcsCases { get; set; }
public int StudyTimeSeconds { get; set; }
}
public sealed class DashboardRecentActivity
{
public string Type { get; set; } = "question";
public string Title { get; set; } = "";
public string Detail { get; set; } = "";
public DateTime OccurredUtc { get; set; }
public string Route { get; set; } = "";
}