From 3ac224a3726dcf2bf79f8f32c25411a6d92dd988 Mon Sep 17 00:00:00 2001 From: minjee2758 Date: Mon, 28 Jul 2025 21:57:28 +0900 Subject: [PATCH] =?UTF-8?q?feature=20:=20auto=20push=20=EC=97=AC=EB=B6=80?= =?UTF-8?q?=20=EC=A1=B0=ED=9A=8C=20api?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/user/service/UserGithubService.java | 9 +++++++++ .../usermanagement/UserGithubController.java | 11 +++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/main/java/org/ezcode/codetest/domain/user/service/UserGithubService.java b/src/main/java/org/ezcode/codetest/domain/user/service/UserGithubService.java index 1f8eea80..d48b57b0 100644 --- a/src/main/java/org/ezcode/codetest/domain/user/service/UserGithubService.java +++ b/src/main/java/org/ezcode/codetest/domain/user/service/UserGithubService.java @@ -126,4 +126,13 @@ public UserGitubAutoPushResponse changeAutoPushSetting(AuthUser authUser) { return new UserGitubAutoPushResponse("변경되었습니다", user.getGitPushStatus()); } + + public UserGitubAutoPushResponse getAutoPushStatus(AuthUser authUser) { + UserGithubInfo userGithubInfo = userGithubInfoRepository.getUserGithubInfo(authUser.getId()); + if (userGithubInfo == null) { //유저의 깃허브 정보가 없으면 에러 반환 + throw new UserException(UserExceptionCode.NO_GITHUB_INFO); + } + User user = userGithubInfo.getUser(); + return new UserGitubAutoPushResponse("현재 githubAutoPush 설정", user.getGitPushStatus()); + } } diff --git a/src/main/java/org/ezcode/codetest/presentation/usermanagement/UserGithubController.java b/src/main/java/org/ezcode/codetest/presentation/usermanagement/UserGithubController.java index 1fedf951..8f45bff3 100644 --- a/src/main/java/org/ezcode/codetest/presentation/usermanagement/UserGithubController.java +++ b/src/main/java/org/ezcode/codetest/presentation/usermanagement/UserGithubController.java @@ -54,4 +54,15 @@ public ResponseEntity changeAutoPushSetting( ){ return ResponseEntity.status(HttpStatus.OK).body(userGithubService.changeAutoPushSetting(authUser)); } + + @Operation( + summary = "깃허브 자동 push 여부 true false 조회", + description = "유저 DB에서 autoPush 여부를 찾아 true/false로 반환합니다. ex- message : '현재 githubAutoPush 설정', gitPushStatus : true " + ) + @GetMapping("/users/github/status") + public ResponseEntity AutoPushStatus( + @AuthenticationPrincipal AuthUser authUser + ){ + return ResponseEntity.status(HttpStatus.OK).body(userGithubService.getAutoPushStatus(authUser)); + } }