Skip to content

Commit c034d97

Browse files
committed
fix: cannot fetch class name while calculate class num
1 parent 0d47657 commit c034d97

3 files changed

Lines changed: 14 additions & 1 deletion

File tree

assets/flutter_i18n/en_US.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ class_attendance:
7575
Required"
7676
not_attend: Rebirths
7777
not_attend_info: "{timeToHaveError} Times / {totalTimes} Total"
78+
not_attend_info_error: Cannot match course in the classtable
7879
leave: Leaves
7980
leave_info: Personal {personalLeave} / Sick {sickLeave} / Official {officialLeave}
8081
study: Study

assets/flutter_i18n/zh_TW.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ class_attendance:
7070
time_info: '{checkInCount} 已籤 / {absenceCount} 缺勤 / {requiredCheckIn} 應籤'
7171
not_attend: 復活次數
7272
not_attend_info: '{timeToHaveError} 次 / {totalTimes} 總課程'
73+
not_attend_info_error: 無法對應已有課程
7374
leave: 請假次數
7475
leave_info: 事假 {personalLeave} / 病假 {sickLeave} / 公假 {officialLeave}
7576
study: 學習進度

lib/page/class_attendance/class_attendance_view.dart

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,18 @@ class ClassAttendanceView extends StatelessWidget {
9393

9494
Widget _buildCardView(BuildContext context, ClassAttendanceState state) {
9595
final courseCards = state.courses.map((classAttendance) {
96-
int times = state.classTimes[classAttendance.courseName] ?? 0;
96+
int? times = state.classTimes[classAttendance.courseName];
97+
if (times == null) {
98+
String suspeciousClassName = state.classTimes.keys.firstWhere(
99+
(str) =>
100+
str.contains(classAttendance.courseName) ||
101+
classAttendance.courseName.contains(str),
102+
orElse: () => "",
103+
);
104+
if (suspeciousClassName.isNotEmpty) {
105+
times = state.classTimes[suspeciousClassName];
106+
}
107+
}
97108
return CourseCard(course: classAttendance, totalTimes: times);
98109
}).toList();
99110

0 commit comments

Comments
 (0)