org.kuali.kfs.module.ar.document.validation.impl
Class CustomerInvoiceWriteoffDocumentRule

java.lang.Object
  extended by org.kuali.rice.kns.rules.DocumentRuleBase
      extended by org.kuali.rice.kns.rules.TransactionalDocumentRuleBase
          extended by org.kuali.kfs.module.ar.document.validation.impl.CustomerInvoiceWriteoffDocumentRule
All Implemented Interfaces:
ContinueCustomerInvoiceWriteoffDocumentRule<org.kuali.rice.kns.document.TransactionalDocument>, org.kuali.rice.kns.rule.AddAdHocRoutePersonRule, org.kuali.rice.kns.rule.AddAdHocRouteWorkgroupRule, org.kuali.rice.kns.rule.AddNoteRule, org.kuali.rice.kns.rule.ApproveDocumentRule, org.kuali.rice.kns.rule.BusinessRule, org.kuali.rice.kns.rule.RouteDocumentRule, org.kuali.rice.kns.rule.SaveDocumentRule, org.kuali.rice.kns.rule.SendAdHocRequestsRule

public class CustomerInvoiceWriteoffDocumentRule
extends org.kuali.rice.kns.rules.TransactionalDocumentRuleBase
implements ContinueCustomerInvoiceWriteoffDocumentRule<org.kuali.rice.kns.document.TransactionalDocument>


Constructor Summary
CustomerInvoiceWriteoffDocumentRule()
           
 
Method Summary
 boolean checkIfInvoiceNumberIsValid(String invDocumentNumber)
           
 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 CRM status is one of the following: processed, cancelled, or disapproved
protected  boolean doesChartCodeHaveCorrespondingWriteoffObjectCode(CustomerInvoiceDetail customerInvoiceDetail)
          This method checks if the chart object code using on the invoice detail has a corresponding
protected  boolean doesCustomerInvoiceDocumentHaveValidBalance(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)
          This method returns true if customer invoice document for writeoff does not have a credit balance (i.e.
protected  boolean doesOrganizationAccountingDefaultHaveWriteoffInformation(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)
           
protected  boolean doesWriteoffAccountNumberExist(OrganizationAccountingDefault organizationAccountingDefault)
          This method returns true if payment account number is provided and is valid.
protected  boolean doesWriteoffChartOfAccountsCodeExist(OrganizationAccountingDefault organizationAccountingDefault)
          This method returns true if payment chart of accounts code is provided and is valid
protected  boolean doesWriteoffFinancialObjectCodeExist(OrganizationAccountingDefault organizationAccountingDefault)
          This method returns true if payment financial object code is provided and is valid
 boolean processContinueCustomerInvoiceWriteoffDocumentRules(org.kuali.rice.kns.document.TransactionalDocument document)
           
protected  boolean processCustomRouteDocumentBusinessRules(org.kuali.rice.kns.document.Document document)
           
protected  boolean processCustomSaveDocumentBusinessRules(org.kuali.rice.kns.document.Document document)
           
protected  boolean validateCustomerNote(String customerNote)
           
protected  boolean validateWriteoffGLPEGenerationInformation(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)
          This method validates any writeoff GLPE required information
 
Methods inherited from class org.kuali.rice.kns.rules.DocumentRuleBase
getDataDictionaryService, getDictionaryValidationService, getDocumentHelperService, getIdentityManagementService, getKualiConfigurationService, getMaxDictionaryValidationDepth, getPersonService, getWorkflowInfoService, isAddHocRoutePersonValid, isAddHocRouteWorkgroupValid, isAdHocRouteRecipientsValid, isDocumentAttributesValid, isDocumentOverviewValid, isNoteValid, processAddAdHocRoutePerson, processAddAdHocRouteWorkgroup, processAddNote, processApproveDocument, processCustomAddAdHocRoutePersonBusinessRules, processCustomAddAdHocRouteWorkgroupBusinessRules, processCustomAddNoteBusinessRules, processCustomApproveDocumentBusinessRules, processCustomSendAdHocRequests, processRouteDocument, processSaveDocument, processSendAdHocRequests, setMaxDictionaryValidationDepth, validateSensitiveDataValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CustomerInvoiceWriteoffDocumentRule

public CustomerInvoiceWriteoffDocumentRule()
Method Detail

processCustomSaveDocumentBusinessRules

protected boolean processCustomSaveDocumentBusinessRules(org.kuali.rice.kns.document.Document document)
Overrides:
processCustomSaveDocumentBusinessRules in class org.kuali.rice.kns.rules.DocumentRuleBase
See Also:
DocumentRuleBase.processCustomSaveDocumentBusinessRules(org.kuali.rice.kns.document.Document)

processCustomRouteDocumentBusinessRules

protected boolean processCustomRouteDocumentBusinessRules(org.kuali.rice.kns.document.Document document)
Overrides:
processCustomRouteDocumentBusinessRules in class org.kuali.rice.kns.rules.DocumentRuleBase

validateCustomerNote

protected boolean validateCustomerNote(String customerNote)

validateWriteoffGLPEGenerationInformation

protected boolean validateWriteoffGLPEGenerationInformation(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)
This method validates any writeoff GLPE required information

Parameters:
customerInvoiceWriteoffDocument -
Returns:

doesChartCodeHaveCorrespondingWriteoffObjectCode

protected boolean doesChartCodeHaveCorrespondingWriteoffObjectCode(CustomerInvoiceDetail customerInvoiceDetail)
This method checks if the chart object code using on the invoice detail has a corresponding

Parameters:
customerInvoiceDetail -
Returns:
TODO

doesOrganizationAccountingDefaultHaveWriteoffInformation

protected boolean doesOrganizationAccountingDefaultHaveWriteoffInformation(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)

doesWriteoffAccountNumberExist

protected boolean doesWriteoffAccountNumberExist(OrganizationAccountingDefault organizationAccountingDefault)
This method returns true if payment account number is provided and is valid.

Parameters:
doc -
Returns:

doesWriteoffChartOfAccountsCodeExist

protected boolean doesWriteoffChartOfAccountsCodeExist(OrganizationAccountingDefault organizationAccountingDefault)
This method returns true if payment chart of accounts code is provided and is valid

Parameters:
doc -
Returns:

doesWriteoffFinancialObjectCodeExist

protected boolean doesWriteoffFinancialObjectCodeExist(OrganizationAccountingDefault organizationAccountingDefault)
This method returns true if payment financial object code is provided and is valid

Parameters:
doc -
Returns:

doesCustomerInvoiceDocumentHaveValidBalance

protected boolean doesCustomerInvoiceDocumentHaveValidBalance(CustomerInvoiceWriteoffDocument customerInvoiceWriteoffDocument)
This method returns true if customer invoice document for writeoff does not have a credit balance (i.e. a open amount less than 0).

Parameters:
customerInvoiceWriteoffDocument -
Returns:

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

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 CRM status is one of the following: processed, cancelled, or disapproved

Parameters:
invoice -
Returns:

processContinueCustomerInvoiceWriteoffDocumentRules

public boolean processContinueCustomerInvoiceWriteoffDocumentRules(org.kuali.rice.kns.document.TransactionalDocument document)
Specified by:
processContinueCustomerInvoiceWriteoffDocumentRules in interface ContinueCustomerInvoiceWriteoffDocumentRule<org.kuali.rice.kns.document.TransactionalDocument>

checkIfInvoiceNumberIsValid

public boolean checkIfInvoiceNumberIsValid(String invDocumentNumber)


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