From 38dbfce4199ed07d2ce09005ff9fa9635a79628e Mon Sep 17 00:00:00 2001 From: labkey-susanh Date: Fri, 19 Jun 2026 07:09:35 -0700 Subject: [PATCH 1/2] Support filtering sample lineage graph by sample status --- api/src/org/labkey/api/exp/api/ExpMaterial.java | 2 ++ api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java | 2 ++ experiment/src/org/labkey/experiment/api/ExpMaterialImpl.java | 1 + 3 files changed, 5 insertions(+) diff --git a/api/src/org/labkey/api/exp/api/ExpMaterial.java b/api/src/org/labkey/api/exp/api/ExpMaterial.java index 768a7e17f37..26ac0c41810 100644 --- a/api/src/org/labkey/api/exp/api/ExpMaterial.java +++ b/api/src/org/labkey/api/exp/api/ExpMaterial.java @@ -57,6 +57,8 @@ public interface ExpMaterial extends ExpRunItem void setAliquotedFromLSID(String lsid); + Long getSampleStateId(); + DataState getSampleState(); String getStateLabel(); diff --git a/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java b/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java index c56d4467067..3047dcd2330 100644 --- a/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java +++ b/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java @@ -754,6 +754,8 @@ public static JSONObject serializeMaterial(@NotNull ExpMaterial material, @Nulla isDerivative = material.getRunId() != null && material.getRunId() > 0; jsonObject.put("materialLineageType", isAliquot ? "Aliquot" : (isDerivative ? "Derivative" : "RootMaterial")); + if (material.getSampleState() != null) + jsonObject.put("sampleStatus", material.getSampleStateId()); return jsonObject; } diff --git a/experiment/src/org/labkey/experiment/api/ExpMaterialImpl.java b/experiment/src/org/labkey/experiment/api/ExpMaterialImpl.java index b4b8581656a..3799d5c8713 100644 --- a/experiment/src/org/labkey/experiment/api/ExpMaterialImpl.java +++ b/experiment/src/org/labkey/experiment/api/ExpMaterialImpl.java @@ -179,6 +179,7 @@ public void setAliquotedFromLSID(String lsid) _object.setAliquotedFromLSID(lsid); } + @Override public Long getSampleStateId() { return _object.getSampleState(); From c104ed73623b53b905d8b08e80c527e2dc1ca102 Mon Sep 17 00:00:00 2001 From: labkey-susanh Date: Fri, 19 Jun 2026 10:34:41 -0700 Subject: [PATCH 2/2] Check sampleStateId not sampleState --- api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java b/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java index 3047dcd2330..bb79fa4b0a6 100644 --- a/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java +++ b/api/src/org/labkey/api/exp/api/ExperimentJSONConverter.java @@ -754,7 +754,7 @@ public static JSONObject serializeMaterial(@NotNull ExpMaterial material, @Nulla isDerivative = material.getRunId() != null && material.getRunId() > 0; jsonObject.put("materialLineageType", isAliquot ? "Aliquot" : (isDerivative ? "Derivative" : "RootMaterial")); - if (material.getSampleState() != null) + if (material.getSampleStateId() != null) jsonObject.put("sampleStatus", material.getSampleStateId()); return jsonObject;