首页>代码>s2sh(struts2+spring+hibernate)框架搭建人力资源网站后台管理系统>/chen-hrms/src/main/java/com/hrms/action/EmployeeRedeployAction.java
package com.hrms.action;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

import com.hrms.model.Dept;
import com.hrms.model.Employee;
import com.hrms.model.EmployeeRedeploy;
import com.hrms.model.Post;
import com.hrms.model.RedeployType;
import com.hrms.model.User;
import com.hrms.service.IDeptService;
import com.hrms.service.IEmployeeRedeployService;
import com.hrms.service.IEmployeeService;
import com.hrms.service.IPostService;
import com.hrms.service.IRedeployTypeService;
import com.hrms.util.Page;
import com.hrms.util.StringUtil;

@Component("employeeRedeployAction")
@Scope("prototype")
public class EmployeeRedeployAction extends BaseAction {
	private static final long serialVersionUID = -2225907567820537339L;
	private Integer redeployId;
	private IEmployeeRedeployService employeeRedeployService;
	private EmployeeRedeploy employeeRedeploy;
	private List<EmployeeRedeploy> employeeRedeploys;
	private IEmployeeService employeeService;
	private Page page;
	private int currentPage = 1;
	private IDeptService deptService;
	private IPostService postService;
	private IRedeployTypeService redeployTypeService;

	public String employeeRedeploy_list() {
		int totalSzie = employeeRedeployService.getSize();
		this.page = new Page(currentPage, totalSzie);
		employeeRedeploys = employeeRedeployService.getListByPage(currentPage,
				page.getPageSize());
		return "success";
	}
	
	public String employeeRedeploy_my() {
		User user = (User)getSession().getAttribute("user");
		Integer empId = user.getEmpId();
		String hql = "from EmployeeRedeploy er where er.employee.empId = " + empId + "order by applyDate desc";
		int totalSzie = employeeRedeployService.getListSize(hql);
		this.page = new Page(currentPage, totalSzie);
		employeeRedeploys = employeeRedeployService.findAllByPage(hql, currentPage, page.getPageSize());
		return "success";
	}

	public String employeeRedeploy_detail() {
		if (redeployId != null) {
			employeeRedeploy = employeeRedeployService.findById(redeployId);
			return "success";
		} else {
			return "error";
		}
	}

	public String employeeRedeploy_add() {
		String addAction = getRequest().getParameter("addAction");
		if (addAction == null) {
			List<Dept> depts = deptService.findAll();
			List<Post> posts = postService.findAll();
			List<RedeployType> redeployTypes = redeployTypeService.findAll();
			getRequest().setAttribute("depts", depts);
			getRequest().setAttribute("posts", posts);
			getRequest().setAttribute("redeployTypes", redeployTypes);
			
			User user = (User)getSession().getAttribute("user");
			Integer empId = user.getEmpId();
			Employee employee = employeeService.findById(empId);
			
			Dept dept = employee.getDept();
			Post post = employee.getPost();
			getRequest().setAttribute("empId", empId);
			getRequest().setAttribute("empName", user.getUserTrueName());
			getRequest().setAttribute("employeeRedeploy.deployDept",dept.getDeptName());
			getRequest().setAttribute("employeeRedeploy.deployPost",post.getPostName());
			getRequest().setAttribute("employeeRedeploy.transactor",dept.getDeptMan());
			
			return "add";
		}
		String empId = getRequest().getParameter("employeeRedeploy.empId");
		Employee employee;
		if (empId != null && !empId.equals("")) {
			employee = employeeService.findById(Integer.valueOf(empId));
			employeeRedeploy.setEmployee(employee);
		} else {
			return "error";
		}
		String redeployTypeId = getRequest().getParameter(
				"employeeRedeploy.redeployTypeId");
		if (redeployTypeId != null && !redeployTypeId.equals("")) {
			employeeRedeploy.setRedeployType(redeployTypeService
					.findById(Integer.valueOf(redeployTypeId)));
		}
		String deptId = getRequest().getParameter("employeeRedeploy.deptId");
		if (deptId != null && !deptId.equals("0")) {
			employeeRedeploy.setDept(deptService.findById(Integer.valueOf(deptId)));
		} else {
			employeeRedeploy.setDept(employee.getDept());
		}
		String postId = getRequest().getParameter("employeeRedeploy.postId");
		if (postId != null && !postId.equals("0")) {
			employeeRedeploy.setPost(postService.findById(Integer.valueOf(postId)));
		} else {
			employeeRedeploy.setPost(employee.getPost());
		}
		employeeRedeployService.saveOrUpdate(employeeRedeploy);
		return "success";
	}

