From ee80eb712b46f1835dbc5773d5efb7efeab7b3cd Mon Sep 17 00:00:00 2001 From: HMS17 <84345306+HMS17@users.noreply.github.com> Date: Wed, 13 Apr 2022 10:08:53 -0400 Subject: [PATCH 1/4] [BI-1375] - Make GIDs clickable links --- .../brapi/v2/constants/BrAPIAdditionalInfoFields.java | 1 + .../org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java b/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java index 13eb6f9b8..c63646adc 100644 --- a/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java +++ b/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java @@ -20,4 +20,5 @@ public final class BrAPIAdditionalInfoFields { public static final String GERMPLASM_RAW_PEDIGREE = "rawPedigree"; public static final String GERMPLASM_PEDIGREE_BY_NAME = "pedigreeByName"; + public static final String GERMPLASM_PEDIGREE_BY_UUID = "pedigreeByUUID"; } diff --git a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java index dbb49d540..9f26524f1 100644 --- a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java +++ b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java @@ -144,21 +144,25 @@ private Map processGermplasmForDisplay(List parents = Arrays.asList(germplasm.getPedigree().split("/")); if (parents.size() >= 1) { if (programGermplasmByFullName.containsKey(parents.get(0))) { newPedigreeString = programGermplasmByFullName.get(parents.get(0)).getAccessionNumber(); namePedigreeString = programGermplasmByFullName.get(parents.get(0)).getDefaultDisplayName(); + uuidPedigreeString = programGermplasmByFullName.get(parents.get(0)).getExternalReferences().stream().filter(ref -> ref.getReferenceSource().equals(referenceSource)).map(ref -> ref.getReferenceID()).findFirst().get(); } } if (parents.size() == 2) { if (programGermplasmByFullName.containsKey(parents.get(1))) { newPedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getAccessionNumber(); namePedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getDefaultDisplayName(); + uuidPedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getExternalReferences().stream().filter(ref -> ref.getReferenceSource().equals(referenceSource)).map(ref -> ref.getReferenceID()).findFirst().get(); } } //For use in individual germplasm display additionalInfo.addProperty(BrAPIAdditionalInfoFields.GERMPLASM_PEDIGREE_BY_NAME, namePedigreeString); + additionalInfo.addProperty(BrAPIAdditionalInfoFields.GERMPLASM_PEDIGREE_BY_UUID, uuidPedigreeString); germplasm.setPedigree(newPedigreeString); } From 0fd116c50131bef8fbf29799e66da98e962c3472 Mon Sep 17 00:00:00 2001 From: HMS17 <84345306+HMS17@users.noreply.github.com> Date: Wed, 13 Apr 2022 10:08:53 -0400 Subject: [PATCH 2/4] [BI-1375] - Make GIDs clickable links --- .../brapi/v2/constants/BrAPIAdditionalInfoFields.java | 1 + .../org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java b/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java index 13eb6f9b8..c63646adc 100644 --- a/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java +++ b/src/main/java/org/breedinginsight/brapi/v2/constants/BrAPIAdditionalInfoFields.java @@ -20,4 +20,5 @@ public final class BrAPIAdditionalInfoFields { public static final String GERMPLASM_RAW_PEDIGREE = "rawPedigree"; public static final String GERMPLASM_PEDIGREE_BY_NAME = "pedigreeByName"; + public static final String GERMPLASM_PEDIGREE_BY_UUID = "pedigreeByUUID"; } diff --git a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java index 897267769..b6845b7cc 100644 --- a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java +++ b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java @@ -158,21 +158,25 @@ private Map processGermplasmForDisplay(List parents = Arrays.asList(germplasm.getPedigree().split("/")); if (parents.size() >= 1) { if (programGermplasmByFullName.containsKey(parents.get(0))) { newPedigreeString = programGermplasmByFullName.get(parents.get(0)).getAccessionNumber(); namePedigreeString = programGermplasmByFullName.get(parents.get(0)).getDefaultDisplayName(); + uuidPedigreeString = programGermplasmByFullName.get(parents.get(0)).getExternalReferences().stream().filter(ref -> ref.getReferenceSource().equals(referenceSource)).map(ref -> ref.getReferenceID()).findFirst().get(); } } if (parents.size() == 2) { if (programGermplasmByFullName.containsKey(parents.get(1))) { newPedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getAccessionNumber(); namePedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getDefaultDisplayName(); + uuidPedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getExternalReferences().stream().filter(ref -> ref.getReferenceSource().equals(referenceSource)).map(ref -> ref.getReferenceID()).findFirst().get(); } } //For use in individual germplasm display additionalInfo.addProperty(BrAPIAdditionalInfoFields.GERMPLASM_PEDIGREE_BY_NAME, namePedigreeString); + additionalInfo.addProperty(BrAPIAdditionalInfoFields.GERMPLASM_PEDIGREE_BY_UUID, uuidPedigreeString); germplasm.setPedigree(newPedigreeString); } From 3c18dd14a62e0723575aa7ff0d51eac04f433d43 Mon Sep 17 00:00:00 2001 From: HMS17 <84345306+HMS17@users.noreply.github.com> Date: Fri, 15 Apr 2022 11:42:47 -0400 Subject: [PATCH 3/4] Small fixes --- .../java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java index ec7f29aa0..c95897d4c 100644 --- a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java +++ b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java @@ -32,6 +32,7 @@ import org.breedinginsight.brapps.importer.model.ImportUpload; import org.breedinginsight.daos.ProgramDAO; import org.breedinginsight.model.Program; +import org.breedinginsight.services.exceptions.DoesNotExistException; import org.breedinginsight.utilities.BrAPIDAOUtil; import org.breedinginsight.utilities.Utilities; From 56ded6a69d0a260733bd228f459d31c5c829712c Mon Sep 17 00:00:00 2001 From: HMS17 <84345306+HMS17@users.noreply.github.com> Date: Tue, 3 May 2022 11:04:13 -0400 Subject: [PATCH 4/4] [BI-1339] [BI-1375] QA fix and Code review fix --- .../breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java index c95897d4c..497157c9d 100644 --- a/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java +++ b/src/main/java/org/breedinginsight/brapi/v2/dao/BrAPIGermplasmDAO.java @@ -163,14 +163,18 @@ private Map processGermplasmForDisplay(List ref.getReferenceSource().equals(referenceSource)).map(ref -> ref.getReferenceID()).findFirst().get(); + uuidPedigreeString = programGermplasmByFullName.get(parents.get(0)).getExternalReferences(). + stream().filter(ref -> ref.getReferenceSource().equals(referenceSource)). + map(ref -> ref.getReferenceID()).findFirst().orElse(""); } } if (parents.size() == 2) { if (programGermplasmByFullName.containsKey(parents.get(1))) { newPedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getAccessionNumber(); namePedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getDefaultDisplayName(); - uuidPedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getExternalReferences().stream().filter(ref -> ref.getReferenceSource().equals(referenceSource)).map(ref -> ref.getReferenceID()).findFirst().get(); + uuidPedigreeString += "/" + programGermplasmByFullName.get(parents.get(1)).getExternalReferences(). + stream().filter(ref -> ref.getReferenceSource().equals(referenceSource)). + map(ref -> ref.getReferenceID()).findFirst().orElse(""); } } //For use in individual germplasm display