Browse Source

登录菜单获取修改

dev_shibei_match
hosinokamui 6 years ago
parent
commit
5fa947342e
  1. 4
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  2. 1
      epmet-gateway/src/main/resources/bootstrap.yml
  3. 5
      epmet-module/oper-access/oper-access-client/src/main/java/com/epmet/dto/OperMenuDTO.java
  4. 18
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperMenuController.java
  5. 10
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperRoleController.java
  6. 13
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/OperMenuService.java
  7. 25
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperMenuServiceImpl.java
  8. 17
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/OperUserController.java
  9. 7
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/OperUserServiceImpl.java

4
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java

@ -65,7 +65,7 @@ public class RedisKeys {
* 用户菜单导航Key * 用户菜单导航Key
*/ */
public static String getUserMenuNavKey(String userId, String app, String client, String language) { public static String getUserMenuNavKey(String userId, String app, String client, String language) {
return rootPrefix.concat("oper:access:nav:").concat(userId).concat("_").concat(app).concat("_").concat(client).concat("_").concat(language); return rootPrefix.concat("oper:access:nav:").concat(app).concat("-").concat(client).concat("-").concat(userId).concat("-").concat(language);
} }
/** /**
@ -86,7 +86,7 @@ public class RedisKeys {
* 用户权限标识Key * 用户权限标识Key
*/ */
public static String getUserPermissionsKey(String userId, String app, String client) { public static String getUserPermissionsKey(String userId, String app, String client) {
return rootPrefix.concat("oper:access:permissions:").concat(userId).concat("_").concat(app).concat("_").concat(client); return rootPrefix.concat("oper:access:permissions:").concat(app).concat("_").concat(client).concat("_").concat(userId);
} }
/** /**

1
epmet-gateway/src/main/resources/bootstrap.yml

@ -179,6 +179,7 @@ renren:
- /epmetuser/** - /epmetuser/**
- /gov/org/** - /gov/org/**
- /oper/access/** - /oper/access/**
- /sys/**
management: management:
endpoints: endpoints:
web: web:

5
epmet-module/oper-access/oper-access-client/src/main/java/com/epmet/dto/OperMenuDTO.java

@ -47,6 +47,11 @@ public class OperMenuDTO extends TreeStringNode<OperMenuDTO> implements Serializ
*/ */
private String pid; private String pid;
/**
* 菜单名称
*/
private String name;
/** /**
* 菜单URL * 菜单URL
*/ */

18
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperMenuController.java

@ -1,6 +1,8 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils; import com.epmet.commons.tools.validator.AssertUtils;
@ -79,23 +81,23 @@ public class OperMenuController {
/** /**
* 导航 * 导航
* @param userInfo token * @param tokenDto token
* @return List<OperMenuDTO> * @return List<OperMenuDTO>
*/ */
@PostMapping("nav") @GetMapping("nav")
public Result<List<OperMenuDTO>> nav(@RequestBody UserInfoDto userInfo){ public Result<List<OperMenuDTO>> nav(@LoginUser TokenDto tokenDto){
List<OperMenuDTO> list = operMenuService.getUserMenuNavList(userInfo); List<OperMenuDTO> list = operMenuService.getUserMenuNavList(tokenDto);
return new Result<List<OperMenuDTO>>().ok(list); return new Result<List<OperMenuDTO>>().ok(list);
} }
/** /**
* 权限标识 * 权限标识
* @param userInfo token * @param tokenDto token
* @return Set<String> * @return Set<String>
*/ */
@PostMapping("permissions") @GetMapping("permissions")
public Result<Set<String>> permissions(@RequestBody UserInfoDto userInfo){ public Result<Set<String>> permissions(@LoginUser TokenDto tokenDto){
Set<String> set = operMenuService.getUserPermissions(userInfo); Set<String> set = operMenuService.getUserPermissions(tokenDto);
return new Result<Set<String>>().ok(set); return new Result<Set<String>>().ok(set);
} }

10
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperRoleController.java

@ -28,10 +28,12 @@ import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.OperRoleDTO; import com.epmet.dto.OperRoleDTO;
import com.epmet.excel.OperRoleExcel; import com.epmet.excel.OperRoleExcel;
import com.epmet.service.OperRoleService; import com.epmet.service.OperRoleService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -91,4 +93,12 @@ public class OperRoleController {
ExcelUtils.exportExcelToTarget(response, null, list, OperRoleExcel.class); ExcelUtils.exportExcelToTarget(response, null, list, OperRoleExcel.class);
} }
@GetMapping("list")
@ApiOperation("列表")
public Result<List<OperRoleDTO>> list(){
List<OperRoleDTO> data = operRoleService.list(new HashMap<>(1));
return new Result<List<OperRoleDTO>>().ok(data);
}
} }

