001/** 002 * Copyright 2004-2014 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 */ 016package org.kuali.kpme.pm.api.position.funding; 017 018import org.kuali.kpme.pm.api.position.PositionDerivedContract; 019import java.math.BigDecimal; 020 021/** 022 * <p>PositionFundingContract interface</p> 023 * 024 */ 025public interface PositionFundingContract extends PositionDerivedContract { 026 027 /** 028 * The primary key for a PositionFunding entry saved in the database 029 * 030 * <p> 031 * pmPositionFunctionId of a PositionFunding. 032 * <p> 033 * 034 * @return pmPositionFunctionId for PositionFunding 035 */ 036 public String getPmPositionFunctionId(); 037 038 039 /** 040 * The source associated with the PositionFunding 041 * 042 * <p> 043 * source of a PositionFunding. 044 * <p> 045 * 046 * @return source for PositionFunding 047 */ 048 public String getSource(); 049 050 /** 051 * The chart associated with the PositionFunding 052 * 053 * <p> 054 * chart of a PositionFunding. 055 * <p> 056 * 057 * @return chart for PositionFunding 058 */ 059 public String getChart(); 060 061 /** 062 * The organization associated with the PositionFunding 063 * 064 * <p> 065 * org of a PositionFunding. 066 * <p> 067 * 068 * @return org for PositionFunding 069 */ 070 public String getOrg(); 071 072 /** 073 * The account associated with the PositionFunding 074 * 075 * <p> 076 * The account component of the chart of accounts to be charged when time recorded against this work area and task 077 * <p> 078 * 079 * @return account for PositionFunding 080 */ 081 public String getAccount(); 082 083 /** 084 * The subAccount associated with the PositionFunding 085 * 086 * <p> 087 * The sub-account component of the chart of accounts to be charged when time recorded against this work area and task 088 * <p> 089 * 090 * @return subAccount for PositionFunding 091 */ 092 public String getSubAccount(); 093 094 /** 095 * The object code associated with the PositionFunding 096 * 097 * <p> 098 * The Object code component of the chart of accounts to be charged when time recorded against this work area and task. 099 * <p> 100 * 101 * @return objectCode for PositionFunding 102 */ 103 public String getObjectCode(); 104 105 /** 106 * The subObjectCode associated with the PositionFunding 107 * 108 * <p> 109 * The sub-object component of the chart of accounts to be charged when time recorded against this work area and task. 110 * <p> 111 * 112 * @return subObjectCode for PositionFunding 113 */ 114 public String getSubObjectCode(); 115 116 /** 117 * The organization reference code associated with the PositionFunding 118 * 119 * <p> 120 * orgRefCode of a PositionFunding. 121 * <p> 122 * 123 * @return orgRefCode for PositionFunding 124 */ 125 public String getOrgRefCode(); 126 127 /** 128 * The Percentage that the account will be used to fund the position 129 * 130 * <p> 131 * percent of a PositionFunding. 132 * <p> 133 * 134 * @return percent for PositionFunding 135 */ 136 public BigDecimal getPercent(); 137 138 /** 139 * The amount to be funded 140 * 141 * <p> 142 * amount of a PositionFunding. 143 * <p> 144 * 145 * @return amount for PositionFunding 146 */ 147 public BigDecimal getAmount(); 148 149 /** 150 * The flag used to indicate account priority 151 * 152 * <p> 153 * priorityFlag of a PositionFunding. 154 * <p> 155 * 156 * @return priorityFlag for PositionFunding 157 */ 158 public boolean isPriorityFlag(); 159 160}