List of usage examples for org.apache.commons.collections4 CollectionUtils isNotEmpty
public static boolean isNotEmpty(final Collection<?> coll)
From source file:org.kuali.coeus.common.budget.impl.period.BudgetPeriodRule.java
private int checkExpenseInBudget(Budget budget) { int retVal = 0; for (BudgetPeriod budgetPeriod : budget.getBudgetPeriods()) { if (CollectionUtils.isNotEmpty(budgetPeriod.getBudgetLineItems())) { retVal = budgetPeriod.getBudgetPeriod(); }//w ww . ja v a 2 s . co m } return retVal; }
From source file:org.kuali.coeus.common.budget.impl.personnel.BudgetPersonnelRule.java
/** * This method executes the job code change validation rules against the budget document * for a specific budget period.//from ww w . j a v a 2 s . com * @return true is valid false if not valid * @throws NullPointerException if the budgetDocument is null * @throws IllegalArgumentException if the viewBudgetPeriod < 1 */ @KcEventMethod public boolean processCheckForJobCodeChange(BudgetSavePersonnelEvent event) { if (event.getBudget() == null) { throw new NullPointerException("the budgetDocument is null"); } if (event.getCurrentBudgetPeriod() == null) { throw new NullPointerException("the currentBudgetPeriod is invalid"); } boolean valid = true; GlobalVariables.getMessageMap().addToErrorPath("document"); final BudgetPeriod selectedBudgetPeriod = event.getCurrentBudgetPeriod(); final Collection<Integer> budgetPersonSequences = this .getBudgetPersonSequencesFromPersonnelDetails(selectedBudgetPeriod.getBudgetLineItems()); if (CollectionUtils.isNotEmpty(budgetPersonSequences)) { int personIndex = 0; List<BudgetPerson> budgetPersons = event.getBudget().getBudgetPersons(); for (BudgetPerson person : budgetPersons) { String errorKey = BUDGET_PERSONS_FIELD_NAME_START + personIndex + BUDGET_PERSONS_FIELD_NAME_JOBCODE; if (budgetPersonSequences.contains(person.getPersonSequenceNumber())) { if (CollectionUtils.isNotEmpty(this.getMappedCostElements(person))) { valid &= this.validateJobCodeChange(person, errorKey); } else { valid &= this.validateJobCodeValue(person, errorKey); this.updateJobCodeOnDetailsFromPerson(selectedBudgetPeriod.getBudgetLineItems(), person); } } personIndex++; } } GlobalVariables.getMessageMap().removeFromErrorPath("document"); return valid; }
From source file:org.kuali.coeus.common.budget.impl.personnel.BudgetPersonnelRule.java
protected boolean isJobCodeValid(BudgetPerson budgetPerson) { if (CollectionUtils.isNotEmpty(getMappedCostElements(budgetPerson))) { return validateJobCodeChange(budgetPerson, "jobCode"); } else {//from w w w.jav a 2 s. c o m return validateJobCodeValue(budgetPerson, "jobCode"); } }
From source file:org.kuali.coeus.common.budget.impl.personnel.BudgetPersonServiceImpl.java
@SuppressWarnings("unchecked") @Override/*from w w w .java 2s. c o m*/ public String getApplicableCostElementsForAjaxCall(Long budgetId, String personSequenceNumber, String budgetCategoryTypeCode) { String resultStr = ""; if (isAuthorizedToAccess(budgetCategoryTypeCode)) { if (StringUtils.isNotBlank(budgetCategoryTypeCode) && budgetCategoryTypeCode.contains(Constants.COLON)) { budgetCategoryTypeCode = StringUtils.split(budgetCategoryTypeCode, Constants.COLON)[0]; } List<ValidCeJobCode> validCostElements = getApplicableCostElements(budgetId, personSequenceNumber); if (CollectionUtils.isNotEmpty(validCostElements)) { for (ValidCeJobCode validCE : validCostElements) { Map fieldValues = new HashMap(); fieldValues.put("costElement", validCE.getCostElement()); CostElement costElement = (CostElement) businessObjectService .findByPrimaryKey(CostElement.class, fieldValues); resultStr += "," + validCE.getCostElement() + ";" + costElement.getDescription(); } resultStr += ",ceLookup;false"; } else { CostElementValuesFinder ceValuesFinder = new CostElementValuesFinder(); ceValuesFinder.setBudgetCategoryTypeCode(budgetCategoryTypeCode); List<KeyValue> allPersonnelCostElements = ceValuesFinder.getKeyValues(); for (KeyValue keyValue : allPersonnelCostElements) { if (StringUtils.isNotEmpty(keyValue.getKey().toString())) { resultStr += "," + keyValue.getKey() + ";" + keyValue.getValue(); } } resultStr += ",ceLookup;true"; } } return resultStr; }
From source file:org.kuali.coeus.common.budget.impl.rate.BudgetRatesServiceImpl.java
protected String getActivityTypeDescription(Budget budget) { BudgetParent budgetParent = budget.getBudgetParent(); if (budget.isRateSynced() || !checkActivityTypeChange(budget)) { if (budgetParent.getActivityType() != null) { return budgetParent.getActivityType().getDescription().concat(SPACE); } else {//from w w w . ja va2s.c om return ""; } } else { String activityTypeCode = null; if (CollectionUtils.isNotEmpty(budget.getBudgetRates())) { activityTypeCode = budget.getBudgetRates().get(0).getActivityTypeCode(); } if (activityTypeCode != null) { Map<String, Object> pkMap = new HashMap<>(); pkMap.put("code", activityTypeCode); ActivityType activityType = getBusinessObjectService().findByPrimaryKey(ActivityType.class, pkMap); if (activityType == null) { return ""; } else { return activityType.getDescription().concat(SPACE); } } else { return ""; } } }
From source file:org.kuali.coeus.common.budget.impl.rate.BudgetRatesServiceImpl.java
@Override public boolean checkActivityTypeChange(Collection<BudgetRate> allPropRates, String activityTypeCode) { if (CollectionUtils.isNotEmpty(allPropRates)) { Equals equalsActivityType = new Equals("activityTypeCode", activityTypeCode); QueryList<BudgetRate> matchActivityTypePropRates = new QueryList<>(allPropRates) .filter(equalsActivityType); if (CollectionUtils.isEmpty(matchActivityTypePropRates) || allPropRates.size() != matchActivityTypePropRates.size()) { return true; }/*from w ww. j a va 2s. c o m*/ } return false; }
From source file:org.kuali.coeus.common.budget.impl.struts.BudgetPersonnelAction.java
/** * This method is used to add a new Personnel Budget Line Item * @param mapping// w w w .j a v a 2s . c o m * @param form * @param request * @param response * @return mapping forward * @throws Exception */ public ActionForward addPersonnelLineItem(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { BudgetForm budgetForm = (BudgetForm) form; Budget budget = budgetForm.getBudget(); Integer budgetCategoryTypeIndex = Integer.parseInt(getBudgetCategoryTypeIndex(request)); BudgetLineItem newBudgetLineItem = budgetForm.getNewBudgetLineItems().get(budgetCategoryTypeIndex); final BudgetPersonnelDetails budgetPersonDetails = budgetForm.getNewBudgetPersonnelDetails(); budgetPersonDetails.setBudgetId(budget.getBudgetId()); budgetPersonDetails.setPeriodTypeCode(this.getParameterService().getParameterValueAsString(Budget.class, Constants.BUDGET_PERSON_DETAILS_DEFAULT_PERIODTYPE)); budgetPersonDetails.setCostElement(newBudgetLineItem.getCostElement()); budgetPersonDetails .setBudgetPerson(CollectionUtils.find(budget.getBudgetPersons(), new Predicate<BudgetPerson>() { @Override public boolean evaluate(BudgetPerson object) { return object != null && object.getBudgetId().equals(budgetPersonDetails.getBudgetId()) && object.getPersonSequenceNumber() .equals(budgetPersonDetails.getPersonSequenceNumber()); } })); String groupErrorKey = ""; if (StringUtils.isNotEmpty(newBudgetLineItem.getGroupName())) { groupErrorKey = "newBudgetLineItems[" + budgetCategoryTypeIndex + "].costElement"; } if (StringUtils.isEmpty(newBudgetLineItem.getGroupName())) { newBudgetLineItem.setGroupName(budgetForm.getNewGroupName()); groupErrorKey = "newGroupName"; } //if the group name is empty or still the default group name(JS error?) then set the group name to the empty string. if (StringUtils.isEmpty(newBudgetLineItem.getGroupName()) || StringUtils.equals(newBudgetLineItem.getGroupName(), DEFAULT_GROUP_NAME)) { newBudgetLineItem.setGroupName(EMPTY_GROUP_NAME); } if (getKcBusinessRulesEngine().applyRules( new AddPersonnelBudgetEvent(budget, budget.getBudgetPeriod(budgetForm.getViewBudgetPeriod() - 1), newBudgetLineItem, budgetPersonDetails, groupErrorKey))) { Map<String, Object> primaryKeys = new HashMap<String, Object>(); primaryKeys.put("budgetId", budget.getBudgetId()); primaryKeys.put("budgetPeriod", budgetForm.getViewBudgetPeriod().toString()); List<BudgetPeriod> budgetPeriods = (List<BudgetPeriod>) getBusinessObjectService() .findMatching(BudgetPeriod.class, primaryKeys); BudgetPeriod budgetPeriod = null; if (CollectionUtils.isNotEmpty(budgetPeriods)) { budgetPeriod = budgetPeriods.get(0); } BudgetCategory newBudgetCategory = new BudgetCategory(); newBudgetCategory.setBudgetCategoryTypeCode(getSelectedBudgetCategoryType(request)); newBudgetCategory.refreshNonUpdateableReferences(); boolean existingCeGroupCombo = false; int openTabLineItemIndex = -1; List<BudgetLineItem> existingPersonnelLineItems = new ArrayList<BudgetLineItem>(); List<BudgetLineItem> existingLineItems = budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1) .getBudgetLineItems(); if (GlobalVariables.getMessageMap().hasNoErrors()) { for (BudgetLineItem budgetLineItem : existingLineItems) { budgetLineItem.refreshNonUpdateableReferences(); if (budgetLineItem.getBudgetCategory().getBudgetCategoryTypeCode() .equalsIgnoreCase(newBudgetCategory.getBudgetCategoryTypeCode())) { existingPersonnelLineItems.add(budgetLineItem); if (newBudgetLineItem.getCostElement().equalsIgnoreCase(budgetLineItem.getCostElement()) && (StringUtils.equals(newBudgetLineItem.getGroupName(), budgetLineItem.getGroupName()) || (StringUtils.isEmpty(newBudgetLineItem.getGroupName()) && StringUtils.isEmpty(budgetLineItem.getGroupName())))) { //Existing ObjCode / Group Name combo - add the new Person to the Line Item's Person List if (budgetPersonDetails.getPersonSequenceNumber().intValue() != -1) { //This is NOT a Summary entry if (getKcBusinessRulesEngine().applyRules(new AddPersonnelLineItemBudgetEvent( budget, "newBudgetPersonnelDetails", budgetLineItem))) { addBudgetPersonnelDetails(budgetForm, budgetPeriod, budgetLineItem, budgetPersonDetails); } } else if (!getKcBusinessRulesEngine() .applyRules(new AddSummaryPersonnelLineItemBudgetEvent(budget, "newBudgetPersonnelDetails", budgetLineItem))) { existingCeGroupCombo = true; break; } openTabLineItemIndex = budgetLineItem.getLineItemNumber(); setLineItemQuantity(budgetLineItem); //set some flag to indicate path of progress existingCeGroupCombo = true; break; } } } //If flag not set, then create a new Budget Line Item - ObjCode / Group Name combo is new if (!existingCeGroupCombo) { newBudgetLineItem.setBudgetPeriod(budgetPeriod.getBudgetPeriod()); newBudgetLineItem.setBudgetPeriodId(budgetPeriod.getBudgetPeriodId()); newBudgetLineItem.setBudgetPeriodBO(budgetPeriod); newBudgetLineItem.setBudgetCategory(newBudgetCategory); newBudgetLineItem.setStartDate( budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1).getStartDate()); newBudgetLineItem .setEndDate(budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1).getEndDate()); newBudgetLineItem.setStartDate(newBudgetLineItem.getStartDate()); newBudgetLineItem.setEndDate(newBudgetLineItem.getEndDate()); newBudgetLineItem.setBudgetId(budget.getBudgetId()); newBudgetLineItem.setLineItemNumber(budgetForm.getBudgetDocument() .getHackedDocumentNextValue(Constants.BUDGET_LINEITEM_NUMBER)); newBudgetLineItem.setApplyInRateFlag(true); newBudgetLineItem.refreshReferenceObject("costElementBO"); // on/off campus flag enhancement String onOffCampusFlag = budget.getOnOffCampusFlag(); if (onOffCampusFlag.equalsIgnoreCase(BudgetConstants.DEFAULT_CAMPUS_FLAG)) { newBudgetLineItem .setOnOffCampusFlag(newBudgetLineItem.getCostElementBO().getOnOffCampusFlag()); } else { newBudgetLineItem .setOnOffCampusFlag(onOffCampusFlag.equalsIgnoreCase(Constants.ON_CAMUS_FLAG)); } newBudgetLineItem .setBudgetCategoryCode(newBudgetLineItem.getCostElementBO().getBudgetCategoryCode()); newBudgetLineItem.setLineItemSequence(newBudgetLineItem.getLineItemNumber()); if (budgetPersonDetails.getPersonSequenceNumber().intValue() != -1) { addBudgetPersonnelDetails(budgetForm, budgetPeriod, newBudgetLineItem, budgetPersonDetails); } setLineItemQuantity(newBudgetLineItem); budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1).getBudgetLineItems() .add(newBudgetLineItem); recalculateBudgetPeriod(budgetForm, budget, budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1)); getCalculationService().populateCalculatedAmount(budget, newBudgetLineItem); openTabLineItemIndex = newBudgetLineItem.getLineItemNumber(); } BudgetLineItem newLineItemToAdd = budget.getNewBudgetLineItem(); budgetForm.getNewBudgetLineItems().set(budgetCategoryTypeIndex, newLineItemToAdd); request.setAttribute("openTabLineItemIndex", openTabLineItemIndex); budgetForm.setNewBudgetPersonnelDetails(newLineItemToAdd.getNewBudgetPersonnelLineItem()); } } return mapping.findForward(Constants.MAPPING_BASIC); }
From source file:org.kuali.coeus.common.budget.impl.summary.BudgetSummaryServiceImpl.java
@Override public String defaultWarningMessage(Budget budget) { List<BudgetPeriod> budgetPeriods = generateBudgetPeriods(budget); boolean dateChanged = false; boolean deletePeriodWithLineItem = false; for (BudgetPeriod budgetPeriod : budget.getBudgetPeriods()) { if (budgetPeriod.getBudgetPeriod() <= budgetPeriods.size()) { if (CollectionUtils.isNotEmpty(budgetPeriod.getBudgetLineItems()) && (budgetPeriod.getStartDate() .compareTo(budgetPeriods.get(budgetPeriod.getBudgetPeriod() - 1).getStartDate()) != 0 || budgetPeriod.getEndDate().compareTo( budgetPeriods.get(budgetPeriod.getBudgetPeriod() - 1).getEndDate()) != 0)) { dateChanged = true;//from w w w. j a va 2 s. c o m } } else { if (CollectionUtils.isNotEmpty(budgetPeriod.getBudgetLineItems())) { deletePeriodWithLineItem = true; } } } if (dateChanged) { if (deletePeriodWithLineItem) { return BUDGET_DATE_CHANGE_AND_DELETE_WARNING_MSG; } else { return BUDGET_DATE_CHANGE_WARNING_MSG; } } else { if (deletePeriodWithLineItem) { return BUDGET_PERIOD_DELETE_WARNING_MSG; } else { return Constants.EMPTY_STRING; } } }
From source file:org.kuali.coeus.common.committee.impl.bo.CommitteeBase.java
public String getCommitteeChair() { if (StringUtils.isBlank(committeeChair) && CollectionUtils.isNotEmpty(getCommitteeMemberships())) { List<String> committeeChairs = new ArrayList<String>(); for (CommitteeMembershipBase committeeMembership : getCommitteeMemberships()) { if (isChairPerson(committeeMembership)) { committeeChairs.add(committeeMembership.getPersonName()); }/*from w w w . ja va2s . c om*/ setCommitteeChair(committeeChairs.toString()); } } return committeeChair; }
From source file:org.kuali.coeus.common.committee.impl.bo.CommitteeScheduleBase.java
public boolean hasMeetingData() { boolean retVal = false; retVal = retVal || CollectionUtils.isNotEmpty(this.getCommitteeScheduleAttendances()); retVal = retVal || CollectionUtils.isNotEmpty(this.getCommitteeScheduleMinutes()); retVal = retVal || CollectionUtils.isNotEmpty(this.getCommScheduleActItems()); retVal = retVal || CollectionUtils.isNotEmpty(this.getMinuteDocs()); retVal = retVal || CollectionUtils.isNotEmpty(this.getScheduleAgendas()); retVal = retVal || CollectionUtils.isNotEmpty(this.getLatestProtocolSubmissions()); return retVal; }