org.kuali.kfs.module.ar.document.service.impl
Class CustomerInvoiceWriteoffDocumentServiceImpl

java.lang.Object
  extended by org.kuali.kfs.module.ar.document.service.impl.CustomerInvoiceWriteoffDocumentServiceImpl
All Implemented Interfaces:
CustomerInvoiceWriteoffDocumentService

@Transactional
public class CustomerInvoiceWriteoffDocumentServiceImpl
extends Object
implements CustomerInvoiceWriteoffDocumentService


Constructor Summary
CustomerInvoiceWriteoffDocumentServiceImpl()
           
 
Method Summary
 boolean checkIfThereIsNoAnotherCRMInRouteForTheInvoice(String invoiceDocumentNumber)
          This method checks if there is no another CRM in route for the invoice Not in route if CRM status is one of the following: processed, cancelled, or disapproved
 boolean checkIfThereIsNoAnotherWriteoffInRouteForTheInvoice(String invoiceDocumentNumber)
          This method checks if there is no another writeoff in route for the invoice Not in route if writeoff status is one of the following: processed, cancelled, or disapproved
 void completeWriteoffProcess(CustomerInvoiceWriteoffDocument writeoff)
          Finalizes the actions of a Writeoff document, once its been completely approved.
 String createCustomerInvoiceWriteoffDocument(org.kuali.rice.kim.bo.Person initiator, String invoiceNumber, String note)
          Creates a new Invoice Writeoff Document based on the indicated Invoice doc number and the initiator.
 Collection<CustomerInvoiceDocument> filterInvoices(Collection<CustomerInvoiceDocument> customerInvoiceDocuments)
          This method returns invoices which are in FINAL status and have no related CRMs and writeoffs in route
 AccountsReceivableDocumentHeaderService getAccountsReceivableDocumentHeaderService()
           
 org.kuali.rice.kns.service.BusinessObjectService getBusinessObjectService()
           
 CustomerInvoiceDocumentService getCustomerInvoiceDocumentService()
           
 Collection<CustomerInvoiceWriteoffLookupResult> getCustomerInvoiceDocumentsForInvoiceWriteoffLookup(Map<String,String> fieldValues)
          This method returns a collection of customer invoice documents that are eligible for writeoff
 CustomerService getCustomerService()
           
 org.kuali.rice.kns.service.DocumentService getDocumentService()
           
 String getFinancialObjectCode(CustomerInvoiceDetail postable, CustomerInvoiceWriteoffDocument poster, boolean isUsingOrgAcctDefaultWriteoffFAU, boolean isUsingChartForWriteoff, String chartOfAccountsCode)
           
 ObjectCode getObjectCode(CustomerInvoiceDetail postable, CustomerInvoiceWriteoffDocument poster, boolean isUsingOrgAcctDefaultWriteoffFAU, boolean isUsingChartForWriteoff, String chartOfAccountsCode)
           
 org.kuali.rice.kns.service.ParameterService getParameterService()
           
 UniversityDateService getUniversityDateService()
           
 boolean isCustomerInvoiceWriteoffDocumentApproved(String customerInvoiceWriteoffDocumentNumber)
          This method returns true if a customer invoice writeoff document is approved
 String sendCustomerInvoiceWriteoffDocumentsToBatch(org.kuali.rice.kim.bo.Person person, Collection<CustomerInvoiceWriteoffLookupResult> customerInvoiceWriteoffLookupResults)
          Accepts a lookup result and creates a batch file dropped into the batch system for later asynchronous processing.
 void setAccountsReceivableDocumentHeaderService(AccountsReceivableDocumentHeaderService accountsReceivableDocumentHeaderService)
           
 void setBusinessObjectService(org.kuali.rice.kns.service.BusinessObjectService businessObjectService)
           
 void setCustomerInvoiceDocumentService(CustomerInvoiceDocumentService customerInvoiceDocumentService)
           
 void setCustomerService(CustomerService customerService)
           
 void setDateTimeService(org.kuali.rice.kns.service.DateTimeService dateTimeService)
           
 void setDocumentService(org.kuali.rice.kns.service.DocumentService documentService)
           
 void setInvoiceWriteoffBatchService(CustomerInvoiceWriteoffBatchService invoiceWriteoffBatchService)
           
 void setPaidAppliedService(InvoicePaidAppliedService<CustomerInvoiceDetail> paidAppliedService)
           
 void setParameterService(org.kuali.rice.kns.service.ParameterService parameterService)
           
 void setUniversityDateService(UniversityDateService universityDateService)
           
 void setupDefaultValuesForNewCustomerInvoiceWriteoffDocument(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)
          This method setups any default values for a new customer invoice document
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CustomerInvoiceWriteoffDocumentServiceImpl

