| | |
| | | String token = request.getHeader("token"); |
| | | Map<String, Object> currentUserInfo = (Map<String, Object>) TokenUtils.getUserInfoByToken(token); |
| | | Map<String, Object> result = menuService.selectMenusByOrgId((Integer) currentUserInfo.get("organizationId")); |
| | | |
| | | return ResultMessage.ok(); |
| | | return ResultMessage.ok(result); |
| | | } |
| | | } |
| | |
| | | |
| | | Map<String, Object> login(Map<String, Object> parameters); |
| | | |
| | | Map<String, Object> getMenus(Map<String, Object> parameters); |
| | | |
| | | Map<String, Object> addUser(User user, String token); |
| | | |
| | | void deleteUser(User user); |
| | |
| | | package com.moral.api.service.impl; |
| | | |
| | | import java.util.HashMap; |
| | | import java.util.Map; |
| | | |
| | | import com.moral.api.entity.Menu; |
| | |
| | | public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements MenuService { |
| | | |
| | | @Autowired |
| | | private UserServiceImpl userService; |
| | | private UserService userService; |
| | | |
| | | @Override |
| | | public Map<String, Object> selectMenusByOrgId(Integer orgId) { |
| | | userService.getMenus(-1, orgId); |
| | | return null; |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("orgId",orgId); |
| | | Map<String, Object> menus = userService.getMenus(map); |
| | | return menus; |
| | | } |
| | | } |
| | |
| | | userInfo.put("organizationName", organization.getName()); |
| | | userInfo.put("locationLevel", organization.getLocationLevel()); |
| | | userInfo.put("groups", groups); |
| | | userInfo.putAll(getMenus(userBo.getId(), -1)); |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("userId",userBo.getId()); |
| | | userInfo.putAll(getMenus(map)); |
| | | try { |
| | | //生成token,并存入redis |
| | | String token = TokenUtils.getToken(userBo.getId().toString(), userInfo); |
| | |
| | | return result; |
| | | } |
| | | |
| | | //根据userId获取用户层级菜单 |
| | | public Map<String, Object> getMenus(int userId, int orgId) { |
| | | @Override |
| | | public Map<String, Object> getMenus(Map<String, Object> parameters) { |
| | | List<Menu> allMenus; |
| | | if (orgId == -1) { |
| | | allMenus = menuMapper.selectUserMenu(userId); |
| | | if (parameters.containsKey("userId")) { |
| | | allMenus = menuMapper.selectUserMenu(Integer.parseInt(parameters.get("userId").toString())); |
| | | } else { |
| | | allMenus = menuMapper.selectOrganizationMenu(orgId); |
| | | allMenus = menuMapper.selectOrganizationMenu(Integer.parseInt(parameters.get("orgId").toString())); |
| | | } |
| | | |
| | | Map<String, Object> resultMap = new LinkedHashMap<>(); |
| | |
| | | } |
| | | |
| | | //获取用户层级菜单递归方法 |
| | | public List<Map<String, Object>> getMenusByRecursion(Menu menu, List<Menu> menus) { |
| | | private List<Map<String, Object>> getMenusByRecursion(Menu menu, List<Menu> menus) { |
| | | List<List<Map<String, Object>>> resultList = new ArrayList(); |
| | | Menu newMenu = new Menu(); |
| | | newMenu.setParentId(menu.getId()); |