org.kuali.hr.lm.accrual.service
Class AccrualServiceImpl

java.lang.Object
  extended by org.kuali.hr.lm.accrual.service.AccrualServiceImpl
All Implemented Interfaces:
AccrualService

public class AccrualServiceImpl
extends Object
implements AccrualService


Constructor Summary
AccrualServiceImpl()
           
 
Method Summary
 RateRangeAggregate buildRateRangeAggregate(String principalId, Date startDate, Date endDate)
          build a RateRangeAggregate with given parameters
 void calculateFutureAccrualUsingPlanningMonth(String principalId, Date asOfDate)
          calculate future accrual for given principal id
 List<AccrualCategory> getAccrualCategoriesForDate(List<AccrualCategory> activeAccrCatList, List<AccrualCategory> inactiveAccrCatList, String leavePlan, Date currentDate)
           
 List<AccrualCategoryRule> getAccrualCategoryRulesForDate(List<AccrualCategoryRule> acrList, String accrualCategoryId, Date currentDate, Date serviceDate)
           
 Date getEndAccrualDate(String principalId)
           
 PrincipalHRAttributes getInactivePrincipalHrAttributesForDate(List<PrincipalHRAttributes> inactiveList, Date activeDate, Date currentDate)
           
 List<Job> getJobsForDate(List<Job> activeJobs, List<Job> inactiveJobs, Date currentDate)
           
 LeavePlan getLeavePlanForDate(List<LeavePlan> activeLpList, List<LeavePlan> inactiveLpList, String leavePlan, Date currentDate)
           
 Date getNextAccrualIntervalDate(String earnInterval, Date aDate)
          get the accrual interval date of the next accrual period with given parameters
 Date getPreviousAccrualIntervalDate(String earnInterval, Date aDate)
          get the accrual interval date of the previous accrual period with given parameters
 PrincipalHRAttributes getPrincipalHrAttributesForDate(List<PrincipalHRAttributes> activeList, Date currentDate)
           
 boolean getProrationFlag(String proration)
           
 AccrualCategoryRule getRuleForAccrualCategory(List<AccrualCategoryRule> acrList, AccrualCategory ac)
           
 Date getRuleStartDate(String earnInterval, Date serviceDate, Long startAcc)
           
 Date getStartAccrualDate(String principalId)
           
 int getWorkDaysInAccrualInterval(String earnInterval, Date aDate)
          calculate # of work days in an accrual period
 boolean isDateAtEarnInterval(Date aDate, String earnInterval)
          determine if the given date is at the earn interval
 boolean isEmpoyeementFutureStatusChanged(String principalId, Date startDate, Date endDate)
          determine if the employee's future status is changed during the range of given Calendar Entry
 void runAccrual(List<String> principalIds)
           
 void runAccrual(String principalId)
           
 void runAccrual(String principalId, Date startDate, Date endDate, boolean recordRanData)
           
 void runAccrual(String principalId, Date startDate, Date endDate, boolean recordRanData, String runAsPrincipalId)
           
 boolean statusChangedSinceLastRun(String principalId)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AccrualServiceImpl

public AccrualServiceImpl()
Method Detail

runAccrual

public void runAccrual(String principalId)
Specified by:
runAccrual in interface AccrualService

runAccrual

public void runAccrual(String principalId,
                       Date startDate,
                       Date endDate,
                       boolean recordRanData)
Specified by:
runAccrual in interface AccrualService

runAccrual

public void runAccrual(String principalId,
                       Date startDate,
                       Date endDate,
                       boolean recordRanData,
                       String runAsPrincipalId)
Specified by:
runAccrual in interface AccrualService

getStartAccrualDate

public Date getStartAccrualDate(String principalId)

getEndAccrualDate

public Date getEndAccrualDate(String principalId)

runAccrual

public void runAccrual(List<String> principalIds)
Specified by:
runAccrual in interface AccrualService

isDateAtEarnInterval

public boolean isDateAtEarnInterval(Date aDate,
                                    String earnInterval)