	public String employeeRedeploy_update() {
		employeeRedeploy = employeeRedeployService.findById(redeployId);
		String state = employeeRedeploy.getState();
		if (state == null || state.equals("未提交")) {
			String update = getRequest().getParameter("update");
			if (update != null && update.equals("update")) {
				String empId = getRequest().getParameter(
						"employeeRedeploy.empId");
				if (empId != null && !empId.equals("")) {
					employeeRedeploy.setEmployee(employeeService
							.findById(Integer.valueOf(empId)));
				} else {
					return "error";
				}
				String redeployTypeId = getRequest().getParameter(
						"employeeRedeploy.redeployTypeId");
				if (redeployTypeId != null && !redeployTypeId.equals("")) {
					employeeRedeploy.setRedeployType(redeployTypeService
							.findById(Integer.valueOf(redeployTypeId)));
				}
				String deptId = getRequest().getParameter(
						"employeeRedeploy.deptId");
				if (deptId != null && !deptId.equals("")) {
					employeeRedeploy.setDept(deptService.findById(Integer
							.valueOf(deptId)));
				}
				String postId = getRequest().getParameter(
						"employeeRedeploy.postId");
				if (postId != null && !postId.equals("")) {
					employeeRedeploy.setPost(postService.findById(Integer
							.valueOf(postId)));
				}
				employeeRedeployService.update(employeeRedeploy);
				return "success";
			} else if (redeployId != null) {
				employeeRedeploy = employeeRedeployService.findById(redeployId);
				List<Dept> depts = deptService.findAll();
				List<Post> posts = postService.findAll();
				List<RedeployType> redeployTypes = redeployTypeService
						.findAll();
				getRequest().setAttribute("depts", depts);
				getRequest().setAttribute("posts", posts);
				getRequest().setAttribute("redeployTypes", redeployTypes);
				return "update";
			} else {
				getRequest().setAttribute("errorMessage", "该申请已提交审批流程中,不需再提交,也不能修改和删除!");
				getRequest().setAttribute("forwardLink", "employeeRedeploy_my?currentPage=" + currentPage);
				return "error";
			}
		} else {
			getRequest().setAttribute("errorMessage", "该申请已提交审批流程中,不需再提交,也不能修改和删除!");
			getRequest().setAttribute("forwardLink", "employeeRedeploy_my?currentPage=" + currentPage);
			return "error";
		}
	}

	public String employeeRedeploy_delete() {
		employeeRedeploy = employeeRedeployService.findById(redeployId);
		String state = employeeRedeploy.getState();
		if (state == null || state.equals("未提交")) {
			employeeRedeployService.deleteById(getRedeployId());
			return "success";
		} else {
			getRequest().setAttribute("errorMessage", "该申请已提交审批流程中,不需再提交,也不能修改和删除!");
			getRequest().setAttribute("forwardLink", "employeeRedeploy_my?currentPage=" + currentPage);
			return "error";
			
		}
	}

