useraction.java

来自「这个主要是办公自动化系统的源代码」· Java 代码 · 共 160 行

JAVA
160
字号
package com.ygp.oa.web.actions;

import java.util.List;

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

import org.apache.struts.action.Action;
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 com.sun.org.apache.commons.beanutils.BeanUtils;
import com.ygp.oa.PagerModel;
import com.ygp.oa.managers.PersonManager;
import com.ygp.oa.managers.RoleManager;
import com.ygp.oa.managers.UserManager;
import com.ygp.oa.model.User;
import com.ygp.oa.web.forms.UserActionForm;

public class UserAction extends DispatchAction {
	private UserManager userManager;
	private PersonManager personManager;
	private RoleManager roleManager;	

	/**
	 * 人员列表首页
	 */
   @Override
   protected ActionForward unspecified(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		request.setAttribute("pm",personManager.searchPersons());		
		return mapping.findForward("index");
	}
//	protected ActionForward unspecified(ActionMapping mapping,ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception {
//		request.setAttribute("pm", personManager.searchPersons());
//System.out.println("页面执行");
//		return mapping.findForward("index");
//		
//	}
	//添加人员界面
	public  ActionForward addInput(ActionMapping mapping,ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception {
		return mapping.findForward("add_input");
	}
	
	public  ActionForward add(ActionMapping mapping,ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception {
		//从页面表单读取数据
		UserActionForm uaf=(UserActionForm)form;
		User user=new User();
		BeanUtils.copyProperties(user,uaf);		
		userManager.addUser(user, uaf.getPersonId());
		return mapping.findForward("add_success");
	}
	
	//进入修改信息页面
	public  ActionForward updateInput(ActionMapping mapping,ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception {
		UserActionForm uaf=(UserActionForm)form;
		request.setAttribute("user", userManager.findUser(uaf.getId()));
		return mapping.findForward("update_input");
	}
	
	//修改用户信息
	public  ActionForward update(ActionMapping mapping,ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception {
		UserActionForm uaf=(UserActionForm)form;
		User user=new User();
		BeanUtils.copyProperties(user,uaf);	
		userManager.updateUser(user, uaf.getPersonId());
		return mapping.findForward("update_success");
	}	
	
	//以下的是粘贴的
	//打开用户已有角色的列表页面,在页面上需要显示:用户的姓名、以及用户已拥有的角色列表
	public ActionForward userRoleList(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		UserActionForm uaf = (UserActionForm)form;
		
		//用户信息
		User user = userManager.findUser(uaf.getId());
		
		//需要加载已分配给用户的角色列表
		List usersRolesList = userManager.searchUserRoles(uaf.getId());
		
		request.setAttribute("user", user);
		request.setAttribute("urs", usersRolesList);
		
		return mapping.findForward("user_role_list");
	}
	
	//打开给用户分配角色页面:即从角色列表中选择某个角色,并设置优先级
	public ActionForward userRoleInput(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		UserActionForm uaf = (UserActionForm)form;
		
		//查找角色列表,并传输到界面,以便用户的选择
		PagerModel roles = roleManager.searchRoles();
		
		request.setAttribute("pm", roles);
		
		return mapping.findForward("user_role_input");
	}
	
	//给用户分配角色:页面上需要传递过来的参数包括:用户标识、角色标识、优先级
	public ActionForward addUserRole(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		UserActionForm uaf = (UserActionForm)form;
		
		//用户标识
		int userId = uaf.getId();
		
		//角色标识
		int roleId = uaf.getRoleId();
		
		//优先级
		int orderNo = uaf.getOrderNo();
		
		userManager.addOrUpdateUserRole(userId, roleId, orderNo);
		
		return mapping.findForward("pub_add_success");
	}
	
	//删除分配给用户的角色,页面上需要传输过来的参数包括:用户标识、角色标识
	public ActionForward delUserRole(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		UserActionForm uaf = (UserActionForm)form;
		
		//用户标识
		int userId = uaf.getId();
		
		//角色标识
		int roleId = uaf.getRoleId();
		
		userManager.delUserRole(userId, roleId);
		
		return mapping.findForward("pub_add_success");
	}
	
	//以上的是粘贴的
	
	
	
	public  ActionForward del(ActionMapping mapping,ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception {
		UserActionForm uaf=(UserActionForm)form;
		userManager.delUser(uaf.getId());
		return mapping.findForward("del_success");
	}
	
	public void setUserManager(UserManager moduleManager) {
		this.userManager = moduleManager;
	}
	public void setPersonManager(PersonManager personManager) {
		this.personManager = personManager;
	}
	public void setRoleManager(RoleManager roleManager) {
		this.roleManager = roleManager;
	}
	
	

}

⌨️ 快捷键说明

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