Пример #1
0
 @Override
 public List<SubAward> getLinkedSubAwards(Award award) {
   Map<String, Object> values = new HashMap<String, Object>();
   values.put("awardId", award.getAwardId());
   Collection<SubAwardFundingSource> subAwardFundingSources =
       businessObjectService.findMatching(SubAwardFundingSource.class, values);
   Set<String> subAwardSet = new TreeSet<String>();
   for (SubAwardFundingSource subAwardFundingSource : subAwardFundingSources) {
     subAwardSet.add(subAwardFundingSource.getSubAward().getSubAwardCode());
   }
   List<SubAward> subAwards = new ArrayList<SubAward>();
   for (String subAwardCode : subAwardSet) {
     VersionHistory activeVersion =
         getVersionHistoryService().findActiveVersion(SubAward.class, subAwardCode);
     if (activeVersion == null) {
       VersionHistory pendingVersion =
           getVersionHistoryService().findPendingVersion(SubAward.class, subAwardCode);
       if (pendingVersion != null) {
         subAwards.add((SubAward) pendingVersion.getSequenceOwner());
       }
     } else {
       subAwards.add((SubAward) activeVersion.getSequenceOwner());
     }
   }
   return subAwards;
 }