1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.ole.module.purap.document.validation.impl;
17
18 import org.kuali.ole.module.purap.PurapKeyConstants;
19 import org.kuali.ole.module.purap.PurapPropertyConstants;
20 import org.kuali.ole.module.purap.document.PurchasingDocument;
21 import org.kuali.ole.sys.OLEPropertyConstants;
22 import org.kuali.ole.sys.document.AmountTotaling;
23 import org.kuali.ole.sys.document.validation.GenericValidation;
24 import org.kuali.ole.sys.document.validation.event.AttributedDocumentEvent;
25 import org.kuali.rice.krad.util.GlobalVariables;
26 import org.kuali.rice.krad.util.ObjectUtils;
27
28 public class RequisitionProcessAdditionalValidation extends GenericValidation {
29
30
31
32
33
34
35
36
37 public boolean validate(AttributedDocumentEvent event) {
38 boolean valid = true;
39 PurchasingDocument purDocument = (PurchasingDocument) event.getDocument();
40 GlobalVariables.getMessageMap().clearErrorPath();
41 GlobalVariables.getMessageMap().addToErrorPath(OLEPropertyConstants.DOCUMENT);
42 if (ObjectUtils.isNotNull(purDocument.getPurchaseOrderTotalLimit()) && ObjectUtils.isNotNull(((AmountTotaling) purDocument).getTotalDollarAmount())) {
43 if (((AmountTotaling) purDocument).getTotalDollarAmount().isGreaterThan(purDocument.getPurchaseOrderTotalLimit())) {
44 valid &= false;
45 GlobalVariables.getMessageMap().putError(PurapPropertyConstants.PURCHASE_ORDER_TOTAL_LIMIT, PurapKeyConstants.ERROR_PURCHASE_ORDER_EXCEEDING_TOTAL_LIMIT);
46 }
47 }
48 GlobalVariables.getMessageMap().clearErrorPath();
49
50 return valid;
51 }
52
53 }