Skip to content

Commit de13fed

Browse files
committed
refactor: long id를 받도록 ScoreController 수정
1 parent 2d5f877 commit de13fed

5 files changed

Lines changed: 33 additions & 22 deletions

File tree

src/main/java/com/example/solidconnection/score/controller/ScoreController.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import com.example.solidconnection.score.dto.LanguageTestScoreRequest;
77
import com.example.solidconnection.score.dto.LanguageTestScoreStatusesResponse;
88
import com.example.solidconnection.score.service.ScoreService;
9-
import com.example.solidconnection.siteuser.domain.SiteUser;
109
import jakarta.validation.Valid;
1110
import lombok.RequiredArgsConstructor;
1211
import org.springframework.http.ResponseEntity;
@@ -28,40 +27,40 @@ public class ScoreController {
2827
// 학점을 등록하는 api
2928
@PostMapping("/gpas")
3029
public ResponseEntity<Long> submitGpaScore(
31-
@AuthorizedUser SiteUser siteUser,
30+
@AuthorizedUser long siteUserId,
3231
@Valid @RequestPart("gpaScoreRequest") GpaScoreRequest gpaScoreRequest,
3332
@RequestParam("file") MultipartFile file
3433
) {
35-
Long id = scoreService.submitGpaScore(siteUser, gpaScoreRequest, file);
34+
Long id = scoreService.submitGpaScore(siteUserId, gpaScoreRequest, file);
3635
return ResponseEntity.ok(id);
3736
}
3837

3938
// 어학성적을 등록하는 api
4039
@PostMapping("/language-tests")
4140
public ResponseEntity<Long> submitLanguageTestScore(
42-
@AuthorizedUser SiteUser siteUser,
41+
@AuthorizedUser long siteUserId,
4342
@Valid @RequestPart("languageTestScoreRequest") LanguageTestScoreRequest languageTestScoreRequest,
4443
@RequestParam("file") MultipartFile file
4544
) {
46-
Long id = scoreService.submitLanguageTestScore(siteUser, languageTestScoreRequest, file);
45+
Long id = scoreService.submitLanguageTestScore(siteUserId, languageTestScoreRequest, file);
4746
return ResponseEntity.ok(id);
4847
}
4948

5049
// 학점 상태를 확인하는 api
5150
@GetMapping("/gpas")
5251
public ResponseEntity<GpaScoreStatusesResponse> getGpaScoreStatus(
53-
@AuthorizedUser SiteUser siteUser
52+
@AuthorizedUser long siteUserId
5453
) {
55-
GpaScoreStatusesResponse gpaScoreStatus = scoreService.getGpaScoreStatus(siteUser);
54+
GpaScoreStatusesResponse gpaScoreStatus = scoreService.getGpaScoreStatus(siteUserId);
5655
return ResponseEntity.ok(gpaScoreStatus);
5756
}
5857

5958
// 어학 성적 상태를 확인하는 api
6059
@GetMapping("/language-tests")
6160
public ResponseEntity<LanguageTestScoreStatusesResponse> getLanguageTestScoreStatus(
62-
@AuthorizedUser SiteUser siteUser
61+
@AuthorizedUser long siteUserId
6362
) {
64-
LanguageTestScoreStatusesResponse languageTestScoreStatus = scoreService.getLanguageTestScoreStatus(siteUser);
63+
LanguageTestScoreStatusesResponse languageTestScoreStatus = scoreService.getLanguageTestScoreStatus(siteUserId);
6564
return ResponseEntity.ok(languageTestScoreStatus);
6665
}
6766
}

src/main/java/com/example/solidconnection/score/service/ScoreService.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
package com.example.solidconnection.score.service;
22