Description copied from interface: AccrualService
determine if the given date is at the earn interval

Specified by:
isDateAtEarnInterval in interface AccrualService
Returns:
boolean

buildRateRangeAggregate

public RateRangeAggregate buildRateRangeAggregate(String principalId,
                                                  Date startDate,
                                                  Date endDate)
Description copied from interface: AccrualService
build a RateRangeAggregate with given parameters

Specified by:
buildRateRangeAggregate in interface AccrualService
Returns:
boolean

getJobsForDate

public List<Job> getJobsForDate(List<Job> activeJobs,
                                List<Job> inactiveJobs,
                                Date currentDate)

getPrincipalHrAttributesForDate

public PrincipalHRAttributes getPrincipalHrAttributesForDate(List<PrincipalHRAttributes> activeList,
                                                             Date currentDate)

getInactivePrincipalHrAttributesForDate

public PrincipalHRAttributes getInactivePrincipalHrAttributesForDate(List<PrincipalHRAttributes> inactiveList,
                                                                     Date activeDate,
                                                                     Date currentDate)

getLeavePlanForDate

public LeavePlan getLeavePlanForDate(List<LeavePlan> activeLpList,
                                     List<LeavePlan> inactiveLpList,
                                     String leavePlan,
                                     Date currentDate)

getAccrualCategoriesForDate

public List<AccrualCategory> getAccrualCategoriesForDate(List<AccrualCategory> activeAccrCatList,
                                                         List<AccrualCategory> inactiveAccrCatList,
                                                         String leavePlan,
                                                         Date currentDate)

isEmpoyeementFutureStatusChanged

public boolean isEmpoyeementFutureStatusChanged(String principalId,
                                                Date startDate,
                                                Date endDate)
Description copied from interface: AccrualService
determine if the employee's future status is changed during the range of given Calendar Entry

Specified by:
isEmpoyeementFutureStatusChanged in interface AccrualService
Returns:
boolean

calculateFutureAccrualUsingPlanningMonth

public void calculateFutureAccrualUsingPlanningMonth(String principalId,
                                                     Date asOfDate)
Description copied from interface: AccrualService
calculate future accrual for given principal id

Specified by:
calculateFutureAccrualUsingPlanningMonth in interface AccrualService

getPreviousAccrualIntervalDate

public Date getPreviousAccrualIntervalDate(String earnInterval,
                                           Date aDate)
Description copied from interface: AccrualService
get the accrual interval date of the previous accrual period with given parameters

Specified by:
getPreviousAccrualIntervalDate in interface AccrualService
Returns:

getNextAccrualIntervalDate

public Date getNextAccrualIntervalDate(String earnInterval,
                                       Date aDate)
Description copied from interface: AccrualService
get the accrual interval date of the next accrual period with given parameters

Specified by:
getNextAccrualIntervalDate in interface AccrualService
Returns:

getWorkDaysInAccrualInterval

public int getWorkDaysInAccrualInterval(String earnInterval,
                                        Date aDate)
Description copied from interface: AccrualService
calculate # of work days in an accrual period

Specified by:
getWorkDaysInAccrualInterval in interface AccrualService
Returns:
int

getRuleStartDate

public Date getRuleStartDate(String earnInterval,
                             Date serviceDate,
                             Long startAcc)

getProrationFlag

public boolean getProrationFlag(String proration)

statusChangedSinceLastRun

public boolean statusChangedSinceLastRun(String principalId)
Specified by:
statusChangedSinceLastRun in interface AccrualService

getAccrualCategoryRulesForDate

public List<AccrualCategoryRule> getAccrualCategoryRulesForDate(List<AccrualCategoryRule> acrList,
                                                                String accrualCategoryId,
                                                                Date currentDate,
                                                                Date serviceDate)

getRuleForAccrualCategory

public AccrualCategoryRule getRuleForAccrualCategory(List<AccrualCategoryRule> acrList,
                                                     AccrualCategory ac)


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