From e7e8cac81bf70b0689fb6bf61b73b4b84bdf909f Mon Sep 17 00:00:00 2001 From: Andy Rozman Date: Fri, 14 Feb 2020 20:27:45 +0000 Subject: [PATCH] - fixed problem with filtering in #69 --- .../omnipod/dialogs/PodHistoryActivity.java | 28 +++++------ .../driver/db/PodHistoryEntryType.java | 47 ++++++++++++------- 2 files changed, 42 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dialogs/PodHistoryActivity.java b/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dialogs/PodHistoryActivity.java index 27a5f81b2e..f4b60d42d9 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dialogs/PodHistoryActivity.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/dialogs/PodHistoryActivity.java @@ -31,6 +31,7 @@ import info.nightscout.androidaps.plugins.pump.common.data.TempBasalPair; import info.nightscout.androidaps.plugins.pump.common.defs.PumpHistoryEntryGroup; import info.nightscout.androidaps.plugins.pump.common.defs.PumpType; import info.nightscout.androidaps.plugins.pump.common.utils.ProfileUtil; +import info.nightscout.androidaps.plugins.pump.medtronic.comm.history.pump.PumpHistoryEntry; import info.nightscout.androidaps.plugins.pump.omnipod.driver.db.PodHistory; import info.nightscout.androidaps.plugins.pump.omnipod.util.OmnipodUtil; @@ -73,29 +74,24 @@ public class PodHistoryActivity extends NoSplashActivity { this.filteredHistoryList.clear(); + LOG.debug("Items on full list: {}", fullHistoryList.size()); - //LOG.debug("Items on full list: {}", list.size()); - - this.filteredHistoryList.addAll(fullHistoryList); - - // TODO grouping - -// if (group == PumpHistoryEntryGroup.All) { -// this.filteredHistoryList.addAll(list); -// } else { -// for (PumpHistoryEntry pumpHistoryEntry : list) { -// if (pumpHistoryEntry.getEntryType().getGroup() == group) { -// this.filteredHistoryList.add(pumpHistoryEntry); -// } -// } -// } + if (group == PumpHistoryEntryGroup.All) { + this.filteredHistoryList.addAll(fullHistoryList); + } else { + for (PodHistory pumpHistoryEntry : fullHistoryList) { + if (pumpHistoryEntry.getPodDbEntryType().getGroup() == group) { + this.filteredHistoryList.add(pumpHistoryEntry); + } + } + } if (this.recyclerViewAdapter != null) { this.recyclerViewAdapter.setHistoryList(this.filteredHistoryList); this.recyclerViewAdapter.notifyDataSetChanged(); } - //LOG.debug("Items on filtered list: {}", filteredHistoryList.size()); + LOG.debug("Items on filtered list: {}", filteredHistoryList.size()); } diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/driver/db/PodHistoryEntryType.java b/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/driver/db/PodHistoryEntryType.java index f534feb817..e776de681f 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/driver/db/PodHistoryEntryType.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/pump/omnipod/driver/db/PodHistoryEntryType.java @@ -7,35 +7,36 @@ import java.util.HashMap; import java.util.Map; import info.nightscout.androidaps.R; +import info.nightscout.androidaps.plugins.pump.common.defs.PumpHistoryEntryGroup; /** * Created by andy on 24.11.2019 */ public enum PodHistoryEntryType { - PairAndPrime(1, R.string.omnipod_init_pod_wizard_step2_title), - FillCannulaSetBasalProfile(2, R.string.omnipod_init_pod_wizard_step4_title), - DeactivatePod(3, R.string.omnipod_cmd_deactivate_pod), - ResetPodState(4, R.string.omnipod_cmd_reset_pod), + PairAndPrime(1, R.string.omnipod_init_pod_wizard_step2_title, PumpHistoryEntryGroup.Prime), + FillCannulaSetBasalProfile(2, R.string.omnipod_init_pod_wizard_step4_title, PumpHistoryEntryGroup.Prime), + DeactivatePod(3, R.string.omnipod_cmd_deactivate_pod, PumpHistoryEntryGroup.Prime), + ResetPodState(4, R.string.omnipod_cmd_reset_pod, PumpHistoryEntryGroup.Prime), - SetTemporaryBasal(10, R.string.omnipod_cmd_set_tbr), - CancelTemporaryBasal(11, R.string.omnipod_cmd_cancel_tbr), - CancelTemporaryBasalForce(12, R.string.omnipod_cmd_cancel_tbr_forced), + SetTemporaryBasal(10, R.string.omnipod_cmd_set_tbr, PumpHistoryEntryGroup.Basal), + CancelTemporaryBasal(11, R.string.omnipod_cmd_cancel_tbr, PumpHistoryEntryGroup.Basal), + CancelTemporaryBasalForce(12, R.string.omnipod_cmd_cancel_tbr_forced, PumpHistoryEntryGroup.Basal), - SetBasalSchedule(20, R.string.omnipod_cmd_set_basal_schedule), + SetBasalSchedule(20, R.string.omnipod_cmd_set_basal_schedule, PumpHistoryEntryGroup.Basal), - GetPodStatus(30, R.string.omnipod_cmd_get_pod_status), - GetPodInfo(31, R.string.omnipod_cmd_get_pod_info), - SetTime(32, R.string.omnipod_cmd_set_time), + GetPodStatus(30, R.string.omnipod_cmd_get_pod_status, PumpHistoryEntryGroup.Configuration), + GetPodInfo(31, R.string.omnipod_cmd_get_pod_info, PumpHistoryEntryGroup.Configuration), + SetTime(32, R.string.omnipod_cmd_set_time, PumpHistoryEntryGroup.Configuration), - SetBolus(40, R.string.omnipod_cmd_set_bolus), - CancelBolus(41, R.string.omnipod_cmd_cancel_bolus), + SetBolus(40, R.string.omnipod_cmd_set_bolus, PumpHistoryEntryGroup.Bolus), + CancelBolus(41, R.string.omnipod_cmd_cancel_bolus, PumpHistoryEntryGroup.Bolus), - ConfigureAlerts(50, R.string.omnipod_cmd_configure_alerts), - AcknowledgeAlerts(51, R.string.omnipod_cmd_acknowledge_alerts), + ConfigureAlerts(50, R.string.omnipod_cmd_configure_alerts, PumpHistoryEntryGroup.Alarm), + AcknowledgeAlerts(51, R.string.omnipod_cmd_acknowledge_alerts, PumpHistoryEntryGroup.Alarm), - SuspendDelivery(60, R.string.omnipod_cmd_suspend_delivery), - ResumeDelivery(61, R.string.omnipod_cmd_resume_delivery), + SuspendDelivery(60, R.string.omnipod_cmd_suspend_delivery, PumpHistoryEntryGroup.Basal), + ResumeDelivery(61, R.string.omnipod_cmd_resume_delivery, PumpHistoryEntryGroup.Basal), UnknownEntryType(99, R.string.omnipod_cmd_unknown_entry) ; @@ -46,6 +47,8 @@ public enum PodHistoryEntryType { @StringRes private int resourceId; + private PumpHistoryEntryGroup group; + static { instanceMap = new HashMap<>(); @@ -61,10 +64,20 @@ public enum PodHistoryEntryType { this.resourceId = resourceId; } + PodHistoryEntryType(int code, @StringRes int resourceId, PumpHistoryEntryGroup group) { + this.code = code; + this.resourceId = resourceId; + this.group = group; + } + public int getCode() { return code; } + public PumpHistoryEntryGroup getGroup() { + return this.group; + } + public static PodHistoryEntryType getByCode(int code) { if (instanceMap.containsKey(code)) {