From ea073c81141e04d25cf2ca64c2c8e98c16d6109d Mon Sep 17 00:00:00 2001 From: Marty Pradere Date: Fri, 29 Aug 2025 09:10:42 -0700 Subject: [PATCH] getMostRecentArrivalSource in animal record (#1019) * getMostRecentArrivalSource in animal record * Fix most recent arrival dem provider --- .../labkey/api/ehr/demographics/AnimalRecord.java | 2 ++ .../demographics/SourceDemographicsProvider.java | 2 +- .../labkey/ehr/demographics/AnimalRecordImpl.java | 15 ++++++++++++++- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/ehr/api-src/org/labkey/api/ehr/demographics/AnimalRecord.java b/ehr/api-src/org/labkey/api/ehr/demographics/AnimalRecord.java index 6b1ae4df9..fb7ee11e5 100644 --- a/ehr/api-src/org/labkey/api/ehr/demographics/AnimalRecord.java +++ b/ehr/api-src/org/labkey/api/ehr/demographics/AnimalRecord.java @@ -98,5 +98,7 @@ public interface AnimalRecord Date getMostRecentArrival(); + String getMostRecentArrivalSource(); + Integer getDaysSinceWeight(); } diff --git a/ehr/api-src/org/labkey/api/ehr/demographics/SourceDemographicsProvider.java b/ehr/api-src/org/labkey/api/ehr/demographics/SourceDemographicsProvider.java index 2f2b9e031..4836c2d8c 100644 --- a/ehr/api-src/org/labkey/api/ehr/demographics/SourceDemographicsProvider.java +++ b/ehr/api-src/org/labkey/api/ehr/demographics/SourceDemographicsProvider.java @@ -39,7 +39,7 @@ public SourceDemographicsProvider(Module module) protected Collection getFieldKeys() { Set keys = new HashSet<>(); - keys.add(FieldKey.fromString("date")); + keys.add(FieldKey.fromString("mostRecentArrival")); keys.add(FieldKey.fromString("fromCenter")); keys.add(FieldKey.fromString("source")); keys.add(FieldKey.fromString("type")); diff --git a/ehr/src/org/labkey/ehr/demographics/AnimalRecordImpl.java b/ehr/src/org/labkey/ehr/demographics/AnimalRecordImpl.java index 221e6cda3..9e9e3fb84 100644 --- a/ehr/src/org/labkey/ehr/demographics/AnimalRecordImpl.java +++ b/ehr/src/org/labkey/ehr/demographics/AnimalRecordImpl.java @@ -300,7 +300,20 @@ public Date getMostRecentArrival() { List> rows = (List)_props.get("source"); if (!rows.isEmpty()) - return (Date)rows.get(0).get("date"); + return (Date)rows.get(0).get("mostRecentArrival"); + } + + return null; + } + + @Override + public String getMostRecentArrivalSource() + { + if (_props.containsKey("source")) + { + List> rows = (List)_props.get("source"); + if (!rows.isEmpty()) + return (String)rows.get(0).get("source/meaning"); } return null;