Skip to content

Commit c5e2b9c

Browse files
committed
[EA3-143] refactor:PR 피드백 적용 리팩터링
1 parent a4769d5 commit c5e2b9c

File tree

8 files changed

+23
-21
lines changed

8 files changed

+23
-21
lines changed

src/main/java/grep/neogul_coder/domain/prtemplate/entity/Link.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package grep.neogul_coder.domain.prtemplate.entity;
22

3+
import grep.neogul_coder.domain.prtemplate.controller.dto.request.LinkUpdateRequest;
34
import grep.neogul_coder.global.entity.BaseEntity;
45
import jakarta.persistence.Entity;
56
import jakarta.persistence.GeneratedValue;
@@ -40,6 +41,11 @@ public static Link LinkInit(Long prId, String prUrl, String urlName) {
4041
.build();
4142
}
4243

44+
public static boolean isRequestLinkEmpty(LinkUpdateRequest request) {
45+
String prUrl = request.getPrUrl();
46+
return prUrl == null || prUrl.isBlank();
47+
}
48+
4349
protected Link() {
4450
}
4551

src/main/java/grep/neogul_coder/domain/prtemplate/service/LinkService.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
import grep.neogul_coder.domain.prtemplate.controller.dto.request.LinkUpdateRequest;
44
import grep.neogul_coder.domain.prtemplate.entity.Link;
55
import grep.neogul_coder.domain.prtemplate.repository.LinkRepository;
6+
import grep.neogul_coder.domain.quiz.exception.code.QuizErrorCode;
7+
import grep.neogul_coder.global.exception.business.BusinessException;
68
import jakarta.transaction.Transactional;
79
import java.util.List;
810
import lombok.RequiredArgsConstructor;
@@ -26,7 +28,7 @@ public void update(Long userId, List<LinkUpdateRequest> requests) {
2628
List<Link> links = linkRepository.findAllByUserId(userId);
2729

2830
if (requests.size() != 2) {
29-
throw new IllegalArgumentException("링크는 정확히 2개가 전달되어야 합니다.");
31+
throw new BusinessException(QuizErrorCode.NEED_CORRECT_COUNT);
3032
}
3133

3234
for (int i = 0; i < links.size(); i++) {
@@ -35,7 +37,7 @@ public void update(Long userId, List<LinkUpdateRequest> requests) {
3537
}
3638

3739
private void applyRequestToLink(Link link, LinkUpdateRequest request) {
38-
if (isRequestLinkEmpty(request)) {
40+
if (Link.isRequestLinkEmpty(request)) {
3941
link.delete();
4042
} else {
4143
link.updateUrlName(request.getUrlName());
@@ -44,9 +46,4 @@ private void applyRequestToLink(Link link, LinkUpdateRequest request) {
4446
}
4547
}
4648

47-
private boolean isRequestLinkEmpty(LinkUpdateRequest request) {
48-
String prUrl = request.getPrUrl();
49-
return prUrl == null || prUrl.isBlank();
50-
}
51-
52-
}
49+
}

src/main/java/grep/neogul_coder/domain/quiz/controller/AiQuizController.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,14 @@ public class AiQuizController implements AiQuizSpecification {
2828

2929
@GetMapping("/{postId}")
3030
public ApiResponse<QuizResponse> get(@PathVariable("postId") Long postId) {
31+
3132
StudyPost post = studyPostService.findById(postId);
33+
3234
if (!Category.FREE.equals((post.getCategory()))) {
3335
throw new PostNotFreeException(QuizErrorCode.POST_NOT_FREE_ERROR);
3436
}
3537

3638
Optional<Quiz> quiz = aiQuizRepository.findByPostId(postId);
37-
3839
if (quiz.isPresent()) {
3940
Quiz q = quiz.get();
4041
QuizResponse quizResponse = QuizResponse.toResponse(q.getQuizContent(), q.isQuizAnswer());
@@ -45,4 +46,4 @@ public ApiResponse<QuizResponse> get(@PathVariable("postId") Long postId) {
4546
return ApiResponse.success(quizResponse);
4647
}
4748

48-
}
49+
}

src/main/java/grep/neogul_coder/domain/quiz/controller/dto/response/QuizResponse.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import io.swagger.v3.oas.annotations.media.Schema;
44
import lombok.Builder;
55
import lombok.Data;
6+
import lombok.Getter;
67

78
@Schema(description = "퀴즈 응답 DTO")
9+
@Getter
810
@Data
911
public class QuizResponse {
1012

src/main/java/grep/neogul_coder/domain/quiz/entity/Quiz.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,10 @@ public class Quiz extends BaseEntity {
1717
@GeneratedValue(strategy = GenerationType.IDENTITY)
1818
private Long id;
1919

20-
@NotNull
2120
private Long postId;
2221

23-
@NotNull
2422
private String quizContent;
2523

26-
@NotNull
2724
private boolean quizAnswer;
2825

2926
@Builder

src/main/java/grep/neogul_coder/domain/quiz/exception/code/QuizErrorCode.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22

33
import grep.neogul_coder.global.response.code.ErrorCode;
44
import lombok.Getter;
5+
import org.springframework.boot.autoconfigure.graphql.GraphQlProperties.Http;
56
import org.springframework.http.HttpStatus;
67

78
@Getter
89
public enum QuizErrorCode implements ErrorCode {
910

1011
POST_NOT_FREE_ERROR("Q001",HttpStatus.BAD_REQUEST,"자유 게시글이 아닙니다."),
11-
QUIZ_NOT_FOUND("Q002",HttpStatus.NOT_FOUND,"퀴즈가 없습니다.");
12+
QUIZ_NOT_FOUND("Q002",HttpStatus.NOT_FOUND,"퀴즈가 없습니다."),
13+
NEED_CORRECT_COUNT("Q003", HttpStatus.BAD_REQUEST,"요청 개수가 정확하지 않습니다.");
1214

1315
private final String code;
1416
private final HttpStatus status;

src/main/java/grep/neogul_coder/domain/quiz/service/AiQuizServiceImpl.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
import grep.neogul_coder.domain.quiz.controller.dto.response.QuizResponse;
44
import grep.neogul_coder.domain.quiz.entity.Quiz;
55
import grep.neogul_coder.domain.quiz.repository.AiQuizRepository;
6+
import grep.neogul_coder.global.response.ApiResponse;
7+
import java.util.Optional;
68
import lombok.RequiredArgsConstructor;
79
import org.springframework.stereotype.Service;
810
import org.springframework.transaction.annotation.Transactional;
@@ -31,4 +33,4 @@ public QuizResponse createAndSaveQuiz(Long postId, String postContent) {
3133

3234
}
3335

34-
}
36+
}

src/main/java/grep/neogul_coder/domain/studypost/exception/code/PostErrorCode.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ public enum PostErrorCode implements ErrorCode {
99

1010
POST_NOT_FOUND("P001",HttpStatus.BAD_REQUEST,"게시글을 찾을 수 없습니다.");
1111

12-
13-
1412
private final String code;
1513
private final HttpStatus status;
1614
private final String message;
@@ -21,7 +19,4 @@ public enum PostErrorCode implements ErrorCode {
2119
this.message = message;
2220
}
2321

24-
25-
26-
27-
}
22+
}

0 commit comments

Comments
 (0)