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.principal.service; 017 018 import org.kuali.hr.time.principal.PrincipalHRAttributes; 019 import org.kuali.hr.time.principal.dao.PrincipalHRAttributesDao; 020 import org.kuali.hr.time.service.base.TkServiceLocator; 021 022 import java.util.Date; 023 import java.util.List; 024 025 public class PrincipalHRAttributesServiceImpl implements PrincipalHRAttributesService { 026 private PrincipalHRAttributesDao principalHRAttributesDao; 027 028 public void setPrincipalHRAttributesDao(PrincipalHRAttributesDao principalHRAttributesDao) { 029 this.principalHRAttributesDao = principalHRAttributesDao; 030 } 031 032 public PrincipalHRAttributes getPrincipalCalendar(String principalId, Date asOfDate){ 033 PrincipalHRAttributes pc = this.principalHRAttributesDao.getPrincipalCalendar(principalId, asOfDate); 034 if(pc != null) { 035 pc.setCalendar(TkServiceLocator.getCalendarService().getCalendarByGroup(pc.getPayCalendar())); 036 pc.setLeaveCalObj(TkServiceLocator.getCalendarService().getCalendarByGroup(pc.getLeaveCalendar())); 037 } 038 return pc; 039 } 040 041 public List<PrincipalHRAttributes> getActiveEmployeesForPayCalendar(String payCalendarName, Date asOfDate) { 042 return principalHRAttributesDao.getActiveEmployeesForPayCalendar(payCalendarName, asOfDate); 043 } 044 045 public List<PrincipalHRAttributes> getActiveEmployeesForLeaveCalendar(String leaveCalendarName, Date asOfDate) { 046 return principalHRAttributesDao.getActiveEmployeesForLeaveCalendar(leaveCalendarName, asOfDate); 047 } 048 049 public List<String> getActiveEmployeesIdForLeaveCalendarAndIdList(String leaveCalendarName, List<String> pidList, Date asOfDate) { 050 return principalHRAttributesDao.getActiveEmployeesIdForLeaveCalendarAndIdList(leaveCalendarName, pidList, asOfDate); 051 } 052 053 public List<String> getActiveEmployeesIdForTimeCalendarAndIdList(String timeCalendarName, List<String> pidList, Date asOfDate) { 054 return principalHRAttributesDao.getActiveEmployeesIdForTimeCalendarAndIdList(timeCalendarName, pidList, asOfDate); 055 } 056 057 /** 058 * KPME-1250 Kagata 059 * Get a list of active employees based on leave plan and as of a particular date 060 */ 061 @Override 062 public List<PrincipalHRAttributes> getActiveEmployeesForLeavePlan(String leavePlan, Date asOfDate) { 063 List<PrincipalHRAttributes> principals = principalHRAttributesDao.getActiveEmployeesForLeavePlan(leavePlan, asOfDate); 064 065 return principals; 066 } 067 068 // @Override 069 // public PrincipalHRAttributes getPrincipalHRAttributes(String principalId) { 070 // return this.principalHRAttributesDao.getPrincipalHRAttributes(principalId); 071 // } 072 073 @Override 074 public PrincipalHRAttributes getInactivePrincipalHRAttributes(String principalId, Date asOfDate) { 075 return this.principalHRAttributesDao.getInactivePrincipalHRAttributes(principalId, asOfDate); 076 } 077 078 @Override 079 public PrincipalHRAttributes getPrincipalHRAttributes(String hrPrincipalAttributeId) { 080 return this.principalHRAttributesDao.getPrincipalHRAttributes(hrPrincipalAttributeId); 081 } 082 083 @Override 084 public List<PrincipalHRAttributes> getAllActivePrincipalHrAttributesForPrincipalId(String principalId, Date asOfDate) { 085 return this.principalHRAttributesDao.getAllActivePrincipalHrAttributesForPrincipalId(principalId, asOfDate); 086 } 087 @Override 088 public PrincipalHRAttributes getMaxTimeStampPrincipalHRAttributes(String principalId) { 089 return principalHRAttributesDao.getMaxTimeStampPrincipalHRAttributes(principalId); 090 } 091 092 @Override 093 public List<PrincipalHRAttributes> getAllInActivePrincipalHrAttributesForPrincipalId(String principalId, Date asOfDate) { 094 return this.principalHRAttributesDao.getAllInActivePrincipalHrAttributesForPrincipalId(principalId, asOfDate); 095 } 096 @Override 097 public List<PrincipalHRAttributes> getActivePrincipalHrAttributesForRange(String principalId, Date startDate, Date endDate) { 098 return this.principalHRAttributesDao.getActivePrincipalHrAttributesForRange(principalId, startDate, endDate); 099 } 100 @Override 101 public List<PrincipalHRAttributes> getInactivePrincipalHRAttributesForRange(String principalId, Date startDate, Date endDate) { 102 return this.principalHRAttributesDao.getInactivePrincipalHRAttributesForRange(principalId, startDate, endDate); 103 } 104 @Override 105 public List<PrincipalHRAttributes> getPrincipalHrAtributes(String principalId, 106 String leavePlan, java.sql.Date fromEffdt, java.sql.Date toEffdt, String active, String showHistory) { 107 return this.principalHRAttributesDao.getPrincipalHrAtributes(principalId, leavePlan, fromEffdt, toEffdt, active, showHistory); 108 } 109 @Override 110 public List<String> getUniqueTimePayGroups() { 111 return this.principalHRAttributesDao.getUniqueTimePayGroups(); 112 } 113 }