3+
import static com.example.solidconnection.common.exception.ErrorCode.USER_NOT_FOUND;
4+
35
import com.example.solidconnection.application.domain.Gpa;
46
import com.example.solidconnection.application.domain.LanguageTest;
7+
import com.example.solidconnection.common.exception.CustomException;
58
import com.example.solidconnection.s3.domain.ImgType;
69
import com.example.solidconnection.s3.dto.UploadedFileUrlResponse;
710
import com.example.solidconnection.s3.service.S3Service;
@@ -16,6 +19,7 @@
1619
import com.example.solidconnection.score.repository.GpaScoreRepository;
1720
import com.example.solidconnection.score.repository.LanguageTestScoreRepository;
1821
import com.example.solidconnection.siteuser.domain.SiteUser;
22+
import com.example.solidconnection.siteuser.repository.SiteUserRepository;
1923
import java.util.List;
2024
import java.util.stream.Collectors;
2125
import lombok.RequiredArgsConstructor;
@@ -30,9 +34,12 @@ public class ScoreService {
3034
private final GpaScoreRepository gpaScoreRepository;
3135
private final S3Service s3Service;
3236
private final LanguageTestScoreRepository languageTestScoreRepository;
37+
private final SiteUserRepository siteUserRepository;
3338

3439
@Transactional
35-
public Long submitGpaScore(SiteUser siteUser, GpaScoreRequest gpaScoreRequest, MultipartFile file) {
40+
public Long submitGpaScore(long siteUserId, GpaScoreRequest gpaScoreRequest, MultipartFile file) {
41+
SiteUser siteUser = siteUserRepository.findById(siteUserId)
42+
.orElseThrow(() -> new CustomException(USER_NOT_FOUND));
3643
UploadedFileUrlResponse uploadedFile = s3Service.uploadFile(file, ImgType.GPA);
3744
Gpa gpa = new Gpa(gpaScoreRequest.gpa(), gpaScoreRequest.gpaCriteria(), uploadedFile.fileUrl());
3845
GpaScore newGpaScore = new GpaScore(gpa, siteUser);
@@ -41,7 +48,9 @@ public Long submitGpaScore(SiteUser siteUser, GpaScoreRequest gpaScoreRequest, M
4148
}
4249

4350
@Transactional
44-
public Long submitLanguageTestScore(SiteUser siteUser, LanguageTestScoreRequest languageTestScoreRequest, MultipartFile file) {
51+
public Long submitLanguageTestScore(long siteUserId, LanguageTestScoreRequest languageTestScoreRequest, MultipartFile file) {
52+
SiteUser siteUser = siteUserRepository.findById(siteUserId)
53+
.orElseThrow(() -> new CustomException(USER_NOT_FOUND));
4554
UploadedFileUrlResponse uploadedFile = s3Service.uploadFile(file, ImgType.LANGUAGE_TEST);
4655
LanguageTest languageTest = new LanguageTest(languageTestScoreRequest.languageTestType(),
4756
languageTestScoreRequest.languageTestScore(), uploadedFile.fileUrl());
@@ -51,7 +60,9 @@ public Long submitLanguageTestScore(SiteUser siteUser, LanguageTestScoreRequest
5160
}
5261

5362
@Transactional(readOnly = true)
54-
public GpaScoreStatusesResponse getGpaScoreStatus(SiteUser siteUser) {
63+
public GpaScoreStatusesResponse getGpaScoreStatus(long siteUserId) {
64+
SiteUser siteUser = siteUserRepository.findById(siteUserId)
65+
.orElseThrow(() -> new CustomException(USER_NOT_FOUND));
5566
List<GpaScoreStatusResponse> gpaScoreStatusResponseList =
5667
gpaScoreRepository.findBySiteUserId(siteUser.getId())
5768
.stream()
@@ -62,7 +73,9 @@ public GpaScoreStatusesResponse getGpaScoreStatus(SiteUser siteUser) {
6273
}
6374

6475
@Transactional(readOnly = true)
65-
public LanguageTestScoreStatusesResponse getLanguageTestScoreStatus(SiteUser siteUser) {
76+
public LanguageTestScoreStatusesResponse getLanguageTestScoreStatus(long siteUserId) {
77+
SiteUser siteUser = siteUserRepository.findById(siteUserId)
78+
.orElseThrow(() -> new CustomException(USER_NOT_FOUND));
6679
List<LanguageTestScore> languageTestScores = languageTestScoreRepository.findBySiteUserId(siteUser.getId());
6780

6881
List<LanguageTestScoreStatusResponse> languageTestScoreStatusResponseList =

src/main/java/com/example/solidconnection/siteuser/service/MyPageService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public void updateMyPageInfo(SiteUser siteUser, MultipartFile imageFile, String
5757
if (imageFile != null && !imageFile.isEmpty()) {
5858
UploadedFileUrlResponse uploadedFile = s3Service.uploadFile(imageFile, ImgType.PROFILE);
5959
if (!isDefaultProfileImage(user.getProfileImageUrl())) {
60-
s3Service.deleteExProfile(user);
60+
s3Service.deleteExProfile(user.getId());
6161
}
6262
String profileImageUrl = uploadedFile.fileUrl();
6363
user.setProfileImageUrl(profileImageUrl);

src/test/java/com/example/solidconnection/score/service/ScoreServiceTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ void setUp() {
7070
);
7171

7272
// when
73-
GpaScoreStatusesResponse response = scoreService.getGpaScoreStatus(user);
73+
GpaScoreStatusesResponse response = scoreService.getGpaScoreStatus(user.getId());
7474

7575
// then
7676
assertThat(response.gpaScoreStatusResponseList()).hasSize(scores.size());
@@ -79,7 +79,7 @@ void setUp() {
7979
@Test
8080
void GPA_점수가_없는_경우_빈_리스트를_반환한다() {
8181
// when
82-
GpaScoreStatusesResponse response = scoreService.getGpaScoreStatus(user);
82+
GpaScoreStatusesResponse response = scoreService.getGpaScoreStatus(user.getId());
8383

8484
// then
8585
assertThat(response.gpaScoreStatusResponseList()).isEmpty();
@@ -94,7 +94,7 @@ void setUp() {
9494
);
9595

9696
// when
97-
LanguageTestScoreStatusesResponse response = scoreService.getLanguageTestScoreStatus(user);
97+
LanguageTestScoreStatusesResponse response = scoreService.getLanguageTestScoreStatus(user.getId());
9898

9999
// then
100100
assertThat(response.languageTestScoreStatusResponseList()).hasSize(scores.size());
@@ -103,7 +103,7 @@ void setUp() {
103103
@Test
104104
void 어학_시험_점수가_없는_경우_빈_리스트를_반환한다() {
105105
// when
106-
LanguageTestScoreStatusesResponse response = scoreService.getLanguageTestScoreStatus(user);
106+
LanguageTestScoreStatusesResponse response = scoreService.getLanguageTestScoreStatus(user.getId());
107107

108108
// then
109109
assertThat(response.languageTestScoreStatusResponseList()).isEmpty();
@@ -118,7 +118,7 @@ void setUp() {
118118
given(s3Service.uploadFile(file, ImgType.GPA)).willReturn(new UploadedFileUrlResponse(fileUrl));
119119

120120
// when
121-
long scoreId = scoreService.submitGpaScore(user, request, file);
121+
long scoreId = scoreService.submitGpaScore(user.getId(), request, file);
122122
GpaScore savedScore = gpaScoreRepository.findById(scoreId).orElseThrow();
123123

124124
// then
@@ -134,7 +134,7 @@ void setUp() {
134134
given(s3Service.uploadFile(file, ImgType.LANGUAGE_TEST)).willReturn(new UploadedFileUrlResponse(fileUrl));
135135

136136
// when
137-
long scoreId = scoreService.submitLanguageTestScore(user, request, file);
137+
long scoreId = scoreService.submitLanguageTestScore(user.getId(), request, file);
138138
LanguageTestScore savedScore = languageTestScoreRepository.findById(scoreId).orElseThrow();
139139

140140
// then

src/test/java/com/example/solidconnection/siteuser/service/MyPageServiceTest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,7 @@ class 프로필_이미지_수정_테스트 {
134134
myPageService.updateMyPageInfo(커스텀_프로필_사용자, imageFile, "newNickname");
135135

136136
// then
137-
then(s3Service).should().deleteExProfile(argThat(user ->
138-
user.getId().equals(커스텀_프로필_사용자.getId())));
137+
then(s3Service).should().deleteExProfile(argThat(userId -> userId.equals(커스텀_프로필_사용자.getId())));
139138
}
140139
}
141140

0 commit comments

Comments
 (0)