메뉴 권한별 레디스저장 권한 조건 추가
This commit is contained in:
@@ -12,6 +12,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import io.swagger.v3.oas.annotations.responses.ApiResponse;
|
||||
import io.swagger.v3.oas.annotations.responses.ApiResponses;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import java.nio.file.AccessDeniedException;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -85,7 +86,7 @@ public class MenuApiController {
|
||||
@ApiResponse(responseCode = "500", description = "서버 오류", content = @Content)
|
||||
})
|
||||
@PostMapping("/auth")
|
||||
public ApiResponseDto<Void> getFindByRoleRedis() {
|
||||
public ApiResponseDto<Void> getFindByRoleRedis() throws AccessDeniedException {
|
||||
menuService.getFindByRoleRedis();
|
||||
return ApiResponseDto.createOK(null);
|
||||
}
|
||||
|
||||
@@ -4,8 +4,10 @@ import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.JavaType;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.kamco.cd.kamcoback.common.enums.RoleType;
|
||||
import com.kamco.cd.kamcoback.common.utils.UserUtil;
|
||||
import com.kamco.cd.kamcoback.menu.dto.MenuDto;
|
||||
import com.kamco.cd.kamcoback.postgres.core.MenuCoreService;
|
||||
import java.nio.file.AccessDeniedException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
@@ -20,6 +22,7 @@ public class MenuService {
|
||||
private final MenuCoreService menuCoreService;
|
||||
private final StringRedisTemplate redisTemplate;
|
||||
private final ObjectMapper objectMapper;
|
||||
private final UserUtil userUtil;
|
||||
|
||||
@Cacheable(value = "menuFindAll")
|
||||
public List<MenuDto.Basic> getFindAll() {
|
||||
@@ -31,7 +34,12 @@ public class MenuService {
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public void getFindByRoleRedis() {
|
||||
public void getFindByRoleRedis() throws AccessDeniedException {
|
||||
|
||||
if (!userUtil.getRole().equals(RoleType.ADMIN.getId())) {
|
||||
throw new AccessDeniedException("권한을 확인해 주세요.");
|
||||
}
|
||||
|
||||
for (RoleType role : RoleType.values()) {
|
||||
List<MenuDto.Basic> menus = menuCoreService.getFindByRole(role.name());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user