diff --git a/src/main/java/com/back/catchmate/domain/enroll/controller/EnrollController.java b/src/main/java/com/back/catchmate/domain/enroll/controller/EnrollController.java index b4d17fe..1eaae7f 100644 --- a/src/main/java/com/back/catchmate/domain/enroll/controller/EnrollController.java +++ b/src/main/java/com/back/catchmate/domain/enroll/controller/EnrollController.java @@ -1,8 +1,10 @@ package com.back.catchmate.domain.enroll.controller; import com.back.catchmate.domain.enroll.dto.EnrollRequest.CreateEnrollRequest; +import com.back.catchmate.domain.enroll.dto.EnrollResponse; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CancelEnrollInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CreateEnrollInfo; +import com.back.catchmate.domain.enroll.dto.EnrollResponse.EnrollDescriptionInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.NewEnrollCountInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.PagedEnrollReceiveInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.PagedEnrollRequestInfo; @@ -95,4 +97,11 @@ public UpdateEnrollInfo rejectEnroll(@PathVariable Long enrollId, @JwtValidation Long userId) throws IOException { return enrollService.rejectEnroll(enrollId, userId); } + + @GetMapping("/{enrollId}/description") + @Operation(summary = "보낸 신청 상세 조회 API", description = "보낸 신청의 상세 내용을 조회하는 API 입니다.") + public EnrollDescriptionInfo getEnrollDescriptionById(@PathVariable Long enrollId, + @JwtValidation Long userId) { + return enrollService.getEnrollDescriptionById(enrollId, userId); + } } diff --git a/src/main/java/com/back/catchmate/domain/enroll/converter/EnrollConverter.java b/src/main/java/com/back/catchmate/domain/enroll/converter/EnrollConverter.java index e72e457..23f448b 100644 --- a/src/main/java/com/back/catchmate/domain/enroll/converter/EnrollConverter.java +++ b/src/main/java/com/back/catchmate/domain/enroll/converter/EnrollConverter.java @@ -7,6 +7,7 @@ import com.back.catchmate.domain.enroll.dto.EnrollResponse; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CancelEnrollInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CreateEnrollInfo; +import com.back.catchmate.domain.enroll.dto.EnrollResponse.EnrollDescriptionInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.EnrollReceiveInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.EnrollRequestInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.NewEnrollCountInfo; @@ -143,4 +144,10 @@ public UpdateEnrollInfo toUpdateEnrollInfo(Enroll enroll, AcceptStatus acceptSta .acceptStatus(acceptStatus) .build(); } + + public EnrollDescriptionInfo toEnrollDescriptionInfo(Enroll enroll) { + return EnrollDescriptionInfo.builder() + .description(enroll.getDescription()) + .build(); + } } diff --git a/src/main/java/com/back/catchmate/domain/enroll/dto/EnrollResponse.java b/src/main/java/com/back/catchmate/domain/enroll/dto/EnrollResponse.java index 90e7852..0e89646 100644 --- a/src/main/java/com/back/catchmate/domain/enroll/dto/EnrollResponse.java +++ b/src/main/java/com/back/catchmate/domain/enroll/dto/EnrollResponse.java @@ -105,4 +105,12 @@ public static class CancelEnrollInfo { private Long enrollId; private LocalDateTime deletedAt; } + + @Getter + @Builder + @NoArgsConstructor + @AllArgsConstructor + public static class EnrollDescriptionInfo { + private String description; + } } diff --git a/src/main/java/com/back/catchmate/domain/enroll/service/EnrollService.java b/src/main/java/com/back/catchmate/domain/enroll/service/EnrollService.java index e30a68a..f9b9159 100644 --- a/src/main/java/com/back/catchmate/domain/enroll/service/EnrollService.java +++ b/src/main/java/com/back/catchmate/domain/enroll/service/EnrollService.java @@ -1,8 +1,10 @@ package com.back.catchmate.domain.enroll.service; import com.back.catchmate.domain.enroll.dto.EnrollRequest.CreateEnrollRequest; +import com.back.catchmate.domain.enroll.dto.EnrollResponse; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CancelEnrollInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CreateEnrollInfo; +import com.back.catchmate.domain.enroll.dto.EnrollResponse.EnrollDescriptionInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.NewEnrollCountInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.PagedEnrollReceiveInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.PagedEnrollRequestInfo; @@ -27,4 +29,6 @@ public interface EnrollService { UpdateEnrollInfo acceptEnroll(Long enrollId, Long userId) throws IOException; UpdateEnrollInfo rejectEnroll(Long enrollId, Long userId) throws IOException; + + EnrollDescriptionInfo getEnrollDescriptionById(Long enrollId, Long userId); } diff --git a/src/main/java/com/back/catchmate/domain/enroll/service/EnrollServiceImpl.java b/src/main/java/com/back/catchmate/domain/enroll/service/EnrollServiceImpl.java index 663e4b8..641af00 100644 --- a/src/main/java/com/back/catchmate/domain/enroll/service/EnrollServiceImpl.java +++ b/src/main/java/com/back/catchmate/domain/enroll/service/EnrollServiceImpl.java @@ -9,6 +9,7 @@ import com.back.catchmate.domain.chat.repository.UserChatRoomRepository; import com.back.catchmate.domain.enroll.converter.EnrollConverter; import com.back.catchmate.domain.enroll.dto.EnrollRequest.CreateEnrollRequest; +import com.back.catchmate.domain.enroll.dto.EnrollResponse; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CancelEnrollInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.CreateEnrollInfo; import com.back.catchmate.domain.enroll.dto.EnrollResponse.NewEnrollCountInfo; @@ -229,4 +230,15 @@ public UpdateEnrollInfo rejectEnroll(Long enrollId, Long userId) throws IOExcept enroll.respondToEnroll(AcceptStatus.REJECTED); return enrollConverter.toUpdateEnrollInfo(enroll, AcceptStatus.REJECTED); } + + @Override + public EnrollResponse.EnrollDescriptionInfo getEnrollDescriptionById(Long enrollId, Long userId) { + User user = userRepository.findById(userId) + .orElseThrow(() -> new BaseException(ErrorCode.USER_NOT_FOUND)); + + Enroll enroll = enrollRepository.findById(enrollId) + .orElseThrow(() -> new BaseException(ErrorCode.ENROLL_NOT_FOUND)); + + return enrollConverter.toEnrollDescriptionInfo(enroll); + } }