diff --git a/src/main/java/com/indayvidual/server/domain/timetable/controller/TimetableController.java b/src/main/java/com/indayvidual/server/domain/timetable/controller/TimetableController.java index f69261c..5c5f406 100644 --- a/src/main/java/com/indayvidual/server/domain/timetable/controller/TimetableController.java +++ b/src/main/java/com/indayvidual/server/domain/timetable/controller/TimetableController.java @@ -46,6 +46,10 @@ public ApiResponse createTimetable( @Parameter(description = "학교 ID (커리어넷 학교 정보 오픈API의 seq 값, 예: '767', '14')", required = true) String schoolId, + @RequestParam("schoolName") + @Parameter(description = "학교 이름", required = true) + String schoolName, + @RequestParam("semester") @Parameter( description = "학기", @@ -69,7 +73,7 @@ public ApiResponse createTimetable( Semester semester = Semester.from(semesterLabel); Long userId = Utils.getUserId(); - Timetable createdTimetable = timetableCommandService.createTimetableWithImage(schoolId, semester, image, userId); + Timetable createdTimetable = timetableCommandService.createTimetableWithImage(schoolId, schoolName, semester, image, userId); CreateTimetableResponseDto response = timetableConverter.toCreateResponse(createdTimetable); return ApiResponse.onSuccess(response, diff --git a/src/main/java/com/indayvidual/server/domain/timetable/converter/TimetableConverter.java b/src/main/java/com/indayvidual/server/domain/timetable/converter/TimetableConverter.java index 969705e..b87b90a 100644 --- a/src/main/java/com/indayvidual/server/domain/timetable/converter/TimetableConverter.java +++ b/src/main/java/com/indayvidual/server/domain/timetable/converter/TimetableConverter.java @@ -12,6 +12,7 @@ public CreateTimetableResponseDto toCreateResponse(Timetable timetable) { return CreateTimetableResponseDto.of( timetable.getId(), timetable.getSchoolId(), + timetable.getSchoolName(), timetable.getSemester(), timetable.getTimeTableImage() ); @@ -21,6 +22,7 @@ public GetTimetableResponseDto toGetResponse(Timetable timetable, String schoolI return GetTimetableResponseDto.of( timetable.getId(), schoolId, + timetable.getSchoolName(), timetable.getSemester(), timetable.getTimeTableImage() ); diff --git a/src/main/java/com/indayvidual/server/domain/timetable/dto/response/CreateTimetableResponseDto.java b/src/main/java/com/indayvidual/server/domain/timetable/dto/response/CreateTimetableResponseDto.java index fd4fc51..a44cee6 100644 --- a/src/main/java/com/indayvidual/server/domain/timetable/dto/response/CreateTimetableResponseDto.java +++ b/src/main/java/com/indayvidual/server/domain/timetable/dto/response/CreateTimetableResponseDto.java @@ -10,13 +10,15 @@ public class CreateTimetableResponseDto { private Long timetableId; private String schoolId; + private String schoolName; private Semester semester; private String imageUrl; - public static CreateTimetableResponseDto of(Long timetableId, String schoolId, Semester semester, String imageUrl) { + public static CreateTimetableResponseDto of(Long timetableId, String schoolId, String schoolName, Semester semester, String imageUrl) { return CreateTimetableResponseDto.builder() .timetableId(timetableId) .schoolId(schoolId) + .schoolName(schoolName) .semester(semester) .imageUrl(imageUrl) .build(); diff --git a/src/main/java/com/indayvidual/server/domain/timetable/dto/response/GetTimetableResponseDto.java b/src/main/java/com/indayvidual/server/domain/timetable/dto/response/GetTimetableResponseDto.java index 78f6e8e..5e9e757 100644 --- a/src/main/java/com/indayvidual/server/domain/timetable/dto/response/GetTimetableResponseDto.java +++ b/src/main/java/com/indayvidual/server/domain/timetable/dto/response/GetTimetableResponseDto.java @@ -10,13 +10,15 @@ public class GetTimetableResponseDto { private Long timetableId; private String schoolId; + private String schoolName; private Semester semester; private String imageUrl; - public static GetTimetableResponseDto of(Long timetableId, String schoolId, Semester semester, String imageUrl) { + public static GetTimetableResponseDto of(Long timetableId, String schoolId, String schoolName, Semester semester, String imageUrl) { return GetTimetableResponseDto.builder() .timetableId(timetableId) .schoolId(schoolId) + .schoolName(schoolName) .semester(semester) .imageUrl(imageUrl) .build(); diff --git a/src/main/java/com/indayvidual/server/domain/timetable/entity/Timetable.java b/src/main/java/com/indayvidual/server/domain/timetable/entity/Timetable.java index 3705ea1..5f7f6da 100644 --- a/src/main/java/com/indayvidual/server/domain/timetable/entity/Timetable.java +++ b/src/main/java/com/indayvidual/server/domain/timetable/entity/Timetable.java @@ -23,6 +23,9 @@ public class Timetable extends BaseEntity { @Column(name = "school_id", nullable = false) private String schoolId; + @Column(name = "school_name", nullable = false) + private String schoolName; + @Column(name = "semester", nullable = false) private Semester semester; @@ -30,9 +33,10 @@ public class Timetable extends BaseEntity { private String timeTableImage; @Builder - public Timetable(Long userId, String schoolId, Semester semester, String timeTableImage) { + public Timetable(Long userId, String schoolId, String schoolName, Semester semester, String timeTableImage) { this.userId = userId; this.schoolId = schoolId; + this.schoolName = schoolName; this.semester = semester; this.timeTableImage = timeTableImage; } diff --git a/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandService.java b/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandService.java index c9429d8..8813ece 100644 --- a/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandService.java +++ b/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandService.java @@ -6,7 +6,7 @@ public interface TimetableCommandService { - Timetable createTimetableWithImage(String schoolId, Semester semester, MultipartFile image, Long userId); + Timetable createTimetableWithImage(String schoolId, String schoolName, Semester semester, MultipartFile image, Long userId); void deleteTimetable(Long userId, Long timetableId); } diff --git a/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandServiceImpl.java b/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandServiceImpl.java index ab8d4c8..ba29beb 100644 --- a/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandServiceImpl.java +++ b/src/main/java/com/indayvidual/server/domain/timetable/service/TimetableCommandServiceImpl.java @@ -20,7 +20,7 @@ public class TimetableCommandServiceImpl implements TimetableCommandService { private final S3Uploader s3Uploader; @Override - public Timetable createTimetableWithImage(String schoolId, Semester semester, MultipartFile image, Long userId) { + public Timetable createTimetableWithImage(String schoolId, String schoolName, Semester semester, MultipartFile image, Long userId) { if (timetableRepository.existsByUserIdAndSemester(userId, semester)) { throw new TimetableException(ErrorStatus.TIMETABLE_DUPLICATE_SEMESTER); } @@ -29,6 +29,7 @@ public Timetable createTimetableWithImage(String schoolId, Semester semester, Mu Timetable timetable = Timetable.builder() .userId(userId) .schoolId(schoolId) + .schoolName(schoolName) .semester(semester) .timeTableImage(imageUrl) .build();