getAcademicPerformance method

  1. @override
Future<List<SemesterScoreDto>> getAcademicPerformance()
override

Fetches academic performance (scores) for all semesters.

Returns a list of SemesterScoreDto ordered from most recent to oldest, each containing individual course scores and semester summary statistics.

Implementation

@override
Future<List<SemesterScoreDto>> getAcademicPerformance() async {
  return academicPerformanceResult ??
      [
        (
          semester: (year: 114, term: 1),
          scores: [
            (
              number: '346774',
              courseCode: '3004130',
              score: 86,
              status: null,
            ),
            (
              number: '348337',
              courseCode: '3602012',
              score: 60,
              status: null,
            ),
            (
              number: '348616',
              courseCode: 'AC23502',
              score: 82,
              status: null,
            ),
            (
              number: '352204',
              courseCode: '3604174',
              score: 95,
              status: null,
            ),
            (
              number: '352205',
              courseCode: '3604052',
              score: 89,
              status: null,
            ),
            (
              number: '352828',
              courseCode: '1001002',
              score: 77,
              status: null,
            ),
            (
              number: '352902',
              courseCode: '1410145',
              score: 66,
              status: null,
            ),
            (
              number: '353181',
              courseCode: '0199998',
              score: 68,
              status: null,
            ),
          ],
          average: 78.6,
          conduct: 87.0,
          totalCredits: 20.0,
          creditsPassed: 20.0,
          note: null,
        ),
        (
          semester: (year: 113, term: 2),
          scores: [
            (
              number: '342501',
              courseCode: '3602001',
              score: 72,
              status: null,
            ),
            (
              number: '342510',
              courseCode: '3604052',
              score: null,
              status: .withdraw,
            ),
            (
              number: '345890',
              courseCode: '1001002',
              score: 81,
              status: null,
            ),
            (
              number: '345920',
              courseCode: '1410080',
              score: 75,
              status: null,
            ),
            (
              number: null,
              courseCode: '1401032',
              score: null,
              status: .creditTransfer,
            ),
          ],
          average: 76.0,
          conduct: 85.0,
          totalCredits: 14.0,
          creditsPassed: 11.0,
          note: null,
        ),
      ];
}