001    /*
002     * Copyright 2011 The Kuali Foundation.
003     * 
004     * Licensed under the Educational Community License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     * 
008     * http://www.opensource.org/licenses/ecl2.php
009     * 
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013     * See the License for the specific language governing permissions and
014     * limitations under the License.
015     */
016    package org.kuali.kfs.module.endow.report.service;
017    
018    import java.util.List;
019    
020    import org.kuali.kfs.module.endow.report.util.KemidsWithMultipleBenefittingOrganizationsDataHolder;
021    import org.kuali.kfs.module.endow.report.util.TrialBalanceReportDataHolder;
022    
023    public interface TrialBalanceReportService extends EndowmentReportService {
024    
025        /**
026         * Gets the trial balance data using selected kemids
027         * 
028         * @param kemids
029         * @param endownmentOption
030         * @param closedIndicator
031         * @return
032         */
033        public List<TrialBalanceReportDataHolder> getTrialBalanceReportsByKemidByIds(List<String> kemids, String endownmentOption, String closedIndicator);
034        
035        /**
036         * Gets the trial balance data for all kemids
037         * 
038         * @param endownmentOption
039         * @param closedIndicator
040         * @return
041         */
042        public List<TrialBalanceReportDataHolder> getTrialBalanceReportForAllKemids(String endownmentOption, String closedIndicator);
043            
044        /**
045         * Gets the trial balance data using selected criteria 
046         * 
047         * @param benefittingOrganziationCampuses
048         * @param benefittingOrganziationCharts
049         * @param benefittingOrganziations
050         * @param typeCodes
051         * @param purposeCodes
052         * @param combineGroupCodes
053         * @param endowmnetOption
054         * @param closedIndicator
055         * @return
056         */
057        public List<TrialBalanceReportDataHolder> getTrialBalanceReportsByOtherCriteria( 
058                List<String> benefittingOrganziationCampuses, 
059                List<String> benefittingOrganziationCharts,
060                List<String> benefittingOrganziations, 
061                List<String> typeCodes, 
062                List<String> purposeCodes, 
063                List<String> combineGroupCodes, 
064                String endowmnetOption,
065                String closedIndicator);
066        
067    }