org.kuali.kfs.module.bc.document.service
Interface SalarySettingService

All Known Implementing Classes:
SalarySettingServiceImpl

public interface SalarySettingService

This class defines methods a Salary Setting Service must provide The Salary Setting Service supports functionality associated with detailed salary setting for an account as well as organization based salary setting by incumbent and by position.


Method Summary
 void adjustRequestedSalaryByAmount(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          adjust the requested salary amount of the given appointment funding by amount
 void adjustRequestedSalaryByPercent(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          adjust the requested salary amount of the given appointment funding by percent
 org.kuali.rice.kns.util.KualiInteger calculateAnnualPayAmount(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          calculate the annual pay amount from the request pay rate in the given appointment funding
 BigDecimal calculateCSFFteQuantity(Integer payMonth, Integer normalWorkMonth, BigDecimal requestedCSFTimePercent)
          calculate the CSF FTE quantity through the given information
 BigDecimal calculateCSFFteQuantityFromAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          calculate the CSF fte quantity based on the information of the given appointment funding
 BigDecimal calculateFteQuantity(Integer payMonth, Integer fundingMonth, BigDecimal requestedTimePercent)
          calculate the FTE quantity through the given information
 BigDecimal calculateFteQuantityFromAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          calculate the fte quantity based on the information of the given appointment funding
 BigDecimal calculateHourlyPayRate(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          calculate the hourly pay rate from the request amount in the given appointment funding
 boolean canBeVacant(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings, PendingBudgetConstructionAppointmentFunding appointmentFunding)
          determine whehter the given appointment funding can be vacated
 boolean canBeVacant(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          determine whether the given appointment funding can be vacated
 PendingBudgetConstructionAppointmentFunding findAppointmentFunding(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings, PendingBudgetConstructionAppointmentFunding appointmentFunding)
          find the appointment funding from the given appointment funding collection, which has the same key information as the specified appointment funding
 PendingBudgetConstructionAppointmentFunding findVacantAppointmentFunding(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings, PendingBudgetConstructionAppointmentFunding vacantAppointmentFunding)
          find the appointment funding from the given appointment funding collection, which has the same key information as the specified vacant appointment funding
 boolean hasExistingFundingReason(BudgetConstructionAppointmentFundingReasonCode budgetConstructionAppointmentFundingReasonCode)
          checks if a reason code has existing appointment funding reasons
 boolean isHourlyPaid(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          determine whehter the given appointment funding is paid at a biweekly or hourly rate
 boolean isHourlyPaid(PendingBudgetConstructionGeneralLedger pendingBudgetConstructionGeneralLedger)
          determine whehter the given pending budget construction general ledger is paid at a biweekly or hourly rate
 boolean isHourlyPaidObject(Integer fiscalYear, String chartOfAccountsCode, String objectCode)
          determine whehter the given object code is of a biweekly or hourly pay type
 boolean isSalarySettingDisabled()
          This method returns the disabled setting of the System Parameter controlling Budget module Salary Setting.
 void markAsDelete(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          mark the given appointment funding as deleted
 void normalizePayRateAndAmount(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          normalize the hourly pay rate and annual pay amount of the given appointment funding
 void purgeAppointmentFundings(List<PendingBudgetConstructionAppointmentFunding> purgedAppointmentFundings)
          permanently delete the given appointment funding lines being purged
 void recalculateDerivedInformation(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          update the fields with the values that can be derived from the existing information, for example, hourly rate and FTE
 void resetAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          reset the given appointment funcding as deleted
 List<PendingBudgetConstructionAppointmentFunding> retrievePendingBudgetConstructionAppointmentFundings(SalarySettingExpansion salarySettingExpansion)
          retrieve a list of PendingBudgetConstructionAppointmentFunding from the information provided by the given SalarySettingExpansion
 SalarySettingExpansion retriveSalarySalarySettingExpansion(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          retrive the salary setting expension from the information provided by the given appointment funding
 void revert(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings, PendingBudgetConstructionAppointmentFunding appointmentFunding)
          revert the given appointment funding if it is just vacated
 void saveAppointmentFundings(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings)
          save the given appointment fundings
 void savePBGLSalarySetting(SalarySettingExpansion salarySettingExpansion)
          save the pending budget general ledger rows associated with a given salary setting expansion this also handles updating the special 2PLG row
 void saveSalarySetting(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings, Boolean isSalarySettingByIncumbent)
          save the given appointment fundings and associated salary setting expansion, also known as, pending budget general ledger row
 void saveSalarySetting(SalarySettingExpansion salarySettingExpansion)
          save the salary setting and its associated appointment funding
 boolean updateAccessOfAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding, SalarySettingFieldsHolder salarySettingFieldsHolder, boolean budgetByObjectMode, boolean hasDocumentEditAccess, org.kuali.rice.kim.bo.Person person)
          update the access flags of the given appointment funding according to the given information
 boolean updateAccessOfAppointmentFundingByUserLevel(PendingBudgetConstructionAppointmentFunding appointmentFunding, org.kuali.rice.kim.bo.Person person)
          update the access flags of the given appointment funding according to the user level and document organization level
 void updateAppointmentFundingsBeforeSaving(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings)
          update the fields before saving the given appointment fundings
 PendingBudgetConstructionAppointmentFunding vacateAppointmentFunding(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings, PendingBudgetConstructionAppointmentFunding appointmentFunding)
          vacate the given appointment funding, create a vacant appointment funding based on the given funding, and add the vacant line into the given appointment funding collection
 PendingBudgetConstructionAppointmentFunding vacateAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
          vacate the given appointment funding and create a vacant appointment funding based on the given funding
 

Method Detail

isSalarySettingDisabled

boolean isSalarySettingDisabled()
This method returns the disabled setting of the System Parameter controlling Budget module Salary Setting. Disabling Salary Setting will cause any UI controls related to the salary setting functionality to not be displayed. Disabling will also cause associated business rules checks to behave differently or not be run.

Returns:

isHourlyPaid

boolean isHourlyPaid(PendingBudgetConstructionGeneralLedger pendingBudgetConstructionGeneralLedger)
determine whehter the given pending budget construction general ledger is paid at a biweekly or hourly rate

Parameters:
pendingBudgetConstructionGeneralLedger - the given pending budget construction general ledger
Returns:
true if the given given pending budget construction general ledger is paid at a biweekly or hourly rate; otherwise, false

isHourlyPaid

boolean isHourlyPaid(PendingBudgetConstructionAppointmentFunding appointmentFunding)
determine whehter the given appointment funding is paid at a biweekly or hourly rate

Parameters:
appointmentFunding - the given appointment funding
Returns:
true if the given appointment funding is paid at a biweekly or hourly rate; otherwise, false

isHourlyPaidObject

boolean isHourlyPaidObject(Integer fiscalYear,
                           String chartOfAccountsCode,
                           String objectCode)
determine whehter the given object code is of a biweekly or hourly pay type

Parameters:
fiscalYear - the given fiscal year
chartOfAccountsCode - the given chart of accounts code
objectCode - the given object code
Returns:
true if the given object code is of a biweekly or hourly pay type; otherwise, false

calculateHourlyPayRate

BigDecimal calculateHourlyPayRate(PendingBudgetConstructionAppointmentFunding appointmentFunding)
calculate the hourly pay rate from the request amount in the given appointment funding

Parameters:
appointmentFunding - the given apporintment funding
Returns:
the hourly pay rate

calculateAnnualPayAmount

org.kuali.rice.kns.util.KualiInteger calculateAnnualPayAmount(PendingBudgetConstructionAppointmentFunding appointmentFunding)
calculate the annual pay amount from the request pay rate in the given appointment funding

Parameters:
appointmentFunding - the given apporintment funding
Returns:
the annual pay amount

normalizePayRateAndAmount

void normalizePayRateAndAmount(PendingBudgetConstructionAppointmentFunding appointmentFunding)
normalize the hourly pay rate and annual pay amount of the given appointment funding

Parameters:
appointmentFunding - the given appointment funding

calculateFteQuantityFromAppointmentFunding

BigDecimal calculateFteQuantityFromAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
calculate the fte quantity based on the information of the given appointment funding

Parameters:
appointmentFunding - the given appointment funding
Returns:
the fte quantity calculated from the information of the given appointment funding

calculateFteQuantity

BigDecimal calculateFteQuantity(Integer payMonth,
                                Integer fundingMonth,
                                BigDecimal requestedTimePercent)
calculate the FTE quantity through the given information

Parameters:
payMonth - the given number of pay months
fundingMonth - the given number of funding months
requestedTimePercent - the requested FTE time percent
Returns:
the FTE quantity calculated from the given information

calculateCSFFteQuantityFromAppointmentFunding

BigDecimal calculateCSFFteQuantityFromAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
calculate the CSF fte quantity based on the information of the given appointment funding

Parameters:
appointmentFunding -
Returns:
the CSF fte quantity calculated from the information of the given appointment funding

calculateCSFFteQuantity

BigDecimal calculateCSFFteQuantity(Integer payMonth,
                                   Integer normalWorkMonth,
                                   BigDecimal requestedCSFTimePercent)
calculate the CSF FTE quantity through the given information

Parameters:
payMonth - the given number of pay months
normalWorkMonth - the given number of normal work months
requestedCSFTimePercent - the requested CSF time percent
Returns:
the CSF FTE quantity from the given information

canBeVacant

boolean canBeVacant(PendingBudgetConstructionAppointmentFunding appointmentFunding)
determine whether the given appointment funding can be vacated

Parameters:
appointmentFunding - the given appointment funding
Returns:
true if the given appointment funding can be vacated; otherwise, false

canBeVacant

boolean canBeVacant(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings,
                    PendingBudgetConstructionAppointmentFunding appointmentFunding)
determine whehter the given appointment funding can be vacated

Parameters:
appointmentFundings - the given appointment funding collection that the given appointment funding belongs to
appointmentFunding - the given appointment funding
Returns:
true if the given appointment funding can be vacated; otherwise, false

vacateAppointmentFunding

PendingBudgetConstructionAppointmentFunding vacateAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
vacate the given appointment funding and create a vacant appointment funding based on the given funding

Parameters:
appointmentFunding - the given apporintment funding
Returns:
a vacant appointment funding

vacateAppointmentFunding

PendingBudgetConstructionAppointmentFunding vacateAppointmentFunding(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings,
                                                                     PendingBudgetConstructionAppointmentFunding appointmentFunding)
vacate the given appointment funding, create a vacant appointment funding based on the given funding, and add the vacant line into the given appointment funding collection

Parameters:
appointmentFundings - the given appointment funding collection that the given appointment funding belongs to
appointmentFunding - the given apporintment funding
Returns:
a vacant appointment funding

purgeAppointmentFundings

void purgeAppointmentFundings(List<PendingBudgetConstructionAppointmentFunding> purgedAppointmentFundings)
permanently delete the given appointment funding lines being purged

Parameters:
purgedAppointmentFundings - the given appointment funding collection being purged

findVacantAppointmentFunding

PendingBudgetConstructionAppointmentFunding findVacantAppointmentFunding(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings,
                                                                         PendingBudgetConstructionAppointmentFunding vacantAppointmentFunding)
find the appointment funding from the given appointment funding collection, which has the same key information as the specified vacant appointment funding

Parameters:
appointmentFundings - the given appointment funding collection
vacantAppointmentFunding - the given vacant apporintment funding
Returns:
the appointment funding from the given appointment funding collection, which has the same key information as the specified vacant appointment funding

findAppointmentFunding

PendingBudgetConstructionAppointmentFunding findAppointmentFunding(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings,
                                                                   PendingBudgetConstructionAppointmentFunding appointmentFunding)
find the appointment funding from the given appointment funding collection, which has the same key information as the specified appointment funding

Parameters:
appointmentFundings - the given appointment funding collection
vacantAppointmentFunding - the given apporintment funding
Returns:
the appointment funding from the given appointment funding collection, which has the same key information as the specified appointment funding

adjustRequestedSalaryByAmount

void adjustRequestedSalaryByAmount(PendingBudgetConstructionAppointmentFunding appointmentFunding)
adjust the requested salary amount of the given appointment funding by amount

Parameters:
appointmentFunding - the given appointment funding

adjustRequestedSalaryByPercent

void adjustRequestedSalaryByPercent(PendingBudgetConstructionAppointmentFunding appointmentFunding)
adjust the requested salary amount of the given appointment funding by percent

Parameters:
appointmentFunding - the given appointment funding

saveSalarySetting

void saveSalarySetting(SalarySettingExpansion salarySettingExpansion)
save the salary setting and its associated appointment funding

Parameters:
salarySettingExpansion - the given salary setting expansion, a pending budget construction GL object

savePBGLSalarySetting

void savePBGLSalarySetting(SalarySettingExpansion salarySettingExpansion)
save the pending budget general ledger rows associated with a given salary setting expansion this also handles updating the special 2PLG row

Parameters:
salarySettingExpansion -

saveSalarySetting

void saveSalarySetting(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings,
                       Boolean isSalarySettingByIncumbent)
save the given appointment fundings and associated salary setting expansion, also known as, pending budget general ledger row

Parameters:
appointmentFundings -
isSalarySettingByIncumbent -

saveAppointmentFundings

void saveAppointmentFundings(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings)
save the given appointment fundings

Parameters:
appointmentFundings - the given appointment funding collection

resetAppointmentFunding

void resetAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding)
reset the given appointment funcding as deleted

Parameters:
appointmentFunding - the given appointment funcding

markAsDelete

void markAsDelete(PendingBudgetConstructionAppointmentFunding appointmentFunding)
mark the given appointment funding as deleted

Parameters:
appointmentFunding - the given appointment funding

revert

void revert(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings,
            PendingBudgetConstructionAppointmentFunding appointmentFunding)
revert the given appointment funding if it is just vacated

Parameters:
appointmentFundings - the given appointment funding collection
appointmentFunding - the given appointment funding

retriveSalarySalarySettingExpansion

SalarySettingExpansion retriveSalarySalarySettingExpansion(PendingBudgetConstructionAppointmentFunding appointmentFunding)
retrive the salary setting expension from the information provided by the given appointment funding

Parameters:
appointmentFunding - the given appointment funding
Returns:
the salary setting expension with the information provided by the given appointment funding

retrievePendingBudgetConstructionAppointmentFundings

List<PendingBudgetConstructionAppointmentFunding> retrievePendingBudgetConstructionAppointmentFundings(SalarySettingExpansion salarySettingExpansion)
retrieve a list of PendingBudgetConstructionAppointmentFunding from the information provided by the given SalarySettingExpansion

Parameters:
salarySettingExpansion -
Returns:
the list of PendingBudgetConstructionAppointmentFunding

updateAccessOfAppointmentFunding

boolean updateAccessOfAppointmentFunding(PendingBudgetConstructionAppointmentFunding appointmentFunding,
                                         SalarySettingFieldsHolder salarySettingFieldsHolder,
                                         boolean budgetByObjectMode,
                                         boolean hasDocumentEditAccess,
                                         org.kuali.rice.kim.bo.Person person)
update the access flags of the given appointment funding according to the given information

Parameters:
appointmentFunding - the given appointment funding
salarySettingFieldsHolder - the field holder that contains the values passed from the user
budgetByObjectMode - the budget by object mode flag
hasDocumentEditAccess - indicates whether the user has edit permission for the budget document (for budget by object)
person - the specified user
Returns:
true if the access flags are updated successfully; otherwise, false

updateAccessOfAppointmentFundingByUserLevel

boolean updateAccessOfAppointmentFundingByUserLevel(PendingBudgetConstructionAppointmentFunding appointmentFunding,
                                                    org.kuali.rice.kim.bo.Person person)
update the access flags of the given appointment funding according to the user level and document organization level

Parameters:
appointmentFunding - the given appointment funding
person - the specified user
Returns:
true if the access flags are updated successfully; otherwsie, false

updateAppointmentFundingsBeforeSaving

void updateAppointmentFundingsBeforeSaving(List<PendingBudgetConstructionAppointmentFunding> appointmentFundings)
update the fields before saving the given appointment fundings

Parameters:
appointmentFundings - the given collection of appointment fundings

recalculateDerivedInformation

void recalculateDerivedInformation(PendingBudgetConstructionAppointmentFunding appointmentFunding)
update the fields with the values that can be derived from the existing information, for example, hourly rate and FTE

Parameters:
appointmentFundings - the given appointment funding

hasExistingFundingReason

boolean hasExistingFundingReason(BudgetConstructionAppointmentFundingReasonCode budgetConstructionAppointmentFundingReasonCode)
checks if a reason code has existing appointment funding reasons

Parameters:
budgetConstructionAppointmentFundingReasonCode -
Returns:


Copyright © 2005-2012 The Kuali Foundation. All Rights Reserved.