org.kuali.kfs.module.cab.batch.service.impl
Class ReconciliationServiceImpl

java.lang.Object
  extended by org.kuali.kfs.module.cab.batch.service.impl.ReconciliationServiceImpl
All Implemented Interfaces:
ReconciliationService

@Transactional
public class ReconciliationServiceImpl
extends Object
implements ReconciliationService

Default implementation of ReconciliationService


Field Summary
protected  org.kuali.rice.kns.service.BusinessObjectService businessObjectService
           
protected  List<Entry> duplicateEntries
           
protected  HashMap<GlAccountLineGroup,GlAccountLineGroup> glEntryGroupMap
           
protected  List<Entry> ignoredEntries
           
protected  Collection<GlAccountLineGroup> matchedGroups
           
protected  Collection<GlAccountLineGroup> misMatchedGroups
           
protected  HashMap<PurApAccountLineGroup,PurApAccountLineGroup> purapAcctGroupMap
           
 
Constructor Summary
ReconciliationServiceImpl()
           
 
Method Summary
protected  void checkGroupByContinuationAccount()
          This method will run through all PO Accounting lines and Pending GL Lines for which a match was not found.
protected  Account findAccount(AccountLineGroup acctLineGroup)
          Finds an account object using its primary key
 org.kuali.rice.kns.service.BusinessObjectService getBusinessObjectService()
          Gets the businessObjectService attribute.
 List<Entry> getDuplicateEntries()
          Gets the duplicateEntries attribute.
 List<Entry> getIgnoredEntries()
          Gets the ignoredEntries attribute.
 Collection<GlAccountLineGroup> getMatchedGroups()
          Returns the list of account groups that found match to account line history
 Collection<GlAccountLineGroup> getMisMatchedGroups()
          Returns the list of unmatched account line groups
protected  void groupGLEntries(Collection<Entry> glEntries)
          Groups GL entries by fields by univ_fiscal_yr, fin_coa_cd, account_nbr, sub_acct_nbr, fin_object_cd, fin_sub_obj_cd, univ_fiscal_prd_cd, fdoc_nbr, fdoc_ref_nbr
protected  void groupPurapAccountEntries(Collection<PurApAccountingLineBase> purapAcctEntries)
          Groups Purap Account Line entries by fields by univ_fiscal_yr, fin_coa_cd, account_nbr, sub_acct_nbr, fin_object_cd, fin_sub_obj_cd, univ_fiscal_prd_cd, fdoc_nbr, fdoc_ref_nbr
 boolean isDuplicateEntry(Entry glEntry)
          Returns true is a GL entry is already available in CAB
 void reconcile(Collection<Entry> glEntries, Collection<PurApAccountingLineBase> purapAcctEntries)
          Main reconciliation service which will apply the formula where PURAP transaction amounts are compared using GL_ENTRY_T = (AP_PMT_RQST_ACCT_CHG_T or AP_CRDT_MEMO_ACCT_CHG_T)
protected  void reconcileGroups(Collection<GlAccountLineGroup> glKeySet)
          Identify and separate the matching and mismatching account line groups
 void setBusinessObjectService(org.kuali.rice.kns.service.BusinessObjectService businessObjectService)
          Sets the businessObjectService attribute.
 void setDuplicateEntries(List<Entry> duplicateEntries)
          Sets the duplicateEntries attribute.
 void setIgnoredEntries(List<Entry> ignoredEntries)
          Sets the ignoredEntries attribute.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

businessObjectService

protected org.kuali.rice.kns.service.BusinessObjectService businessObjectService

ignoredEntries

protected List<Entry> ignoredEntries

duplicateEntries

protected List<Entry> duplicateEntries

matchedGroups

protected Collection<GlAccountLineGroup> matchedGroups

misMatchedGroups

protected Collection<GlAccountLineGroup> misMatchedGroups

glEntryGroupMap

protected HashMap<GlAccountLineGroup,GlAccountLineGroup> glEntryGroupMap

purapAcctGroupMap

protected HashMap<PurApAccountLineGroup,PurApAccountLineGroup> purapAcctGroupMap
Constructor Detail

ReconciliationServiceImpl

public ReconciliationServiceImpl()
Method Detail

reconcile

public void reconcile(Collection<Entry> glEntries,
                      Collection<PurApAccountingLineBase> purapAcctEntries)
