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     */
016    package org.kuali.kpme.tklm.api.leave.adjustment;
017    
018    import java.math.BigDecimal;
019    
020    import org.kuali.kpme.core.api.accrualcategory.AccrualCategoryContract;
021    import org.kuali.kpme.core.api.bo.HrBusinessObjectContract;
022    import org.kuali.kpme.core.api.earncode.EarnCodeContract;
023    import org.kuali.kpme.core.api.principal.PrincipalHRAttributesContract;
024    import org.kuali.rice.kim.api.identity.Person;
025    
026    /**
027     * <p>LeaveAdjustmentContract interface</p>
028     *
029     */
030    public interface LeaveAdjustmentContract extends HrBusinessObjectContract {
031            
032            /**
033             * The EarnCode name associated with the AccrualCategory and LeaveAdjustment
034             * 
035             * <p>
036             * earnCode of a LeaveAdjustment
037             * <p>
038             * 
039             * @return earnCode for LeaveAdjustment
040             */
041            public String getEarnCode();
042            
043            /**
044             * The EarnCode object associated with the AccrualCategory and the LeaveAdjustment
045             * 
046             * <p>
047             * earnCodeObject of a LeaveAdjustment
048             * <p>
049             * 
050             * @return earnCodeObject for LeaveAdjustment
051             */
052            public EarnCodeContract getEarnCodeObj();
053            
054            /**
055             * The identifier of the employee associated with the LeaveAdjustment
056             * 
057             * <p>
058             * principalId of a LeaveAdjustment
059             * </p>
060             * 
061             * @return principalId for LeaveAdjustment
062             */
063            public String getPrincipalId();
064            
065            /**
066             * The Person object associated with the LeaveAdjustment
067             * 
068             * <p>
069             * principal of a LeaveAdjustment
070             * <p>
071             * 
072             * @return principal for LeaveAdjustment
073             */     
074        public Person getPrincipal();
075       
076            /**
077             * The principalName of the employee associated with the LeaveAdjustment
078             * 
079             * <p>
080             * principal.getName() of a LeaveAdjustment
081             * <p>
082             * 
083             * @return principal.getName() for LeaveAdjustment
084             */
085        public String getName();
086            
087        /**
088             * The LeavePlan name associated with the Principal Id and the AccrualCategory
089             * 
090             * <p>
091             * leavePlan of a LeaveAdjustment
092             * <p>
093             * 
094             * @return leavePlan for LeaveAdjustment
095             */
096            public String getLeavePlan();
097    
098            /**
099             * The AccrualCategory name associated with the LeaveAdjustment
100             * 
101             * <p>
102             * accrualCategory of a LeaveAdjustment
103             * <p>
104             * 
105             * @return accrualCategory for LeaveAdjustment
106             */
107            public String getAccrualCategory();
108            
109            /**
110             * The descripton of a reason associated with the LeaveAdjustment
111             * 
112             * <p>
113             * description of a LeaveAdjustment
114             * </p>
115             * 
116             * @return description for LeaveAdjustment
117             */
118            public String getDescription();
119            
120            /**
121             * The value of the LeaveAdjustment, positive or negative, associated with the LeaveAdjustment
122             * 
123             * <p>
124             * adjustmentAmount of a LeaveAdjustment
125             * </p>
126             * 
127             * @return adjustmentAmount for LeaveAdjustment
128             */
129            public BigDecimal getAdjustmentAmount();
130            
131            /**
132             * The AccuralCategory object associated with the LeaveAdjustment
133             * 
134             * <p>
135             * accrualCategoryObj of a LeaveAdjustment
136             * <p>
137             * 
138             * @return accrualCategoryObj for LeaveAdjustment
139             */     
140            public AccrualCategoryContract getAccrualCategoryObj();
141            
142            /**
143             * The primary key of a LeaveAdjustment entry saved in a database
144             * 
145             * <p>
146             * lmLeaveAdjustmentId of a LeaveAdjustment
147             * <p>
148             * 
149             * @return lmLeaveAdjustmentId for LeaveAdjustment
150             */
151            public String getLmLeaveAdjustmentId();
152            
153            /**
154             * The PrincipalHRAttributes object associated with the LeaveAdjustment
155             * 
156             * <p>
157             * principalHRAttrObj of a LeaveAdjustment
158             * <p>
159             * 
160             * @return principalHRAttrObj for LeaveAdjustment
161             */     
162            public PrincipalHRAttributesContract getPrincipalHRAttrObj();
163            
164    }