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 12, 2004
18   */
19  package org.kuali.ole.pdp.service;
20  
21  import org.kuali.rice.kim.api.identity.Person;
22  
23  /**
24   * @author HSTAPLET
25   */
26  /**
27   * This class defines services for Batch maintenance.
28   */
29  public interface BatchMaintenanceService {
30  
31      /**
32       * This method cancels a pending Batch.
33       * @param batchId the id of the batch to be canceled
34       * @param note  a note stating the reason for the batch cancelation
35       * @param user the user that performed the batch cancelation
36       * @return true if batch successfully canceled, false otherwise
37       */
38      public boolean cancelPendingBatch(Integer batchId, String note, Person user);
39  
40      /**
41       * This method holds a pending Batch.
42       * @param batchId the id of the batch to perfomr hold on
43       * @param note a nite stating the reason for holding batch
44       * @param user the user that performed the batch hold
45       * @return true if batch successfully hold, false otherwise
46       */
47      public boolean holdPendingBatch(Integer batchId, String note, Person user);
48  
49      /**
50       * This method removes a hold on a Batch.
51       * @param batchId the id of the batch we want to remove the hold
52       * @param changeText a text stating the reason for removing the hold
53       * @param user the user that removed hold on batch
54       * @return  true if batch hold successfully removed, false otherwise
55       */
56      public boolean removeBatchHold(Integer batchId, String changeText, Person user);
57  
58      /**
59       * This method checks if the batch has open payments.
60       * @param batchId the id of the batch
61       * @return returns true if batch has open payments, false otherwise
62       */
63      public boolean doBatchPaymentsHaveOpenStatus(Integer batchId);
64  
65      /**
66       * This method checks if batch payments has open or held payments.
67       * @param batchId the id of the batch
68       * @return true if batch has open or held payments, false otherwise
69       */
70      public boolean doBatchPaymentsHaveOpenOrHeldStatus(Integer batchId);
71  
72      /**
73       * This method checks if batch payments have held status.
74       * @param batchId the id of the batch
75       * @return true if batch payments have held status, false otherwise
76       */
77      public boolean doBatchPaymentsHaveHeldStatus(Integer batchId);
78  }
79