英文翻译
This commit is contained in:
@ -294,9 +294,10 @@ public class PermissionController {
|
||||
public DataResult<List<PermissionRespNode>> getStationPer(@RequestBody PermStationRelation permStationRelation, HttpServletRequest request) {
|
||||
String token = request.getHeader(RedisKeyConstant.User.ACCESS_TOKEN);
|
||||
String userTokenKey = RedisKeyConstant.User.TOKEN + token;
|
||||
String lang=request.getHeader(RedisKeyConstant.User.LANG);
|
||||
UserDetailRespVO user = (UserDetailRespVO) redisService.get(userTokenKey);
|
||||
DataResult<List<PermissionRespNode>> result = DataResult.success();
|
||||
result.setData(permissionService.getStationPer(permStationRelation.getStationId(),user));
|
||||
result.setData(permissionService.getStationPer(permStationRelation.getStationId(),user,lang));
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@ -96,6 +96,7 @@ public class UserController {
|
||||
public DataResult<UserDetailRespVO> yourSelfInfo(@RequestParam(required = false) String type,HttpServletRequest request) {
|
||||
String token = request.getHeader(RedisKeyConstant.User.ACCESS_TOKEN);
|
||||
String userTokenKey = RedisKeyConstant.User.TOKEN + token;
|
||||
String lang =request.getHeader(RedisKeyConstant.User.LANG);
|
||||
//根据用户的登陆方式(账号还是手机号),延长对应缓存
|
||||
if (redisService.hasKey(userTokenKey)) {
|
||||
//每次获取用户信息,都会进行过期时间的延长
|
||||
@ -105,7 +106,7 @@ public class UserController {
|
||||
if(null != type){
|
||||
user.setConfigType(type);
|
||||
}
|
||||
UserDetailRespVO vo = userService.yourSelfInfo(user, simpleUser.getPlatSuper());
|
||||
UserDetailRespVO vo = userService.yourSelfInfo(user, simpleUser.getPlatSuper(),lang);
|
||||
//延长token时间
|
||||
//redisCommon.extendKeyTime(userTokenKey, null);
|
||||
//String userNameKey = RedisKeyConstant.User.USER_NAME + user.getUsername();
|
||||
|
||||
@ -50,5 +50,5 @@ public interface SysPermissionMapper {
|
||||
|
||||
List<SysPermission> selectByScope();
|
||||
|
||||
List<SysPermission> selectByIds(@Param("ids") List<Integer> perIds);
|
||||
List<SysPermission> selectByIds(@Param("ids") List<Integer> perIds,@Param("lang") String lang);
|
||||
}
|
||||
@ -25,7 +25,7 @@ public interface PermissionService {
|
||||
|
||||
List<SysPermission> getPermission(String userId);
|
||||
|
||||
List<SysPermission> getPermissionByRoleIds(List<Integer> roleIds);
|
||||
List<SysPermission> getPermissionByRoleIds(List<Integer> roleIds,String lang);
|
||||
|
||||
List<SysPermission> getPermissionByTop();
|
||||
|
||||
@ -66,7 +66,7 @@ public interface PermissionService {
|
||||
List<SysPermission> getSysMangeMenus(List<SysPermission> list, List<Integer> queryIds);
|
||||
|
||||
|
||||
List<PermissionRespNode> getStationPer(Integer stationId, UserDetailRespVO user);
|
||||
List<PermissionRespNode> getStationPer(Integer stationId, UserDetailRespVO user,String lang);
|
||||
|
||||
List<PermissionRespNode> getAll(QueryPermissionReqVo query);
|
||||
}
|
||||
|
||||
@ -75,7 +75,7 @@ public interface UserService {
|
||||
|
||||
List<SysUser> selectIds(List<String> userIds);
|
||||
|
||||
UserDetailRespVO yourSelfInfo(UserDetailRespVO user, boolean platSuper);
|
||||
UserDetailRespVO yourSelfInfo(UserDetailRespVO user, boolean platSuper,String lang);
|
||||
|
||||
//清除用户缓存
|
||||
void removeUserCache(String username, String loginChannel);
|
||||
|
||||
@ -91,12 +91,13 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
|
||||
//根据roleIds查询菜单
|
||||
@Override
|
||||
public List<SysPermission> getPermissionByRoleIds(List<Integer> roleIds) {
|
||||
public List<SysPermission> getPermissionByRoleIds(List<Integer> roleIds,String lang) {
|
||||
List<Integer> permissionIds = rolePermissionService.getPermissionIdsByRoles(roleIds);
|
||||
if (permissionIds.isEmpty()) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
QueryPermissionReqVo query = new QueryPermissionReqVo();
|
||||
query.setLang(lang);
|
||||
List<SysPermission> result = sysPermissionMapper.selectInfoByIds(query, permissionIds);
|
||||
return result;
|
||||
}
|
||||
@ -1120,21 +1121,21 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PermissionRespNode> getStationPer(Integer stationId, UserDetailRespVO user) {
|
||||
public List<PermissionRespNode> getStationPer(Integer stationId, UserDetailRespVO user,String lang) {
|
||||
List<SysPermission> list = new ArrayList<>();
|
||||
//查询当前登录人所拥有的菜单
|
||||
List<Integer> roleIds = user.getRoleIds();
|
||||
List<SysPermission> userPermissions = new ArrayList<>();
|
||||
if (!roleIds.isEmpty()) {
|
||||
//到关联表中根据角色id 拿到对应的菜单id
|
||||
List<SysPermission> result = getPermissionByRoleIds(roleIds);
|
||||
List<SysPermission> result = getPermissionByRoleIds(roleIds,lang);
|
||||
List<Integer> perIds = result.stream().map(s -> {
|
||||
return s.getId();
|
||||
}
|
||||
).collect(Collectors.toList());
|
||||
// List<Integer> permissionIdsByRoles = rolePermissionService.getPermissionIdsByRoles(roleIds);
|
||||
//根据菜单Id拿到菜单列表
|
||||
List<SysPermission> sysPermissions = selectByIds(perIds);
|
||||
List<SysPermission> sysPermissions = selectByIds(perIds,lang);
|
||||
//过滤掉按钮类型的数据
|
||||
userPermissions = sysPermissions.stream().filter(s -> !s.getType().equals(CommonConstant.THREE)).collect(Collectors.toList());
|
||||
}
|
||||
@ -1147,7 +1148,7 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
}
|
||||
).collect(Collectors.toList());
|
||||
if (!perIds.isEmpty()) {
|
||||
permissions = selectByIds(perIds);
|
||||
permissions = selectByIds(perIds,lang);
|
||||
}
|
||||
if (permissions.isEmpty()) {
|
||||
list = userPermissions;
|
||||
@ -1178,8 +1179,8 @@ public class PermissionServiceImpl implements PermissionService {
|
||||
return tree;
|
||||
}
|
||||
|
||||
private List<SysPermission> selectByIds(List<Integer> perIds){
|
||||
List<SysPermission> sysPermissions = sysPermissionMapper.selectByIds(perIds);
|
||||
private List<SysPermission> selectByIds(List<Integer> perIds,String lang){
|
||||
List<SysPermission> sysPermissions = sysPermissionMapper.selectByIds(perIds,lang);
|
||||
return sysPermissions;
|
||||
}
|
||||
}
|
||||
|
||||
@ -115,13 +115,13 @@ public class UserServiceImpl implements UserService {
|
||||
private String env;
|
||||
|
||||
@Override
|
||||
public UserDetailRespVO yourSelfInfo(UserDetailRespVO user, boolean platSuper) {
|
||||
public UserDetailRespVO yourSelfInfo(UserDetailRespVO user, boolean platSuper,String lang) {
|
||||
if (user.getRoleIds() == null) {
|
||||
//该用户无有效角色
|
||||
throw new BusinessException(BaseResponseCode.USER_DOES_NOT_VALID_ROLE);
|
||||
}
|
||||
//根据RoleIds在sys_role_permission关联表中拿到 permission_id,在根据permission_id拿到菜单
|
||||
List<SysPermission> result = permissionService.getPermissionByRoleIds(user.getRoleIds());
|
||||
List<SysPermission> result = permissionService.getPermissionByRoleIds(user.getRoleIds(),lang);
|
||||
//将其组成树结构返回
|
||||
//全量的菜单集合
|
||||
List<SysPermission> permissions = new ArrayList<>();
|
||||
@ -890,7 +890,7 @@ public class UserServiceImpl implements UserService {
|
||||
}
|
||||
//非超管,查询角色该有的
|
||||
else {
|
||||
permissions = permissionService.getPermissionByRoleIds(roleIds);
|
||||
permissions = permissionService.getPermissionByRoleIds(roleIds,null);
|
||||
}
|
||||
if (permissions.isEmpty()) {
|
||||
userDetail.setMenuList(new ArrayList<>());
|
||||
|
||||
@ -8,6 +8,12 @@
|
||||
update_time, deleted, `scope`,is_config ,component, menu_name
|
||||
</sql>
|
||||
|
||||
<sql id="Base_Column_List1">
|
||||
id
|
||||
, code, name_en name, perms, url,url_app, icon, icon_app,`method`, pid, order_num, `type`,`show`, color, `status`, create_time,
|
||||
update_time, deleted, `scope`,is_config ,component, menu_name
|
||||
</sql>
|
||||
|
||||
<select id="selectByPrimaryKey" parameterType="java.lang.Integer"
|
||||
resultType="com.ho.common.tools.entity.SysPermission">
|
||||
select
|
||||
@ -278,7 +284,14 @@
|
||||
|
||||
<select id="selectInfoByIds" resultType="com.ho.common.tools.entity.SysPermission">
|
||||
select
|
||||
<include refid="Base_Column_List"></include>
|
||||
<choose>
|
||||
<when test="query.lang != null and query.lang=='en_US' ">
|
||||
<include refid="Base_Column_List1"></include>
|
||||
</when>
|
||||
<otherwise>
|
||||
<include refid="Base_Column_List"></include>
|
||||
</otherwise>
|
||||
</choose>
|
||||
from sys_permission
|
||||
<where>
|
||||
and deleted = 1
|
||||
@ -408,7 +421,14 @@
|
||||
|
||||
<select id="selectByIds" resultType="com.ho.common.tools.entity.SysPermission">
|
||||
select
|
||||
<include refid="Base_Column_List"></include>
|
||||
<choose>
|
||||
<when test="lang != null and lang=='en_US' ">
|
||||
<include refid="Base_Column_List1"></include>
|
||||
</when>
|
||||
<otherwise>
|
||||
<include refid="Base_Column_List"></include>
|
||||
</otherwise>
|
||||
</choose>
|
||||
from sys_permission
|
||||
<where>
|
||||
<if test="ids != null and ids.size != 0">
|
||||
|
||||
Reference in New Issue
Block a user