adminroleset.java
来自「一个jsp写的bbs」· Java 代码 · 共 185 行
JAVA
185 行
package com.laoer.bbscs.web.action;
import java.util.*;
import javax.servlet.http.*;
import org.apache.commons.lang.*;
import org.apache.struts.action.*;
import com.laoer.bbscs.bean.*;
import com.laoer.bbscs.comm.*;
import com.laoer.bbscs.exception.*;
import com.laoer.bbscs.service.*;
import com.laoer.bbscs.web.form.*;
import org.apache.struts.util.MessageResources;
public class AdminRoleSet
extends AdminBaseAction {
private RoleService roleService;
private PermissionService permissionService;
private AjaxMessagesXML ajaxMessagesXML;
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
HttpServletResponse response) {
AdminRoleSetForm adminRoleSetForm = (AdminRoleSetForm) form;
MessageResources mr = this.getResources(request);
Locale locale = this.getLocale(request);
if (adminRoleSetForm.getAction().equalsIgnoreCase("new")) {
adminRoleSetForm.setAction("add");
this.setPermissionList(request);
request.setAttribute("permissionValues", new ArrayList().toArray());
return mapping.findForward("roleSet");
}
if (adminRoleSetForm.getAction().equalsIgnoreCase("edit")) {
adminRoleSetForm.setAction("editdo");
Role role = this.getRoleService().findRoleByID(adminRoleSetForm.getId());
//System.out.println(role);
adminRoleSetForm.setRoleName(role.getRoleName());
//System.out.println(role.getPermissions());
request.setAttribute("permissionValues", role.getPermissions().toArray());
if (role.getTypeID() == 0) {
this.setPermissionList(request);
}
else {
this.setBoardPermissionList(request);
}
return mapping.findForward("roleSet");
}
if (adminRoleSetForm.getAction().equalsIgnoreCase("add")) {
if (StringUtils.isBlank(adminRoleSetForm.getRoleName())) {
this.getAjaxMessagesXML().setMessage(Constant.CODEID_NULL,
mr.getMessage(locale, "error.nullerror"));
this.setAjaxMessagesXMLRepuest(request, this.getAjaxMessagesXML());
return mapping.findForward("ajaxjsp");
}
Role role = new Role();
role.setRoleName(adminRoleSetForm.getRoleName());
//role.setTypeID(0);
role.setTypeID(Constant.ROLE_TYPE_USERADD);
if (adminRoleSetForm.getPermissions() != null) {
for (int i = 0; i < adminRoleSetForm.getPermissions().length; i++) {
role.getPermissions().add(new Long(adminRoleSetForm.getPermissions()[i]));
}
}
try {
this.getRoleService().saveRole(role);
this.getAjaxMessagesXML().setMessage(Constant.CODEID_OK,
mr.getMessage(locale, "admin.role.add.ok"));
}
catch (BbscsException ex) {
this.getAjaxMessagesXML().setMessage(Constant.CODEID_ROLE_ADDFAILED,
mr.getMessage(locale, "error.admin.role.add"));
}
this.setAjaxMessagesXMLRepuest(request, this.getAjaxMessagesXML());
return mapping.findForward("ajaxjsp");
}
if (adminRoleSetForm.getAction().equalsIgnoreCase("editdo")) {
if (StringUtils.isBlank(adminRoleSetForm.getRoleName())) {
this.getAjaxMessagesXML().setMessage(Constant.CODEID_NULL,
mr.getMessage(locale, "error.nullerror"));
this.setAjaxMessagesXMLRepuest(request, this.getAjaxMessagesXML());
return mapping.findForward("ajaxjsp");
}
Role role = this.getRoleService().findRoleByID(adminRoleSetForm.getId());
role.setRoleName(adminRoleSetForm.getRoleName());
//role.setTypeID(1);
/**
if (adminRoleSetForm.getPermissions() != null) {
//List permissions = new ArrayList();
role.getPermissions().clear();
for (int i = 0; i < adminRoleSetForm.getPermissions().length; i++) {
role.getPermissions().add(new Long(adminRoleSetForm.getPermissions()[i]));
}
}*/
List permissions = new ArrayList();
if (adminRoleSetForm.getPermissions() != null) {
role.getPermissions().clear();
for (int i = 0; i < adminRoleSetForm.getPermissions().length; i++) {
permissions.add(new Long(adminRoleSetForm.getPermissions()[i]));
}
}
role.setPermissions(permissions);
try {
this.getRoleService().saveRole(role);
this.getAjaxMessagesXML().setMessage(Constant.CODEID_OK,
mr.getMessage(locale, "admin.role.edit.ok"));
}
catch (BbscsException ex) {
this.getAjaxMessagesXML().setMessage(Constant.CODEID_ROLE_EDITFAILED,
mr.getMessage(locale, "error.admin.role.edit"));
}
this.setAjaxMessagesXMLRepuest(request, this.getAjaxMessagesXML());
return mapping.findForward("ajaxjsp");
}
if (adminRoleSetForm.getAction().equalsIgnoreCase("del")) {
Role role = this.getRoleService().findRoleByID(adminRoleSetForm.getId());
if (role.getTypeID() <= 1) {
this.getAjaxMessagesXML().setMessage(Constant.CODEID_ROLE_CANNOTDEL,
mr.getMessage(locale, "error.admin.role.cannotdel"));
}
else {
try {
this.getRoleService().removeRole(role);
this.getAjaxMessagesXML().setMessage(Constant.CODEID_OK,
mr.getMessage(locale, "admin.role.del.ok"));
}
catch (BbscsException ex1) {
this.getAjaxMessagesXML().setMessage(Constant.CODEID_ROLE_EDITFAILED,
mr.getMessage(locale, "error.admin.role.del"));
}
}
this.setAjaxMessagesXMLRepuest(request, this.getAjaxMessagesXML());
return mapping.findForward("ajaxjsp");
}
return mapping.getInputForward();
}
private void setPermissionList(HttpServletRequest request) {
//List permissionList = this.getPermissionService().findPermissionsAll();
List permissionList = this.getPermissionService().findPermissionsByTypeID(0);
permissionList.addAll(this.getPermissionService().findPermissionsByTypeID(1));
request.setAttribute("permissionList", permissionList);
}
private void setBoardPermissionList(HttpServletRequest request) {
List permissionList = this.getPermissionService().findPermissionsByTypeID(2);
permissionList.addAll(this.getPermissionService().findPermissionsByTypeID(3));
request.setAttribute("permissionList", permissionList);
}
public PermissionService getPermissionService() {
return permissionService;
}
public RoleService getRoleService() {
return roleService;
}
public AjaxMessagesXML getAjaxMessagesXML() {
return ajaxMessagesXML;
}
public void setPermissionService(PermissionService permissionService) {
this.permissionService = permissionService;
}
public void setRoleService(RoleService roleService) {
this.roleService = roleService;
}
public void setAjaxMessagesXML(AjaxMessagesXML ajaxMessagesXML) {
this.ajaxMessagesXML = ajaxMessagesXML;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?