Description copied from interface: ReconciliationService
Main reconciliation service which will apply the formula where PURAP transaction amounts are compared using
  • GL_ENTRY_T = (AP_PMT_RQST_ACCT_CHG_T or AP_CRDT_MEMO_ACCT_CHG_T)
  • Specified by:
    reconcile in interface ReconciliationService
    Parameters:
    glEntries - Purap GL Entries
    purapAcctEntries - Purap Account Entries
    See Also:
    org.kuali.kfs.module.cab.batch.service.ReconciliationService#reconcile(java.util.Collection, java.util.Collection, java.util.Collection)

    checkGroupByContinuationAccount

    protected void checkGroupByContinuationAccount()
    This method will run through all PO Accounting lines and Pending GL Lines for which a match was not found. Then check if account number is expired and continuation account is available. If true then reassign the account group with this new continuation account number.


    findAccount

    protected Account findAccount(AccountLineGroup acctLineGroup)
    Finds an account object using its primary key

    Parameters:
    acctLineGroup - AcctLineGroup
    Returns:
    Account

    reconcileGroups

    protected void reconcileGroups(Collection<GlAccountLineGroup> glKeySet)
    Identify and separate the matching and mismatching account line groups

    Parameters:
    glKeySet - GL Account Line groups

    groupGLEntries

    protected void groupGLEntries(Collection<Entry> glEntries)
    Groups GL entries by fields by univ_fiscal_yr, fin_coa_cd, account_nbr, sub_acct_nbr, fin_object_cd, fin_sub_obj_cd, univ_fiscal_prd_cd, fdoc_nbr, fdoc_ref_nbr

    Parameters:
    glEntries - GL Entries

    groupPurapAccountEntries

    protected void groupPurapAccountEntries(Collection<PurApAccountingLineBase> purapAcctEntries)
    Groups Purap Account Line entries by fields by univ_fiscal_yr, fin_coa_cd, account_nbr, sub_acct_nbr, fin_object_cd, fin_sub_obj_cd, univ_fiscal_prd_cd, fdoc_nbr, fdoc_ref_nbr

    Parameters:
    purapAcctEntries - Purap account entries

    isDuplicateEntry

    public boolean isDuplicateEntry(Entry glEntry)
    Description copied from interface: ReconciliationService
    Returns true is a GL entry is already available in CAB

    Specified by:
    isDuplicateEntry in interface ReconciliationService
    Parameters:
    glEntry - GL Line entry
    Returns:
    true if matching GL entry found in CAB
    See Also:
    ReconciliationService.isDuplicateEntry(org.kuali.kfs.gl.businessobject.Entry)

    getBusinessObjectService

    public org.kuali.rice.kns.service.BusinessObjectService getBusinessObjectService()
    Gets the businessObjectService attribute.

    Returns:
    Returns the businessObjectService

    setBusinessObjectService

    public void setBusinessObjectService(org.kuali.rice.kns.service.BusinessObjectService businessObjectService)
    Sets the businessObjectService attribute.

    Parameters:
    businessObjectService - The businessObjectService to set.

    getIgnoredEntries

    public List<Entry> getIgnoredEntries()
    Gets the ignoredEntries attribute.

    Specified by:
    getIgnoredEntries in interface ReconciliationService
    Returns:
    Returns the ignoredEntries

    setIgnoredEntries

    public void setIgnoredEntries(List<Entry> ignoredEntries)
    Sets the ignoredEntries attribute.

    Parameters:
    ignoredEntries - The ignoredEntries to set.

    getDuplicateEntries

    public List<Entry> getDuplicateEntries()
    Gets the duplicateEntries attribute.

    Specified by:
    getDuplicateEntries in interface ReconciliationService
    Returns:
    Returns the duplicateEntries

    setDuplicateEntries

    public void setDuplicateEntries(List<Entry> duplicateEntries)
    Sets the duplicateEntries attribute.

    Parameters:
    duplicateEntries - The duplicateEntries to set.

    getMatchedGroups

    public Collection<GlAccountLineGroup> getMatchedGroups()
    Description copied from interface: ReconciliationService
    Returns the list of account groups that found match to account line history

    Specified by:
    getMatchedGroups in interface ReconciliationService
    Returns:
    List of valid matched account groups

    getMisMatchedGroups

    public Collection<GlAccountLineGroup> getMisMatchedGroups()
    Description copied from interface: ReconciliationService
    Returns the list of unmatched account line groups

    Specified by:
    getMisMatchedGroups in interface ReconciliationService
    Returns:
    List of mismatches


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