Skip to content

[기능개선][BE] 포인트 예외 처리 및 모의트레이딩 재베팅 로직 수정 #182

@Yooonjeong

Description

@Yooonjeong

📝 현재 문제점

  1. 포인트 업데이트 로직에서 비즈니스 로직 예외 발생 시 적절한 예외 처리 없이 500 에러가 발생하고 있습니다.

  2. 베팅 후 취소된 베팅에 대해 재베팅이 불가한 문제가 있습니다.

  3. 로그인 후 일정 시간이 지난 뒤 인증이 필요한 베팅 관련 API 호출 시 500 에러가 발생하는 문제가 있습니다.

🛠️ 해결 방안 / 제안 기능

  1. 포인트 업데이트 로직 내 Retryable 어노테이션을 사용하는 메서드에 대해 recover 메서드를 추가로 정의하여, 비즈니스 로직 예외가 발생할 경우에 커스텀 예외를 명확하게 던지도록 개선합니다.

  2. 베팅 로직에서 단순히 베팅 존재 여부만 확인하는 것이 아닌 해당 베팅의 상태도 함께 검증하도록 로직을 보완합니다. 재베팅 시에는 유니크 제약을 고려하여 기존 베팅의 값을 업데이트할 수 있도록 합니다.

  3. /user-bets/** URI에 대한 Spring Security 설정을 permitAll에서 authenticated로 변경하여, 인증 정보가 없는 요청에 대해서 401 에러를 반환하고 NPE와 같은 예외를 방지합니다.

⚙️ 작업 내용

  • 포인트 업데이트 서비스에 CustomException 관련 @Recover 메서드 구현
  • 베팅 도메인 내 상태값에 대한 검증 및 처리 로직 추가
  • Spring Security 설정 파일에서 /user-bets/** URI에 대해 인증 필요하도록 변경

🙋‍♂️ 담당자

Metadata

Metadata

Assignees

Labels

BE백엔드 이슈

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions