forked from firka/firka
Adatbázisba mentés: kész házik
This commit is contained in:
@@ -27,3 +27,40 @@ Future<void> resetOldHomeworkCache(Isar isar) async {
|
||||
await isar.homeworkCacheModels.deleteAll(weeksToRemove);
|
||||
});
|
||||
}
|
||||
|
||||
@collection
|
||||
class HomeworkDoneModel {
|
||||
Id? id;
|
||||
|
||||
late String homeworkId;
|
||||
late DateTime doneAt;
|
||||
|
||||
HomeworkDoneModel();
|
||||
|
||||
}
|
||||
Future<void> markAsDone(Isar isar, String homeWorkUid) async {
|
||||
await isar.writeTxn(() async {
|
||||
await isar.homeworkDoneModels.put(HomeworkDoneModel()
|
||||
..homeworkId = homeWorkUid
|
||||
..doneAt = DateTime.now());
|
||||
});
|
||||
}
|
||||
|
||||
Future<void> markAsNotDone(Isar isar, String homeWorkUid) async {
|
||||
await isar.writeTxn(() async {
|
||||
final idsToDelete = await isar.homeworkDoneModels
|
||||
.filter()
|
||||
.homeworkIdEqualTo(homeWorkUid)
|
||||
.idProperty()
|
||||
.findAll();
|
||||
await isar.homeworkDoneModels.deleteAll(idsToDelete);
|
||||
});
|
||||
}
|
||||
|
||||
Future<bool> isHomeworkDone(Isar isar, String homeWorkUid) async {
|
||||
var existing = await isar.homeworkDoneModels
|
||||
.filter()
|
||||
.homeworkIdEqualTo(homeWorkUid)
|
||||
.findFirst();
|
||||
return existing != null;
|
||||
}
|
||||
Reference in New Issue
Block a user