package mtf.ssh.manager.impl;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import com.sun.org.apache.bcel.internal.generic.IFNE;
import mtf.ssh.dao.EmployeeDao;
import mtf.ssh.manager.EmployeeManager;
import mtf.ssh.manager.PartManager;
import mtf.ssh.manager.RoleManager;
import mtf.ssh.vo.Employee;
import mtf.ssh.vo.Part;
import mtf.ssh.vo.Role;
public class EmployeeManagerImpl implements EmployeeManager {
private EmployeeDao employeeDao;
private PartManager partManager;
private RoleManager roleManager;
private Employee employee;
public Employee insertEmployee(String employeeName) throws Exception {
employee = employeeDao.getEmployee(employeeName);
if (null == employee) {
employee = new Employee();
employee.setEmployeeName(employeeName);
employeeDao.insertEmployee(employee);
return employee;
}
return null;
}
public List<Employee> deletEmployees(Part partId) throws Exception {
List<Employee> list = this.getEmployees(partId);
if (null != list) {
for (Employee employee : list) {
employeeDao.deleteEmployee(employee);
}
}
return list;
}
public Employee deleteEmployee(String employeeName) throws Exception {
Employee employee = employeeDao.getEmployee(employeeName);
if (null != employee) {
employee = employeeDao.deleteEmployee(employee);
return employee;
}
return null;
}
public List<Employee> deleteEmployees() throws Exception {
List<Employee> list = this.getEmployees();
if (null != list) {
for (Employee employee : list) {
employeeDao.deleteEmployee(employee);
}
}
return list;
}
public Employee getEmployee(String employeeName) throws Exception {
Employee employee = null;
if (null != employeeName) {
employee = employeeDao.getEmployee(employeeName);
}
return employee;
}
public List<Employee> getEmployees() throws Exception {
return employeeDao.getEmployees();
}
public List<Employee> getEmployees(Part partId) throws Exception {
List<Employee> list = null;
if (null != partId) {
list = employeeDao.getEmployees(partId);
}
return list;
}
public Employee insertEmployee(Employee employee) throws Exception {
employee = employeeDao.insertEmployee(employee);
return employee;
}
public List<Employee> deletEmployees(Role roleId) throws Exception {
List<Employee> list = this.getEmployees(roleId);
if (null != list) {
for (Employee employee : list) {
employeeDao.deleteEmployee(employee);
}
}
return list;
}
public List<Employee> getEmployees(Role roleId) throws Exception {
List<Employee> list = null;
if (null != roleId) {
employeeDao.getEmployees(roleId);
}
return list;
}
public Employee updateEmployee(Employee employee) throws Exception {
if (null != employee) {
employeeDao.updateEmployee(employee);
}
return employee;
}
// 更新用户所属的部门及所有的权限
public Employee updateEmployee(String employeeName, String partName,
String roleName) throws Exception {
employee = employeeDao.getEmployee(employeeName);
if (null != employee) {
// employeeDao.deleteEmployee(employee);
if (null != partName && false == "".equals(partName.trim())) {
Part part = partManager.getByPartNameFromPart(partName);
if (null != part) {
if (false == part.getPartName().equals(
employee.getPartId().getPartName())) {
employee.setPartId(part);
}
} else {
System.out.println("aaaaaaaaaaaaaaaaaaaaaaaaaa");
return null;
}
}
if (null != roleName && false == "".equals(roleName.trim())) {
Role role = roleManager.getRole(roleName);
if (null != role) {
Set<Role> set = employee.getEmployeeRole();
if (null == set) {
set = new HashSet<Role>();
}
for (Role role2 : set) {
if (role2.getRoleName().equals(role.getRoleName())) {
return null;
}
}
set.add(role);
employee.setEmployeeRole(set);
System.out.println(employee.getEmployeeRole().isEmpty());
for (Role role2 : set) {
System.out.println("######################"
+ role2.getRoleName());
}
// employeeDao.insertEmployee(employee);
employeeDao.updateEmployee(employee);
} else {
System.out.println("bbbbbbbbbbbbbbbbbb");
return null;
}
}
System.out.println("cccccccccccccccccccccccccc");
return employee;
}
System.out.println("ddddddddddddddddddddddddd");
return null;
}
public PartManager getPartManager() {
return partManager;
}
public void setPartManager(PartManager partManager) {
this.partManager = partManager;
}
public RoleManager getRoleManager() {
return roleManager;
}
public void setRoleManager(RoleManager roleManager) {
this.roleManager = roleManager;
}
public EmployeeDao getEmployeeDao() {
return employeeDao;
}
public void setEmployeeDao(EmployeeDao employeeDao) {
this.employeeDao = employeeDao;
}
public Employee getEmployee() {
return employee;
}
public void setEmployee(Employee employee) {
this.employee = employee;
}
public List<Employee> getEmployeesByPartName(String partName)
throws Exception {
Part part = partManager.getByPartNameFromPart(partName);
if (null != part) {
List<Employee> list = employeeDao.getEmployees(part);
return list;
}
return null;
}
public List<Employee> getEmployeesByRoleName(String roleName)
throws Exception {
Role role = roleManager.getRole(roleName);
if (null != role) {
List<Employee> list = employeeDao.getEmployees(role);
return list;
}
return null;
}
public Employee deletePartFromEmployee(String employeeName, String partName)
throws Exception {
employee = employeeDao.getEmployee(employeeName);
Part part = partManager.getByPartNameFromPart(partName);
System.out.println("^^^^^^^^^^^^^^^" + employee + "%%%%%%%%" + part);
if (null != employee && null != part) {
System.out.println(employee.getPartId().getPartName());
System.out.println(part.getPartName());
if (employee.getPartId().getPartName().equals(part.getPartName())) {
employee.setPartId(null);
employeeDao.updateEmployee(employee);
return employee;
}
}
return null;
}
public Employee deleteRoleFromEmployee(String employeeName, String roleName)
throws Exception {
employee = employeeDao.getEmployee(employeeName);
Role role = roleManager.getRole(roleName);
if (null != employee && null != role) {
Set<Role> set = employee.getEmployeeRole();
if (null != set) {
for (Role role2 : set) {
if (role2.getRoleName().equals(role.getRoleName())) {
set.remove(role2);
employee.setEmployeeRole(set);
employeeDao.updateEmployee(employee);
return employee;
}
}
}
}
return null;
}
}
评论1
最新资源