List of usage examples for org.apache.commons.lang StringUtils rightPad
public static String rightPad(String str, int size, String padStr)
Right pad a String with a specified String.
From source file:edu.ku.kuali.kra.award.sapintegration.SapIntegrationServiceImpl.java
/** * Implements 1.7.1 and 1.7.2 of the functional specification. * <p/>/*from ww w . j a va 2s . c om*/ * This data maps 1:1 from the Parent Award that is being interfaced. */ protected ZGMGRANTSTRUCTURE constructGrant(Award award) { // Specification Section 1.7.1 ZGMGRANTSTRUCTURE grant = objectFactory.createZGMGRANTSTRUCTURE(); CustomAwardDataHelper helper = new CustomAwardDataHelper(award); if (helper.getLastTransmissionDate() == null) { grant.setGRANTUPDATE(INTERFACE_NEW); } else { grant.setGRANTUPDATE(INTERFACE_UPDATE); } ZBAPI0035HEADER grantHeader = objectFactory.createZBAPI0035HEADER(); ZBAPI0035HEADERADD grantHeaderAdd = objectFactory.createZBAPI0035HEADERADD(); ZFIGRANTDATA grantData = objectFactory.createZFIGRANTDATA(); grant.setHEADER(grantHeader); grant.setHEADERADD(grantHeaderAdd); grant.setEXTENSIONIN(grantData); // Position 1 grantHeader.setGRANTNBR(deriveGrantNumber(award.getAwardNumber())); // BU Customization ID: N/A mkousheh 20110620 - Send Parent Transaction // Type grantHeader.setPARENTTRANSACTIONTYPE(award.getAwardTransactionType().getDescription()); // Position 2 grantHeader.setGRANTTYPE(convertAccountTypeToGrantType(award.getAccountTypeCode(), award)); // Position 4 grantHeader.setSPONSOR(award.getSponsorCode()); // Position 5 - pad with zeros to 10 chars grantHeaderAdd.setAUTHGROUP(StringUtils.rightPad(award.getLeadUnitNumber(), 10, "0")); // Position 6 grantHeaderAdd.setAWARDTYPE(convertAwardTypeCodeToAwardType(award.getAwardTypeCode(), award)); AwardAmountInfo awardAmountInfo = getAwardAmountInfoService() .fetchLastAwardAmountInfoForAwardVersionAndFinalizedTandMDocumentNumber(award); // Position 8 grantHeaderAdd.setGRANTTOTAL(awardAmountInfo.getAmountObligatedToDate().bigDecimalValue()); // Position 9 grantHeader.setVALIDFROM( dateToString(DateUtils.convertToSqlDate(awardAmountInfo.getCurrentFundEffectiveDate()))); // BU Customization ID: N/A mkousheh 20110620 - Set Valid From Budget to // 3 months if null if (awardAmountInfo.getCurrentFundEffectiveDate() != null) { java.util.Date tmpDate = org.apache.commons.lang3.time.DateUtils .addMonths(awardAmountInfo.getCurrentFundEffectiveDate(), -3); grantHeader.setVALIDFROMBUDGET(dateToString(DateUtils.convertToSqlDate(tmpDate))); } // Position 10 grantHeader.setVALIDTO( dateToString(DateUtils.convertToSqlDate(awardAmountInfo.getObligationExpirationDate()))); // BU Customization ID: N/A mkousheh 20110620 - Set Valid To Budget to 1 // year if null if (awardAmountInfo.getObligationExpirationDate() != null) { java.util.Date tmpDate2 = org.apache.commons.lang3.time.DateUtils .addYears(awardAmountInfo.getObligationExpirationDate(), 1); grantHeader.setVALIDTOBUDGET(dateToString(DateUtils.convertToSqlDate(tmpDate2))); } // Position 11 grantHeader.setEXTREFERENCE(award.getSponsorAwardNumber()); grantHeader.setINTREFERENCE(award.getAwardNumber()); // Position 12 grantHeaderAdd.setCFDANBR(award.getCfdaNumber()); // Position 13 if (award.getBasisOfPaymentCode() == null) { logAwardInfo(award, "awardBasisOfPayment is null, not sending billingRule on grant"); } else { grantHeaderAdd.setBILLINGRULE(convertBasisOfPaymentToBillingRule(award.getBasisOfPaymentCode(), award)); } // Position 14 grantHeaderAdd .setLETTEROFCREDIT(convertMethodOfPaymentToLetterOfCredit(award.getMethodOfPaymentCode(), award)); // BUKC-0124: Send new custom field FAIN to SAP via interface // (ENHC0012816) grantHeaderAdd.setFUNDINGORIGIN(((AwardExtension) award.getExtension()).getFain()); // Position 16 and 17 for (AwardReportTerm awardReportTermItem : award.getAwardReportTermItems()) { // skip Report Codes 27 and 24 if (!awardReportTermItem.getReportCode().equals("27") && !awardReportTermItem.getReportCode().equals("24")) { if (PAYMENT_INVOICES_REPORT_CLASS_CODE.equals(awardReportTermItem.getReportClassCode())) { grantData.setZZINVOICEFREQ( convertFrequencyCodeToInvoiceFrequency(awardReportTermItem.getFrequencyCode())); grantData.setZZINVOICEFORM(convertReportCodeToInvoiceForm(awardReportTermItem.getReportCode())); break; } } } // Position 18 String advancePayment = determineAdvancePayment(award); if (advancePayment != null) { grantData.setZZADVPYMNTIND(advancePayment); } // Position 19 grantData.setZZFUNDCENTER(StringUtils.rightPad(award.getLeadUnitNumber(), 10, "0")); // Position 20 grantData.setZZAWARDTITLE(award.getTitle()); // Position 22 grantData.setZZINTEARNED(helper.getInterestEarned()); // Position 23 if (helper.isArra()) { grantData.setZZLDCODE(ARRA_FUNDING_INFORMATION); } // Position 24 grantData.setZZMJRPRJCT("yes".equalsIgnoreCase(helper.getMajorProject()) ? "x" : ""); // grantData.setZZINVOICEFREQ(""); // NOT ON AWARD // grantData.setZZINVOICEFORM(""); // NOT ON AWARD // Position 25 String propertyOwnerTitle = determinePropertyOwnerTitle(award); if (propertyOwnerTitle != null) { grantData.setZZPRPRTYOWNR(propertyOwnerTitle); } // Position 26 String costShareMemoMatch = determineCostShareMemoMatch(award); if (costShareMemoMatch != null) { grantData.setZZCOSTSHARE(costShareMemoMatch); } // Position 27 grantData.setZZAVCTOLERANCE(convertAvcIndicatorToAvcTolerance(helper.getAvcIndicator())); // Position 28 grantData.setZZNSFCTGRY(award.getNsfCode()); // Position 29 grantData.setZZA133CLSTR(helper.getA133Cluster()); // Position 31 // BUKC-0088: Transmitting Project Start Date as AwardEffectiveDate and // not BeginDate (fields switched after 3.0.1 release) - (DFCT0011210) grantData.setZZPROJBEGDA(dateToString(award.getAwardEffectiveDate())); // grantData.setZZPROJBEGDA(dateToString(award.getBeginDate())); // Position 32 grantData.setZZPROJENDDA(dateToString(awardAmountInfo.getFinalExpirationDate())); grantData.setZZAWARDNO(award.getAwardNumber()); // Position 33 grantData.setZZSPONSOR(award.getPrimeSponsorCode()); // Position 34 grantHeader.setUSERSTATUS(convertStatusCodeToResponsibility(award.getStatusCode(), award)); // Position 35 grantData.setZZINTEARNED(convertInterestEarnedCode(helper.getInterestEarned())); // Position 36 if (getMostRecentAwardReportTerm(award) != null && getMostRecentAwardReportTerm(award).getAwardReportTermRecipients().size() > 0) { grantData.setZZBILLPARTNER(getMostRecentAwardReportTerm(award).getAwardReportTermRecipients().get(0) .getRolodexId().toString()); } // Specification Section 1.7.2 ZGMFACREDITT faCredit = objectFactory.createZGMFACREDITT(); grant.setFACREDIT(faCredit); List<ZGMFACREDIT> faCredits = faCredit.getItem(); for (AwardPerson awardPerson : award.getProjectPersons()) { for (AwardPersonUnit awardPersonUnit : awardPerson.getUnits()) { AwardPersonUnitCreditSplit creditSplit = getMostRecentCreditSplit(awardPersonUnit); ZGMFACREDIT credit = objectFactory.createZGMFACREDIT(); credit.setGRANTNBR(award.getAwardNumber()); credit.setDEPT(StringUtils.rightPad(awardPersonUnit.getUnitNumber(), 10, "0")); if (creditSplit != null) { credit.setPERCENTAGE(creditSplit.getCredit().bigDecimalValue()); } faCredits.add(credit); } } // Specification Section 1.7.3 ZBAPI0035RESPONSIBLET grantPersons = objectFactory.createZBAPI0035RESPONSIBLET(); grant.setRESPONSIBILITY(grantPersons); for (AwardPerson awardPerson : award.getProjectPersons()) { ZBAPI0035RESPONSIBLE grantPerson = objectFactory.createZBAPI0035RESPONSIBLE(); grantPersons.getItem().add(grantPerson); grantPerson.setUSERID(awardPerson.getPersonId()); grantPerson.setUSERNAME(awardPerson.getFullName()); // BUKC-0062: SAP Interface - Handle multiple PIs for NIH awards // when transmit to SAP if (awardPerson.isMultiplePi()) { grantPerson.setRESPONSIBILITY("PI"); } else { grantPerson.setRESPONSIBILITY( convertProjectRoleToResponsibility(awardPerson.getContactRoleCode(), award)); } } for (AwardUnitContact awardContact : award.getAwardUnitContacts()) { if ("2".equals(awardContact.getUnitAdministratorTypeCode())) { ZBAPI0035RESPONSIBLE grantPerson = objectFactory.createZBAPI0035RESPONSIBLE(); grantPersons.getItem().add(grantPerson); grantPerson.setUSERID(awardContact.getPersonId()); grantPerson.setUSERNAME(awardContact.getFullName()); grantPerson.setRESPONSIBILITY("DA"); } if ("6".equals(awardContact.getUnitAdministratorTypeCode())) { ZBAPI0035RESPONSIBLE grantPerson = objectFactory.createZBAPI0035RESPONSIBLE(); grantPersons.getItem().add(grantPerson); grantPerson.setUSERID(awardContact.getPersonId()); grantPerson.setUSERNAME(awardContact.getPerson().getFullName()); grantPerson.setRESPONSIBILITY("OAV"); } // BUKC-0140: Add new Admin Type (Clinical Trial Admin) if ("8".equals(awardContact.getUnitAdministratorTypeCode())) { ZBAPI0035RESPONSIBLE grantPerson = objectFactory.createZBAPI0035RESPONSIBLE(); grantPersons.getItem().add(grantPerson); grantPerson.setUSERID(awardContact.getPersonId()); grantPerson.setUSERNAME(awardContact.getPerson().getFullName()); grantPerson.setRESPONSIBILITY("CTAD"); } } // BU Customization ID: N/A mkousheh 20110706 - Get OSP and PAFO Admin // from Unit Admin per lead unit // (above code is not accurate since Data are not stored on award-person for (UnitAdministrator unitAdministrator : award.getLeadUnit().getUnitAdministrators()) { if ("3".equals(unitAdministrator.getUnitAdministratorTypeCode())) { ZBAPI0035RESPONSIBLE grantPerson = objectFactory.createZBAPI0035RESPONSIBLE(); grantPersons.getItem().add(grantPerson); grantPerson.setUSERID(unitAdministrator.getPersonId()); grantPerson.setUSERNAME(unitAdministrator.getPerson().getFullName()); grantPerson.setRESPONSIBILITY("OSP"); } if ("4".equals(unitAdministrator.getUnitAdministratorTypeCode())) { ZBAPI0035RESPONSIBLE grantPerson = objectFactory.createZBAPI0035RESPONSIBLE(); grantPersons.getItem().add(grantPerson); grantPerson.setUSERID(unitAdministrator.getPersonId()); grantPerson.setUSERNAME(unitAdministrator.getPerson().getFullName()); grantPerson.setRESPONSIBILITY("PAFO"); } } return grant; }
From source file:com.evolveum.midpoint.repo.sql.closure.AbstractOrgClosureTest.java
protected String createOid(String oidPrefix) { String oid = StringUtils.rightPad(oidPrefix, 31, '.'); StringBuilder sb = new StringBuilder(); sb.append(oid.substring(0, 7));//ww w. ja v a 2 s . co m sb.append('-'); sb.append(oid.substring(7, 11)); sb.append('-'); sb.append(oid.substring(11, 15)); sb.append('-'); sb.append(oid.substring(15, 19)); sb.append('-'); sb.append(oid.substring(19, 31)); return sb.toString(); }
From source file:edu.bu.kuali.kra.award.sapintegration.SapIntegrationServiceImpl.java
/** * Implements section 1.7.4, 1.7.5, and 1.7.6 of the functional specification. * * @param award the award for which to generate a sponsored program * @param costSharing indicates if this is a cost sharing program or not, if true then this method produces a * sponsored program structure which compiles with specification section 1.7.4, if false then it will generate * one which complies with specification section 1.7.5 * @param parentAward true if the given award is a parent award, false otherwise * @return//w w w . java 2 s .c o m */ protected ZGMSPPROGRAMSTRUCTURE constructSponsoredProgram(Award award, boolean costSharing) { CustomAwardDataHelper helper = new CustomAwardDataHelper(award); AwardBudgetExt abvoe = getLastBudgetVersion(award.getAwardDocument()); boolean awardBudgetVersionToBePosted = false; if (abvoe != null) { String budgetStatus = abvoe.getAwardBudgetStatusCode(); awardBudgetVersionToBePosted = Constants.BUDGET_STATUS_CODE_TO_BE_POSTED.equalsIgnoreCase(budgetStatus); } ZGMSPPROGRAMSTRUCTURE sponsoredProgramStructure = objectFactory.createZGMSPPROGRAMSTRUCTURE(); if (helper.getLastTransmissionDate() == null) { sponsoredProgramStructure.setSPPROGRAMUPDATE(INTERFACE_NEW); } else { sponsoredProgramStructure.setSPPROGRAMUPDATE(INTERFACE_UPDATE); } sponsoredProgramStructure.setSPPROGRAMNUMBER(award.getAccountNumber()); // Handle data which is shared between 1.7.4 and 1.7.5 // Position 1 if (StringUtils.isEmpty(award.getAccountNumber())) { sponsoredProgramStructure.setSPONSOREDPROG(award.getAwardNumber()); } else { sponsoredProgramStructure.setSPONSOREDPROG(award.getAccountNumber()); } AwardAmountInfo awardAmountInfo = getAwardAmountInfoService() .fetchLastAwardAmountInfoForAwardVersionAndFinalizedTandMDocumentNumber(award); // Position 3 sponsoredProgramStructure.setZZVALIDFROM(dateToString(awardAmountInfo.getCurrentFundEffectiveDate())); // Position 4 sponsoredProgramStructure.setZZVALIDTO(dateToString(awardAmountInfo.getObligationExpirationDate())); // Position 6 sponsoredProgramStructure.setBUSINESSAREA(convertLeadUnitToBusinessArea(award.getLeadUnitNumber(), award)); // Position 7 GMSPPROGRAMFMBTTT programFmbtTt = objectFactory.createGMSPPROGRAMFMBTTT(); GMSPPROGRAMFMBT programFmbt = objectFactory.createGMSPPROGRAMFMBT(); programFmbtTt.getItem().add(programFmbt); sponsoredProgramStructure.setTGMSPPROGRAMFMBT(programFmbtTt); programFmbt.setSPONSOREDPROG(award.getAccountNumber()); programFmbt.setFUNCTIONALAREA(convertActivityTypeToFunctionalArea(award.getActivityTypeCode(), award)); // Position 8 // If this is a cost sharing sponsored program then it is sourced from the parent award, but they don't have // budgets so the F and A rate would not be able to be calculated. // also, parent awards cant have budgets, so check to see if their are children as well AwardHierarchy hierarchy = getAwardHierarchyService().loadAwardHierarchy(award.getAwardNumber()); String overheadKey = ""; if (!awardBudgetVersionToBePosted) { // BU Customization ID: N/A mkousheh 20120504 - Get the latest child that matches that was successful transmitted AwardTransmissionChild lastTransmittedChild = getLatestChildAwardTransmitted( hierarchy.getRoot().getAward(), award.getAwardNumber(), true); if (lastTransmittedChild != null) { overheadKey = lastTransmittedChild.getOverheadKey(); } // BU Customization ID: N/A mkousheh 20120504 - Commented out the following code and replaced with the above - // BUG (it gets latest transmitted then matches the child, sometimes no matching child in the last transmission // AwardTransmission lastTransmission = getLatestAwardTransmission(hierarchy.getRoot().getAward(), true); // if (lastTransmission != null) { // AwardTransmissionChild lastChildTransmission = findMatchingTransmissionChild(lastTransmission.getTransmissionChildren(), award.getAwardNumber()); // if (lastChildTransmission != null) { // overheadKey = lastChildTransmission.getOverheadKey(); // } // } // BU Customization ID: N/A mkousheh N/A - Switching this to use value saved on last transmission child - // BigDecimal fAndARate = calculateApplicableFandARate(award); // if(fAndARate != null) { // sponsoredProgramStructure.setOVERHEADKEY(StringUtils.leftPad(fAndARate.toPlainString(), 6, "0")); // } } else if (!costSharing && !hierarchy.hasChildren() && awardBudgetVersionToBePosted) { BigDecimal fAndARate = calculateApplicableFandARate(award); if (fAndARate != null && (((AwardExtension) award.getExtension()).getSteppedUpRate() == null || "NA".equalsIgnoreCase(((AwardExtension) award.getExtension()).getSteppedUpRate()))) { overheadKey = StringUtils.leftPad(fAndARate.toPlainString(), 6, "0"); } else { // get the system parameter for these values and lookup the mapping value based on the date overheadKey = getParameterService().getSubParameterValueAsString(AwardDocument.class, BUConstants.FEDERAL_RATE_DATE_OVERHEAD_KEY_FIELD_MAPPINGS, ((AwardExtension) award.getExtension()).getSteppedUpRate()); if (fAndARate == null || StringUtils.isBlank(overheadKey)) { overheadKey = ("000.00"); } } } sponsoredProgramStructure.setOVERHEADKEY(overheadKey); GlobalVariables.getUserSession().addObject("overheadKey-".concat(award.getAwardNumber()), (Object) overheadKey); LOG.info("Writing overheadKey to session: " + overheadKey); // Position 9 programFmbt.setFUNDSCENTER(StringUtils.rightPad(award.getLeadUnitNumber(), 10, "0")); // Position 11 sponsoredProgramStructure.setZZREFERENCE(award.getAwardNumber()); // Position 12 sponsoredProgramStructure.setZZAWARDNO(award.getSponsorAwardNumber()); // Position 13 sponsoredProgramStructure.setZZDOCNO(award.getDocumentFundingId()); AwardBudgetExt budget = null; if (!costSharing) { budget = award.getAwardDocument().getBudgetVersionOverview(); if (budget == null) { throw new IllegalArgumentException( "Award with number " + award.getAwardNumber() + " does not have a budget."); } } // BU Customization ID: N/A mkousheh 20110706 - In case of CostSharing check if updated boolean costSharesHaveChanged = false; if (costSharing) { AwardCostShare tmpAwardCostShare = getMostRecentAwardCostShare(award); if (tmpAwardCostShare != null && ((AwardExtension) award.getExtension()).getLastTransmissionDate() != null && tmpAwardCostShare.getUpdateTimestamp() != null && ((AwardExtension) award.getExtension()) .getLastTransmissionDate().before(tmpAwardCostShare.getUpdateTimestamp())) { costSharesHaveChanged = true; } } // if (!costSharesHaveChanged) { // Position 17 if (awardBudgetVersionToBePosted && budget != null && budget.getTotalDirectCost() != null) { sponsoredProgramStructure.setBUDGETTDC(budget.getTotalDirectCost().bigDecimalValue()); } else { sponsoredProgramStructure.setBUDGETTDC(ScaleTwoDecimal.ZERO.bigDecimalValue()); } // Position 18 if (awardBudgetVersionToBePosted && budget != null && budget.getTotalIndirectCost() != null) { sponsoredProgramStructure.setBUDGETFA(budget.getTotalIndirectCost().bigDecimalValue()); } else { sponsoredProgramStructure.setBUDGETFA(ScaleTwoDecimal.ZERO.bigDecimalValue()); } // } // BU Customization ID: N/A mkousheh 20110712 - If Parent Award Transaction is NoCostExtention or Administrative Changes Set Budget to zero if (hierarchy.getRoot().getAward().getAwardTransactionTypeCode() != null) { if (hierarchy.getRoot().getAward().getAwardTransactionTypeCode().equals(10) || hierarchy.getRoot().getAward().getAwardTransactionTypeCode().equals(6)) { sponsoredProgramStructure.setBUDGETTDC(ScaleTwoDecimal.ZERO.bigDecimalValue()); sponsoredProgramStructure.setBUDGETFA(ScaleTwoDecimal.ZERO.bigDecimalValue()); } } // Position 19 boolean fringeNotAllowed = helper.isFringeNotAllowed(); sponsoredProgramStructure .setFRINGECODE(FringeCodeMapping.mapToSapFringeCode(fringeNotAllowed, award.getAccountTypeCode())); /** * Data which is only part of 1.7.4 */ if (!costSharing && !hierarchy.hasChildren()) { // Position 10 sponsoredProgramStructure.setZZORDCAT(convertChildType(helper.getChildType(), award)); // Position 14 String offCampus = null; if (!awardBudgetVersionToBePosted) { // BU Customization ID: N/A mkousheh 20120504 - Get the latest child that matches that was successful transmitted // AwardTransmission lastTransmission = getLatestAwardTransmission(hierarchy.getRoot().getAward(), true); // if (lastTransmission != null) { // AwardTransmissionChild lastChildTransmission = findMatchingTransmissionChild(lastTransmission.getTransmissionChildren(), award.getAwardNumber()); // if (lastChildTransmission != null) { // offCampus = lastChildTransmission.getOffCampus(); // } // } AwardTransmissionChild lastTransmittedChild = getLatestChildAwardTransmitted( hierarchy.getRoot().getAward(), award.getAwardNumber(), true); if (lastTransmittedChild != null) { offCampus = lastTransmittedChild.getOffCampus(); } } else if (budget != null) { offCampus = budget.getOnOffCampusFlag(); } sponsoredProgramStructure.setZZOFFCAMPUS(offCampus); GlobalVariables.getUserSession().addObject("offCampus-".concat(award.getAwardNumber()), (Object) offCampus); LOG.info("Writing offCampus to session: " + offCampus); // Position 16 String baseCode = null; if (!awardBudgetVersionToBePosted) { // BU Customization ID: N/A mkousheh 20120504 - Get the latest child that matches that was successful transmitted // AwardTransmission lastTransmission = getLatestAwardTransmission(hierarchy.getRoot().getAward(), true); // if (lastTransmission != null) { // AwardTransmissionChild lastChildTransmission = findMatchingTransmissionChild(lastTransmission.getTransmissionChildren(), award.getAwardNumber()); // if (lastChildTransmission != null) { // baseCode = lastChildTransmission.getBaseCode(); // } // } AwardTransmissionChild lastTransmittedChild = getLatestChildAwardTransmitted( hierarchy.getRoot().getAward(), award.getAwardNumber(), true); if (lastTransmittedChild != null) { baseCode = lastTransmittedChild.getBaseCode(); } } else if (budget != null) { // AAP removed per whit - && awardBudgetVersionToBePosted baseCode = budget.getOhRateClassCode(); } sponsoredProgramStructure.setBASECODE(baseCode); GlobalVariables.getUserSession().addObject("baseCode-".concat(award.getAwardNumber()), (Object) baseCode); LOG.info("Writing baseCode to session: " + baseCode); // Position 20 sponsoredProgramStructure.setDESCRIPTION(helper.getChildDescription()); // Position 21 // BU Customization ID: N/A mkousheh 20110816 - SUBRecipient no longer needed // ZFIGMSUBRECIPIENTTAB awardApprovedSubawards = objectFactory.createZFIGMSUBRECIPIENTTAB(); // sponsoredProgramStructure.setTSUBRECIPIENT(awardApprovedSubawards); // List<AwardApprovedSubaward> subawards = award.getAwardApprovedSubawards(); // for (AwardApprovedSubaward subaward : subawards) { // GMSUBRECIPIENT awardApprovedSubaward = objectFactory.createGMSUBRECIPIENT(); // awardApprovedSubawards.getItem().add(awardApprovedSubaward); // awardApprovedSubaward.setSUBRECIPIENT(subaward.getOrganizationId()); // awardApprovedSubaward.setSUBNAME(subaward.getOrganizationName()); // awardApprovedSubaward.setSUBAMOUNT(subaward.getAmount().bigDecimalValue()); // } // AwardApprovedSubaward awardApprovedSubaward = getMostRecentAwardApprovedSubaward(award); // if (awardApprovedSubaward != null) { // ZGMSUBRECIPIENT subRecipent = new ZGMSUBRECIPIENT(); // subRecipent.setSUBRECIPIENT(awardApprovedSubaward.getOrganizationId()); // subRecipent.setSUBNAME(awardApprovedSubaward.getOrganizationName()); // subRecipent.setSUBAMOUNT(awardApprovedSubaward.getAmount().bigDecimalValue()); // sponsoredProgramStructure.setZZSUBRECIPIENT(subRecipent); // sponsoredProgramStructure.setZZSUBRECIPIENT(awardApprovedSubaward.getOrganizationId()); // } // Position 22 sponsoredProgramStructure.setKCRMSTATUS(StringUtils.leftPad(award.getStatusCode().toString(), 2, "0")); // Position 23 sponsoredProgramStructure.setSPONSOR(award.getSponsorCode()); // Position 24 sponsoredProgramStructure.setPRIMESPONSOR(award.getPrimeSponsorCode()); /** * Specification section 1.7.6 */ ZFIGMSPRESPONSIBLETABKCRM sponsoredProgramPersons = objectFactory.createZFIGMSPRESPONSIBLETABKCRM(); sponsoredProgramStructure.setTRESPONSIBLE(sponsoredProgramPersons); List<AwardPerson> persons = award.getProjectPersons(); for (AwardPerson person : persons) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setSPONSOREDPROG(award.getAccountNumber()); sponsoredProgramPerson.setOBJECTID(person.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(person.getFullName()); // BUKC-0062: SAP Interface - Handle multiple PIs for NIH awards when transmit to SAP if (person.isMultiplePi()) { sponsoredProgramPerson.setRESPONSIBILITY("PI"); } else { sponsoredProgramPerson.setRESPONSIBILITY( convertProjectRoleToResponsibility(person.getContactRoleCode(), award)); } } // BU Customization ID: N/A mkousheh 20110828 - Add DAs to SponsoredPrograms for (AwardUnitContact awardContact : award.getAwardUnitContacts()) { if ("2".equals(awardContact.getUnitAdministratorTypeCode())) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setOBJECTID(awardContact.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(awardContact.getFullName()); sponsoredProgramPerson.setRESPONSIBILITY("DA"); } if ("6".equals(awardContact.getUnitAdministratorTypeCode())) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setOBJECTID(awardContact.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(awardContact.getPerson().getFullName()); sponsoredProgramPerson.setRESPONSIBILITY("OAV"); } // BUKC-0140: Add new Admin Type (Clinical Trial Admin) if ("8".equals(awardContact.getUnitAdministratorTypeCode())) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setOBJECTID(awardContact.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(awardContact.getPerson().getFullName()); sponsoredProgramPerson.setRESPONSIBILITY("CTAD"); } } } /** * Data which is only part of 1.7.5 */ ScaleTwoDecimal costSharCommitmentMinusMemoMatch = getTotalCostShareCommitmentAmountMinusMemoMatch(award); if (costSharing && costSharCommitmentMinusMemoMatch != null && costSharCommitmentMinusMemoMatch.isPositive()) { // Position 2 // Sponsored_Program_type - according to Whit - this does not need to be sent // Position 10 sponsoredProgramStructure.setZZORDCAT("CS1"); // Position 14 sponsoredProgramStructure.setZZOFFCAMPUS("Y"); // Position 21 sponsoredProgramStructure.setKCRMSTATUS(award.getStatusCode().toString()); sponsoredProgramStructure.setBUDGETTDC(costSharCommitmentMinusMemoMatch.bigDecimalValue()); // getTotalDirectCost() // BU Customization ID: N/A mkousheh 20120731 - Remove the work around as SAP team fixed the issue on their side /* // Temporary fix for Cost Sharing. When we send an update for a Cost Sharing Sponsored Program the Budget_TDC and Budget_FA should default to 0.00 AwardTransmission lastTransmission = getLatestAwardTransmission(hierarchy.getRoot().getAward(), true); if (lastTransmission != null) { AwardTransmissionChild lastChildTransmission = findMatchingTransmissionChild(lastTransmission.getTransmissionChildren(), award.getAwardNumber()); if (isCostSharing(award) && helper.getLastTransmissionDate() != null) { sponsoredProgramStructure.setBUDGETTDC(ScaleTwoDecimal.ZERO.bigDecimalValue()); sponsoredProgramStructure.setBUDGETFA(ScaleTwoDecimal.ZERO.bigDecimalValue()); } } // end temporary fix */ // BU Customization ID: N/A mkousheh 20120808 - Set 000.00 for overhead rate when cost sharing sponsoredProgramStructure.setOVERHEADKEY("000.00"); AwardCostShare awardCostShare = getMostRecentAwardCostShare(award); if (awardCostShare != null && awardCostShare.getDestination() != null) { sponsoredProgramStructure.setSPONSOREDPROG(awardCostShare.getDestination()); } else { sponsoredProgramStructure.setSPONSOREDPROG(award.getAwardNumber()); } } return sponsoredProgramStructure; }
From source file:edu.ku.kuali.kra.award.sapintegration.SapIntegrationServiceImpl.java
/** * Implements section 1.7.4, 1.7.5, and 1.7.6 of the functional * specification./*from w w w. j av a 2 s. c o m*/ * * @param award * the award for which to generate a sponsored program * @param costSharing * indicates if this is a cost sharing program or not, if true * then this method produces a sponsored program structure which * compiles with specification section 1.7.4, if false then it * will generate one which complies with specification section * 1.7.5 * @param parentAward * true if the given award is a parent award, false otherwise * @return */ protected ZGMSPPROGRAMSTRUCTURE constructSponsoredProgram(Award award, boolean costSharing) { CustomAwardDataHelper helper = new CustomAwardDataHelper(award); AwardBudgetExt abvoe = getLastBudgetVersion(award.getAwardDocument()); boolean awardBudgetVersionToBePosted = false; if (abvoe != null) { String budgetStatus = abvoe.getAwardBudgetStatusCode(); awardBudgetVersionToBePosted = Constants.BUDGET_STATUS_CODE_TO_BE_POSTED.equalsIgnoreCase(budgetStatus); } ZGMSPPROGRAMSTRUCTURE sponsoredProgramStructure = objectFactory.createZGMSPPROGRAMSTRUCTURE(); if (helper.getLastTransmissionDate() == null) { sponsoredProgramStructure.setSPPROGRAMUPDATE(INTERFACE_NEW); } else { sponsoredProgramStructure.setSPPROGRAMUPDATE(INTERFACE_UPDATE); } sponsoredProgramStructure.setSPPROGRAMNUMBER(award.getAccountNumber()); // Handle data which is shared between 1.7.4 and 1.7.5 // Position 1 if (StringUtils.isEmpty(award.getAccountNumber())) { sponsoredProgramStructure.setSPONSOREDPROG(award.getAwardNumber()); } else { sponsoredProgramStructure.setSPONSOREDPROG(award.getAccountNumber()); } AwardAmountInfo awardAmountInfo = getAwardAmountInfoService() .fetchLastAwardAmountInfoForAwardVersionAndFinalizedTandMDocumentNumber(award); // Position 3 sponsoredProgramStructure.setZZVALIDFROM(dateToString(awardAmountInfo.getCurrentFundEffectiveDate())); // Position 4 sponsoredProgramStructure.setZZVALIDTO(dateToString(awardAmountInfo.getObligationExpirationDate())); // Position 6 sponsoredProgramStructure.setBUSINESSAREA(convertLeadUnitToBusinessArea(award.getLeadUnitNumber(), award)); // Position 7 GMSPPROGRAMFMBTTT programFmbtTt = objectFactory.createGMSPPROGRAMFMBTTT(); GMSPPROGRAMFMBT programFmbt = objectFactory.createGMSPPROGRAMFMBT(); programFmbtTt.getItem().add(programFmbt); sponsoredProgramStructure.setTGMSPPROGRAMFMBT(programFmbtTt); programFmbt.setSPONSOREDPROG(award.getAccountNumber()); programFmbt.setFUNCTIONALAREA(convertActivityTypeToFunctionalArea(award.getActivityTypeCode(), award)); // Position 8 // If this is a cost sharing sponsored program then it is sourced from // the parent award, but they don't have // budgets so the F and A rate would not be able to be calculated. // also, parent awards cant have budgets, so check to see if their are // children as well AwardHierarchy hierarchy = getAwardHierarchyService().loadAwardHierarchy(award.getAwardNumber()); String overheadKey = ""; if (!awardBudgetVersionToBePosted) { // BU Customization ID: N/A mkousheh 20120504 - Get the latest child // that matches that was successful transmitted AwardTransmissionChild lastTransmittedChild = getLatestChildAwardTransmitted( hierarchy.getRoot().getAward(), award.getAwardNumber(), true); if (lastTransmittedChild != null) { overheadKey = lastTransmittedChild.getOverheadKey(); } // BU Customization ID: N/A mkousheh 20120504 - Commented out the // following code and replaced with the above - // BUG (it gets latest transmitted then matches the child, sometimes // no matching child in the last transmission // AwardTransmission lastTransmission = // getLatestAwardTransmission(hierarchy.getRoot().getAward(), true); // if (lastTransmission != null) { // AwardTransmissionChild lastChildTransmission = // findMatchingTransmissionChild(lastTransmission.getTransmissionChildren(), // award.getAwardNumber()); // if (lastChildTransmission != null) { // overheadKey = lastChildTransmission.getOverheadKey(); // } // } // BU Customization ID: N/A mkousheh N/A - Switching this to use // value saved on last transmission child - // BigDecimal fAndARate = calculateApplicableFandARate(award); // if(fAndARate != null) { // sponsoredProgramStructure.setOVERHEADKEY(StringUtils.leftPad(fAndARate.toPlainString(), // 6, "0")); // } } else if (!costSharing && !hierarchy.hasChildren() && awardBudgetVersionToBePosted) { BigDecimal fAndARate = calculateApplicableFandARate(award); if (fAndARate != null && (((AwardExtension) award.getExtension()).getFederalRateDate() == null || "NA".equalsIgnoreCase(((AwardExtension) award.getExtension()).getFederalRateDate()))) { overheadKey = StringUtils.leftPad(fAndARate.toPlainString(), 6, "0"); } else { // get the system parameter for these values and lookup the // mapping value based on the date overheadKey = getParameterService().getSubParameterValueAsString(AwardDocument.class, BUConstants.FEDERAL_RATE_DATE_OVERHEAD_KEY_FIELD_MAPPINGS, ((AwardExtension) award.getExtension()).getFederalRateDate()); if (fAndARate == null || StringUtils.isBlank(overheadKey)) { overheadKey = ("000.00"); } } } sponsoredProgramStructure.setOVERHEADKEY(overheadKey); GlobalVariables.getUserSession().addObject("overheadKey-".concat(award.getAwardNumber()), (Object) overheadKey); LOG.info("Writing overheadKey to session: " + overheadKey); // Position 9 programFmbt.setFUNDSCENTER(StringUtils.rightPad(award.getLeadUnitNumber(), 10, "0")); // Position 11 sponsoredProgramStructure.setZZREFERENCE(award.getAwardNumber()); // Position 12 sponsoredProgramStructure.setZZAWARDNO(award.getSponsorAwardNumber()); // Position 13 sponsoredProgramStructure.setZZDOCNO(award.getDocumentFundingId()); AwardBudgetExt budget = null; if (!costSharing) { budget = award.getAwardDocument().getBudgetVersionOverview(); if (budget == null) { throw new IllegalArgumentException( "Award with number " + award.getAwardNumber() + " does not have a budget."); } } // BU Customization ID: N/A mkousheh 20110706 - In case of CostSharing // check if updated boolean costSharesHaveChanged = false; if (costSharing) { AwardCostShare tmpAwardCostShare = getMostRecentAwardCostShare(award); if (tmpAwardCostShare != null && ((AwardExtension) award.getExtension()).getLastTransmissionDate() != null && tmpAwardCostShare.getUpdateTimestamp() != null && ((AwardExtension) award.getExtension()) .getLastTransmissionDate().before(tmpAwardCostShare.getUpdateTimestamp())) { costSharesHaveChanged = true; } } // if (!costSharesHaveChanged) { // Position 17 if (awardBudgetVersionToBePosted && budget != null && budget.getTotalDirectCost() != null) { sponsoredProgramStructure.setBUDGETTDC(budget.getTotalDirectCost().bigDecimalValue()); } else { sponsoredProgramStructure.setBUDGETTDC(ScaleTwoDecimal.ZERO.bigDecimalValue()); } // Position 18 if (awardBudgetVersionToBePosted && budget != null && budget.getTotalIndirectCost() != null) { sponsoredProgramStructure.setBUDGETFA(budget.getTotalIndirectCost().bigDecimalValue()); } else { sponsoredProgramStructure.setBUDGETFA(ScaleTwoDecimal.ZERO.bigDecimalValue()); } // } // BU Customization ID: N/A mkousheh 20110712 - If Parent Award // Transaction is NoCostExtention or Administrative Changes Set Budget // to zero if (hierarchy.getRoot().getAward().getAwardTransactionTypeCode() != null) { if (hierarchy.getRoot().getAward().getAwardTransactionTypeCode().equals(10) || hierarchy.getRoot().getAward().getAwardTransactionTypeCode().equals(6)) { sponsoredProgramStructure.setBUDGETTDC(ScaleTwoDecimal.ZERO.bigDecimalValue()); sponsoredProgramStructure.setBUDGETFA(ScaleTwoDecimal.ZERO.bigDecimalValue()); } } // Position 19 boolean fringeNotAllowed = helper.isFringeNotAllowed(); sponsoredProgramStructure .setFRINGECODE(FringeCodeMapping.mapToSapFringeCode(fringeNotAllowed, award.getAccountTypeCode())); /** * Data which is only part of 1.7.4 */ if (!costSharing && !hierarchy.hasChildren()) { // Position 10 sponsoredProgramStructure.setZZORDCAT(convertChildType(helper.getChildType(), award)); // Position 14 String offCampus = null; if (!awardBudgetVersionToBePosted) { // BU Customization ID: N/A mkousheh 20120504 - Get the latest // child that matches that was successful transmitted // AwardTransmission lastTransmission = // getLatestAwardTransmission(hierarchy.getRoot().getAward(), // true); // if (lastTransmission != null) { // AwardTransmissionChild lastChildTransmission = // findMatchingTransmissionChild(lastTransmission.getTransmissionChildren(), // award.getAwardNumber()); // if (lastChildTransmission != null) { // offCampus = lastChildTransmission.getOffCampus(); // } // } AwardTransmissionChild lastTransmittedChild = getLatestChildAwardTransmitted( hierarchy.getRoot().getAward(), award.getAwardNumber(), true); if (lastTransmittedChild != null) { offCampus = lastTransmittedChild.getOffCampus(); } } else if (budget != null) { offCampus = budget.getOnOffCampusFlag(); } sponsoredProgramStructure.setZZOFFCAMPUS(offCampus); GlobalVariables.getUserSession().addObject("offCampus-".concat(award.getAwardNumber()), (Object) offCampus); LOG.info("Writing offCampus to session: " + offCampus); // Position 16 String baseCode = null; if (!awardBudgetVersionToBePosted) { // BU Customization ID: N/A mkousheh 20120504 - Get the latest // child that matches that was successful transmitted // AwardTransmission lastTransmission = // getLatestAwardTransmission(hierarchy.getRoot().getAward(), // true); // if (lastTransmission != null) { // AwardTransmissionChild lastChildTransmission = // findMatchingTransmissionChild(lastTransmission.getTransmissionChildren(), // award.getAwardNumber()); // if (lastChildTransmission != null) { // baseCode = lastChildTransmission.getBaseCode(); // } // } AwardTransmissionChild lastTransmittedChild = getLatestChildAwardTransmitted( hierarchy.getRoot().getAward(), award.getAwardNumber(), true); if (lastTransmittedChild != null) { baseCode = lastTransmittedChild.getBaseCode(); } } else if (budget != null) { // AAP removed per whit - && // awardBudgetVersionToBePosted baseCode = budget.getOhRateClassCode(); } sponsoredProgramStructure.setBASECODE(baseCode); GlobalVariables.getUserSession().addObject("baseCode-".concat(award.getAwardNumber()), (Object) baseCode); LOG.info("Writing baseCode to session: " + baseCode); // Position 20 sponsoredProgramStructure.setDESCRIPTION(helper.getChildDescription()); // Position 21 // BU Customization ID: N/A mkousheh 20110816 - SUBRecipient no // longer needed // ZFIGMSUBRECIPIENTTAB awardApprovedSubawards = // objectFactory.createZFIGMSUBRECIPIENTTAB(); // sponsoredProgramStructure.setTSUBRECIPIENT(awardApprovedSubawards); // List<AwardApprovedSubaward> subawards = // award.getAwardApprovedSubawards(); // for (AwardApprovedSubaward subaward : subawards) { // GMSUBRECIPIENT awardApprovedSubaward = // objectFactory.createGMSUBRECIPIENT(); // awardApprovedSubawards.getItem().add(awardApprovedSubaward); // awardApprovedSubaward.setSUBRECIPIENT(subaward.getOrganizationId()); // awardApprovedSubaward.setSUBNAME(subaward.getOrganizationName()); // awardApprovedSubaward.setSUBAMOUNT(subaward.getAmount().bigDecimalValue()); // } // AwardApprovedSubaward awardApprovedSubaward = // getMostRecentAwardApprovedSubaward(award); // if (awardApprovedSubaward != null) { // ZGMSUBRECIPIENT subRecipent = new ZGMSUBRECIPIENT(); // subRecipent.setSUBRECIPIENT(awardApprovedSubaward.getOrganizationId()); // subRecipent.setSUBNAME(awardApprovedSubaward.getOrganizationName()); // subRecipent.setSUBAMOUNT(awardApprovedSubaward.getAmount().bigDecimalValue()); // sponsoredProgramStructure.setZZSUBRECIPIENT(subRecipent); // sponsoredProgramStructure.setZZSUBRECIPIENT(awardApprovedSubaward.getOrganizationId()); // } // Position 22 sponsoredProgramStructure.setKCRMSTATUS(StringUtils.leftPad(award.getStatusCode().toString(), 2, "0")); // Position 23 sponsoredProgramStructure.setSPONSOR(award.getSponsorCode()); // Position 24 sponsoredProgramStructure.setPRIMESPONSOR(award.getPrimeSponsorCode()); /** * Specification section 1.7.6 */ ZFIGMSPRESPONSIBLETABKCRM sponsoredProgramPersons = objectFactory.createZFIGMSPRESPONSIBLETABKCRM(); sponsoredProgramStructure.setTRESPONSIBLE(sponsoredProgramPersons); List<AwardPerson> persons = award.getProjectPersons(); for (AwardPerson person : persons) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setSPONSOREDPROG(award.getAccountNumber()); sponsoredProgramPerson.setOBJECTID(person.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(person.getFullName()); // BUKC-0062: SAP Interface - Handle multiple PIs for NIH awards // when transmit to SAP if (person.isMultiplePi()) { sponsoredProgramPerson.setRESPONSIBILITY("PI"); } else { sponsoredProgramPerson.setRESPONSIBILITY( convertProjectRoleToResponsibility(person.getContactRoleCode(), award)); } } // BU Customization ID: N/A mkousheh 20110828 - Add DAs to // SponsoredPrograms for (AwardUnitContact awardContact : award.getAwardUnitContacts()) { if ("2".equals(awardContact.getUnitAdministratorTypeCode())) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setOBJECTID(awardContact.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(awardContact.getFullName()); sponsoredProgramPerson.setRESPONSIBILITY("DA"); } if ("6".equals(awardContact.getUnitAdministratorTypeCode())) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setOBJECTID(awardContact.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(awardContact.getPerson().getFullName()); sponsoredProgramPerson.setRESPONSIBILITY("OAV"); } // BUKC-0140: Add new Admin Type (Clinical Trial Admin) if ("8".equals(awardContact.getUnitAdministratorTypeCode())) { ZGMSPRESPONSIBLEKCRM sponsoredProgramPerson = objectFactory.createZGMSPRESPONSIBLEKCRM(); sponsoredProgramPersons.getItem().add(sponsoredProgramPerson); sponsoredProgramPerson.setOBJECTID(awardContact.getPersonId()); sponsoredProgramPerson.setOBJECTNAME(awardContact.getPerson().getFullName()); sponsoredProgramPerson.setRESPONSIBILITY("CTAD"); } } } /** * Data which is only part of 1.7.5 */ ScaleTwoDecimal costSharCommitmentMinusMemoMatch = getTotalCostShareCommitmentAmountMinusMemoMatch(award); if (costSharing && costSharCommitmentMinusMemoMatch != null && costSharCommitmentMinusMemoMatch.isPositive()) { // Position 2 // Sponsored_Program_type - according to Whit - this does not need // to be sent // Position 10 sponsoredProgramStructure.setZZORDCAT("CS1"); // Position 14 sponsoredProgramStructure.setZZOFFCAMPUS("Y"); // Position 21 sponsoredProgramStructure.setKCRMSTATUS(award.getStatusCode().toString()); sponsoredProgramStructure.setBUDGETTDC(costSharCommitmentMinusMemoMatch.bigDecimalValue()); // getTotalDirectCost() // BU Customization ID: N/A mkousheh 20120731 - Remove the work // around as SAP team fixed the issue on their side /* * // Temporary fix for Cost Sharing. When we send an update for a * Cost Sharing Sponsored Program the Budget_TDC and Budget_FA * should default to 0.00 AwardTransmission lastTransmission = * getLatestAwardTransmission(hierarchy.getRoot().getAward(), true); * if (lastTransmission != null) { AwardTransmissionChild * lastChildTransmission = * findMatchingTransmissionChild(lastTransmission * .getTransmissionChildren(), award.getAwardNumber()); if * (isCostSharing(award) && helper.getLastTransmissionDate() != * null) { sponsoredProgramStructure.setBUDGETTDC(KualiDecimal.ZERO. * bigDecimalValue()); * sponsoredProgramStructure.setBUDGETFA(KualiDecimal * .ZERO.bigDecimalValue()); * * } } // end temporary fix */ // BU Customization ID: N/A mkousheh 20120808 - Set 000.00 for // overhead rate when cost sharing sponsoredProgramStructure.setOVERHEADKEY("000.00"); AwardCostShare awardCostShare = getMostRecentAwardCostShare(award); if (awardCostShare != null && awardCostShare.getDestination() != null) { sponsoredProgramStructure.setSPONSOREDPROG(awardCostShare.getDestination()); } else { sponsoredProgramStructure.setSPONSOREDPROG(award.getAwardNumber()); } } return sponsoredProgramStructure; }
From source file:ninja.text.TextImpl.java
@Override public Text rightPad(int width, String padStr) { return Text.of(StringUtils.rightPad(data.toString(), width, padStr)); }
From source file:nl.strohalm.cyclos.services.tokens.TokenServiceImpl.java
private String randomNumber(int length) { return StringUtils.rightPad("" + (long) (Math.random() * Math.pow(10, length + 1)), length + 1, "0") .substring(1, length + 1);/*w ww . j a v a2s. c o m*/ }
From source file:nl.strohalm.cyclos.utils.logging.LoggingHandlerImpl.java
/** * Builds an action string, appending parameters if detailed logging is enabled *//*from ww w . ja v a2s . c o m*/ private String buildActionString(final TraceLogDTO params, final boolean logParameters) { final String remoteAddress = params.getRemoteAddress(); final User user = params.getUser(); final String requestMethod = params.getRequestMethod(); final String sessionId = params.getSessionId(); final String path = params.getPath(); final Map<String, String[]> parameters = params.getParameters(); final StringBuilder sb = new StringBuilder(); appendValue(sb, remoteAddress); sb.append(SEPARATOR); appendValue(sb, sessionId); sb.append(SEPARATOR); sb.append(user == null ? "<unknown user>" : user.getUsername()).append(SEPARATOR); sb.append(StringUtils.rightPad(requestMethod == null ? "" : requestMethod, 6, ' ')).append(SEPARATOR); if (path != null) { sb.append(path); if (logParameters) { // Append the arguments sb.append(SEPARATOR); boolean first = true; for (Map.Entry<String, String[]> entry : parameters.entrySet()) { String name = entry.getKey(); if (first) { first = false; } else { sb.append(", "); } String[] value = entry.getValue(); if (ArrayUtils.isEmpty(value)) { // Nothing to log continue; } sb.append(name).append('='); if (FormatObject.shouldMask(name)) { sb.append(FormatObject.MASKED_VALUE); } else { if (value.length == 1) { appendValue(sb, value[0]); } else { sb.append('['); for (int i = 0; i < value.length; i++) { if (i > 0) { sb.append(','); } appendValue(sb, value[i]); } sb.append(']'); } } } } } return sb.toString(); }
From source file:nz.co.senanque.schemaparser.restrictions.Length.java
public List<CandidateValue> getCandidateValues() { if (candidateValues.isEmpty()) { candidateValues.add(new CandidateValue(StringUtils.rightPad("", length - 1, '.'), false, this)); candidateValues.add(new CandidateValue(StringUtils.rightPad("", length + 1, '.'), false, this)); candidateValues.add(new CandidateValue(StringUtils.rightPad("", length, '.'), true, this)); }//from ww w .ja va2s. c om return candidateValues; }
From source file:nz.co.senanque.schemaparser.restrictions.MaxLength.java
public List<CandidateValue> getCandidateValues() { if (candidateValues.isEmpty()) { candidateValues.add(new CandidateValue(StringUtils.rightPad("", length + 1, '.'), false, this)); candidateValues.add(new CandidateValue(StringUtils.rightPad("", length, '.'), true, this)); }//from w w w . j av a 2s . c o m return candidateValues; }
From source file:nz.co.senanque.schemaparser.restrictions.MinLength.java
public List<CandidateValue> getCandidateValues() { if (candidateValues.isEmpty()) { candidateValues.add(new CandidateValue(StringUtils.rightPad("", value - 1, '.'), false, this)); candidateValues.add(new CandidateValue(StringUtils.rightPad("", value, '.'), true, this)); }/*from w w w.j a v a 2s . c o m*/ return candidateValues; }