⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 employeemanageaction.java

📁 巴巴运动网源码 传智博客出品 不全 一部分代码 可以参考
💻 JAVA
字号:
package com.itcast.web.action.privilege;

import java.io.File;
import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import org.springframework.stereotype.Controller;

import com.itcast.bean.privilege.Department;
import com.itcast.bean.privilege.Employee;
import com.itcast.bean.privilege.IDCard;
import com.itcast.service.privilege.DepartmentService;
import com.itcast.service.privilege.EmployeeService;
import com.itcast.utils.MD5;
import com.itcast.utils.SiteUrl;
import com.itcast.web.formbean.privilege.EmployeeForm;

@Controller("/control/employee/manage")
public class EmployeeManageAction extends DispatchAction {
	@Resource(name="departmentServiceBean") private DepartmentService departmentService;
	@Resource(name="employeeServiceBean") private EmployeeService employeeService;
	/**
	 * 员工添加界面
	 */
	@Privilege(model="employee", privilegeValue="insert")
	public ActionForward addUI(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		request.setAttribute("departments", departmentService.getScrollData(Department.class).getResultlist());
		return mapping.findForward("add");
	}
	/**
	 * 员工修改界面
	 */
	@Privilege(model="employee", privilegeValue="update")
	public ActionForward editUI(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		EmployeeForm formbean = (EmployeeForm)form;
		Employee employee = employeeService.find(Employee.class, formbean.getUsername());
		formbean.setRealname(employee.getRealname());
		formbean.setBirthday(employee.getIdcard().getBirthday());
		formbean.setCardno(employee.getIdcard().getCardno());
		formbean.setDegree(employee.getDegree());
		formbean.setEmail(employee.getEmail());
		formbean.setGender(employee.getGender());
		formbean.setPhone(employee.getPhone());
		formbean.setAddress(employee.getIdcard().getAddress());
		request.setAttribute("userdepartments", employee.getDepartments());
		request.setAttribute("departments", departmentService.getScrollData(Department.class).getResultlist());
		return mapping.findForward("edit");
	}
	/**
	 * 判断用户是否存在
	 */
	public ActionForward exist(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		EmployeeForm formbean = (EmployeeForm)form;
		if(employeeService.exist(formbean.getUsername())){
			request.setAttribute("message", "用户已经存在");
		}else{
			request.setAttribute("message", "该账号可以使用");
		}
		return mapping.findForward("usernameIsExsit");
	}
	
	/**
	 * 禁用用户
	 */
	@Privilege(model="employee", privilegeValue="delete")
	public ActionForward delete(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		EmployeeForm formbean = (EmployeeForm)form;
		employeeService.delete(Employee.class, formbean.getUsername());
		request.setAttribute("message", "员工删除成功");
		request.setAttribute("urladdress", SiteUrl.readUrl("control.employee.list"));
		return mapping.findForward("message");
	}
	/**
	 * 注册员工
	 */
	@Privilege(model="employee", privilegeValue="insert")
	public ActionForward add(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		EmployeeForm formbean = (EmployeeForm)form;
		Employee employee = new Employee(formbean.getUsername().trim(),MD5.MD5Encode(formbean.getPassword()),
				formbean.getRealname(),new IDCard(formbean.getCardno(), formbean.getBirthday(),formbean.getAddress()),
				formbean.getPhone(),formbean.getEmail(),formbean.getGender(),formbean.getDegree());
		if(formbean.getDepartmentids()!=null && formbean.getDepartmentids().length>0){
			for(Integer id : formbean.getDepartmentids()){
				employee.addDepartment(new Department(id));
			}
		}
		if(formbean.getPicture()!=null && formbean.getPicture().getFileSize()>0){
			if(EmployeeForm.validateImageFileType(formbean.getPicture())){
				employee.setPicture(UUID.randomUUID().toString()+ "."+ EmployeeForm.getExt(formbean.getPicture()));
				String pathdir = "/images/employee/"+ formbean.getUsername().trim();
				//得到图片保存目录的真实路径
				String realpathdir = request.getSession().getServletContext().getRealPath(pathdir);
				File savedir = new File(realpathdir);
				if(!savedir.exists()) savedir.mkdirs();//如果目录不存在就创建
				FileOutputStream fileoutstream = new FileOutputStream(new File(realpathdir, employee.getPicture()));
				fileoutstream.write(formbean.getPicture().getFileData());
				fileoutstream.close();
			}else{
				request.setAttribute("message", "上传的照片格式不正确,只允许上传jpg/gif/bmp/png图片");
				return mapping.findForward("message");
			}
		}
		employeeService.save(employee);
		request.setAttribute("message", "员工注册成功");
		request.setAttribute("urladdress", SiteUrl.readUrl("control.employee.list"));
		return mapping.findForward("message");
	}
	
	/**
	 * 修改员工信息
	 */
	@Privilege(model="employee", privilegeValue="update")
	public ActionForward edit(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		EmployeeForm formbean = (EmployeeForm)form;
		Employee employee = employeeService.find(Employee.class, formbean.getUsername());
		if(formbean.getPicture()!=null && formbean.getPicture().getFileSize()>0){
			if(EmployeeForm.validateImageFileType(formbean.getPicture())){
				employee.setPicture(UUID.randomUUID().toString()+ "."+ EmployeeForm.getExt(formbean.getPicture()));
				String pathdir = "/images/employee/"+ formbean.getUsername().trim();
				//得到图片保存目录的真实路径
				String realpathdir = request.getSession().getServletContext().getRealPath(pathdir);
				File savedir = new File(realpathdir);
				if(!savedir.exists()) savedir.mkdirs();//如果目录不存在就创建
				FileOutputStream fileoutstream = new FileOutputStream(new File(realpathdir, employee.getPicture()));
				fileoutstream.write(formbean.getPicture().getFileData());
				fileoutstream.close();
			}else{
				request.setAttribute("message", "上传的照片格式不正确,只允许上传jpg/gif/bmp/png图片");
				return mapping.findForward("message");
			}
		}
		employee.setDegree(formbean.getDegree());
		employee.setEmail(formbean.getEmail());
		employee.setRealname(formbean.getRealname());
		employee.setGender(formbean.getGender());
		employee.setPhone(formbean.getPhone());
		employee.getIdcard().setCardno(formbean.getCardno());
		employee.getIdcard().setBirthday(formbean.getBirthday());
		employee.getIdcard().setAddress(formbean.getAddress());			
		for(Integer id : formbean.getDepartmentids()){
			Department department = new Department(id);
			if(!employee.getDepartments().contains(department)){
				employee.addDepartment(department);
			}
		}
		List<Department> deletes = new ArrayList<Department>();
		List<Integer> ids = Arrays.asList(formbean.getDepartmentids());//当前被选择的部门
		for(Department department : employee.getDepartments()){
			if(!ids.contains(department.getId())){
				deletes.add(department);
			}
		}
		employee.getDepartments().removeAll(deletes);		
		employeeService.update(employee);
		request.setAttribute("message", "员工信息修改成功");
		request.setAttribute("urladdress", SiteUrl.readUrl("control.employee.list"));
		return mapping.findForward("message");
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -