| | |
| | | |
| | | /**==============用户-角色-菜单================**/ |
| | | |
| | | @GetMapping("allMenus") |
| | | @ApiOperation(value = "获取所有菜单") |
| | | public List<Menu> getAllMenu(){ |
| | | return roleMenuService.getAllMenus(); |
| | | } |
| | | |
| | | @GetMapping("roleMenu") |
| | | @ApiOperation(value = "获取角色所有菜单") |
| | | public List<Menu> getMenuByRoleId(@RequestParam int roleId){ |
| | | return roleMenuService.getRoleMenu(roleId); |
| | | } |
| | | |
| | | |
| | | |
| | | @GetMapping("userMenu") |
| | | @ApiOperation(value = "获取当前用户的菜单") |
| | | public List<Menu> getUserMenu(HttpServletRequest request){ |
New file |
| | |
| | | package com.whyc.mapper; |
| | | |
| | | import com.whyc.pojo.Menu; |
| | | |
| | | /** |
| | | * @author 张辉 |
| | | * @since 2021/5/11 |
| | | */ |
| | | public interface MenuMapper extends CustomMapper<Menu>{ |
| | | } |
| | |
| | | public interface RoleMenuMapper extends CustomMapper<RoleMenu> { |
| | | |
| | | List<Menu> getUserMenu(@Param("id") Integer id); |
| | | |
| | | |
| | | } |
| | |
| | | package com.whyc.pojo; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import io.swagger.models.auth.In; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | import org.apache.ibatis.type.Alias; |
| | | |
| | | import java.util.List; |
| | |
| | | @Alias("Menu") |
| | | @TableName( schema = "`db_3.5mw_web`",value = "`tb_menu`") |
| | | @Data |
| | | @AllArgsConstructor |
| | | @NoArgsConstructor |
| | | public class Menu { |
| | | private Integer id; |
| | | private String name; |
| | |
| | | private Integer ord; |
| | | private Integer menuId; |
| | | private String icon; |
| | | @TableField(exist = false) |
| | | private List<Menu> subMenus; |
| | | @TableField(exist = false) |
| | | private boolean selected; |
| | | |
| | | } |
| | |
| | | private String userNames; |
| | | @TableField(exist = false) |
| | | private String roleName; |
| | | @TableField(exist = false) |
| | | private Integer userCount; |
| | | |
| | | public UserRole() { |
| | | } |
| | |
| | | public void setRoleName(String roleName) { |
| | | this.roleName = roleName; |
| | | } |
| | | |
| | | public Integer getUserCount() { |
| | | return userCount; |
| | | } |
| | | |
| | | public void setUserCount(Integer userCount) { |
| | | this.userCount = userCount; |
| | | } |
| | | } |
| | |
| | | package com.whyc.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.mapper.MenuMapper; |
| | | import com.whyc.mapper.RoleMenuMapper; |
| | | import com.whyc.pojo.Menu; |
| | | import com.whyc.pojo.RoleMenu; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | @Resource |
| | | private RoleMenuMapper mapper; |
| | | |
| | | @Resource |
| | | private MenuMapper menuMapper; |
| | | |
| | | public List<Menu> getUserMenu(Integer id) { |
| | | return mapper.getUserMenu(id); |
| | | } |
| | | |
| | | public List<Menu> getAllMenus(){ |
| | | List<Menu> menus = menuMapper.selectList(null); |
| | | return menus; |
| | | } |
| | | |
| | | public List<Menu> getRoleMenu(Integer roleId){ |
| | | List<Menu> menus = menuMapper.selectList(null); |
| | | QueryWrapper<RoleMenu> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("role_id",roleId); |
| | | List<RoleMenu> roleMenus = mapper.selectList(queryWrapper); |
| | | for (RoleMenu roleMenu:roleMenus) { |
| | | for (Menu menu:menus) { |
| | | if (roleMenu.getMenuId().equals(menu.getId())){ |
| | | menu.setSelected(true); |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | return menus; |
| | | } |
| | | } |
| | |
| | | QueryWrapper<Role> queryWrapper = new QueryWrapper<>(role); |
| | | try { |
| | | if(mapper.selectOne(queryWrapper)!=null){ |
| | | return new Response().set(0,"已有此权限组数据"); |
| | | return new Response().setMsg(0,"已有此权限组数据"); |
| | | } |
| | | }catch (Exception e){ |
| | | return new Response().set(0,"已有此权限组数据"); |
| | | return new Response().setMsg(0,"已有此权限组数据"); |
| | | } |
| | | |
| | | role.setState(1); |
| | |
| | | <resultMap type="com.whyc.pojo.Menu" id="MenuMap"> |
| | | <id property="id" column="id" /> |
| | | <result property="name" column="name" /> |
| | | <result property="url" column="url" /> |
| | | <result property="icon" column="icon"/> |
| | | <result property="level" column="level"/> |
| | | <result property="ord" column="ord"/> |
| | |
| | | </resultMap> |
| | | |
| | | <select id="getUserMenu" resultMap="MenuMap"> |
| | | select pm.id,pm.name,pm.icon,pm.level,pm.ord,m.id mid,m.name mname,m.url murl,m.icon micon,m.level mlevel,m.ord mord |
| | | select pm.id,pm.name,pm.url,pm.icon,pm.level,pm.ord,m.id mid,m.name mname,m.url murl,m.icon micon,m.level mlevel,m.ord mord |
| | | from tb_user u |
| | | inner join tb_user_role ur on u.id=ur.user_id |
| | | inner join tb_role role on ur.role_id=role.id |