View Javadoc
1   /*
2    * Copyright 2007 The Kuali Foundation
3    * 
4    * Licensed under the Educational Community License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    * 
8    * http://www.opensource.org/licenses/ecl2.php
9    * 
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  /*
17   * Created on Aug 30, 2004
18   *
19   */
20  package org.kuali.ole.pdp.service;
21  
22  import java.util.Iterator;
23  
24  import org.kuali.ole.pdp.businessobject.GlPendingTransaction;
25  import org.kuali.ole.pdp.businessobject.PaymentGroup;
26  
27  /**
28   * Creates GLPEs for PDP extracted and canceled payments.
29   */
30  public interface PendingTransactionService {
31      
32      /**
33       * Creates GLPE entries for the Payment record and stores to PDP pending entry table
34       * 
35       * @param paymentGroup payment group record to create GLPE for
36       */
37      public void generatePaymentGeneralLedgerPendingEntry(PaymentGroup paymentGroup);
38  
39      /**
40       * Creates GLPE entries for a payment cancel and stores to PDP pending entry table. Debit/Credit codes are
41       * reversed backing out the original GLPEs for the payment.
42       * 
43       * @param paymentGroup payment group record to create GLPE for
44       */
45      public void generateCancellationGeneralLedgerPendingEntry(PaymentGroup paymentGroup);
46  
47      /**
48       * Creates GLPE entries for a reissue and stores to PDP pending entry table. Debit/Credit codes are
49       * reversed backing out the original GLPEs for the payment.
50       * 
51       * @param paymentGroup payment group record to create GLPE for
52       */  
53      public void generateReissueGeneralLedgerPendingEntry(PaymentGroup paymentGroup);
54  
55      /**
56       * Save a transaction
57       * 
58       * @param tran
59       */
60      public void save(GlPendingTransaction tran);
61  
62      /**
63       * Get all of the GL transactions where the extract flag is null
64       * 
65       * @return Iterator of all the transactions
66       */
67      public Iterator<GlPendingTransaction> getUnextractedTransactions();
68      
69      /**
70       * Deletes transactions records that have been copied to the GL
71       */
72      public void clearExtractedTransactions();
73  }