1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.hr.time.batch;
17
18 import java.util.Date;
19 import java.util.List;
20
21 import org.kuali.hr.time.calendar.CalendarEntries;
22 import org.kuali.hr.time.missedpunch.MissedPunchDocument;
23 import org.kuali.hr.time.service.base.TkServiceLocator;
24 import org.kuali.hr.time.workflow.TimesheetDocumentHeader;
25 import org.quartz.Job;
26 import org.quartz.JobDataMap;
27 import org.quartz.JobExecutionContext;
28 import org.quartz.JobExecutionException;
29
30 public class MissedPunchApprovalJob implements Job {
31
32 public void execute(JobExecutionContext context) throws JobExecutionException {
33 JobDataMap jobDataMap = context.getJobDetail().getJobDataMap();
34
35 String hrCalendarEntriesId = jobDataMap.getString("hrCalendarEntriesId");
36
37 CalendarEntries calendarEntry = TkServiceLocator.getCalendarEntriesService().getCalendarEntries(hrCalendarEntriesId);
38
39 Date beginDate = calendarEntry.getBeginPeriodDateTime();
40 Date endDate = calendarEntry.getEndPeriodDateTime();
41
42 List<TimesheetDocumentHeader> timesheetDocumentHeaders = TkServiceLocator.getTimesheetDocumentHeaderService().getDocumentHeaders(beginDate, endDate);
43 for (TimesheetDocumentHeader timesheetDocumentHeader : timesheetDocumentHeaders) {
44 List<MissedPunchDocument> missedPunchDocuments = TkServiceLocator.getMissedPunchService().getMissedPunchDocsByTimesheetDocumentId(timesheetDocumentHeader.getDocumentId());
45 for (MissedPunchDocument missedPunchDocument : missedPunchDocuments) {
46 TkServiceLocator.getMissedPunchService().approveMissedPunch(missedPunchDocument);
47 }
48 }
49 }
50
51 }