rightsaction.java
来自「一套自己原先在学校作的CRM,大家指点下」· Java 代码 · 共 104 行
JAVA
104 行
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.crm.action;
import java.util.Iterator;
import java.util.List;
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 com.crm.pojo.Rights;
import com.crm.pojo.Role;
import com.crm.service.IRightsBiz;
import com.crm.service.IRoleBiz;
/**
* MyEclipse Struts
* Creation date: 10-06-2008
*
* XDoclet definition:
* @struts.action path="/rights" name="rightsForm" parameter="operate" scope="request"
* 薛霞
*/
public class RightsAction extends DispatchAction {
private IRightsBiz rightBiz;
private IRoleBiz roleBiz;
/*
* Generated Methods
*/
public void setRoleBiz(IRoleBiz roleBiz) {
this.roleBiz = roleBiz;
}
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
//显示所有的权限信息,和角色的信息
public ActionForward toAll(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
int roleId=Integer.parseInt(request.getParameter("roleId"));
Role role=roleBiz.findById(roleId);
request.getSession().setAttribute("role",role);
List rightList=rightBiz.findAll();
request.getSession().setAttribute("rightList", rightList);
return mapping.findForward("showRights");
}
@SuppressWarnings("unchecked")
public ActionForward doUpdate(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String [] rightCode=null;
rightCode=request.getParameterValues("rightName");//得到传过来的所用的权限
int roleId=Integer.parseInt(request.getParameter("id"));
Role role=roleBiz.findById(roleId);//查询出要分配权限的角色
//判断是否分配了权限
if(rightCode==null || rightCode.length==0){
//没分配的,把角色从权限中移出
Iterator it=role.getRights().iterator();
while(it.hasNext()){
Rights oldRight=(Rights) it.next();
oldRight.getRole().remove(role);
rightBiz.merge(oldRight);
}
//清空角色
role.getRights().removeAll(role.getRights());
roleBiz.merge(role);
}else{
Rights right=null;
//把角色中的所有权限去除
role.getRights().clear();
//把权限添加到角色中,关联关系
for(int i=0;i<rightCode.length;i++){
String rc=rightCode[i].toString();
List lr= rightBiz.findByProperty("rightCode", rc);
right=(Rights) lr.get(0);
role.getRights().add(right);
}
//更新数据库
roleBiz.merge(role);
rightBiz.merge(right);
}
Role r=roleBiz.findById(roleId);
request.getSession().removeAttribute("role");
request.getSession().setAttribute("role",r);
return mapping.findForward("showRights");
}
public void setRightBiz(IRightsBiz rightBiz) {
this.rightBiz = rightBiz;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?