1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.kpme.core.task;
17
18 import java.util.Map;
19
20 import org.apache.commons.lang.StringUtils;
21 import org.joda.time.LocalDate;
22 import org.kuali.kpme.core.api.task.TaskContract;
23 import org.kuali.kpme.core.service.HrServiceLocator;
24 import org.kuali.kpme.core.util.TKUtils;
25 import org.kuali.rice.kns.inquiry.KualiInquirableImpl;
26 import org.kuali.rice.krad.bo.BusinessObject;
27
28 public class TaskInquirableImpl extends KualiInquirableImpl {
29
30 @Override
31 public BusinessObject getBusinessObject(Map fieldValues) {
32 TaskBo task = null;
33 if (StringUtils.isNotBlank((String)fieldValues.get("tkTaskId"))) {
34 task = TaskBo.from(HrServiceLocator.getTaskService().getTask((String) fieldValues.get("tkTaskId")));
35 } else if (fieldValues.containsKey("task")) {
36 String taskString = (String)fieldValues.get("task");
37 Long taskNumber = taskString != null ? Long.parseLong(taskString) : null;
38 String effDate = (String) fieldValues.get("effectiveDate");
39 LocalDate effectiveDate = StringUtils.isBlank(effDate) ? LocalDate.now() : TKUtils.formatDateString(effDate);
40 task = TaskBo.from(HrServiceLocator.getTaskService().getTask(taskNumber, effectiveDate));
41 } else {
42 task = (TaskBo) super.getBusinessObject(fieldValues);
43 }
44
45 return task;
46 }
47
48 }