package com.saye.hospitalgd.controller.system; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.saye.hospitalgd.commons.JsonResult; import com.saye.hospitalgd.commons.log.ExceptionDUtil; import com.saye.hospitalgd.commons.log.LogUtil; import com.saye.hospitalgd.model.MenuRole; import com.saye.hospitalgd.model.ResourceInfo; import com.saye.hospitalgd.model.Role; import com.saye.hospitalgd.model.Users; import com.saye.hospitalgd.service.system.DepartService; import com.saye.hospitalgd.service.system.MenuService; import com.saye.hospitalgd.service.system.RoleService; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @Controller public class RoleController { @Autowired private RoleService roleService; @Autowired private MenuService menuService; @Autowired private DepartService departService; /** * @description 到角色管理页面 * @author thuang * @created 2019年11月11日 上午10:50:40 * @return */ @RequestMapping("/toRoleManager") public String toRoleManager(ModelMap modelMap){ HashMap responseMap = new HashMap(); responseMap.put("firstNode", "0"); ResourceInfo resourceInfo=null; try { resourceInfo = this.menuService.getMenuByRole(responseMap); } catch (Exception e) { e.printStackTrace(); } modelMap.addAttribute("resourceInfo", resourceInfo); HashMap map = new HashMap(); map.put("parent_id","10330701"); List> departList = this.departService.findDepartByParentId(map); for (HashMap departMap : departList) { departMap.put("id",departMap.get("DEPART_ID")); departMap.put("title",departMap.get("DEPART_NAME")); } modelMap.put("departList",departList); return "system/roleManager"; } /** * * @description 查询列表 * @author qfqi * @created 2019年11月5日 下午3:07:41 * @return */ @RequestMapping("/searchRole") @ResponseBody public HashMap searchRole(String roleName,String date,Integer page, Integer limit){ HashMap map=new HashMap(); map.put("roleName", roleName); map.put("date", date); PageHelper.startPage(page, limit); PageInfo appsPageInfo = new PageInfo(roleService.searchRole(map)); HashMap map1 = new HashMap(); map1.put("code", 0); map1.put("msg", "你好"); map1.put("count", appsPageInfo.getTotal()); map1.put("data", appsPageInfo.getList()); return map1; } /** * @description 添加角色 * @author thuang * @created 2019年11月11日 下午3:58:24 * @return */ @RequestMapping("/insertRoles") @ResponseBody public HashMap insertRoles(String roleName,String menuId){ HashMap map=new HashMap(); HashMap response=new HashMap(); String errCode="0"; String errMsg=""; Users user = (Users) SecurityUtils.getSubject().getPrincipal(); map.put("roleName",roleName); map.put("menuId",menuId); String userName = user.getUserName(); String userTrueName = user.getTrueName(); map.put("userName", userName); map.put("userTrueName", userTrueName); //新增角色 try { String status = roleService.addRole(map); LogUtil.info(this.getClass(),"用户"+ user.getTrueName()+"添加角色:map:"+map.toString()); if ("true".equals(status)) { }else { errCode="998"; errMsg=status; } } catch (Exception e) { e.printStackTrace(); errCode="999"; errMsg=e.getMessage(); LogUtil.error(this.getClass(), "新增角色失败,原因:"+ExceptionDUtil.getDetailExceptionMsg(e)); } response.put("errCode", errCode); response.put("errMsg", errMsg); return response; } /** * * @description 删除用户角色 * @author qfqi * @created 2019年11月5日 下午3:07:54 * @return */ @RequestMapping("/deleteRole") @ResponseBody public JsonResult deleteRole(String roleId){ Users user = (Users) SecurityUtils.getSubject().getPrincipal(); int result=roleService.deleteRole(roleId); LogUtil.info(this.getClass(),"用户"+ user.getTrueName()+"删除角色:roleId:"+roleId); JsonResult j=new JsonResult(); if(result>0){ j.setState(true); j.setMessage("删除成功!"); }else{ j.setState(false); j.setMessage("删除失败!"); } return j; } /** * @description 根据角色id获取角色权限菜单id * @author thuang * @created 2019年11月12日 上午9:51:08 * @return */ @RequestMapping("/getSelectMenuId") @ResponseBody public List getSelectMenuId(String roleId){ HashMap map=new HashMap(); map.put("roleId",roleId); List menuIdByRoleId = menuService.getMenuIdByRoleId(map); List menuIdList=new ArrayList(); for (int i = 0; i < menuIdByRoleId.size(); i++) { MenuRole menuRole = menuIdByRoleId.get(i); menuIdList.add(menuRole.getMenuId()); } return menuIdList; } /** * * @description 修改用户角色权限信息 * @author qfqi * @created 2019年11月5日 下午3:08:05 * @return */ @RequestMapping("/modifyRoleResource") @ResponseBody public JsonResult modifyRoleResource(String roleId,String roleName,String menuId,String departId,String pointDelete) { HashMap map=new HashMap(); map.put("roleName", roleName); map.put("roleId", roleId); map.put("menuId", menuId); map.put("departId", departId); map.put("pointDelete", pointDelete); Users user = (Users) SecurityUtils.getSubject().getPrincipal(); int result=roleService.modifyRoleResource(map); LogUtil.info(this.getClass(),"用户"+ user.getTrueName()+"修改用户角色权限信息:map:"+map.toString()); JsonResult j=new JsonResult(); if(result>0){ j.setState(true); j.setMessage("修改成功!"); }else{ j.setState(false); j.setMessage("修改失败!"); } return j; } }