001 /** 002 * Copyright 2004-2013 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.hr.lm.leavecalendar.web; 017 018 import org.apache.struts.action.ActionMapping; 019 import org.joda.time.DateTime; 020 import org.joda.time.format.DateTimeFormat; 021 import org.joda.time.format.DateTimeFormatter; 022 import org.kuali.hr.lm.balancetransfer.BalanceTransfer; 023 import org.kuali.hr.lm.leaveSummary.LeaveSummary; 024 import org.kuali.hr.lm.leavecalendar.LeaveCalendarDocument; 025 import org.kuali.hr.time.base.web.TkCommonCalendarForm; 026 import org.kuali.hr.time.calendar.CalendarEntries; 027 import org.kuali.hr.time.calendar.LeaveCalendar; 028 029 import javax.servlet.http.HttpServletRequest; 030 import java.math.BigDecimal; 031 import java.util.LinkedHashMap; 032 import java.util.List; 033 import java.util.Map; 034 035 @SuppressWarnings("serial") 036 public class LeaveCalendarForm extends TkCommonCalendarForm { 037 038 private static final DateTimeFormatter SDF_NO_TZ = DateTimeFormat.forPattern("EEE MMM d HH:mm:ss yyyy"); 039 040 private String documentId; 041 private LeaveCalendar leaveCalendar; 042 private LeaveCalendarDocument leaveCalendarDocument; 043 CalendarEntries calendarEntry; 044 private String startDate; 045 private String endDate; 046 private String selectedEarnCode; 047 private Map<String, String> leaveCodeList = new LinkedHashMap<String, String>(); 048 private BigDecimal leaveAmount; 049 private String description; 050 private String leaveBlockId; 051 private String prevDocumentId; 052 private String nextDocumentId; 053 private String prevCalEntryId; 054 private String nextCalEntryId; 055 private String calEntryId; 056 /** String (concat(job number, work_area, task)) -> Formatted Assignment Descriptions */ 057 private Map<String,String> assignmentDescriptions; 058 private String selectedAssignment; 059 private String spanningWeeks; // KPME-1446 060 private String leaveBlockString; // KPME-1447 061 private boolean isDocEditable; 062 private String currentPayCalStartDate; 063 private String currentPayCalEndDate; 064 private DateTime currentPayCalStart; 065 private DateTime currentPayCalEnd; 066 private LeaveSummary leaveSummary; 067 private boolean leavePlanningCalendar; 068 private List<BalanceTransfer> forfeitures; 069 070 public DateTime getCurrentPayCalStart() { 071 return currentPayCalStart; 072 } 073 074 public void setCurrentPayCalStart(DateTime currentPayCalStart) { 075 this.currentPayCalStart = currentPayCalStart; 076 } 077 078 public DateTime getCurrentPayCalEnd() { 079 return currentPayCalEnd; 080 } 081 082 public void setCurrentPayCalEnd(DateTime currentPayCalEnd) { 083 this.currentPayCalEnd = currentPayCalEnd; 084 } 085 086 public String getCurrentPayCalStartDate() { 087 if(currentPayCalStart != null) { 088 return this.currentPayCalStart.toString(SDF_NO_TZ); 089 } else { 090 return null; 091 } 092 } 093 094 public void setCurrentPayCalStartDate(String currentPayCalStartDate) { 095 this.currentPayCalStartDate = currentPayCalStartDate; 096 } 097 098 public String getCurrentPayCalEndDate() { 099 if(currentPayCalEnd != null) { 100 return this.currentPayCalEnd.toString(SDF_NO_TZ); 101 } else { 102 return null; 103 } 104 } 105 106 public void setCurrentPayCalEndDate(String currentPayCalEndDate) { 107 this.currentPayCalEndDate = currentPayCalEndDate; 108 } 109 110 public boolean isDocEditable() { 111 return isDocEditable; 112 } 113 114 public void setDocEditable(boolean isDocEditable) { 115 this.isDocEditable = isDocEditable; 116 } 117 118 public boolean isLeavePlanningCalendar() { 119 return leavePlanningCalendar; 120 } 121 122 public void setLeavePlanningCalendar(boolean leavePlanningCalendar) { 123 this.leavePlanningCalendar = leavePlanningCalendar; 124 } 125 126 public String getLeaveBlockString() { 127 return leaveBlockString; 128 } 129 130 public void setLeaveBlockString(String leaveBlockString) { 131 this.leaveBlockString = leaveBlockString; 132 } 133 134 public String getSpanningWeeks() { 135 return spanningWeeks; 136 } 137 138 public void setSpanningWeeks(String spanningWeeks) { 139 this.spanningWeeks = spanningWeeks; 140 } 141 142 public String getSelectedAssignment() { 143 return selectedAssignment; 144 } 145 146 public void setSelectedAssignment(String selectedAssignment) { 147 this.selectedAssignment = selectedAssignment; 148 } 149 150 public Map<String, String> getAssignmentDescriptions() { 151 return assignmentDescriptions; 152 } 153 154 public void setAssignmentDescriptions(Map<String, String> assignmentDescriptions) { 155 this.assignmentDescriptions = assignmentDescriptions; 156 } 157 158 public String getPrevCalEntryId() { 159 return prevCalEntryId; 160 } 161 162 public void setPrevCalEntryId(String prevCalEntryId) { 163 this.prevCalEntryId = prevCalEntryId; 164 } 165 166 public String getNextCalEntryId() { 167 return nextCalEntryId; 168 } 169 170 public void setNextCalEntryId(String nextCalEntryId) { 171 this.nextCalEntryId = nextCalEntryId; 172 } 173 174 public String getCalEntryId() { 175 return calEntryId; 176 } 177 178 public void setCalEntryId(String calEntryId) { 179 this.calEntryId = calEntryId; 180 } 181 182 @Override 183 public void reset(ActionMapping mapping, HttpServletRequest request) { 184 super.reset(mapping, request); 185 } 186 187 public LeaveCalendar getLeaveCalendar() { 188 return leaveCalendar; 189 } 190 191 public void setLeaveCalendar(LeaveCalendar leaveCalendar) { 192 this.leaveCalendar = leaveCalendar; 193 } 194 195 public String getDocumentId() { 196 return documentId; 197 } 198 199 public void setDocumentId(String documentId) { 200 this.documentId = documentId; 201 } 202 203 public CalendarEntries getCalendarEntry() { 204 return calendarEntry; 205 } 206 207 public void setCalendarEntry(CalendarEntries calendarEntry) { 208 this.calendarEntry = calendarEntry; 209 } 210 211 public LeaveCalendarDocument getLeaveCalendarDocument() { 212 return leaveCalendarDocument; 213 } 214 215 public void setLeaveCalendarDocument(LeaveCalendarDocument leaveCalendarDocument) { 216 this.leaveCalendarDocument = leaveCalendarDocument; 217 } 218 219 public String getStartDate() { 220 return startDate; 221 } 222 223 public void setStartDate(String startDate) { 224 this.startDate = startDate; 225 } 226 227 public String getEndDate() { 228 return endDate; 229 } 230 231 public void setEndDate(String endDate) { 232 this.endDate = endDate; 233 } 234 235 public BigDecimal getLeaveAmount() { 236 return leaveAmount; 237 } 238 239 public void setLeaveAmount(BigDecimal leaveAmount) { 240 this.leaveAmount = leaveAmount; 241 } 242 243 public String getDescription() { 244 return description; 245 } 246 247 public void setDescription(String description) { 248 this.description = description; 249 } 250 251 public Map<String, String> getLeaveCodeList() { 252 return leaveCodeList; 253 } 254 255 public void setLeaveCodeList(Map<String, String> leaveCodeList) { 256 this.leaveCodeList = leaveCodeList; 257 } 258 259 public String getLeaveBlockId() { 260 return leaveBlockId; 261 } 262 263 public void setLeaveBlockId(String leaveBlockId) { 264 this.leaveBlockId = leaveBlockId; 265 } 266 267 public String getNextDocumentId() { 268 return nextDocumentId; 269 } 270 271 public void setNextDocumentId(String nextDocumentId) { 272 this.nextDocumentId = nextDocumentId; 273 } 274 275 public String getPrevDocumentId() { 276 return prevDocumentId; 277 } 278 279 public void setPrevDocumentId(String prevDocumentId) { 280 this.prevDocumentId = prevDocumentId; 281 } 282 283 public String getBeginPeriodDateTime() { 284 return leaveCalendar.getBeginDateTime().toString(SDF_NO_TZ); 285 } 286 287 public String getEndPeriodDateTime() { 288 return leaveCalendar.getEndDateTime().toString(SDF_NO_TZ); 289 } 290 291 public String getSelectedEarnCode() { 292 return selectedEarnCode; 293 } 294 295 public void setSelectedEarnCode(String selectedEarnCode) { 296 this.selectedEarnCode = selectedEarnCode; 297 } 298 299 public LeaveSummary getLeaveSummary() { 300 return leaveSummary; 301 } 302 303 public void setLeaveSummary(LeaveSummary leaveSummary) { 304 this.leaveSummary = leaveSummary; 305 } 306 307 public List<BalanceTransfer> getForfeitures() { 308 return forfeitures; 309 } 310 311 public void setForfeitures(List<BalanceTransfer> forfeitures) { 312 this.forfeitures = forfeitures; 313 } 314 }