From e598d78ce4e893457f3275ccc9a1cc1fb1599163 Mon Sep 17 00:00:00 2001 From: yhi9839 Date: Mon, 17 Feb 2025 17:58:06 +0900 Subject: [PATCH] =?UTF-8?q?fix=20:=20=EC=86=8C=EA=B7=B9=EC=9E=A5=20?= =?UTF-8?q?=EA=B3=B5=EC=97=B0=20=EB=93=B1=EB=A1=9D=20requestDTO=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backend/controller/AmateurController.java | 7 +++-- .../backend/converter/AmateurConverter.java | 17 ++++++----- .../amateurDTO/AmateurEnrollRequestDTO.java | 22 +++++++-------- .../amateurService/AmateurShowService.java | 4 +-- .../AmateurShowServiceImpl.java | 28 +++++++++++++------ 5 files changed, 45 insertions(+), 33 deletions(-) diff --git a/src/main/java/muit/backend/controller/AmateurController.java b/src/main/java/muit/backend/controller/AmateurController.java index ee0f5d4..9a3dbf5 100644 --- a/src/main/java/muit/backend/controller/AmateurController.java +++ b/src/main/java/muit/backend/controller/AmateurController.java @@ -30,10 +30,11 @@ public class AmateurController { public ApiResponse enroll(@RequestHeader("Authorization") String authorizationHeader, @RequestPart("data") AmateurEnrollRequestDTO amateurEnrollRequestDTO, // JSON 데이터 @RequestPart(name = "posterImage", required = false) MultipartFile posterImage, @RequestPart(name = "castingImages", required = false) List castingImages, - @RequestPart(name = "noticeImages", required = false) List noticeImages, - @RequestPart(name = "summaryImage", required = false) MultipartFile summaryImage){ + @RequestPart(name = "noticeImages", required = false) List noticeImages){ + //@RequestPart(name = "summaryImage", required = false) MultipartFile summaryImage){ Member member = memberService.getMemberByToken(authorizationHeader); - AmateurEnrollResponseDTO.EnrollResponseDTO enrollResponseDTO = showService.enrollShow(member, amateurEnrollRequestDTO, posterImage, castingImages, noticeImages, summaryImage); + + AmateurEnrollResponseDTO.EnrollResponseDTO enrollResponseDTO = showService.enrollShow(member, amateurEnrollRequestDTO, posterImage, castingImages, noticeImages); return ApiResponse.onSuccess(enrollResponseDTO); } diff --git a/src/main/java/muit/backend/converter/AmateurConverter.java b/src/main/java/muit/backend/converter/AmateurConverter.java index fc3d7e5..76695bc 100644 --- a/src/main/java/muit/backend/converter/AmateurConverter.java +++ b/src/main/java/muit/backend/converter/AmateurConverter.java @@ -1,5 +1,6 @@ package muit.backend.converter; +import lombok.extern.slf4j.Slf4j; import muit.backend.domain.entity.amateur.*; import muit.backend.domain.entity.member.Member; import muit.backend.domain.enums.TicketType; @@ -50,25 +51,24 @@ public static List toCastingEntity(List urls, AmateurShow show) { - if (dto == null || urls == null) return null; + if (noticeContent == null || urls == null) return null; return AmateurNotice.builder() .amateurShow(show) .noticeImageUrls(urls) - .content(dto.getContent()) + .content(noticeContent) .build(); } - public static AmateurSummary toSummaryEntity(AmateurEnrollRequestDTO.AmateurSummaryDTO dto, - String url, AmateurShow show) { - if (dto == null || url == null) return null; + public static AmateurSummary toSummaryEntity(String summaryContent, + AmateurShow show) { + if (summaryContent == null) return null; return AmateurSummary.builder() .amateurShow(show) - .summaryImage(url) - .content(dto.getContent()) + .content(summaryContent) .build(); } @@ -79,7 +79,6 @@ public static List toTicketEntity(List AmateurTicket.builder() .amateurShow(show) - .ticketType(TicketType.valueOf(dto.getTicketType())) .ticketName(dto.getTicketName()) .price(Integer.parseInt(dto.getPrice())) .build()) diff --git a/src/main/java/muit/backend/dto/amateurDTO/AmateurEnrollRequestDTO.java b/src/main/java/muit/backend/dto/amateurDTO/AmateurEnrollRequestDTO.java index 862e0ce..3c43c0d 100644 --- a/src/main/java/muit/backend/dto/amateurDTO/AmateurEnrollRequestDTO.java +++ b/src/main/java/muit/backend/dto/amateurDTO/AmateurEnrollRequestDTO.java @@ -13,7 +13,7 @@ @AllArgsConstructor public class AmateurEnrollRequestDTO { private String name; - private String posterImgUrl; + //private String posterImgUrl; // 포스터는 따로 뺌 private String place; private String schedule; private String age; @@ -25,10 +25,10 @@ public class AmateurEnrollRequestDTO { private String hashtag; private String runtime; private List castings; - private AmateurNoticeDTO notice; + private String noticeContent; private List tickets; private List staff; - private AmateurSummaryDTO summaries; + private String summaryContent; @Builder @@ -36,19 +36,19 @@ public class AmateurEnrollRequestDTO { @NoArgsConstructor @Getter public static class AmateurCastingDTO{ - private String imgUrl; + //private String imgUrl; // 캐스팅 url도 따로 Multipart로 private String actorName; private String castingName; } - @Builder +/* @Builder @AllArgsConstructor @NoArgsConstructor @Getter public static class AmateurNoticeDTO{ - private List imgUrls; + // private List imgUrls; private String content; - } + }*/ @Builder @AllArgsConstructor @@ -56,7 +56,7 @@ public static class AmateurNoticeDTO{ @Getter public static class AmateurTicketDTO{ private String ticketName; - private String ticketType; + //private String ticketType; // 티켓 타입 빼기로함 private String price; } @@ -70,12 +70,12 @@ public static class AmateurStaffDTO{ private String name; } - @Builder + /* @Builder @AllArgsConstructor @NoArgsConstructor @Getter public static class AmateurSummaryDTO{ - private String imgUrl; + // private String imgUrl; private String content; - } + }*/ } diff --git a/src/main/java/muit/backend/service/amateurService/AmateurShowService.java b/src/main/java/muit/backend/service/amateurService/AmateurShowService.java index 4b68a50..e22c00a 100644 --- a/src/main/java/muit/backend/service/amateurService/AmateurShowService.java +++ b/src/main/java/muit/backend/service/amateurService/AmateurShowService.java @@ -13,8 +13,8 @@ public interface AmateurShowService { AmateurEnrollResponseDTO.EnrollResponseDTO enrollShow(Member member, AmateurEnrollRequestDTO dto, MultipartFile posterImage, List castingImages, - List noticeImages, - MultipartFile summaryImage); + List noticeImages + ); AmateurShowResponseDTO getShow(Long amateurId); List getAllShows(Integer page, Integer size); diff --git a/src/main/java/muit/backend/service/amateurService/AmateurShowServiceImpl.java b/src/main/java/muit/backend/service/amateurService/AmateurShowServiceImpl.java index 1c8fd34..442e847 100644 --- a/src/main/java/muit/backend/service/amateurService/AmateurShowServiceImpl.java +++ b/src/main/java/muit/backend/service/amateurService/AmateurShowServiceImpl.java @@ -43,8 +43,9 @@ public class AmateurShowServiceImpl implements AmateurShowService{ public AmateurEnrollResponseDTO.EnrollResponseDTO enrollShow(Member member, AmateurEnrollRequestDTO dto, MultipartFile posterImage, List castingImages, - List noticeImages, - MultipartFile summaryImage){ + List noticeImages + //,MultipartFile summaryImage // 줄거리 이미지 빼기로함 + ){ String posterUrl = (posterImage != null) ? uuidFileService.createFile(posterImage, FilePath.AMATEUR).getFileUrl() : null; @@ -58,41 +59,52 @@ public AmateurEnrollResponseDTO.EnrollResponseDTO enrollShow(Member member, Amat .map(file -> uuidFileService.createFile(file, FilePath.AMATEUR_NOTICE).getFileUrl()) .toList() : null; - String summaryUrl = (summaryImage != null) ? - uuidFileService.createFile(summaryImage, FilePath.AMATEUR_SUMMARY).getFileUrl() : null; +// String summaryUrl = (summaryImage != null) ? +// uuidFileService.createFile(summaryImage, FilePath.AMATEUR_SUMMARY).getFileUrl() : null; AmateurShow amateurShow = AmateurConverter.toEntityWithDetails(member, dto, posterUrl); showRepository.save(amateurShow); //여기서 posterUrl 까지만 저장해주고 - saveRelatedEntity(dto, amateurShow, castingUrls, noticeUrls, summaryUrl); + log.info("Notice Content: {}", dto.getNoticeContent()); + log.info("Notice Image URLs: {}", noticeUrls); + + saveRelatedEntity(dto, amateurShow, castingUrls, noticeUrls); //여기서 나머지도 저장 해줍니다 return AmateurConverter.enrolledResponseDTO(amateurShow); } // 등록하기전에 합치기 - private void saveRelatedEntity(AmateurEnrollRequestDTO dto, AmateurShow show, List castingUrls, List noticeUrls, String summaryUrl){ + private void saveRelatedEntity(AmateurEnrollRequestDTO dto, AmateurShow show, List castingUrls, List noticeUrls){ List castings = AmateurConverter.toCastingEntity(dto.getCastings(), castingUrls, show); if (!castings.isEmpty()) { amateurCastingRepository.saveAll(castings); log.info("캐스팅 등록하기, 총 {}명 등록됨", castings.size()); } - AmateurNotice notice = AmateurConverter.toNoticeEntity(dto.getNotice(), noticeUrls, show); + // 캐스팅 이미지와 함게 저장 + + AmateurNotice notice = AmateurConverter.toNoticeEntity(dto.getNoticeContent(), noticeUrls, show); if (notice != null) { amateurNoticeRepository.save(notice); } + // 공지사항 이미지와 함께 저장 + List tickets = AmateurConverter.toTicketEntity(dto.getTickets(), show); if(!tickets.isEmpty()) { amateurTicketRepository.saveAll(tickets); log.info("티켓도 등록 해줘요"); } - AmateurSummary summaries = AmateurConverter.toSummaryEntity( dto.getSummaries(), summaryUrl, show); + // 티켓 저장, ticketType 제거 + + AmateurSummary summaries = AmateurConverter.toSummaryEntity(dto.getSummaryContent(), show); amateurSummaryRepository.save(summaries); log.info("줄거리도 등록 완료"); + // 줄거리 저장, 줄거리 이미지 제거 + List staff = AmateurConverter.toStaffEntity(dto.getStaff(), show); amateurStaffRepository.saveAll(staff); log.info("연출자도 등록 완료");