Преглед изворни кода

Add Low/High thresholds for TIR to statistics.json

Jon Mårtensson пре 3 година
родитељ
комит
083b88e9df
2 измењених фајлова са 20 додато и 1 уклоњено
  1. 13 1
      FreeAPS/Sources/APS/APSManager.swift
  2. 7 0
      FreeAPS/Sources/Models/Statistics.swift

+ 13 - 1
FreeAPS/Sources/APS/APSManager.swift

@@ -1193,7 +1193,19 @@ final class BaseAPSManager: APSManager, Injectable {
                     total: Decimal(totalDays_.hypers)
                     total: Decimal(totalDays_.hypers)
                 )
                 )
 
 
-                let TimeInRange = TIRs(TIR: tir, Hypos: hypo, Hypers: hyper)
+                let range = Threshold(
+                    low: units == .mmolL ? roundDecimal(settingsManager.settings.low.asMmolL, 1) :
+                        roundDecimal(settingsManager.settings.low, 0),
+                    high: units == .mmolL ? roundDecimal(settingsManager.settings.high.asMmolL, 1) :
+                        roundDecimal(settingsManager.settings.high, 0)
+                )
+
+                let TimeInRange = TIRs(
+                    TIR: tir,
+                    Hypos: hypo,
+                    Hypers: hyper,
+                    Threshold: range
+                )
 
 
                 let avgs = Durations(
                 let avgs = Durations(
                     day: roundDecimal(bg_1, 1),
                     day: roundDecimal(bg_1, 1),

+ 7 - 0
FreeAPS/Sources/Models/Statistics.swift

@@ -115,10 +115,16 @@ struct Durations: JSON, Equatable {
     var total: Decimal
     var total: Decimal
 }
 }
 
 
+struct Threshold: JSON, Equatable {
+    var low: Decimal
+    var high: Decimal
+}
+
 struct TIRs: JSON, Equatable {
 struct TIRs: JSON, Equatable {
     var TIR: Durations
     var TIR: Durations
     var Hypos: Durations
     var Hypos: Durations
     var Hypers: Durations
     var Hypers: Durations
+    var Threshold: Threshold
 }
 }
 
 
 struct Ins: JSON, Equatable {
 struct Ins: JSON, Equatable {
@@ -171,6 +177,7 @@ extension TIRs {
         case TIR
         case TIR
         case Hypos
         case Hypos
         case Hypers
         case Hypers
+        case Threshold
     }
     }
 }
 }