|
|
@@ -35,6 +35,13 @@ extension MainViewController {
|
|
|
|
|
|
// Process and split out treatments to individual tasks
|
|
|
func updateTreatments(entries: [[String: AnyObject]]) {
|
|
|
+ // Deduplicate entries by "id" field (Trio/Loop UUID)
|
|
|
+ var seenIDs = Set<String>()
|
|
|
+ let uniqueEntries = entries.filter { entry in
|
|
|
+ guard let id = entry["id"] as? String else { return true }
|
|
|
+ return seenIDs.insert(id).inserted
|
|
|
+ }
|
|
|
+
|
|
|
var tempBasal: [[String: AnyObject]] = []
|
|
|
var bolus: [[String: AnyObject]] = []
|
|
|
var smb: [[String: AnyObject]] = []
|
|
|
@@ -49,7 +56,7 @@ extension MainViewController {
|
|
|
var cgmSensorStart: [sageData] = []
|
|
|
var insulinCartridge: [iageData] = []
|
|
|
|
|
|
- for entry in entries {
|
|
|
+ for entry in uniqueEntries {
|
|
|
guard let eventType = entry["eventType"] as? String else {
|
|
|
continue
|
|
|
}
|