/** * . This method is for creating new subAward version * * @param subAwardDocument * @return newSubAwardDocument the newSubAwardDocument */ public SubAwardDocument createNewSubAwardVersion(SubAwardDocument subAwardDocument) throws VersionException, WorkflowException { SubAward newVersion = getVersioningService().createNewVersion(subAwardDocument.getSubAward()); SubAwardDocument newSubAwardDocument = (SubAwardDocument) getDocumentService().getNewDocument(SubAwardDocument.class); newSubAwardDocument .getDocumentHeader() .setDocumentDescription(subAwardDocument.getDocumentHeader().getDocumentDescription()); newSubAwardDocument.setSubAward(newVersion); newVersion.setSubAwardDocument(newSubAwardDocument); return newSubAwardDocument; }
@Override public List<KeyValue> getKeyValues() { final SubAwardDocument doc = (SubAwardDocument) getDocument(); final StringBuilder fundingValues = new StringBuilder(); final Long subawardID = doc.getSubAward().getSubAwardId(); final List<KeyValue> keyValues = new ArrayList<>(); final Collection<SubAwardFundingSource> fundingSource = getBusinessObjectService() .findMatching( SubAwardFundingSource.class, Collections.singletonMap("subAwardId", subawardID)); for (SubAwardFundingSource subAwardFunding : fundingSource) { fundingValues.append(subAwardFunding.getAward().getAwardNumber()); keyValues.add( new ConcreteKeyValue( subAwardFunding.getSubAwardFundingSourceId().toString(), "Award:" + subAwardFunding.getAward().getAwardNumber())); } if (fundingValues.length() == 0) { keyValues.add( 0, new ConcreteKeyValue("", "No Funding Source has been added to this Subaward")); } return keyValues; }