首页>代码>java设计好的后台权限管理的系统>/security/src/main/java/com/ketayao/security/controller/ModuleController.java
/**
 * <pre>
 * Copyright:		Copyright(C) 2011-2012, ketayao.com
 * Filename:		com.ygsoft.security.controller.ModuleController.java
 * Class:			ModuleController
 * Date:			2012-8-6
 * Author:			<a href="mailto:ketayao@gmail.com">ketayao</a>
 * Version          1.1.0
 * Description:		
 *
 * </pre>
 **/
 
package com.ketayao.security.controller;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.ketayao.security.entity.main.Module;
import com.ketayao.security.exception.ServiceException;
import com.ketayao.security.service.ModuleService;
import com.ketayao.util.dwz.AjaxObject;
import com.ketayao.util.dwz.Page;

/** 
 * 	
 * @author 	<a href="mailto:ketayao@gmail.com">ketayao</a>
 * Version  1.1.0
 * @since   2012-8-6 上午10:08:48 
 */
@Controller
@RequestMapping("/management/security/module")
public class ModuleController {
	@Autowired
	private ModuleService moduleService;
	
	private static final String CREATE = "management/security/module/create";
	private static final String UPDATE = "management/security/module/update";
	private static final String LIST = "management/security/module/list";
	private static final String TREE = "management/security/module/tree";
	
	@RequiresPermissions("Module:save")
	@RequestMapping(value="/create", method=RequestMethod.GET)
	public String preCreate() {
		return CREATE;
	}
	
	@RequiresPermissions("Module:save")
	@RequestMapping(value="/create", method=RequestMethod.POST)
	public @ResponseBody String create(Module module, HttpServletRequest request) {
		module.setParent((Module)request.getSession().getAttribute("parentModule"));
		moduleService.save(module);
		
		AjaxObject ajaxObject = new AjaxObject("模块添加成功!");
		return ajaxObject.toString();
	}
	
	@RequiresPermissions("Module:edit")
	@RequestMapping(value="/update/{id}", method=RequestMethod.GET)
	public String preUpdate(@PathVariable Long id, Map<String, Object> map) {
		Module module = moduleService.get(id);
		
		map.put("module", module);
		return UPDATE;
	}
	
	@RequiresPermissions("Module:edit")
	@RequestMapping(value="/update", method=RequestMethod.POST)
	public @ResponseBody String update(Module module) {
		moduleService.update(module);
		
		AjaxObject ajaxObject = new AjaxObject("模块修改成功!");
		return ajaxObject.toString();
	}
	
	@RequiresPermissions("Module:delete")
	@RequestMapping(value="/delete/{id}", method=RequestMethod.POST)
	public @ResponseBody String delete(@PathVariable Long id) {
		AjaxObject ajaxObject = new AjaxObject();
		try {
			moduleService.delete(id);
			ajaxObject.setMessage("模块删除成功!");
		} catch (ServiceException e) {
			ajaxObject.setStatusCode(AjaxObject.STATUS_CODE_FAILURE);
			ajaxObject.setMessage("模块删除失败:" + e.getMessage());
		}
		
		ajaxObject.setCallbackType("");
		ajaxObject.setRel("jbsxBox2module");
		return ajaxObject.toString();
	}
	
	@RequiresPermissions("Module:view")
	@RequestMapping(value="/tree", method=RequestMethod.GET)
	public String tree(Map<String, Object> map) {
		Module module = moduleService.getTree();
		
		map.put("module", module);
		return TREE;
	}
	
	@RequiresPermissions("Module:view")
	@RequestMapping(value="/list/{parentId}", method={RequestMethod.GET, RequestMethod.POST})
	public String list(Page page, @PathVariable Long parentId, String keywords, 
			Map<String, Object> map, HttpServletRequest request) {
		List<Module> modules = null;
		if (StringUtils.isNotBlank(keywords)) {
			modules = moduleService.find(parentId, keywords, page);
		} else {
			modules = moduleService.find(parentId, page);
		}
		
		request.getSession().setAttribute("parentModule", moduleService.get(parentId));
		
		map.put("page", page);
		map.put("modules", modules);
		map.put("keywords", keywords);

		return LIST;
	}
	
}
最近下载更多
qingquan  LV1 5月22日
3127857649  LV1 2023年3月3日
WZW555  LV1 2022年5月18日
lsq54365  LV14 2021年11月13日
shaven  LV2 2021年7月1日
yuting Wang  LV9 2021年5月13日
你是傻子  LV9 2021年1月19日
zhang5  LV2 2020年12月26日
落轩昂  LV12 2020年9月24日
我是最靓的仔  LV1 2020年9月2日
最近浏览更多
337721  LV2 9月20日
qingquan  LV1 5月22日
ww0408  LV1 2023年12月28日
Ji123455  LV8 2023年9月21日
 LV7 2023年8月28日
飞呀飞呀飞不放  LV7 2023年8月9日
胡修洋 2023年6月5日
暂无贡献等级
3127857649  LV1 2023年3月3日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友