	public synchronized String employeeRedeploy_submit() {
		employeeRedeploy = employeeRedeployService.findById(redeployId);
		String state = employeeRedeploy.getState();
		if (state == null || state.equals("未提交")) {
			employeeRedeploy.setTransactor(employeeRedeploy.getEmployee().getDept().getDeptMan());
			employeeRedeploy.setState("已提交");
			employeeRedeployService.update(employeeRedeploy);
			return "success";
		} else {
			return "error";
		}
	}

	public synchronized String employeeRedeploy_send() {
		employeeRedeploy = employeeRedeployService.findById(redeployId);
		String transactorOption = employeeRedeploy.getTransactorOption();
		String state = employeeRedeploy.getState();
		if (employeeRedeploy.getRedeployDate() != null) {
			getRequest().setAttribute("errorMessage", "该申请已定异动时间,不需审批和报送了!");
			return "warning";
		}
		if (state.equals("已提交") || state.equals("不同意") || state.equals("审批中")) {
			getRequest().setAttribute("errorMessage", "该申请的状态为已提交、不同意或审批中时不能报送上级!");
			return "sendError";
		}
		if (state.equals("已报送")) {
			getRequest().setAttribute("errorMessage", "该申请的状态为已报送,不需再报送了!");
			return "sendError";
		}
		if (transactorOption == null || transactorOption.equals("")) {
			return "sendError";
		}
		String send = getRequest().getParameter("send");
		if (send != null && send.equals("send")) {
			String empId = getRequest().getParameter("employeeRedeploy.empId");
			if (empId != null && !empId.equals("")) {
				String transactor = employeeService.findById(
						Integer.valueOf(empId)).getEmpName();
				state = "已报送";
				employeeRedeploy.setTransactor(transactor);
				employeeRedeploy.setState(state);
				employeeRedeployService.update(employeeRedeploy);
				return "success";
			} else {
				return "error";
			}
		} else {
			List<Employee> employees = employeeService.findAll();
			getRequest().setAttribute("employees", employees);
			return "send";
		}
	}

	public String employeeRedeploy_transactorList() {
		User user = (User) getSession().getAttribute("user");
		String transactor = user.getUserTrueName();
		String hql = "from EmployeeRedeploy where transactor='" + transactor
				+ "'";
		int totalSzie = employeeRedeployService.getListSize(hql);
		this.page = new Page(currentPage, totalSzie);
		employeeRedeploys = employeeRedeployService.findAllByPage(hql,
				currentPage, page.getPageSize());
		return "success";
	}

	public synchronized String employeeRedeploy_transactor() {
		employeeRedeploy = employeeRedeployService.findById(redeployId);
		String transactor = getRequest().getParameter("transactor");
		if (employeeRedeploy.getRedeployDate() != null) {
			return "warning";
		}
		if (transactor != null && transactor.equals("transactor")) {
			String cancel = getRequest().getParameter("cancel");
			String oldState = getRequest().getParameter("oldState");
			if (cancel != null && cancel.equals("1")) {
				employeeRedeploy.setState(StringUtil.getZhStr(oldState));
				employeeRedeployService.update(employeeRedeploy);
				return "success";
			}
			employeeRedeploy = employeeRedeployService.findById(redeployId);
			String state = getRequest().getParameter("employeeRedeploy.state");
			String transactorOption = getRequest().getParameter("employeeRedeploy.transactorOption");
			String redeployDate = getRequest().getParameter("employeeRedeploy.redeployDate");
			employeeRedeploy.setState(state);
			employeeRedeploy.setTransactorOption(transactorOption);
			employeeRedeploy.setRedeployDate(java.sql.Date.valueOf(redeployDate));
			employeeRedeployService.update(employeeRedeploy);
			return "success";
		} else {
			getRequest().setAttribute("oldState", employeeRedeploy.getState());
			employeeRedeploy.setState("审批中");
			employeeRedeployService.update(employeeRedeploy);
			return "transactor";
		}
	}