13
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/OperMenuService.java

@ -19,6 +19,7 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.security.user.UserDetail; import com.epmet.commons.tools.security.user.UserDetail;
import com.epmet.dto.OperMenuDTO; import com.epmet.dto.OperMenuDTO;
import com.epmet.dto.form.UserInfoDto; import com.epmet.dto.form.UserInfoDto;
@ -99,23 +100,23 @@ public interface OperMenuService extends BaseService<OperMenuEntity> {
/** /**
* 用户菜单列表 * 用户菜单列表
* *
* @param userInfo 用户信息 * @param tokenDto 用户信息
* @param type 菜单类型 * @param type 菜单类型
* @return java.util.List<OperMenuDTO> * @return java.util.List<OperMenuDTO>
*/ */
List<OperMenuDTO> getUserMenuList(UserInfoDto userInfo, Integer type); List<OperMenuDTO> getUserMenuList(TokenDto tokenDto, Integer type);
/** /**
* 用户菜单导航 * 用户菜单导航
* @param userInfo 用户信息 * @param tokenDto 用户信息
* @return java.util.List<OperMenuDTO> * @return java.util.List<OperMenuDTO>
*/ */
List<OperMenuDTO> getUserMenuNavList(UserInfoDto userInfo); List<OperMenuDTO> getUserMenuNavList(TokenDto tokenDto);
/** /**
* 获取用户权限标识 * 获取用户权限标识
* @param userInfo 用户信息 * @param tokenDto 用户信息
* @return java.util.Set<OperMenuDTO> * @return java.util.Set<OperMenuDTO>
*/ */
Set<String> getUserPermissions(UserInfoDto userInfo); Set<String> getUserPermissions(TokenDto tokenDto);
} }

25
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperMenuServiceImpl.java

@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.enums.SuperAdminEnum; import com.epmet.commons.tools.enums.SuperAdminEnum;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.utils.HttpContextUtils; import com.epmet.commons.tools.utils.HttpContextUtils;
@ -110,16 +111,16 @@ public class OperMenuServiceImpl extends BaseServiceImpl<OperMenuDao, OperMenuEn
} }
@Override @Override
public List<OperMenuDTO> getUserMenuList(UserInfoDto userInfo, Integer type) { public List<OperMenuDTO> getUserMenuList(TokenDto tokenDto, Integer type) {
List<OperMenuEntity> menuList; List<OperMenuEntity> menuList;
Result<OperUserDTO> operUserDTOResult = epmetUserFeignClient.info(userInfo.getUserId()); Result<OperUserDTO> operUserDTOResult = epmetUserFeignClient.info(tokenDto.getUserId());
//系统管理员,拥有最高权限 //系统管理员,拥有最高权限
if(operUserDTOResult.getData().getSuperAdmin() == SuperAdminEnum.YES.value()){ if(operUserDTOResult.getData().getSuperAdmin() == SuperAdminEnum.YES.value()){
menuList = baseDao.getMenuList(type, HttpContextUtils.getLanguage()); menuList = baseDao.getMenuList(type, HttpContextUtils.getLanguage());
}else { }else {
menuList = baseDao.getUserMenuList(userInfo.getUserId(), type, HttpContextUtils.getLanguage()); menuList = baseDao.getUserMenuList(tokenDto.getUserId(), type, HttpContextUtils.getLanguage());
} }
List<OperMenuDTO> dtoList = ConvertUtils.sourceToTarget(menuList, OperMenuDTO.class); List<OperMenuDTO> dtoList = ConvertUtils.sourceToTarget(menuList, OperMenuDTO.class);
@ -128,33 +129,33 @@ public class OperMenuServiceImpl extends BaseServiceImpl<OperMenuDao, OperMenuEn
} }
@Override @Override
public List<OperMenuDTO> getUserMenuNavList(UserInfoDto userInfo) { public List<OperMenuDTO> getUserMenuNavList(TokenDto tokenDto) {
List<OperMenuDTO> menuList = operMenuRedis.getUserMenuNavList(userInfo.getUserId(), userInfo.getApp(), userInfo.getClient()); List<OperMenuDTO> menuList = operMenuRedis.getUserMenuNavList(tokenDto.getUserId(), tokenDto.getApp(), tokenDto.getClient());
if(menuList == null){ if(menuList == null){
menuList = getUserMenuList(userInfo, MenuTypeEnum.MENU.value()); menuList = getUserMenuList(tokenDto, MenuTypeEnum.MENU.value());
operMenuRedis.setUserMenuNavList(userInfo.getUserId(), userInfo.getApp(), userInfo.getClient(), menuList); operMenuRedis.setUserMenuNavList(tokenDto.getUserId(), tokenDto.getApp(), tokenDto.getClient(), menuList);
} }
return menuList; return menuList;
} }
@Override @Override
public Set<String> getUserPermissions(UserInfoDto userInfo) { public Set<String> getUserPermissions(TokenDto tokenDto) {
//用户权限列表 //用户权限列表
Set<String> permsSet = operMenuRedis.getUserPermissions(userInfo.getUserId(), userInfo.getApp(), userInfo.getClient()); Set<String> permsSet = operMenuRedis.getUserPermissions(tokenDto.getUserId(), tokenDto.getApp(), tokenDto.getClient());
if(permsSet != null){ if(permsSet != null){
return permsSet; return permsSet;
} }
Result<OperUserDTO> operUserDTOResult = epmetUserFeignClient.info(userInfo.getUserId()); Result<OperUserDTO> operUserDTOResult = epmetUserFeignClient.info(tokenDto.getUserId());
//超级管理员,拥有最高权限 //超级管理员,拥有最高权限
List<OperMenuEntity> menuList; List<OperMenuEntity> menuList;
if(operUserDTOResult.getData().getSuperAdmin() == SuperAdminEnum.YES.value()){ if(operUserDTOResult.getData().getSuperAdmin() == SuperAdminEnum.YES.value()){
menuList = baseDao.getMenuList(MenuTypeEnum.BUTTON.value(), HttpContextUtils.getLanguage()); menuList = baseDao.getMenuList(MenuTypeEnum.BUTTON.value(), HttpContextUtils.getLanguage());
}else{ }else{
menuList = baseDao.getUserMenuList(userInfo.getUserId(), MenuTypeEnum.BUTTON.value(), HttpContextUtils.getLanguage()); menuList = baseDao.getUserMenuList(tokenDto.getUserId(), MenuTypeEnum.BUTTON.value(), HttpContextUtils.getLanguage());
} }
permsSet = new HashSet<>(); permsSet = new HashSet<>();
@ -165,7 +166,7 @@ public class OperMenuServiceImpl extends BaseServiceImpl<OperMenuDao, OperMenuEn
} }
//保存到缓存 //保存到缓存
operMenuRedis.setUserPermissions(userInfo.getUserId(), userInfo.getApp(), userInfo.getClient(), permsSet); operMenuRedis.setUserPermissions(tokenDto.getUserId(), tokenDto.getApp(), tokenDto.getClient(), permsSet);
return permsSet; return permsSet;
} }

