Skip to content

Commit e54c4cb

Browse files
committed
Merge remote-tracking branch 'origin/feat/#45-1' into feat/#45-1
2 parents be79688 + 881c958 commit e54c4cb

File tree

8 files changed

+31
-50
lines changed

8 files changed

+31
-50
lines changed

src/main/java/dmu/dasom/api/domain/interview/dto/InterviewReservationRequestDto.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package dmu.dasom.api.domain.interview.dto;
22

3+
import io.swagger.v3.oas.annotations.media.Schema;
34
import jakarta.validation.constraints.NotNull;
45
import jakarta.validation.constraints.Pattern;
56
import lombok.*;
@@ -9,12 +10,15 @@
910
@NoArgsConstructor
1011
@AllArgsConstructor
1112
@Builder
13+
@Schema(name = "InterviewReservationResponseDto", description = "면접 예약 응답 DTO")
1214
public class InterviewReservationRequestDto {
1315

1416
@NotNull(message = "슬롯 ID는 필수 값입니다.")
17+
@Schema(description = "예약할 면접 슬롯의 ID", example = "1")
1518
private Long slotId; // 예약할 슬롯 ID
1619

1720
@NotNull(message = "예약 코드는 필수 값입니다.")
1821
@Pattern(regexp = "^[0-9]{8}[0-9]{4}$", message = "예약 코드는 학번 전체와 전화번호 뒤 4자리로 구성되어야 합니다.")
22+
@Schema(description = "학번 전체와 전화번호 뒤 4자리로 구성된 예약 코드", example = "202500010542")
1923
private String reservationCode; // 학번 전체 + 전화번호 뒤 4자리 조합 코드
2024
}

src/main/java/dmu/dasom/api/domain/interview/dto/InterviewReservationResponseDto.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package dmu.dasom.api.domain.interview.dto;
22

3+
import io.swagger.v3.oas.annotations.media.Schema;
34
import jakarta.validation.constraints.NotNull;
45
import lombok.*;
56

@@ -8,18 +9,23 @@
89
@NoArgsConstructor
910
@AllArgsConstructor
1011
@Builder
12+
@Schema(name = "InterviewSlotCreateRequestDto", description = "면접 슬롯 생성 요청 DTO")
1113
public class InterviewReservationResponseDto {
1214

1315
@NotNull(message = "예약 ID는 필수 값입니다.")
16+
@Schema(description = "예약의 고유 ID", example = "1")
1417
private Long reservationId; // 예약 ID
1518

1619
@NotNull(message = "슬롯 ID는 필수 값입니다.")
20+
@Schema(description = "예약된 면접 슬롯의 ID", example = "10")
1721
private Long slotId; // 슬롯 ID
1822

1923
@NotNull(message = "지원자 ID는 필수 값입니다.")
24+
@Schema(description = "예약한 지원자의 ID", example = "1001")
2025
private Long applicantId; // 지원자 ID
2126

2227
@NotNull(message = "예약 코드는 필수 값입니다.")
28+
@Schema(description = "학번 전체와 전화번호 뒤 4자리로 구성된 예약 코드", example = "202500010542")
2329
private String reservationCode; // 예약 코드 (학번+전화번호 조합)
2430

2531
}

src/main/java/dmu/dasom/api/domain/interview/dto/InterviewSlotCreateRequestDto.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package dmu.dasom.api.domain.interview.dto;
22

3+
import io.swagger.v3.oas.annotations.media.Schema;
34
import jakarta.validation.constraints.NotNull;
45
import lombok.*;
56

@@ -11,17 +12,22 @@
1112
@NoArgsConstructor
1213
@AllArgsConstructor
1314
@Builder
15+
@Schema(name = "InterviewSlotCreateRequestDto", description = "면접 슬롯 생성 요청 DTO")
1416
public class InterviewSlotCreateRequestDto {
1517

1618
@NotNull(message = "시작 날짜는 필수 값입니다.")
19+
@Schema(description = "면접 시작 날짜", example = "2025-03-12")
1720
private LocalDate startDate; // 면접 시작 날짜
1821

1922
@NotNull(message = "종료 날짜는 필수 값입니다.")
23+
@Schema(description = "면접 종료 날짜", example = "2025-03-14")
2024
private LocalDate endDate; // 면접 종료 날짜
2125

2226
@NotNull(message = "시작 시간은 필수 값입니다.")
27+
@Schema(description = "하루의 시작 시간", example = "10:00")
2328
private LocalTime startTime; // 하루의 시작 시간
2429

2530
@NotNull(message = "종료 시간은 필수 값입니다.")
31+
@Schema(description = "하루의 종료 시간", example = "17:00")
2632
private LocalTime endTime; // 하루의 종료 시간
2733
}

src/main/java/dmu/dasom/api/domain/interview/dto/InterviewSlotRequestDto.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package dmu.dasom.api.domain.interview.dto;
22

