From 10056dca5dcdd30d6661a745debc104973533828 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cadashkdy9960?= <â€vjftmxmwlwhs@gmail.com> Date: Fri, 26 Jan 2024 21:11:47 +0900 Subject: [PATCH] =?UTF-8?q?update=20:=20=ED=95=98=EC=9D=B4=EB=B8=8C=20?= =?UTF-8?q?=EC=88=98=EC=A0=95=20=EA=B8=B0=EB=8A=A5=EC=9D=84=20=ED=83=80?= =?UTF-8?q?=EC=9D=B4=ED=8B=80=EC=88=98=EC=A0=95,=20=EB=82=B4=EC=9A=A9?= =?UTF-8?q?=EC=88=98=EC=A0=95=20=EC=9C=BC=EB=A1=9C=20=EB=82=98=EB=88=84?= =?UTF-8?q?=EC=96=B4=EC=84=9C=20=EA=B8=B0=EB=8A=A5=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hive/controller/HiveController.java | 23 ++++++++++++++----- ...DTO.java => UpdateHiveInfoRequestDTO.java} | 5 +--- .../hive/dto/UpdateHiveTitleRequestDTO.java | 15 ++++++++++++ .../HHive/hhive/domain/hive/entity/Hive.java | 15 +++++++----- .../domain/hive/service/HiveService.java | 18 ++++++++++----- 5 files changed, 54 insertions(+), 22 deletions(-) rename src/main/java/com/HHive/hhive/domain/hive/dto/{UpdateHiveRequestDTO.java => UpdateHiveInfoRequestDTO.java} (79%) create mode 100644 src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveTitleRequestDTO.java diff --git a/src/main/java/com/HHive/hhive/domain/hive/controller/HiveController.java b/src/main/java/com/HHive/hhive/domain/hive/controller/HiveController.java index 3e04707..38dfddf 100644 --- a/src/main/java/com/HHive/hhive/domain/hive/controller/HiveController.java +++ b/src/main/java/com/HHive/hhive/domain/hive/controller/HiveController.java @@ -4,7 +4,8 @@ import com.HHive.hhive.domain.category.data.SubCategory; import com.HHive.hhive.domain.hive.dto.CreateHiveRequestDTO; import com.HHive.hhive.domain.hive.dto.HiveResponseDTO; -import com.HHive.hhive.domain.hive.dto.UpdateHiveRequestDTO; +import com.HHive.hhive.domain.hive.dto.UpdateHiveInfoRequestDTO; +import com.HHive.hhive.domain.hive.dto.UpdateHiveTitleRequestDTO; import com.HHive.hhive.domain.hive.service.HiveService; import com.HHive.hhive.domain.relationship.hiveuser.dto.HiveUserInviteRequestDTO; import com.HHive.hhive.domain.user.UserDetailsImpl; @@ -47,12 +48,22 @@ public ResponseEntity> createHive( .body(CommonResponse.of(HttpStatus.OK.value(), "하이브가 작성되었습니다.", response)); } - @PatchMapping("{hive_id}/update") - public ResponseEntity> updateHive( + @PatchMapping("{hive_id}/title") + public ResponseEntity> updateHiveTitle( @AuthenticationPrincipal UserDetailsImpl userDetails, @PathVariable Long hive_id, - @RequestBody @Valid UpdateHiveRequestDTO updateRequest) { - HiveResponseDTO response = hiveService.updateHive(userDetails.getUser(), hive_id, - updateRequest); + @RequestBody @Valid UpdateHiveTitleRequestDTO updateHiveTitleRequest) { + HiveResponseDTO response = hiveService.updateHiveTitle(userDetails.getUser(), hive_id, + updateHiveTitleRequest); + return ResponseEntity.ok() + .body(CommonResponse.of(HttpStatus.OK.value(), "하이브가 수정되었습니다.", response)); + } + + @PatchMapping("{hive_id}/info") + public ResponseEntity> updateHiveInfo( + @AuthenticationPrincipal UserDetailsImpl userDetails, @PathVariable Long hive_id, + @RequestBody @Valid UpdateHiveInfoRequestDTO updateHiveInfoRequest) { + HiveResponseDTO response = hiveService.updateHiveInfo(userDetails.getUser(), hive_id, + updateHiveInfoRequest); return ResponseEntity.ok() .body(CommonResponse.of(HttpStatus.OK.value(), "하이브가 수정되었습니다.", response)); } diff --git a/src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveRequestDTO.java b/src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveInfoRequestDTO.java similarity index 79% rename from src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveRequestDTO.java rename to src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveInfoRequestDTO.java index 273b4fd..884878a 100644 --- a/src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveRequestDTO.java +++ b/src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveInfoRequestDTO.java @@ -9,10 +9,7 @@ @Builder @NoArgsConstructor @AllArgsConstructor -public class UpdateHiveRequestDTO { - - private String title; +public class UpdateHiveInfoRequestDTO { private String introduction; - } diff --git a/src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveTitleRequestDTO.java b/src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveTitleRequestDTO.java new file mode 100644 index 0000000..82ecbd9 --- /dev/null +++ b/src/main/java/com/HHive/hhive/domain/hive/dto/UpdateHiveTitleRequestDTO.java @@ -0,0 +1,15 @@ +package com.HHive.hhive.domain.hive.dto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +@Getter +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class UpdateHiveTitleRequestDTO { + + private String title; +} diff --git a/src/main/java/com/HHive/hhive/domain/hive/entity/Hive.java b/src/main/java/com/HHive/hhive/domain/hive/entity/Hive.java index 99ccca6..e24f984 100644 --- a/src/main/java/com/HHive/hhive/domain/hive/entity/Hive.java +++ b/src/main/java/com/HHive/hhive/domain/hive/entity/Hive.java @@ -3,7 +3,8 @@ import com.HHive.hhive.domain.category.data.MajorCategory; import com.HHive.hhive.domain.category.data.SubCategory; -import com.HHive.hhive.domain.hive.dto.UpdateHiveRequestDTO; +import com.HHive.hhive.domain.hive.dto.UpdateHiveInfoRequestDTO; +import com.HHive.hhive.domain.hive.dto.UpdateHiveTitleRequestDTO; import com.HHive.hhive.domain.user.entity.User; import com.HHive.hhive.global.auditing.BaseTimeEntity; import jakarta.persistence.Column; @@ -63,13 +64,15 @@ public class Hive extends BaseTimeEntity { // private Category category; - public void update(UpdateHiveRequestDTO updateHiveRequestDTO) { - if (updateHiveRequestDTO.getTitle() != null) { - this.title = updateHiveRequestDTO.getTitle(); + public void updateHiveTitle(UpdateHiveTitleRequestDTO updateHiveTitleRequestDTO) { + if (updateHiveTitleRequestDTO.getTitle() != null) { + this.title = updateHiveTitleRequestDTO.getTitle(); } + } - if (updateHiveRequestDTO.getIntroduction() != null) { - this.introduction = updateHiveRequestDTO.getIntroduction(); + public void updateHiveInfo(UpdateHiveInfoRequestDTO updateHiveInfoRequest) { + if (updateHiveInfoRequest.getIntroduction() != null) { + this.introduction = updateHiveInfoRequest.getIntroduction(); } } diff --git a/src/main/java/com/HHive/hhive/domain/hive/service/HiveService.java b/src/main/java/com/HHive/hhive/domain/hive/service/HiveService.java index 8c44c7e..586fa5c 100644 --- a/src/main/java/com/HHive/hhive/domain/hive/service/HiveService.java +++ b/src/main/java/com/HHive/hhive/domain/hive/service/HiveService.java @@ -4,7 +4,8 @@ import com.HHive.hhive.domain.category.data.SubCategory; import com.HHive.hhive.domain.hive.dto.CreateHiveRequestDTO; import com.HHive.hhive.domain.hive.dto.HiveResponseDTO; -import com.HHive.hhive.domain.hive.dto.UpdateHiveRequestDTO; +import com.HHive.hhive.domain.hive.dto.UpdateHiveInfoRequestDTO; +import com.HHive.hhive.domain.hive.dto.UpdateHiveTitleRequestDTO; import com.HHive.hhive.domain.hive.entity.Hive; import com.HHive.hhive.domain.hive.repository.HiveRepository; import com.HHive.hhive.domain.relationship.hiveuser.dto.HiveUserInviteRequestDTO; @@ -50,14 +51,20 @@ public HiveResponseDTO createHive(User user, CreateHiveRequestDTO createHiveRequ } @Transactional - public HiveResponseDTO updateHive(User user, Long hiveId, - @Valid UpdateHiveRequestDTO updateHiveRequest) { + public HiveResponseDTO updateHiveTitle(User user, Long hiveId, + @Valid UpdateHiveTitleRequestDTO updateHiveTitleRequest) { Hive hive = getHiveAndCheckAuth(user, hiveId); - if (hiveRepository.findByTitle(updateHiveRequest.getTitle()).isPresent()) { + if (hiveRepository.findByTitle(updateHiveTitleRequest.getTitle()).isPresent()) { throw new AlreadyExistHiveException(); } - hive.update(updateHiveRequest); + hive.updateHiveTitle(updateHiveTitleRequest); + return HiveResponseDTO.of(hive); + } + + public HiveResponseDTO updateHiveInfo(User user, Long hiveId, UpdateHiveInfoRequestDTO updateHiveInfoRequest) { + Hive hive = getHiveAndCheckAuth(user, hiveId); + hive.updateHiveInfo(updateHiveInfoRequest); return HiveResponseDTO.of(hive); } @@ -139,5 +146,4 @@ public Hive findHiveById(Long hiveId) { NotFoundHiveException::new); } - } \ No newline at end of file