org.kuali.hr.lm.leavepayout.service
Class LeavePayoutServiceImpl

java.lang.Object
  extended by org.kuali.hr.lm.leavepayout.service.LeavePayoutServiceImpl
All Implemented Interfaces:
LeavePayoutService

public class LeavePayoutServiceImpl
extends Object
implements LeavePayoutService


Constructor Summary
LeavePayoutServiceImpl()
           
 
Method Summary
 List<LeavePayout> getAllLeavePayoutsByEffectiveDate(Date effectiveDate)
           
 List<LeavePayout> getAllLeavePayoutsForPrincipalId(String principalId)
           
 List<LeavePayout> getAllLeavePayoutsForPrincipalIdAsOfDate(String principalId, Date effectiveDate)
           
 Map<String,ArrayList<String>> getEligiblePayouts(CalendarEntries calendarEntry, String principalId)
          Determines which accrual categories within the given leave calendar document, are TRANSFERABLE for the given action frequency.
 LeavePayout getLeavePayoutById(String lmLeavePayoutId)
           
 LeavePayoutDao getLeavePayoutDao()
           
 List<LeavePayout> getLeavePayouts(String viewPrincipal, Date beginPeriodDate, Date endPeriodDate)
           
 LeavePayout initializePayout(String principalId, String accrualCategoryRule, BigDecimal accruedBalance, Date effectiveDate)
          A service that instantiates and returns LeavePayout objects that follow the given accrual category rule.
 LeavePayout payout(LeavePayout leavePayout)
          Consumes a LeavePayout object, creating up to three leave blocks.
 void saveOrUpdate(LeavePayout payout)
           
 void setLeavePayoutDao(LeavePayoutDao leavePayoutDao)
           
 void submitToWorkflow(LeavePayout leavePayout)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LeavePayoutServiceImpl

public LeavePayoutServiceImpl()
Method Detail

getAllLeavePayoutsForPrincipalId

public List<LeavePayout> getAllLeavePayoutsForPrincipalId(String principalId)
Specified by:
getAllLeavePayoutsForPrincipalId in interface LeavePayoutService

getAllLeavePayoutsForPrincipalIdAsOfDate

public List<LeavePayout> getAllLeavePayoutsForPrincipalIdAsOfDate(String principalId,
                                                                  Date effectiveDate)
Specified by:
getAllLeavePayoutsForPrincipalIdAsOfDate in interface LeavePayoutService

getAllLeavePayoutsByEffectiveDate

public List<LeavePayout> getAllLeavePayoutsByEffectiveDate(Date effectiveDate)
Specified by:
getAllLeavePayoutsByEffectiveDate in interface LeavePayoutService

getLeavePayoutById

public LeavePayout getLeavePayoutById(String lmLeavePayoutId)
Specified by:
getLeavePayoutById in interface LeavePayoutService

getLeavePayoutDao

public LeavePayoutDao getLeavePayoutDao()

setLeavePayoutDao

public void setLeavePayoutDao(LeavePayoutDao leavePayoutDao)

initializePayout

public LeavePayout initializePayout(String principalId,
                                    String accrualCategoryRule,
                                    BigDecimal accruedBalance,
                                    Date effectiveDate)
Description copied from interface: LeavePayoutService
A service that instantiates and returns LeavePayout objects that follow the given accrual category rule.

Specified by:
initializePayout in interface LeavePayoutService
Parameters:
principalId - The principal this transfer pertains to.
accrualCategoryRule - The accrual category rule that contains the max balance information.
Returns:
A LeavePayout object conforming to @param accrualCategoryRule, if one exists. Null otherwise. The transfer amount will be the minimum of: 1.) the accrual category rule's maximum transfer amount, adjusted for the employees FTE. 2.) the number of time units exceeding the maximum balance

payout

public LeavePayout payout(LeavePayout leavePayout)
Description copied from interface: LeavePayoutService
Consumes a LeavePayout object, creating up to three leave blocks.

Specified by:
payout in interface LeavePayoutService
Returns:
The same LeavePayout object, but with associated leave block ids.

getEligiblePayouts

public Map<String,ArrayList<String>> getEligiblePayouts(CalendarEntries calendarEntry,
                                                        String principalId)
                                                 throws Exception
Description copied from interface: LeavePayoutService
Determines which accrual categories within the given leave calendar document, are TRANSFERABLE for the given action frequency. Includes accrual categories for which ACTION_AT_MAX_BALANCE = LOSE.

Specified by:
getEligiblePayouts in interface LeavePayoutService
Returns:
A List of accrualCategoryRuleId's in 's leave summary with MAX_BAL_ACTION_FREQUENCY =
Throws:
Exception

submitToWorkflow

public void submitToWorkflow(LeavePayout leavePayout)
                      throws org.kuali.rice.kew.api.exception.WorkflowException
Specified by:
submitToWorkflow in interface LeavePayoutService
Throws:
org.kuali.rice.kew.api.exception.WorkflowException

getLeavePayouts

public List<LeavePayout> getLeavePayouts(String viewPrincipal,
                                         Date beginPeriodDate,
                                         Date endPeriodDate)
Specified by:
getLeavePayouts in interface LeavePayoutService

saveOrUpdate

public void saveOrUpdate(LeavePayout payout)
Specified by:
saveOrUpdate in interface LeavePayoutService


Copyright © 2004-2013 The Kuali Foundation. All Rights Reserved.