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

📄 menuaction.java

📁 struts+spring+jdbc权限管理 菜单树实现
💻 JAVA
字号:
package com.hiiso.crm.common.action;

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

import org.apache.log4j.Logger;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;

import com.hiiso.crm.common.authority.IMenuService;
import com.hiiso.crm.common.exception.AuthorityServiceExp;
import com.hiiso.crm.common.pojo.Menu;

/*************************************************************************
* SYSTEM:       基金CRM系统
* SUBSYS:       CRM权限管理模块
* DESCRIPTION:  CRM菜单管理跳转ACTION类
* AUTHOR:       YAOYI
* CREATE DATE:  2008/10/30
* COPYRIGHT:    (c)Copyright 2008 HISUN Corporation. All rights reserved.
* VERSION:      V1.0G
* EDIT HISTORY:
*************************************************************************/

//ACTION处理
public class MenuAction extends DispatchAction {
	
	static  Logger  logger  =  Logger.getLogger("crm.operator");
	IMenuService menuService;
	
	public IMenuService getMenuService() {
		return menuService;
	}

	public void setMenuService(IMenuService menuService) {
		this.menuService = menuService;
	}

	//左边菜单树
	public ActionForward getMenu(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		HttpSession session = request.getSession();
		String roleId = (String)session.getAttribute("roleId");
		String adminRoleId = "";
		String allMenu = "";
		String isEdit = request.getParameter("isEdit");
		logger.info("获取菜单开始!");
		try{
			adminRoleId = menuService.getAdminRoleId();
		}catch(AuthorityServiceExp exp){
			ActionMessages messages = new ActionMessages();
			ActionMessage message = new ActionMessage(exp.getMessage(), exp.getErrMessage());
			messages.add("ErrorMenu", message);
			super.addMessages(request, messages);  
			return mapping.findForward("Eerr");
		}
		if(roleId.equals(adminRoleId)){
			try {
				if(null == isEdit || isEdit.equals("")){
					allMenu = menuService.getAllMenus("N").toString();
				}else{
					allMenu = menuService.getAllMenus("Y").toString();
				}
			} catch (AuthorityServiceExp e) {
				ActionMessages messages = new ActionMessages();
				ActionMessage message = new ActionMessage(e.getMessage(), e.getErrMessage());
				messages.add("ErrorMenu", message);
				logger.info("获取菜单失败!");
				super.addMessages(request, messages);  
				return mapping.findForward("Eerr");
			}
		}else{
			try {
				allMenu = menuService.getMenus(roleId).toString();
			} catch (AuthorityServiceExp e) {
				ActionMessages messages = new ActionMessages();
				ActionMessage message = new ActionMessage(e.getMessage(), e.getErrMessage());
				messages.add("ErrorMenu", message);
				logger.info("获取菜单失败!");
				super.addMessages(request, messages);  
				return mapping.findForward("Eerr");
			}
		}
		logger.info("获取菜单结束!");
		request.setAttribute("allMenu", allMenu);
		if(null == isEdit || isEdit.equals("")){
			return getForward(mapping,"leftMenu");
		}else{
			return getForward(mapping,"editMenu");
		}
	}
	
	//编辑树
	public ActionForward editMenu(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String allMenu = "";
		String menuId = request.getParameter("menuId");
		String menuName = request.getParameter("menuName");
		String menuUrl = request.getParameter("menuUri");
		Menu menu = new Menu(menuId,menuName,menuUrl);
		logger.info("编辑菜单开始!");
		try {
			menuService.edit(menu);
		} catch (AuthorityServiceExp e) {
			ActionMessages messages = new ActionMessages();
			ActionMessage message = new ActionMessage(e.getMessage(), e.getErrMessage());
			messages.add("ErrorMenu", message);
			logger.info("编辑菜单失败!");
			super.addMessages(request, messages);  
			return mapping.findForward("Eerr");
		}
		try {
			allMenu = menuService.getAllMenus("Y").toString();
		} catch (AuthorityServiceExp e) {
			ActionMessages messages = new ActionMessages();
			ActionMessage message = new ActionMessage(e.getMessage(), e.getErrMessage());
			messages.add("ErrorMenu", message);
			super.addMessages(request, messages);  
			return mapping.findForward("Eerr");
		}
		logger.info("编辑菜单结束!");
		request.setAttribute("allMenu", allMenu);
		return getForward(mapping,"editMenu");
	}
	
	//添加树
	public ActionForward addMenu(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String allMenu = "";
		String menuId = request.getParameter("menuId");
		String menuName = request.getParameter("menuName");
		String menuUrl = request.getParameter("menuUri");
		Menu menu = new Menu("",menuName,menuUrl);
		menu.setParentId(menuId);
		logger.info("添加菜单开始!");
		try {
			menuService.addMenu(menu);
		} catch (AuthorityServiceExp e) {
			ActionMessages messages = new ActionMessages();
			ActionMessage message = new ActionMessage(e.getMessage(), e.getErrMessage());
			messages.add("ErrorMenu", message);
			logger.info("添加菜单失败!");
			super.addMessages(request, messages);  
			return mapping.findForward("Eerr");
		}
		try {
			allMenu = menuService.getAllMenus("Y").toString();
		} catch (AuthorityServiceExp e) {
			request.setAttribute("errMessage", e.getMessage());
			return mapping.findForward("Eerr");
		}
		logger.info("添加菜单结束!");
		request.setAttribute("allMenu", allMenu);
		return getForward(mapping,"editMenu");
	}
	
	//删除树
	public ActionForward deleteMenu(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String allMenu = "";
		String menuId = request.getParameter("menuId");
		logger.info("删除菜单开始!");
		try {
			menuService.deleteMenu(menuId);
		} catch (AuthorityServiceExp e) {
			ActionMessages messages = new ActionMessages();
			ActionMessage message = new ActionMessage(e.getMessage(), e.getErrMessage());
			messages.add("ErrorMenu", message);
			logger.info("删除菜单失败!");
			super.addMessages(request, messages);  
			return mapping.findForward("Eerr");
		}
		try {
			allMenu = menuService.getAllMenus("Y").toString();
		} catch (AuthorityServiceExp e) {
			ActionMessages messages = new ActionMessages();
			ActionMessage message = new ActionMessage(e.getMessage(), e.getErrMessage());
			messages.add("ErrorMenu", message);
			super.addMessages(request, messages);  
			return mapping.findForward("Eerr");
		}
		logger.info("删除菜单结束!");
		request.setAttribute("allMenu", allMenu);
		return getForward(mapping,"editMenu");
	}
	
	public ActionForward getForward(ActionMapping mapping,String input){
		return mapping.findForward(input);
	}
}

⌨️ 快捷键说明

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