	public String employeeRedeploy_findEmployee() {
		String empIdString = getRequest().getParameter("empId");
		if (empIdString != null && !empIdString.equals("")) {
			Employee employee = employeeService.findById(Integer
					.valueOf(empIdString));
			Dept dept = employee.getDept();
			Post post = employee.getPost();
			getRequest().setAttribute("empId", empIdString);
			getRequest().setAttribute("employeeRedeploy.deployDept",
					dept.getDeptName());
			getRequest().setAttribute("employeeRedeploy.deployPost",
					post.getPostName());
		}
		List<Dept> depts = deptService.findAll();
		List<Post> posts = postService.findAll();
		List<RedeployType> redeployTypes = redeployTypeService.findAll();
		List<Employee> employees = employeeService.findAll();
		getRequest().setAttribute("depts", depts);
		getRequest().setAttribute("posts", posts);
		getRequest().setAttribute("redeployTypes", redeployTypes);
		getRequest().setAttribute("employees", employees);
		return "success";
	}

	public Page getPage() {
		return page;
	}

	public void setPage(Page page) {
		this.page = page;
	}

	public int getCurrentPage() {
		return currentPage;
	}

	public void setCurrentPage(int currentPage) {
		this.currentPage = currentPage;
	}

	public Integer getRedeployId() {
		return redeployId;
	}

	public void setRedeployId(Integer redeployId) {
		this.redeployId = redeployId;
	}

	public IEmployeeRedeployService getEmployeeRedeployService() {
		return employeeRedeployService;
	}

	@Resource
	public void setEmployeeRedeployService(
			IEmployeeRedeployService employeeRedeployService) {
		this.employeeRedeployService = employeeRedeployService;
	}

	public List<EmployeeRedeploy> getEmployeeRedeploys() {
		return employeeRedeploys;
	}

	public void setEmployeeRedeploys(List<EmployeeRedeploy> employeeRedeploys) {
		this.employeeRedeploys = employeeRedeploys;
	}

	public EmployeeRedeploy getEmployeeRedeploy() {
		return employeeRedeploy;
	}

	public void setEmployeeRedeploy(EmployeeRedeploy employeeRedeploy) {
		this.employeeRedeploy = employeeRedeploy;
	}

	public IDeptService getDeptService() {
		return deptService;
	}

	@Resource
	public void setDeptService(IDeptService deptService) {
		this.deptService = deptService;
	}

	public IPostService getPostService() {
		return postService;
	}

	@Resource
	public void setPostService(IPostService postService) {
		this.postService = postService;
	}

	public IRedeployTypeService getRedeployTypeService() {
		return redeployTypeService;
	}

	@Resource
	public void setRedeployTypeService(IRedeployTypeService redeployTypeService) {
		this.redeployTypeService = redeployTypeService;
	}

	public IEmployeeService getEmployeeService() {
		return employeeService;
	}

	@Resource
	public void setEmployeeService(IEmployeeService employeeService) {
		this.employeeService = employeeService;
	}
}
最近下载更多
BruceQ  LV14 2023年5月10日
chentianqi  LV5 2023年3月27日
lcqlcl  LV11 2023年3月27日
sweetbox  LV10 2023年2月27日
sweetlove  LV17 2022年11月28日
yuanjuntao  LV5 2022年7月5日
Hugo_0901  LV5 2022年4月27日
wanglinddad  LV54 2022年3月1日
a24sd  LV13 2021年11月9日
寒冰001  LV3 2021年10月29日
最近浏览更多
123456wadff  LV3 1月15日
WBelong  LV7 2023年12月27日
3501855841 2023年12月22日
暂无贡献等级
dsadasdwf  LV12 2023年10月23日
haotzy  LV3 2023年10月8日
Karen_peng 2023年10月8日
暂无贡献等级
zhangyanghao 2023年9月21日
暂无贡献等级
2036495585  LV9 2023年9月20日
qlmbaby  LV1 2023年8月13日
BruceQ  LV14 2023年5月10日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友