Skip to content

Commit 5d60c81

Browse files
committed
fix: 안드로이드 앱 버전 null 체크
1 parent 94cc8e3 commit 5d60c81

3 files changed

Lines changed: 11 additions & 3 deletions

File tree

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
package bitnagil.bitnagil_backend.appVersion.Repository;
22

3+
import java.util.Optional;
4+
35
import org.springframework.data.jpa.repository.JpaRepository;
46

57
import bitnagil.bitnagil_backend.appVersion.domain.AndroidAppVersion;
68

79
public interface AndroidAppVersionRepository extends JpaRepository<AndroidAppVersion, Long> {
810

911
// major, minor가 가장 높은 AndroidAppVersion을 조회
10-
AndroidAppVersion findFirstByOrderByMajorDescMinorDesc();
12+
Optional<AndroidAppVersion> findFirstByOrderByMajorDescMinorDesc();
1113
}

src/main/java/bitnagil/bitnagil_backend/appVersion/service/AndroidAppVersionService.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
import bitnagil.bitnagil_backend.appVersion.Repository.AndroidAppVersionRepository;
77
import bitnagil.bitnagil_backend.appVersion.domain.AndroidAppVersion;
88
import bitnagil.bitnagil_backend.appVersion.response.ForceUpdateResponse;
9+
import bitnagil.bitnagil_backend.global.errorcode.ErrorCode;
10+
import bitnagil.bitnagil_backend.global.exception.CustomException;
911
import lombok.RequiredArgsConstructor;
1012

1113
@Service
@@ -17,7 +19,8 @@ public class AndroidAppVersionService {
1719
@Transactional(readOnly = true)
1820
public ForceUpdateResponse validateForceUpdateRequired(Integer clientMajor, Integer clientMinor) {
1921

20-
AndroidAppVersion latestVersion = androidAppVersionRepository.findFirstByOrderByMajorDescMinorDesc();
22+
AndroidAppVersion latestVersion = androidAppVersionRepository.findFirstByOrderByMajorDescMinorDesc()
23+
.orElseThrow(() -> new CustomException(ErrorCode.NOT_FOUND_ANDROID_APP_VERSION));
2124

2225
// major 비교
2326
if (clientMajor < latestVersion.getMajor()) {

src/main/java/bitnagil/bitnagil_backend/global/errorcode/ErrorCode.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,10 @@ public enum ErrorCode {
8787
JSON_PARSE_ERROR("ETC001", HttpStatus.INTERNAL_SERVER_ERROR, "JSON 문자열을 List<String> 으로 변환하는 데 실패했습니다."),
8888

8989
// 제보 관련 에러코드
90-
NOT_FOUND_REPORT("RP001", HttpStatus.NOT_FOUND, "존재하지 않는 제보입니다.");
90+
NOT_FOUND_REPORT("RP001", HttpStatus.NOT_FOUND, "존재하지 않는 제보입니다."),
91+
92+
// 안드로이드 버전 관련 에러코드
93+
NOT_FOUND_ANDROID_APP_VERSION("AAV001", HttpStatus.NOT_FOUND, "안드로이드 앱 버전을 찾을 수 없습니다.");
9194

9295

9396

0 commit comments

Comments
 (0)