From 08d5eb71c6bfeb053312a6016c31326de948acc3 Mon Sep 17 00:00:00 2001 From: jwaminseok <109052897+jms0324@users.noreply.github.com> Date: Sun, 26 May 2024 15:37:42 +0900 Subject: [PATCH] =?UTF-8?q?feag:=EC=B9=B4=EC=B9=B4=EC=98=A4=ED=86=A1?= =?UTF-8?q?=EA=B3=B5=EC=9C=A0=ED=95=98=EA=B8=B0api=EA=B5=AC=ED=98=84=20(#9?= =?UTF-8?q?8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../diary/controller/DiaryController.java | 9 ++++++++ .../dto/request/DiaryShareRequestDto.java | 11 ++++++++++ .../dto/response/DiaryShareResponseDto.java | 22 +++++++++++++++++++ .../domain/diary/service/DiaryService.java | 12 ++++++++++ 4 files changed, 54 insertions(+) create mode 100644 src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/request/DiaryShareRequestDto.java create mode 100644 src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/response/DiaryShareResponseDto.java diff --git a/src/main/java/org/kau/kkoolbeeServer/domain/diary/controller/DiaryController.java b/src/main/java/org/kau/kkoolbeeServer/domain/diary/controller/DiaryController.java index 8aa8196..ee198cd 100644 --- a/src/main/java/org/kau/kkoolbeeServer/domain/diary/controller/DiaryController.java +++ b/src/main/java/org/kau/kkoolbeeServer/domain/diary/controller/DiaryController.java @@ -2,6 +2,7 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; +import feign.Response; import jakarta.validation.Valid; import org.kau.kkoolbeeServer.S3.S3UploaderService; import org.kau.kkoolbeeServer.domain.advice.dto.AdviceResponseDto; @@ -310,6 +311,14 @@ public ResponseEntity imageCreate(@RequestHeader("Authorization") String auth } } + @GetMapping("/api/diary/share") + public ResponseEntity diaryShare(@RequestBody DiaryShareRequestDto requestDto){ + + return ResponseEntity.ok().body(ApiResponse.success(SuccessType.PROCESS_SUCCESSED,diaryService.diaryShare(requestDto.getDiaryId()))); + + + } + public Long extractMemberIdFromRequestHeader(String authHeader) { if (authHeader != null && authHeader.startsWith("Bearer ")) { String accessToken = authHeader.substring(7); diff --git a/src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/request/DiaryShareRequestDto.java b/src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/request/DiaryShareRequestDto.java new file mode 100644 index 0000000..446a1e8 --- /dev/null +++ b/src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/request/DiaryShareRequestDto.java @@ -0,0 +1,11 @@ +package org.kau.kkoolbeeServer.domain.diary.dto.request; + +import lombok.Getter; +import lombok.NoArgsConstructor; + +@Getter +@NoArgsConstructor +public class DiaryShareRequestDto { + + private Long diaryId; +} diff --git a/src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/response/DiaryShareResponseDto.java b/src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/response/DiaryShareResponseDto.java new file mode 100644 index 0000000..fa180fa --- /dev/null +++ b/src/main/java/org/kau/kkoolbeeServer/domain/diary/dto/response/DiaryShareResponseDto.java @@ -0,0 +1,22 @@ +package org.kau.kkoolbeeServer.domain.diary.dto.response; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import org.kau.kkoolbeeServer.domain.advice.dto.AdviceResponseDto; +import org.kau.kkoolbeeServer.domain.diary.Feeling; + +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +public class DiaryShareResponseDto { + private Long diaryId; + private String diaryContent; + private String diaryTitle; + private String imageUrl; + private String userName; + private AdviceResponseDto advice; + private String feeling; +} diff --git a/src/main/java/org/kau/kkoolbeeServer/domain/diary/service/DiaryService.java b/src/main/java/org/kau/kkoolbeeServer/domain/diary/service/DiaryService.java index 9d7aee9..6efec19 100644 --- a/src/main/java/org/kau/kkoolbeeServer/domain/diary/service/DiaryService.java +++ b/src/main/java/org/kau/kkoolbeeServer/domain/diary/service/DiaryService.java @@ -1,9 +1,11 @@ package org.kau.kkoolbeeServer.domain.diary.service; import org.kau.kkoolbeeServer.S3.S3UploaderService; +import org.kau.kkoolbeeServer.domain.advice.dto.AdviceResponseDto; import org.kau.kkoolbeeServer.domain.diary.Diary; import org.kau.kkoolbeeServer.domain.diary.Feeling; import org.kau.kkoolbeeServer.domain.diary.dto.request.OpenAiImageGenerationRequestDto; +import org.kau.kkoolbeeServer.domain.diary.dto.response.DiaryShareResponseDto; import org.kau.kkoolbeeServer.domain.diary.dto.response.ImageCreateResponseDto; import org.kau.kkoolbeeServer.domain.diary.dto.response.OpenAiImageGenerationResponseDto; import org.kau.kkoolbeeServer.domain.diary.dto.response.UpdateDiaryResponseDto; @@ -133,6 +135,16 @@ public void deleteDiary(Long diaryId){ + } + public DiaryShareResponseDto diaryShare(Long diaryId){ + Diary findDiary=diaryRepository.findById(diaryId).orElseThrow(()->new NoSuchElementException()); + String feeling = findDiary.getFeeling() != null ? findDiary.getFeeling().toString() : null; + AdviceResponseDto adviceResponseDto=AdviceResponseDto.fromAdviceOrNull(findDiary.getAdvice()); + + DiaryShareResponseDto responseDto=new DiaryShareResponseDto(findDiary.getId(), findDiary.getContent(), + findDiary.getTitle(), findDiary.getImageurl(), findDiary.getMember().getSocialNickname(), + adviceResponseDto,feeling); + return responseDto; } public ImageCreateResponseDto generateImageFromDiary(Long diaryId) throws IOException, NoSuchAlgorithmException{