Kaynağa Gözat

Allow future carbs

Jonas Björkert 2 yıl önce
ebeveyn
işleme
b16241b77c

+ 1 - 1
LoopFollow/Controllers/Nightscout/CAge.swift

@@ -10,7 +10,7 @@ import Foundation
 extension MainViewController {
     // NS Cage Web Call
     func webLoadNSCage() {
-        let currentTimeString = dateTimeUtils.getCurrentDateTimeString()
+        let currentTimeString = dateTimeUtils.getDateTimeString()
         
         let parameters: [String: String] = [
             "find[eventType]": NightscoutUtils.EventType.cage.rawValue,

+ 2 - 2
LoopFollow/Controllers/Nightscout/SAge.swift

@@ -10,8 +10,8 @@ import Foundation
 extension MainViewController {
     // NS Sage Web Call
     func webLoadNSSage() {
-        let lastDateString = dateTimeUtils.nowMinus60DaysTimeInterval()
-        let currentTimeString = dateTimeUtils.getCurrentDateTimeString()
+        let lastDateString = dateTimeUtils.getDateTimeString(addingDays: -60)
+        let currentTimeString = dateTimeUtils.getDateTimeString()
         
         let parameters: [String: String] = [
             "find[eventType]": NightscoutUtils.EventType.sage.rawValue,

+ 2 - 3
LoopFollow/Controllers/Nightscout/Treatments.swift

@@ -14,9 +14,8 @@ extension MainViewController {
         if UserDefaultsRepository.debugLog.value { self.writeDebugLog(value: "Download: Treatments") }
         if !UserDefaultsRepository.downloadTreatments.value { return }
         
-        let graphHours = 24 * UserDefaultsRepository.downloadDays.value
-        let startTimeString = dateTimeUtils.nowMinusNHoursTimeInterval(N: graphHours)
-        let currentTimeString = dateTimeUtils.getCurrentDateTimeString()
+        let startTimeString = dateTimeUtils.getDateTimeString(addingDays: -1 * UserDefaultsRepository.downloadDays.value)
+        let currentTimeString = dateTimeUtils.getDateTimeString(addingHours: 6)
         let parameters: [String: String] = [
             "find[created_at][$gte]": startTimeString,
             "find[created_at][$lte]": currentTimeString

+ 13 - 29
LoopFollow/helpers/DateTime.swift

@@ -57,42 +57,26 @@ class dateTimeUtils {
         return utcTime
     }
     
-    static func getCurrentDateTimeString() -> String {
-        let currentTimeInterval = getNowTimeIntervalUTC()
+    static func getDateTimeString(addingHours hours: Int? = nil, addingDays days: Int? = nil) -> String {
+        let currentDate = Date()
+        var date = currentDate
         
-        let dateFormatter = DateFormatter()
-        dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
-        dateFormatter.locale = Locale(identifier: "en_US")
-        dateFormatter.timeZone = TimeZone.init(secondsFromGMT: 0)
+        if let hoursToAdd = hours {
+            date = Calendar.current.date(byAdding: .hour, value: hoursToAdd, to: currentDate)!
+        }
         
-        let currentDate = Date(timeIntervalSince1970: currentTimeInterval)
-        let currentTimeString = dateFormatter.string(from: currentDate)
+        if let daysToAdd = days {
+            date = Calendar.current.date(byAdding: .day, value: daysToAdd, to: currentDate)!
+        }
         
-        return currentTimeString
-    }
-    
-    static func nowMinusNHoursTimeInterval(N: Int) -> String {
-        let today = Date()
-        let nHoursAgo = Calendar.current.date(byAdding: .hour, value: -N, to: today)!
         let dateFormatter = DateFormatter()
         dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
         dateFormatter.locale = Locale(identifier: "en_US")
-        dateFormatter.timeZone = TimeZone.init(secondsFromGMT: 0)
-        let nHoursAgoString = dateFormatter.string(from: nHoursAgo)
-        return nHoursAgoString
-    }
-    
-    static func nowMinus60DaysTimeInterval() -> String {
-        let today = Date()
-        let oldDate = Calendar.current.date(byAdding: .day, value: -10, to: today)!
-        let dateFormatter = DateFormatter()
-        dateFormatter.dateFormat = "yyyy-MM-dd"
-        dateFormatter.locale = Locale(identifier: "en_US")
-        dateFormatter.timeZone = TimeZone.init(secondsFromGMT: 0)
-        let dayString = dateFormatter.string(from: oldDate)
-        return dayString
+        dateFormatter.timeZone = TimeZone(secondsFromGMT: 0)
+        
+        return dateFormatter.string(from: date)
     }
-    
+
     static func printNow() -> String {
         let date = Date()
         let formatter = DateFormatter()