获取当前登录的用户权限

This commit is contained in:
root
2021-06-29 17:28:16 +08:00
parent 33254d9248
commit c4a885922d
14 changed files with 148 additions and 2 deletions
@@ -3,6 +3,7 @@ package com.adc.da.slrs.sarUser.controller;
import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
import com.adc.da.slrs.sarMenu.entity.SarMenu;
import com.adc.da.slrs.sarUser.entity.UserPositionVO;
import com.adc.da.slrs.sarUser.service.ITsUserService;
import io.swagger.annotations.ApiOperation;
@@ -14,6 +15,7 @@ import io.swagger.annotations.Api;
import com.adc.da.base.web.BaseController;
import javax.validation.Valid;
import java.util.List;
/**
* <p>
@@ -46,6 +48,13 @@ public class TsUserController extends BaseController<TsUser> {
return tsUserService.setPosition(userPositionVO);
}
@ApiOperation("查询当前登录用户权限")
@GetMapping("/menu")
public ResponseMessage<List<SarMenu>> getMenu(){
List<SarMenu> menus=tsUserService.getMenu();
return Result.success(menus);
}
}
@@ -2,6 +2,7 @@ package com.adc.da.slrs.sarUser.dao;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
@@ -36,6 +37,7 @@ public interface TsUserDao extends BaseMapper<TsUser> {
* @param userId:用户ID
* @param positionId:岗位ID
*/
@Delete("delete from ts_user_position where user_id=#{userId} and position_id=#{positionId}")
void delPosition(String userId, String positionId);
/**
@@ -1,6 +1,7 @@
package com.adc.da.slrs.sarUser.service;
import com.adc.da.http.ResponseMessage;
import com.adc.da.slrs.sarMenu.entity.SarMenu;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.adc.da.slrs.sarUser.entity.UserPositionVO;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -38,4 +39,10 @@ public interface ITsUserService extends IService<TsUser> {
* @return ResponseMessage<Object>
*/
ResponseMessage<Object> setPosition(UserPositionVO userPositionVO);
/**
* 查询当前登录的用户权限
* @return List<SarMenu>
*/
List<SarMenu> getMenu();
}
@@ -2,10 +2,18 @@ package com.adc.da.slrs.sarUser.service.impl;
import com.adc.da.http.ResponseMessage;
import com.adc.da.http.Result;
import com.adc.da.login.util.UserUtils;
import com.adc.da.slrs.sarMenu.entity.SarMenu;
import com.adc.da.slrs.sarMenu.service.ISarMenuService;
import com.adc.da.slrs.sarPosition.entity.TsPosition;
import com.adc.da.slrs.sarPosition.service.ITsPositionService;
import com.adc.da.slrs.sarRole.service.ITsRoleService;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.adc.da.slrs.sarUser.dao.TsUserDao;
import com.adc.da.slrs.sarUser.entity.UserPositionVO;
import com.adc.da.slrs.sarUser.service.ITsUserService;
import com.adc.da.sys.entity.UserEO;
import com.adc.da.util.LoginUserUtil;
import com.adc.da.utils.util.ListUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -13,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.awt.*;
import java.util.List;
import java.util.Map;
@@ -28,6 +37,12 @@ import java.util.Map;
public class TsUserServiceImpl extends ServiceImpl<TsUserDao, TsUser> implements ITsUserService {
@Autowired
private TsUserDao tsUserDao;
@Autowired
private ITsPositionService tsPositionService;
@Autowired
private ITsRoleService tsRoleService;
@Autowired
private ISarMenuService sarMenuService;
/**
* 通过机构ID查询人员
@@ -95,4 +110,19 @@ public class TsUserServiceImpl extends ServiceImpl<TsUserDao, TsUser> implements
}
return Result.success();
}
/**
* 查询当前登录的用户权限
* @return List<SarMenu>
*/
@Override
public List<SarMenu> getMenu() {
UserEO userEO=UserUtils.getUser();
String userId= userEO.getUsid();
System.out.println(userId);
List<String> positionIds=tsUserDao.selectPositionIds(userId);
List<String> roleIds=tsPositionService.getRoleIdsByPositionIds(positionIds);
List<String> menuIds=tsRoleService.getMenuIdsByRoleIds(roleIds);
return sarMenuService.getMenuByIds(menuIds);
}
}