17
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/OperUserController.java

@ -17,8 +17,9 @@
package com.epmet.controller; package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.user.UserDetail; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
@ -96,6 +97,20 @@ public class OperUserController {
/** /**
* 获取运营人员信息 * 获取运营人员信息
*
* @param tokenDto token
* @return OperUserDTO
* @author zhaoqifeng
*/
@GetMapping("queryOperUserDto")
public Result<OperUserDTO> queryOperUserDto(@LoginUser TokenDto tokenDto) {
OperUserDTO data = operUserService.getOperUserInfoById(tokenDto.getUserId());
return new Result<OperUserDTO>().ok(data);
}
/**
* 获取运营人员信息
*
* @param operUserId oper_user表主键 * @param operUserId oper_user表主键
* @return OperUserDTO * @return OperUserDTO
* @author zhaoqifeng * @author zhaoqifeng

7
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/OperUserServiceImpl.java

@ -53,11 +53,13 @@ public class OperUserServiceImpl extends BaseServiceImpl<OperUserDao, OperUserEn
@Override @Override
public PageData<OperUserDTO> page(Map<String, Object> params) { public PageData<OperUserDTO> page(Map<String, Object> params) {
IPage<OperUserEntity> page = baseDao.selectPage( IPage<OperUserEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false), getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params) getWrapper(params)
); );
return getPageData(page, OperUserDTO.class); return getPageData(page, OperUserDTO.class);
} }
@Override @Override
@ -69,10 +71,9 @@ public class OperUserServiceImpl extends BaseServiceImpl<OperUserDao, OperUserEn
private QueryWrapper<OperUserEntity> getWrapper(Map<String, Object> params){ private QueryWrapper<OperUserEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP); String id = (String)params.get(FieldConstant.ID_HUMP);
String realName = (String)params.get("realName");
QueryWrapper<OperUserEntity> wrapper = new QueryWrapper<>(); QueryWrapper<OperUserEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id).like(StringUtils.isNotBlank(realName), "real_name", realName);
return wrapper; return wrapper;
} }

Loading…
Cancel
Save