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.time.timesummary; 17 18 import java.math.BigDecimal; 19 import java.util.List; 20 import java.util.Map; 21 22 import org.kuali.kpme.tklm.api.leave.summary.LeaveSummaryRowContract; 23 24 25 26 /** 27 * <p>TimeSummaryContract interface</p> 28 * 29 */ 30 public interface TimeSummaryContract { 31 32 /** 33 * The summaryHeader associated with the TimeSummaryContract 34 * 35 * <p> 36 * summaryHeader for TimeSummaryContract 37 * <p> 38 * 39 * @return summaryHeader for TimeSummaryContract 40 */ 41 public List<String> getSummaryHeader(); 42 43 /** 44 * The list of EarnGroupSection objects associated with the TimeSummaryContract 45 * 46 * <p> 47 * sections for TimeSummaryContract 48 * <p> 49 * 50 * @return sections for TimeSummaryContract 51 */ 52 public List<? extends EarnGroupSectionContract> getSections(); 53 54 /** 55 * The list of worked hours associated with the TimeSummaryContract 56 * 57 * <p> 58 * workedHours for TimeSummaryContract 59 * <p> 60 * 61 * @return workedHours for TimeSummaryContract 62 */ 63 public List<BigDecimal> getWorkedHours(); 64 65 /** 66 * The list of LeaveSummaryRow objects associated with the TimeSummaryContract 67 * 68 * <p> 69 * maxedLeaveRows for TimeSummaryContract 70 * <p> 71 * 72 * @return maxedLeaveRows for TimeSummaryContract 73 */ 74 public List<? extends LeaveSummaryRowContract> getMaxedLeaveRows(); 75 76 /** 77 * TODO: Put a better comment 78 * The weekTotalMap associated with the TimeSummaryContract 79 * 80 * <p> 81 * weekTotalMap for TimeSummaryContract 82 * <p> 83 * 84 * @return weekTotalMap for TimeSummaryContract 85 */ 86 public Map<String, BigDecimal> getWeekTotalMap(); 87 88 /** 89 * TODO: Put a better comment 90 * The flsaWeekTotalMap associated with the TimeSummaryContract 91 * 92 * <p> 93 * flsaWeekTotalMap for TimeSummaryContract 94 * <p> 95 * 96 * @return flsaWeekTotalMap for TimeSummaryContract 97 */ 98 public Map<String, BigDecimal> getFlsaWeekTotalMap(); 99 100 }