public CustomerInvoiceWriteoffDocumentServiceImpl()
Method Detail

completeWriteoffProcess

public void completeWriteoffProcess(CustomerInvoiceWriteoffDocument writeoff)
Description copied from interface: CustomerInvoiceWriteoffDocumentService
Finalizes the actions of a Writeoff document, once its been completely approved. Generates paid applieds for the source invoice, and closes the source invoice.

Specified by:
completeWriteoffProcess in interface CustomerInvoiceWriteoffDocumentService
Parameters:
writeoff - The approved Writeoff document to complete.
See Also:
CustomerInvoiceWriteoffDocumentService.completeWriteoffProcess(org.kuali.kfs.module.ar.document.CustomerInvoiceWriteoffDocument)

setupDefaultValuesForNewCustomerInvoiceWriteoffDocument

public void setupDefaultValuesForNewCustomerInvoiceWriteoffDocument(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)
Description copied from interface: CustomerInvoiceWriteoffDocumentService
This method setups any default values for a new customer invoice document

Specified by:
setupDefaultValuesForNewCustomerInvoiceWriteoffDocument in interface CustomerInvoiceWriteoffDocumentService
See Also:
CustomerInvoiceWriteoffDocumentService.setupDefaultValuesForNewCustomerInvoiceWriteoffDocument(org.kuali.kfs.module.ar.document.CustomerInvoiceWriteoffDocument)

isCustomerInvoiceWriteoffDocumentApproved

public boolean isCustomerInvoiceWriteoffDocumentApproved(String customerInvoiceWriteoffDocumentNumber)
Description copied from interface: CustomerInvoiceWriteoffDocumentService
This method returns true if a customer invoice writeoff document is approved

Specified by:
isCustomerInvoiceWriteoffDocumentApproved in interface CustomerInvoiceWriteoffDocumentService
Returns:

getCustomerInvoiceDocumentsForInvoiceWriteoffLookup

public Collection<CustomerInvoiceWriteoffLookupResult> getCustomerInvoiceDocumentsForInvoiceWriteoffLookup(Map<String,String> fieldValues)
Description copied from interface: CustomerInvoiceWriteoffDocumentService
This method returns a collection of customer invoice documents that are eligible for writeoff

Specified by:
getCustomerInvoiceDocumentsForInvoiceWriteoffLookup in interface CustomerInvoiceWriteoffDocumentService
Returns:

filterInvoices

public Collection<CustomerInvoiceDocument> filterInvoices(Collection<CustomerInvoiceDocument> customerInvoiceDocuments)
This method returns invoices which are in FINAL status and have no related CRMs and writeoffs in route

Specified by:
filterInvoices in interface CustomerInvoiceWriteoffDocumentService
Parameters:
customerInvoiceDocuments -
Returns:
filteredInvoices

checkIfThereIsNoAnotherCRMInRouteForTheInvoice

public boolean checkIfThereIsNoAnotherCRMInRouteForTheInvoice(String invoiceDocumentNumber)
This method checks if there is no another CRM in route for the invoice Not in route if CRM status is one of the following: processed, cancelled, or disapproved

Specified by:
checkIfThereIsNoAnotherCRMInRouteForTheInvoice in interface CustomerInvoiceWriteoffDocumentService
Parameters:
invoice -
Returns:

checkIfThereIsNoAnotherWriteoffInRouteForTheInvoice

public boolean checkIfThereIsNoAnotherWriteoffInRouteForTheInvoice(String invoiceDocumentNumber)
This method checks if there is no another writeoff in route for the invoice Not in route if writeoff status is one of the following: processed, cancelled, or disapproved

Specified by:
checkIfThereIsNoAnotherWriteoffInRouteForTheInvoice in interface CustomerInvoiceWriteoffDocumentService
Parameters:
invoice -
Returns:

sendCustomerInvoiceWriteoffDocumentsToBatch

