1 /**
2 * Copyright 2004-2015 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.time.rules.timecollection;
17
18 import org.kuali.kpme.core.api.department.DepartmentContract;
19 import org.kuali.kpme.core.api.mo.KpmeEffectiveKeyedDataTransferObject;
20 import org.kuali.kpme.core.api.paytype.PayTypeContract;
21 import org.kuali.kpme.core.api.workarea.WorkAreaContract;
22
23 /**
24 * <p>TimeCollectionRuleContract interface</p>
25 *
26 */
27 public interface TimeCollectionRuleContract extends KpmeEffectiveKeyedDataTransferObject {
28
29 /**
30 * The Department object associated with the TimeCollectionRule
31 *
32 * <p>
33 * departmentObj of a TimeCollectionRule
34 * <p>
35 *
36 * @return departmentObj for TimeCollectionRule
37 */
38 public DepartmentContract getDepartmentObj();
39
40 /**
41 * The pay type associated with the TimeCollectionRule
42 *
43 * <p>
44 * payType of a TimeCollectionRule
45 * <p>
46 *
47 * @return payType for TimeCollectionRule
48 */
49 public String getPayType();
50
51 /**
52 * The id of the PayType object associated with the TimeCollectionRule
53 *
54 * <p>
55 * hrPayTypeId of a TimeCollectionRule
56 * <p>
57 *
58 * @return hrPayTypeId for TimeCollectionRule
59 */
60 public String getHrPayTypeId();
61
62 /**
63 * The PayType object associated with the TimeCollectionRule
64 *
65 * <p>
66 * payTypeObj of a TimeCollectionRule
67 * <p>
68 *
69 * @return payTypeObj for TimeCollectionRule
70 */
71 public PayTypeContract getPayTypeObj();
72
73 /**
74 * The WorkArea object associated with the TimeCollectionRule
75 *
76 * <p>
77 * workAreaObj of a TimeCollectionRule
78 * <p>
79 *
80 * @return workAreaObj for TimeCollectionRule
81 */
82 public WorkAreaContract getWorkAreaObj();
83
84 /**
85 * The work area number associated with the TimeCollectionRule
86 *
87 * <p>
88 * workArea of a TimeCollectionRule
89 * <p>
90 *
91 * @return workArea for TimeCollectionRule
92 */
93 public Long getWorkArea();
94
95 /**
96 * The flag to indicate if clock entry will be required for recording time
97 * based on the department and work area
98 *
99 * <p>
100 * clockUserFl flag of a TimeCollectionRule
101 * <p>
102 *
103 * @return Y if required, N if not
104 */
105 public boolean isClockUserFl();
106
107 /**
108 * The principal Id of user who created the TimeCollectionRule
109 *
110 * <p>
111 * This field is auto populated.
112 * <p>
113 *
114 * @return userPrincipalId for TimeCollectionRule
115 */
116 public String getUserPrincipalId();
117
118 /**
119 * The primary key of a TimeCollectionRule entry saved in a database
120 *
121 * <p>
122 * tkTimeCollectionRuleId of a TimeCollectionRule
123 * <p>
124 *
125 * @return tkTimeCollectionRuleId for TimeCollectionRule
126 */
127 public String getTkTimeCollectionRuleId();
128
129 /**
130 * The department name associated with the TimeCollectionRule
131 *
132 * <p>
133 * dept of a TimeCollectionRule
134 * <p>
135 *
136 * @return dept for TimeCollectionRule
137 */
138 public String getDept();
139
140 /**
141 * The id of the WorkArea object associated with the TimeCollectionRule
142 *
143 * <p>
144 * tkWorkAreaId of a TimeCollectionRule
145 * <p>
146 *
147 * @return tkWorkAreaId for TimeCollectionRule
148 */
149 public String getTkWorkAreaId();
150
151 /**
152 * The id of the Department object associated with the TimeCollectionRule
153 *
154 * <p>
155 * hrDeptId of a TimeCollectionRule
156 * <p>
157 *
158 * @return hrDeptId for TimeCollectionRule
159 */
160 public String getHrDeptId();
161
162 /**
163 * The history flag of the TimeCollectionRule
164 *
165 * <p>
166 * history flag of a TimeCollectionRule
167 * <p>
168 *
169 * @return Y if on, N if not
170 */
171 public Boolean getHistory();
172
173 }