hasGoldenRanking function
- List<
UserSemesterRanking> rankings
Returns whether a list of UserSemesterRanking entries qualifies for the golden award.
Prioritizes checking the class-level ranking (RankingType.classLevel) semester rank, which is the standard scope for academic excellence awards. If no class-level ranking exists, falls back to checking whether any ranking entry qualifies.
Implementation
bool hasGoldenRanking(List<UserSemesterRanking> rankings) {
if (rankings.isEmpty) return false;
final classRanking = rankings.cast<UserSemesterRanking?>().firstWhere(
(r) => r?.rankingType == RankingType.classLevel,
orElse: () => null,
);
if (classRanking != null) {
return isGoldenRanking(
rank: classRanking.semesterRank,
total: classRanking.semesterTotal,
);
}
return rankings.any(
(r) => isGoldenRanking(rank: r.semesterRank, total: r.semesterTotal),
);
}