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.time.task.service; 017 018 import java.sql.Date; 019 import java.util.List; 020 021 import org.apache.commons.lang.StringUtils; 022 import org.kuali.hr.time.task.Task; 023 import org.kuali.hr.time.task.dao.TaskDao; 024 import org.kuali.hr.time.util.TkConstants; 025 import org.kuali.hr.time.workarea.WorkArea; 026 027 public class TaskServiceImpl implements TaskService { 028 029 private TaskDao taskDao; 030 031 @Override 032 public Task getTask(String tkTaskId) { 033 return taskDao.getTask(tkTaskId); 034 } 035 036 @Override 037 public Task getTask(Long task, Date asOfDate) { 038 Task taskObj = taskDao.getTask(task, asOfDate); 039 if(taskObj == null){ 040 taskObj = new Task(); 041 taskObj.setActive(true); 042 taskObj.setEffectiveDate(asOfDate); 043 taskObj.setTask(task); 044 taskObj.setDescription(TkConstants.TASK_DEFAULT_DESP); 045 taskObj.setTkTaskId("0"); 046 } 047 return taskObj; 048 } 049 050 @Override 051 public void saveTask(Task task) { 052 taskDao.saveOrUpdate(task); 053 } 054 055 @Override 056 public void saveTasks(List<Task> tasks) { 057 taskDao.saveOrUpdate(tasks); 058 } 059 060 public void setTaskDao(TaskDao taskDao) { 061 this.taskDao = taskDao; 062 } 063 064 @Override 065 public Task getMaxTask(){ 066 return taskDao.getMaxTask(); 067 } 068 069 @Override 070 public List<Task> getTasks(String task, String description, String workArea, Date fromEffdt, Date toEffdt) { 071 Long taskNumber = StringUtils.isEmpty(task) ? null : Long.parseLong(task); 072 Long workAreaNumber = StringUtils.isEmpty(workArea) ? null : Long.parseLong(workArea); 073 074 return taskDao.getTasks(taskNumber, description, workAreaNumber, fromEffdt, toEffdt); 075 } 076 077 @Override 078 public int getTaskCount(Long task) { 079 return taskDao.getTaskCount(task); 080 } 081 }