Просмотр исходного кода

Import DIA from NS.

(cherry picked from commit a6d9fa4dbd7e678fcea1b9bf2a542d56f914206b)
Jon Mårtensson 2 лет назад
Родитель
Сommit
19020b9d0a

+ 13 - 0
FreeAPS/Sources/Modules/NightscoutConfig/NightscoutConfigStateModel.swift

@@ -27,11 +27,17 @@ extension NightscoutConfig {
         @Published var useLocalSource = false
         @Published var localPort: Decimal = 0
         @Published var units: GlucoseUnits = .mmolL
+        @Published var dia: Decimal = 6
+        @Published var maxBasal: Decimal = 2
+        @Published var maxBolus: Decimal = 10
 
         override func subscribe() {
             url = keychain.getValue(String.self, forKey: Config.urlKey) ?? ""
             secret = keychain.getValue(String.self, forKey: Config.secretKey) ?? ""
             units = settingsManager.settings.units
+            dia = settingsManager.pumpSettings.insulinActionCurve
+            maxBasal = settingsManager.pumpSettings.maxBasal
+            maxBolus = settingsManager.pumpSettings.maxBolus
 
             subscribeSetting(\.isUploadEnabled, on: $isUploadEnabled) { isUploadEnabled = $0 }
             subscribeSetting(\.useLocalGlucoseSource, on: $useLocalSource) { useLocalSource = $0 }
@@ -197,6 +203,13 @@ extension NightscoutConfig {
                         self.storage.save(basals, as: OpenAPS.Settings.basalProfile)
                         self.storage.save(sensitivitiesProfile, as: OpenAPS.Settings.insulinSensitivities)
                         self.storage.save(targetsProfile, as: OpenAPS.Settings.bgTargets)
+                        // DIA. Save if changed.
+                        let dia = fetchedProfile.dia
+                        if dia != self.dia {
+                            let file = PumpSettings(insulinActionCurve: dia, maxBolus: self.maxBolus, maxBasal: self.maxBolus)
+                            self.storage.save(file, as: OpenAPS.Settings.settings)
+                            debug(.nightscout, "DIA setting updated to " + dia.description + " after a NS import.")
+                        }
 
                         group.leave()