aboutsummaryrefslogtreecommitdiff
path: root/iosApp/iosApp/Details
diff options
context:
space:
mode:
authorIván Ávalos <avalos@disroot.org>2023-09-26 19:36:27 -0600
committerIván Ávalos <avalos@disroot.org>2023-09-26 19:36:27 -0600
commit3e72d9b02e864f4f79ae494c67418031b7625659 (patch)
tree3d6d7ae3997b9372d50932e0e489dced12e5b07c /iosApp/iosApp/Details
parent8765d82d3ad055945c6221e4f46bc38d903bf58d (diff)
parent3022b877d0cf9b7546c80953237c7bca5a4afa50 (diff)
downloadetbsa-trackermap-mobile-3e72d9b02e864f4f79ae494c67418031b7625659.tar.gz
etbsa-trackermap-mobile-3e72d9b02e864f4f79ae494c67418031b7625659.tar.bz2
etbsa-trackermap-mobile-3e72d9b02e864f4f79ae494c67418031b7625659.zip
Merge branch 'main' of https://git.sr.ht/~avalos/trackermap-mobile
Diffstat (limited to 'iosApp/iosApp/Details')
-rw-r--r--iosApp/iosApp/Details/Reports/UnitReportsViewModel.swift49
1 files changed, 28 insertions, 21 deletions
diff --git a/iosApp/iosApp/Details/Reports/UnitReportsViewModel.swift b/iosApp/iosApp/Details/Reports/UnitReportsViewModel.swift
index 7e2ba81..4e0d39e 100644
--- a/iosApp/iosApp/Details/Reports/UnitReportsViewModel.swift
+++ b/iosApp/iosApp/Details/Reports/UnitReportsViewModel.swift
@@ -19,6 +19,7 @@ import Foundation
import Combine
import shared
+@MainActor
class UnitReportsViewModel: ObservableObject {
@Inject var reportController: ReportController
@Inject var geofencesController: GeofencesController
@@ -38,25 +39,27 @@ class UnitReportsViewModel: ObservableObject {
}
@Published var periodType: ReportDates.PeriodTypes = .today {
didSet {
- switch periodType {
- case .today:
- reportPeriod = ReportDates.ReportPeriodToday()
- case .last24:
- reportPeriod = ReportDates.ReportPeriodLast24()
- case .yesterday:
- reportPeriod = ReportDates.ReportPeriodYesterday()
- case .thisWeek:
- reportPeriod = ReportDates.ReportPeriodThisWeek()
- case .last7:
- reportPeriod = ReportDates.ReportPeriodLast7()
- case .thisMonth:
- reportPeriod = ReportDates.ReportPeriodThisMonth()
- case .last30:
- reportPeriod = ReportDates.ReportPeriodLast30()
- case .custom:
- reportPeriod = ReportDates.ReportPeriodCustom(from: nil, to: nil)
- default:
- reportPeriod = ReportDates.ReportPeriodToday()
+ Task { @MainActor in
+ switch periodType {
+ case .today:
+ reportPeriod = ReportDates.ReportPeriodToday()
+ case .last24:
+ reportPeriod = ReportDates.ReportPeriodLast24()
+ case .yesterday:
+ reportPeriod = ReportDates.ReportPeriodYesterday()
+ case .thisWeek:
+ reportPeriod = ReportDates.ReportPeriodThisWeek()
+ case .last7:
+ reportPeriod = ReportDates.ReportPeriodLast7()
+ case .thisMonth:
+ reportPeriod = ReportDates.ReportPeriodThisMonth()
+ case .last30:
+ reportPeriod = ReportDates.ReportPeriodLast30()
+ case .custom:
+ reportPeriod = ReportDates.ReportPeriodCustom(from: nil, to: nil)
+ default:
+ reportPeriod = ReportDates.ReportPeriodToday()
+ }
}
}
}
@@ -136,11 +139,15 @@ class UnitReportsViewModel: ObservableObject {
}
func setReport (report: ReportController.Report) {
- self.report = report
+ Task { @MainActor in
+ self.report = report
+ }
}
private func setGeofences(geofences: [Int: Geofence]) {
- self.geofences = geofences
+ Task { @MainActor in
+ self.geofences = geofences
+ }
}
func fetchReport(xlsx: Bool = false) {