1 /*
2 * Copyright 2006 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.coa.service;
17
18 import java.util.List;
19 import java.util.Map;
20
21 import org.kuali.ole.coa.businessobject.OrganizationReversion;
22 import org.kuali.ole.coa.businessobject.OrganizationReversionCategory;
23 import org.kuali.ole.gl.batch.service.OrganizationReversionCategoryLogic;
24
25 /**
26 *
27 * This service interface defines methods necessary for retrieving fully populated OrganizationReversion business objects from the database
28 * that are necessary for transaction processing in the application. It also defines methods to retrieve org reversion categories
29 */
30 public interface OrganizationReversionService {
31 /**
32 * Get an organization reversion record
33 *
34 * @param fiscalYear Fiscal Year
35 * @param chartCode Chart
36 * @param organizationCode Organization code
37 * @return Org Reversion record
38 */
39 public OrganizationReversion getByPrimaryId(Integer fiscalYear, String chartCode, String organizationCode);
40
41 /**
42 * Get org reversion categories
43 *
44 * @return map of org reversion categories
45 */
46 public Map<String, OrganizationReversionCategoryLogic> getCategories();
47
48 /**
49 * List of reversion categories in order of the sort code
50 *
51 * @return list of org reversion category codes
52 */
53 public List<OrganizationReversionCategory> getCategoryList();
54
55 /**
56 * Determines if the given category code represents an active category
57 * @param categoryCode the category code to check
58 * @return true if the given category code represents an active category; false otherwise
59 */
60 public boolean isCategoryActive(String categoryCode);
61
62 /**
63 * Determines if the given category name represents an active category
64 * @param categoryName the category name to check
65 * @return true if the given category name represents an active category; false otherwise
66 */
67 public boolean isCategoryActiveByName(String categoryName);
68
69 /**
70 *
71 * This method looks up the default object code to populate the Organization Reversion object code if the
72 * "carry Forward by Object Code" box is not checked.
73 * @return system parameter default value for Organization Reversion detail
74 */
75 public String getOrganizationReversionDetaiFromSystemParameters();
76 }