changed old subject type to gradesubject

This commit is contained in:
Kima
2023-10-15 12:14:06 +02:00
parent c7c3b421f4
commit 2d5cbe8799
31 changed files with 497 additions and 156 deletions

View File

@@ -30,7 +30,7 @@ class _AllSumBodyState extends State<AllSumBody> {
int avgDropValue = 0;
bool animation = false;
List<Grade> getSubjectGrades(Subject subject, {int days = 0}) => gradeProvider
List<Grade> getSubjectGrades(GradeSubject subject, {int days = 0}) => gradeProvider
.grades
.where((e) =>
e.subject == subject &&

View File

@@ -50,14 +50,15 @@ class _GradesBodyState extends State<GradesBody> {
int avgDropValue = 0;
bool animation = false;
List<Grade> getSubjectGrades(Subject subject, {int days = 0}) => gradeProvider
.grades
.where((e) =>
e.subject == subject &&
e.type == GradeType.midYear &&
(days == 0 ||
e.date.isBefore(DateTime.now().subtract(Duration(days: days)))))
.toList();
List<Grade> getSubjectGrades(GradeSubject subject, {int days = 0}) =>
gradeProvider.grades
.where((e) =>
e.subject == subject &&
e.type == GradeType.midYear &&
(days == 0 ||
e.date
.isBefore(DateTime.now().subtract(Duration(days: days)))))
.toList();
@override
void initState() {
@@ -74,18 +75,18 @@ class _GradesBodyState extends State<GradesBody> {
}
void generateTiles({required int filter}) {
List<Subject> subjects = gradeProvider.grades
List<GradeSubject> subjects = gradeProvider.grades
.map((e) => e.subject)
.toSet()
.toList()
..sort((a, b) => a.name.compareTo(b.name));
List<Widget> tiles = [];
Map<Subject, double> subjectAvgs = {};
Map<GradeSubject, double> subjectAvgs = {};
var count = 1;
for (Subject subject in subjects) {
for (GradeSubject subject in subjects) {
List<Grade> subjectGrades = getSubjectGrades(subject);
double avg = AverageHelper.averageEvals(subjectGrades);

View File

@@ -28,7 +28,7 @@ List<String> faces = [
];
class SubjectAbsence {
Subject subject;
GradeSubject subject;
List<Absence> absences;
double percentage;
@@ -52,7 +52,7 @@ class _LessonsBodyState extends State<LessonsBody> {
late List<SubjectAbsence> absences = [];
late List<Widget> lessons = [];
late List<Absence> delays = [];
final Map<Subject, Lesson> _lessonCount = {};
final Map<GradeSubject, Lesson> _lessonCount = {};
@override
void initState() {
@@ -85,7 +85,7 @@ class _LessonsBodyState extends State<LessonsBody> {
}
void buildSubjectAbsences() {
Map<Subject, SubjectAbsence> _absences = {};
Map<GradeSubject, SubjectAbsence> _absences = {};
for (final absence in absenceProvider.absences) {
if (absence.delay != 0) continue;