3+
import io.swagger.v3.oas.annotations.media.Schema;
34
import jakarta.validation.constraints.Max;
45
import jakarta.validation.constraints.Min;
56
import jakarta.validation.constraints.NotNull;
@@ -13,19 +14,24 @@
1314
@NoArgsConstructor
1415
@AllArgsConstructor
1516
@Builder
17+
@Schema(name = "InterviewSlotRequestDto", description = "면접 슬롯 요청 DTO")
1618
public class InterviewSlotRequestDto {
1719

1820
@NotNull(message = "면접 날짜는 필수 입력 값입니다.")
21+
@Schema(description = "면접이 진행되는 날짜", example = "2025-03-12")
1922
private LocalDate interviewDate; // 면접 날짜
2023

2124
@NotNull(message = "시작 시간은 필수 입력 값입니다.")
25+
@Schema(description = "면접 시작 시간", example = "10:00")
2226
private LocalTime startTime; // 시작 시간
2327

2428
@NotNull(message = "종료 시간은 필수 입력 값입니다.")
29+
@Schema(description = "면접 종료 시간", example = "10:20")
2530
private LocalTime endTime; // 종료 시간
2631

2732
@NotNull(message = "최대 지원자 수는 필수 입력 값입니다.")
2833
@Min(value = 1, message = "최대 지원자 수는 최소 1명 이상이어야 합니다.")
29-
@Max(value = 100, message = "최대 지원자 수는 최대 100명까지 가능합니다.") // 필요에 따라 수정 가능
34+
@Max(value = 100, message = "최대 지원자 수는 최대 100명까지 가능합니다.")
35+
@Schema(description = "해당 슬롯에서 허용되는 최대 지원자 수", example = "2")
3036
private Integer maxCandidates; // 최대 지원자 수
3137
}

src/main/java/dmu/dasom/api/domain/interview/dto/InterviewSlotResponseDto.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package dmu.dasom.api.domain.interview.dto;
22

33
import dmu.dasom.api.domain.interview.entity.InterviewSlot;
4+
import io.swagger.v3.oas.annotations.media.Schema;
45
import jakarta.validation.constraints.Max;
56
import jakarta.validation.constraints.Min;
67
import jakarta.validation.constraints.NotNull;
@@ -14,27 +15,34 @@
1415
@NoArgsConstructor
1516
@AllArgsConstructor
1617
@Builder
18+
@Schema(name = "InterviewSlotResponseDto", description = "면접 슬롯 응답 DTO")
1719
public class InterviewSlotResponseDto {
1820

1921
@NotNull(message = "슬롯 ID는 필수 입력 값입니다.")
22+
@Schema(description = "슬롯의 고유 ID", example = "1")
2023
private Long id; // 슬롯 ID
2124

2225
@NotNull(message = "면접 날짜는 필수 입력 값입니다.")
26+
@Schema(description = "면접이 진행되는 날짜", example = "2025-03-12")
2327
private LocalDate interviewDate; // 면접 날짜
2428

2529
@NotNull(message = "시작 시간은 필수 입력 값입니다.")
30+
@Schema(description = "면접 시작 시간", example = "10:00")
2631
private LocalTime startTime; // 시작 시간
2732

2833
@NotNull(message = "종료 시간은 필수 입력 값입니다.")
34+
@Schema(description = "면접 종료 시간", example = "10:20")
2935
private LocalTime endTime; // 종료 시간
3036

3137
@NotNull(message = "최대 지원자 수는 필수 입력 값입니다.")
3238
@Min(value = 1, message = "최대 지원자 수는 최소 1명 이상이어야 합니다.")
3339
@Max(value = 100, message = "최대 지원자 수는 최대 100명까지 가능합니다.")
40+
@Schema(description = "해당 슬롯에서 허용되는 최대 지원자 수", example = "2")
3441
private Integer maxCandidates; // 최대 지원자 수
3542

3643
@NotNull(message = "현재 예약된 지원자 수는 필수 입력 값입니다.")
3744
@Min(value = 0, message = "현재 예약된 지원자 수는 0명 이상이어야 합니다.")
45+
@Schema(description = "현재 해당 슬롯에 예약된 지원자 수", example = "1")
3846
private Integer currentCandidates; // 현재 예약된 지원자 수
3947

4048
public InterviewSlotResponseDto(InterviewSlot slot){

src/main/java/dmu/dasom/api/domain/recruit/dto/RecruitScheduleDto.java

Lines changed: 0 additions & 20 deletions
This file was deleted.

src/main/java/dmu/dasom/api/domain/recruit/service/RecruitService.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,4 @@ public interface RecruitService {
1919

2020
ResultCheckResponseDto checkResult(final ResultCheckRequestDto request);
2121

22-
LocalDate getInterviewStartDate();
23-
24-
LocalDate getInterviewEndDate();
25-
26-
LocalTime getInterviewStartTime();
27-
28-
LocalTime getInterviewEndTime();
29-
30-
3122
}

src/main/java/dmu/dasom/api/domain/recruit/service/RecruitServiceImpl.java

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -96,26 +96,6 @@ public ResultCheckResponseDto checkResult(final ResultCheckRequestDto request) {
9696
.build();
9797
}
9898

99-
@Override
100-
public LocalDate getInterviewStartDate() {
101-
return LocalDate.parse(findByKey(ConfigKey.INTERVIEW_PERIOD_START).getValue());
102-
}
103-
104-
@Override
105-
public LocalDate getInterviewEndDate() {
106-
return LocalDate.parse(findByKey(ConfigKey.INTERVIEW_PERIOD_END).getValue());
107-
}
108-
109-
@Override
110-
public LocalTime getInterviewStartTime() {
111-
return LocalTime.parse(findByKey(ConfigKey.INTERVIEW_TIME_START).getValue());
112-
}
113-
114-
@Override
115-
public LocalTime getInterviewEndTime() {
116-
return LocalTime.parse(findByKey(ConfigKey.INTERVIEW_TIME_END).getValue());
117-
}
118-
11999
// DB에 저장된 모든 Recruit 객체를 찾아 반환
120100
private List<Recruit> findAll() {
121101
return recruitRepository.findAll();

0 commit comments

Comments
 (0)