|
@@ -188,21 +188,27 @@ public class AclService {
|
|
|
* 将用户信息保存到session
|
|
|
*/
|
|
|
private void saveSession(HttpSession session, User userEntity, TokenVo tokenEntity) {
|
|
|
+ // web发布公告需要检查权限记录操作日志,保存用户信息到session
|
|
|
if (!("permission".equals(tokenEntity.getSystem()) || "web".equals(tokenEntity.getSystem()))) {
|
|
|
return;
|
|
|
}
|
|
|
- QueryWrapper<UserRoleCity> wrapper = new QueryWrapper<>();
|
|
|
- Map<String, Object> map = new HashMap<>();
|
|
|
- map.put("user_id", userEntity.getUserId());
|
|
|
- map.put("role_id", -1);
|
|
|
- wrapper.allEq(map);
|
|
|
- UserRoleCity userRoleCity = userRoleCityDao.selectOne(wrapper);
|
|
|
- if (userRoleCity == null) {
|
|
|
- throw new BizException("没有权限");
|
|
|
+ // 权限管理页面检查是否有管理权限
|
|
|
+ if ("permission".equals(tokenEntity.getSystem())) {
|
|
|
+ QueryWrapper<UserRoleCity> wrapper = new QueryWrapper<>();
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ map.put("user_id", userEntity.getUserId());
|
|
|
+ map.put("role_id", -1);
|
|
|
+ wrapper.allEq(map);
|
|
|
+ UserRoleCity userRoleCity = userRoleCityDao.selectOne(wrapper);
|
|
|
+ if (userRoleCity == null) {
|
|
|
+ throw new BizException("没有权限");
|
|
|
+ }
|
|
|
+ log.debug("role: {}", JSON.toJSONString(userRoleCity));
|
|
|
+ // 将权限保存到session
|
|
|
+ session.setAttribute("role", userRoleCity);
|
|
|
}
|
|
|
- log.debug("role: {}", JSON.toJSONString(userRoleCity));
|
|
|
+ // 保存用户信息到session
|
|
|
session.setAttribute("userinfo", userEntity);
|
|
|
- session.setAttribute("role", userRoleCity);
|
|
|
session.setMaxInactiveInterval(timeoutSeconds);
|
|
|
}
|
|
|
|
|
@@ -297,7 +303,7 @@ public class AclService {
|
|
|
webVo.setUserName(userEntity.getUserName());
|
|
|
webVo.setNotices(notices);
|
|
|
webVo.setFunctions(functions);
|
|
|
- // 查询是否有管理公告权限
|
|
|
+ // 查询是否有发布公告权限
|
|
|
boolean hasNotice = userDao.hasRole(-2, userEntity.getUserId());
|
|
|
webVo.setHasNotice(hasNotice);
|
|
|
return R.ok().data(webVo);
|