1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.kuali.kfs.module.ld.document.validation.impl;
20
21 import org.kuali.kfs.module.ld.businessobject.LaborLedgerPendingEntry;
22 import org.kuali.kfs.module.ld.document.LaborExpenseTransferDocumentBase;
23 import org.kuali.kfs.module.ld.document.LaborLedgerPostingDocumentBase;
24 import org.kuali.kfs.sys.document.validation.AccountingRuleEngineRule;
25 import org.kuali.kfs.sys.document.validation.impl.AccountingRuleEngineRuleBase;
26 import org.kuali.rice.krad.document.Document;
27
28
29
30
31 public class LaborDocumentRuleEngineRuleBase extends AccountingRuleEngineRuleBase implements AccountingRuleEngineRule {
32
33
34
35 @Override
36 protected boolean processCustomSaveDocumentBusinessRules(Document document) {
37 boolean result = super.processCustomSaveDocumentBusinessRules(document);
38
39 refreshReferenceObjectsInLaborLedgerPendingEntries(document);
40
41 return result;
42 }
43
44
45
46
47
48 protected void refreshReferenceObjectsInLaborLedgerPendingEntries(Document document) {
49 if (document instanceof LaborExpenseTransferDocumentBase) {
50 LaborLedgerPostingDocumentBase laborExpenseDocument = (LaborLedgerPostingDocumentBase) document;
51
52 for (LaborLedgerPendingEntry llpe : laborExpenseDocument.getLaborLedgerPendingEntries()) {
53 llpe.refreshNonUpdateableReferences();
54 }
55 }
56 }
57 }