Bladeren bron

Fix enteredBy handling by handling remote vs. local behavior #635

Deniz Cengiz 1 maand geleden
bovenliggende
commit
ca6485ec9e

+ 1 - 0
Model/Classes+Properties/TempTargetStored+CoreDataProperties.swift

@@ -17,6 +17,7 @@ public extension TempTargetStored {
     @NSManaged var orderPosition: Int16
     @NSManaged var target: NSDecimalNumber?
     @NSManaged var tempTargetRun: TempTargetRunStored?
+    @NSManaged var enteredBy: String?
 }
 
 extension TempTargetStored: Identifiable {}

+ 3 - 1
Model/TrioCoreDataPersistentContainer.xcdatamodeld/TrioCoreDataPersistentContainer.xcdatamodel/contents

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="24512" systemVersion="25D2128" minimumToolsVersion="Automatic" sourceLanguage="Swift" usedWithSwiftData="YES" userDefinedModelVersionIdentifier="">
+<model type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="23788.4" systemVersion="25B78" minimumToolsVersion="Automatic" sourceLanguage="Swift" usedWithSwiftData="YES" userDefinedModelVersionIdentifier="">
     <entity name="BolusStored" representedClassName="BolusStored" syncable="YES">
         <attribute name="amount" optional="YES" attributeType="Decimal" defaultValueString="0"/>
         <attribute name="isExternal" optional="YES" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
@@ -237,6 +237,7 @@
     </entity>
     <entity name="TempTargetRunStored" representedClassName="TempTargetRunStored" syncable="YES">
         <attribute name="endDate" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
+        <attribute name="enteredBy" optional="YES" attributeType="String"/>
         <attribute name="id" optional="YES" attributeType="UUID" defaultValueString="empy" usesScalarValueType="NO"/>
         <attribute name="isUploadedToNS" optional="YES" attributeType="Boolean" usesScalarValueType="YES"/>
         <attribute name="name" optional="YES" attributeType="String"/>
@@ -251,6 +252,7 @@
         <attribute name="date" optional="YES" attributeType="Date" usesScalarValueType="NO"/>
         <attribute name="duration" optional="YES" attributeType="Decimal" defaultValueString="0.0"/>
         <attribute name="enabled" optional="YES" attributeType="Boolean" defaultValueString="NO" usesScalarValueType="YES"/>
+        <attribute name="enteredBy" optional="YES" attributeType="String"/>
         <attribute name="halfBasalTarget" optional="YES" attributeType="Decimal" defaultValueString="0.0"/>
         <attribute name="id" optional="YES" attributeType="UUID" usesScalarValueType="NO"/>
         <attribute name="isPreset" optional="YES" attributeType="Boolean" usesScalarValueType="YES"/>

+ 3 - 2
Trio/Sources/APS/Storage/TempTargetsStorage.swift

@@ -136,6 +136,7 @@ final class BaseTempTargetsStorage: TempTargetsStorage, Injectable {
             newTempTarget.name = tempTarget.name
             newTempTarget.target = NSDecimalNumber(decimal: tempTarget.targetTop ?? 0)
             newTempTarget.isPreset = tempTarget.isPreset ?? false
+            newTempTarget.enteredBy = tempTarget.enteredBy
 
             // Nullify half basal target to ensure the latest HBT is used via OpenAPS Manager when sending TT data to oref
             newTempTarget.halfBasalTarget = nil
@@ -293,7 +294,7 @@ final class BaseTempTargetsStorage: TempTargetsStorage, Injectable {
                     rate: nil,
                     eventType: .nsTempTarget,
                     createdAt: tempTarget.date ?? Date(),
-                    enteredBy: TempTarget.local,
+                    enteredBy: tempTarget.enteredBy ?? TempTarget.local,
                     bolus: nil,
                     insulin: nil,
                     notes: tempTarget.name ?? TempTarget.custom,
@@ -336,7 +337,7 @@ final class BaseTempTargetsStorage: TempTargetsStorage, Injectable {
                     rate: nil,
                     eventType: .nsTempTarget,
                     createdAt: (tempTargetRun.startDate ?? tempTargetRun.tempTarget?.date) ?? Date(),
-                    enteredBy: TempTarget.local,
+                    enteredBy: tempTargetRun.tempTarget?.enteredBy ?? TempTarget.local,
                     bolus: nil,
                     insulin: nil,
                     notes: tempTargetRun.tempTarget?.name ?? TempTarget.custom,