org.kuali.kfs.module.purap.document.validation.impl
Class LineItemReceivingDocumentRule

java.lang.Object
  extended by org.kuali.rice.kns.rules.DocumentRuleBase
      extended by org.kuali.kfs.module.purap.document.validation.impl.LineItemReceivingDocumentRule
All Implemented Interfaces:
AddReceivingItemRule, ContinuePurapRule, 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 LineItemReceivingDocumentRule
extends org.kuali.rice.kns.rules.DocumentRuleBase
implements ContinuePurapRule, AddReceivingItemRule


Constructor Summary
LineItemReceivingDocumentRule()
           
 
Method Summary
protected  boolean canCreateLineItemReceivingDocument(LineItemReceivingDocument lineItemReceivingDocument)
          Determines if it is valid to create a receiving line document.
protected  boolean hasRequiredFieldsForContinue(LineItemReceivingDocument lineItemReceivingDocument)
          Make sure the required fields on the init screen are filled in.
protected  boolean isAtLeastOneItemEntered(ReceivingDocument receivingDocument)
          TODO: move this up This method...
 boolean processAddReceivingItemRules(ReceivingDocument document, LineItemReceivingItem item, String errorPathPrefix)
          Processes validation for a receiving item when added.
 boolean processContinuePurapBusinessRules(org.kuali.rice.kns.document.TransactionalDocument document)
          Checks the rules that are applicable to the Continue Event on a Transactional Document
protected  boolean processCustomRouteDocumentBusinessRules(org.kuali.rice.kns.document.Document document)
           
protected  boolean validateAllReceivingLinesHaveSaneQuantities(ReceivingDocument document)
           
protected  boolean validateItemUnitOfMeasure(ReceivingDocument receivingDocument)
          Validates that if the item type is quantity based, the unit of measure is required.
protected  boolean validateQuantityDamagedNotMoreThanReceived(ReceivingDocument document, LineItemReceivingItem item, String errorPathPrefix, Integer lineNumber)
           
protected  boolean validateQuantityReturnedNotMoreThanReceived(ReceivingDocument document, LineItemReceivingItem item, String errorPathPrefix, Integer lineNumber)
           
 
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, processCustomSaveDocumentBusinessRules, 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

LineItemReceivingDocumentRule

public LineItemReceivingDocumentRule()
Method Detail

processCustomRouteDocumentBusinessRules

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

isAtLeastOneItemEntered

protected boolean isAtLeastOneItemEntered(ReceivingDocument receivingDocument)
TODO: move this up This method...

Parameters:
receivingDocument -
Returns:

processContinuePurapBusinessRules

public boolean processContinuePurapBusinessRules(org.kuali.rice.kns.document.TransactionalDocument document)
Description copied from interface: ContinuePurapRule
Checks the rules that are applicable to the Continue Event on a Transactional Document

Specified by:
processContinuePurapBusinessRules in interface ContinuePurapRule
Parameters:
document - the document to check
Returns:
true if the business rules pass

hasRequiredFieldsForContinue

protected boolean hasRequiredFieldsForContinue(LineItemReceivingDocument lineItemReceivingDocument)
Make sure the required fields on the init screen are filled in.

Parameters:
lineItemReceivingDocument -
Returns:

canCreateLineItemReceivingDocument

protected boolean canCreateLineItemReceivingDocument(LineItemReceivingDocument lineItemReceivingDocument)
Determines if it is valid to create a receiving line document. Only one receiving line document can be active at any time per purchase order document.

Parameters:
lineItemReceivingDocument -
Returns:

validateItemUnitOfMeasure

protected boolean validateItemUnitOfMeasure(ReceivingDocument receivingDocument)
Validates that if the item type is quantity based, the unit of measure is required.


processAddReceivingItemRules

public boolean processAddReceivingItemRules(ReceivingDocument document,
                                            LineItemReceivingItem item,
                                            String errorPathPrefix)
Description copied from interface: AddReceivingItemRule
Processes validation for a receiving item when added.

Specified by:
processAddReceivingItemRules in interface AddReceivingItemRule
Returns:
See Also:
org.kuali.kfs.module.purap.document.validation.AddReceivingItemRule#processAddReceivingItemRules(org.kuali.kfs.module.purap.document.ReceivingDocument, org.kuali.kfs.module.purap.businessobject.ReceivingItem)

validateQuantityReturnedNotMoreThanReceived

protected boolean validateQuantityReturnedNotMoreThanReceived(ReceivingDocument document,
                                                              LineItemReceivingItem item,
                                                              String errorPathPrefix,
                                                              Integer lineNumber)

validateQuantityDamagedNotMoreThanReceived

protected boolean validateQuantityDamagedNotMoreThanReceived(ReceivingDocument document,
                                                             LineItemReceivingItem item,
                                                             String errorPathPrefix,
                                                             Integer lineNumber)

validateAllReceivingLinesHaveSaneQuantities

protected boolean validateAllReceivingLinesHaveSaneQuantities(ReceivingDocument document)


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