首页>代码>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;
}
}

最近下载
最近浏览