/* * Copyright (c) 2006 SAP AG, Germany. All rights reserved. * SAP C42 Reference Implementation. Use is subject to license terms. */ package com.sap.nwce.ra.edm.ejb.services;
import java.util.List;
import javax.ejb.Local;
import com.sap.nwce.ra.edm.ejb.entity.CeraDepartment; import com.sap.nwce.ra.edm.ejb.entity.CeraEmployee; import com.sap.nwce.ra.edm.ejb.entity.CeraNavigation; import com.sap.nwce.ra.edm.ejb.entity.CeraSkill; import com.sap.nwce.ra.edm.ejb.entity.CeraUsergroup;
/** * Local interfcae of employee management session facade. * Provides operations on employees and related objects. */ @Local public interface EmployeeManagementServiceLocal {
/** * Get all employees in a single list. * @return list of all employees */ public List<CeraEmployee> getAllEmployees();
/** * Get an employee by its primary key. * @return employee entity */ public CeraEmployee getEmployeeByID(String pId);
/** * Get a list of employees with matching lastname. * @return list of employees */ public List<CeraEmployee> findEmployeeByNamePart(String pNameFragment);
/** * Get all skills. * @return */ public List<CeraSkill> getAllSkills();
/** * Persist the state of an Employee. * @param employee */ public CeraEmployee saveEmployee(CeraEmployee employee);
/** * Persist the state of an Skill. * @param employee */ public CeraSkill saveSkill(CeraSkill pSkill);
/** * Delete a skill. * @param pSkill skill to delete */ public void removeSkill(CeraSkill pSkill);
/** * Get an employee by its login. * @param login of employee * @return Employee or null if no employee was found */ public CeraEmployee findEmployeeByLogin(String pLogin);
/** * Get employee associated with the current user by its login. */ public CeraEmployee findEmployeeByCurrentUserId();
/** * Get a list of skills by its name. * @param Name fragment * @return List of Skills */ public List<CeraSkill> findSkillByName(String pNameFragment);
/** * Get a skill by its id. * @param depId * @return Skill */ public CeraSkill getSkillById(String sklId);
/** * Get all departments. * @return list of departments */ public List<CeraDepartment> getAllDepartments();
/** * Get a department by its id. * @param depId * @return */ public CeraDepartment getDepartmentById(String departmentId);
/** * Get the list of all navigations for the employee. * @param employee login name to get the allowed navigations for * @return ordered list of navigations, empty if login was unknown */ public List<CeraNavigation> getOrderedNavigations(String pLogin);
/** * Get the list of UserGroups of an employee. * @param employee id * @return list of UserGroup */ public List<CeraUsergroup> getUserGroupsForEmployee(String pId); }
|