Skip to content

Commit 2e6f8a9

Browse files
committed
feat(recruit-board): 모집글 Validator 추가
1 parent 321a266 commit 2e6f8a9

File tree

3 files changed

+33
-1
lines changed

3 files changed

+33
-1
lines changed

src/main/java/com/somemore/domains/recruitboard/domain/RecruitBoard.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public RecruitBoard(UUID centerId, Long locationId, String title, String content
5858
this.imgUrl = imgUrl;
5959
}
6060

61-
public boolean isWriter(UUID centerId) {
61+
public boolean isAuthor(UUID centerId) {
6262
return this.centerId.equals(centerId);
6363
}
6464

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package com.somemore.domains.recruitboard.service.validator;
2+
3+
import com.somemore.domains.recruitboard.domain.RecruitBoard;
4+
import com.somemore.global.exception.BadRequestException;
5+
import org.springframework.stereotype.Component;
6+
7+
import java.time.LocalDateTime;
8+
import java.util.UUID;
9+
10+
import static com.somemore.global.exception.ExceptionMessage.INVALID_RECRUIT_BOARD_TIME;
11+
import static com.somemore.global.exception.ExceptionMessage.UNAUTHORIZED_RECRUIT_BOARD;
12+
13+
@Component
14+
public class RecruitBoardValidator {
15+
16+
public void validateRecruitBoardTime(LocalDateTime startDateTime, LocalDateTime endDateTime) {
17+
if (endDateTime.isAfter(startDateTime)) {
18+
return;
19+
}
20+
21+
throw new BadRequestException(INVALID_RECRUIT_BOARD_TIME);
22+
}
23+
24+
public void validateAuthor(RecruitBoard recruitBoard, UUID centerId) {
25+
if (recruitBoard.isAuthor(centerId)) {
26+
return;
27+
}
28+
29+
throw new BadRequestException(UNAUTHORIZED_RECRUIT_BOARD.getMessage());
30+
}
31+
}

src/main/java/com/somemore/global/exception/ExceptionMessage.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ public enum ExceptionMessage {
2828
// RECRUIT BOARD
2929
NOT_EXISTS_RECRUIT_BOARD("존재하지 않는 봉사 모집글입니다."),
3030
UNAUTHORIZED_RECRUIT_BOARD("해당 봉사 모집글에 권한이 없습니다."),
31+
INVALID_RECRUIT_BOARD_TIME("종료 시간은 시작 시간보다 이후여야 합니다."),
3132

3233
// IMAGE
3334
UPLOAD_FAILED("파일 업로드에 실패했습니다."),

0 commit comments

Comments
 (0)