public String sendCustomerInvoiceWriteoffDocumentsToBatch(org.kuali.rice.kim.bo.Person person,
                                                          Collection<CustomerInvoiceWriteoffLookupResult> customerInvoiceWriteoffLookupResults)
Description copied from interface: CustomerInvoiceWriteoffDocumentService
Accepts a lookup result and creates a batch file dropped into the batch system for later asynchronous processing.

Specified by:
sendCustomerInvoiceWriteoffDocumentsToBatch in interface CustomerInvoiceWriteoffDocumentService
Returns:
filename and path of created batch file
See Also:
CustomerInvoiceWriteoffDocumentService.sendCustomerInvoiceWriteoffDocumentsToBatch(org.kuali.rice.kim.bo.Person, java.util.Collection)

createCustomerInvoiceWriteoffDocument

public String createCustomerInvoiceWriteoffDocument(org.kuali.rice.kim.bo.Person initiator,
                                                    String invoiceNumber,
                                                    String note)
                                             throws org.kuali.rice.kew.exception.WorkflowException
Description copied from interface: CustomerInvoiceWriteoffDocumentService
Creates a new Invoice Writeoff Document based on the indicated Invoice doc number and the initiator.

Specified by:
createCustomerInvoiceWriteoffDocument in interface CustomerInvoiceWriteoffDocumentService
Parameters:
initiator - Person who initiated the writeoffs.
invoiceNumber - Invoice document number to base the writeoff on.
note - User note to be added to the document.
Returns:
Returns the Document Number of the Invoice Writeoff document created.
Throws:
org.kuali.rice.kew.exception.WorkflowException

getFinancialObjectCode

public String getFinancialObjectCode(CustomerInvoiceDetail postable,
                                     CustomerInvoiceWriteoffDocument poster,
                                     boolean isUsingOrgAcctDefaultWriteoffFAU,
                                     boolean isUsingChartForWriteoff,
                                     String chartOfAccountsCode)
Specified by:
getFinancialObjectCode in interface CustomerInvoiceWriteoffDocumentService

getObjectCode

public ObjectCode getObjectCode(CustomerInvoiceDetail postable,
                                CustomerInvoiceWriteoffDocument poster,
                                boolean isUsingOrgAcctDefaultWriteoffFAU,
                                boolean isUsingChartForWriteoff,
                                String chartOfAccountsCode)
Specified by:
getObjectCode in interface CustomerInvoiceWriteoffDocumentService

getParameterService

public org.kuali.rice.kns.service.ParameterService getParameterService()

setParameterService

public void setParameterService(org.kuali.rice.kns.service.ParameterService parameterService)

getUniversityDateService

public UniversityDateService getUniversityDateService()

setUniversityDateService

public void setUniversityDateService(UniversityDateService universityDateService)

getBusinessObjectService

public org.kuali.rice.kns.service.BusinessObjectService getBusinessObjectService()

setBusinessObjectService

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

getCustomerInvoiceDocumentService

public CustomerInvoiceDocumentService getCustomerInvoiceDocumentService()

setCustomerInvoiceDocumentService

public void setCustomerInvoiceDocumentService(CustomerInvoiceDocumentService customerInvoiceDocumentService)

getAccountsReceivableDocumentHeaderService

public AccountsReceivableDocumentHeaderService getAccountsReceivableDocumentHeaderService()

setAccountsReceivableDocumentHeaderService

public void setAccountsReceivableDocumentHeaderService(AccountsReceivableDocumentHeaderService accountsReceivableDocumentHeaderService)

getCustomerService

public CustomerService getCustomerService()

setCustomerService

public void setCustomerService(CustomerService customerService)

getDocumentService

public org.kuali.rice.kns.service.DocumentService getDocumentService()

setDocumentService

public void setDocumentService(org.kuali.rice.kns.service.DocumentService documentService)

setInvoiceWriteoffBatchService

public void setInvoiceWriteoffBatchService(CustomerInvoiceWriteoffBatchService invoiceWriteoffBatchService)

setDateTimeService

public void setDateTimeService(org.kuali.rice.kns.service.DateTimeService dateTimeService)

setPaidAppliedService

public void setPaidAppliedService(InvoicePaidAppliedService<CustomerInvoiceDetail> paidAppliedService)


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