1 /**
2 * Copyright 2004-2014 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.kpme.tklm.api.leave.donation;
17
18 import java.math.BigDecimal;
19
20 import org.kuali.kpme.core.api.accrualcategory.AccrualCategoryContract;
21 import org.kuali.kpme.core.api.bo.HrBusinessObjectContract;
22 import org.kuali.kpme.core.api.earncode.EarnCodeContract;
23 import org.kuali.rice.kim.api.identity.Person;
24
25 /**
26 * <p>LeaveDonationContract interface</p>
27 *
28 */
29 public interface LeaveDonationContract extends HrBusinessObjectContract {
30
31 /**
32 * The EarnCode object associated with the LeaveDonation
33 *
34 * <p>
35 * earnCodeObject of a LeaveDonation
36 * <p>
37 *
38 * @return earnCodeObject for LeaveDonation
39 */
40 public EarnCodeContract getEarnCodeObj();
41
42 /**
43 * The EarnCode name that a leave block indicating the amount donated will be recorded with
44 *
45 * <p>
46 * donatedEarnCode of a LeaveDonation
47 * </p>
48 *
49 * @return donatedEarnCode for LeaveDonation
50 */
51 public String getDonatedEarnCode();
52
53 /**
54 * The EarnCode name that donation accrual leave block will be recorded with
55 *
56 * <p>
57 * recipientsEarnCode of a LeaveDonation
58 * </p>
59 *
60 * @return recipientsEarnCode for LeaveDonation
61 */
62 public String getRecipientsEarnCode();
63
64 /**
65 * The primary key of a LeaveDonation entry saved in a database
66 *
67 * <p>
68 * lmLeaveDonationId of a LeaveDonation
69 * <p>
70 *
71 * @return lmLeaveDonationId for LeaveDonation
72 */
73 public String getLmLeaveDonationId();
74
75 /**
76 * The AccrualCategory name associated with the LeaveDonation
77 *
78 * <p>
79 * donatedAccrualCategory of a LeaveDonation
80 * </p>
81 *
82 * @return donatedAccrualCategory for LeaveDonation
83 */
84 public String getDonatedAccrualCategory();
85
86 /**
87 * The AccrualCategory name the donated Leave will be accrued to
88 *
89 * <p>
90 * recipientsAccrualCategory of a LeaveDonation
91 * </p>
92 *
93 * @return recipientsAccrualCategory for LeaveDonation
94 */
95 public String getRecipientsAccrualCategory();
96
97 /**
98 * The amount of accrued leave to be donated
99 *
100 * <p>
101 * amountDonated of a LeaveDonation
102 * </p>
103 *
104 * @return amountDonated for LeaveDonation
105 */
106 public BigDecimal getAmountDonated();
107
108 /**
109 * The amount of accrued leave to be received
110 *
111 * <p>
112 * amountReceived of a LeaveDonation
113 * </p>
114 *
115 * @return amountReceived for LeaveDonation
116 */
117 public BigDecimal getAmountReceived();
118
119 /**
120 * The principalID of the employee who is donating leave
121 *
122 * <p>
123 * donorsPrincipalID of a LeaveDonation
124 * </p>
125 *
126 * @return donorsPrincipalID for LeaveDonation
127 */
128 public String getDonorsPrincipalID();
129
130 /**
131 * The principalID of the employee who is receiving the donated leave
132 *
133 * <p>
134 * recipientsPrincipalID of a LeaveDonation
135 * </p>
136 *
137 * @return recipientsPrincipalID for LeaveDonation
138 */
139 public String getRecipientsPrincipalID();
140
141 /**
142 * The descripton of the LeaveDonation
143 *
144 * <p>
145 * description of a LeaveDonation
146 * </p>
147 *
148 * @return description for LeaveDonation
149 */
150 public String getDescription();
151
152 /**
153 * The history flag of the LeaveDonation
154 *
155 * <p>
156 * history flag of a LeaveDonation
157 * <p>
158 *
159 * @return Y if on, N if not
160 */
161 public Boolean getHistory();
162
163 /**
164 * The Person object associated with the LeaveDonation
165 *
166 * <p>
167 * personObj of a LeaveDonation
168 * <p>
169 *
170 * @return personObj for LeaveDonation
171 */
172 public Person getPersonObj();
173
174 /**
175 * The AccuralCategory object associated with the LeaveDonation
176 *
177 * <p>
178 * accrualCategoryObj of a LeaveDonation
179 * <p>
180 *
181 * @return accrualCategoryObj for LeaveDonation
182 */
183 public AccrualCategoryContract getAccrualCategoryObj();
184
185 }