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 package org.kuali.ole.pdp.dataaccess; 17 18 import java.sql.Date; 19 import java.util.Iterator; 20 import java.util.List; 21 22 import org.kuali.ole.pdp.businessobject.DailyReport; 23 import org.kuali.ole.pdp.businessobject.DisbursementNumberRange; 24 import org.kuali.ole.pdp.businessobject.PaymentDetail; 25 26 public interface PaymentDetailDao { 27 /** 28 * @param custPaymentDocNbr 29 * @param fdocTypeCode 30 * @param orgCode the value of the system parameter PURAP_PDP_ORG_CODE 31 * @param subUnitCode the value of the system parameter PURAP_PDP_SUB_UNIT_CODE 32 * @return 33 */ 34 public PaymentDetail getDetailForEpic(String custPaymentDocNbr, String fdocTypeCode, String orgCode, String subUnitCode); 35 36 /** 37 * Retrieves list of <code>DisbursementNumberRange</code> records for the given processing campus which are active and have 38 * range start date before or equal to the current date. 39 * 40 * @param campus processing campus to retrieve ranges for 41 * @return List of <code>DisbursementNumberRange</code> records found 42 */ 43 public List<DisbursementNumberRange> getDisbursementNumberRanges(String campus); 44 45 /** 46 * This returns the data required for the daily report 47 * 48 * @param currentSqlDate the current Sql date 49 * @return 50 */ 51 public List<DailyReport> getDailyReportData(Date currentSqlDate); 52 53 /** 54 * This will return an iterator of all the cancelled payment details that haven't already been processed 55 * 56 * @param organization 57 * @param subUnit 58 * @return 59 */ 60 public Iterator getUnprocessedCancelledDetails(String organization, List<String> subUnits); 61 62 /** 63 * This will return all the ACH payments that need an email sent 64 * 65 * @return 66 */ 67 public Iterator getAchPaymentsWithUnsentEmail(); 68 69 /** 70 * This will return an iterator of all the paid payment details that haven't already been processed 71 * 72 * @param organization 73 * @param subUnit 74 * @return 75 */ 76 public Iterator getUnprocessedPaidDetails(String organization, List<String> subUnits); 77 }