From 882d3889c8ba83c29e5fd0dbf238c365b14d25c8 Mon Sep 17 00:00:00 2001 From: jinho jeong Date: Sat, 4 Jun 2022 16:48:09 +0900 Subject: [PATCH] mvp --- .../com/example/oneul/domain/post/api/PostCommandApi.java | 7 +++++++ .../domain/post/dao/command/PostCommandRepository.java | 4 ++-- .../post/service/command/PostCommnadServiceImpl.java | 6 +++++- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/example/oneul/domain/post/api/PostCommandApi.java b/src/main/java/com/example/oneul/domain/post/api/PostCommandApi.java index 6cd9b00..d6495e3 100644 --- a/src/main/java/com/example/oneul/domain/post/api/PostCommandApi.java +++ b/src/main/java/com/example/oneul/domain/post/api/PostCommandApi.java @@ -14,6 +14,7 @@ import com.example.oneul.domain.post.service.command.PostCommandService; + @RestController @RequestMapping(value = "/post") public class PostCommandApi { @@ -35,4 +36,10 @@ public class PostCommandApi { return post; } + @RequestMapping(value="/{postId}/", method=RequestMethod.DELETE) + public String deletePost(HttpSession httpSession, @PathVariable Long postId) { + postCommandService.deletePost(postId, httpSession); + return postId + " is deleted"; + } + } diff --git a/src/main/java/com/example/oneul/domain/post/dao/command/PostCommandRepository.java b/src/main/java/com/example/oneul/domain/post/dao/command/PostCommandRepository.java index 3b7d8e6..9dc6bd2 100644 --- a/src/main/java/com/example/oneul/domain/post/dao/command/PostCommandRepository.java +++ b/src/main/java/com/example/oneul/domain/post/dao/command/PostCommandRepository.java @@ -4,11 +4,11 @@ import java.time.LocalDateTime; import java.util.List; import java.util.Optional; +import org.springframework.data.jpa.repository.JpaRepository; + import com.example.oneul.domain.post.domain.Post; import com.example.oneul.domain.user.domain.UserEntity; -import org.springframework.data.jpa.repository.JpaRepository; - public interface PostCommandRepository extends JpaRepository { Post save(Post post); Optional findByIdAndWriter(Long id, UserEntity writer); diff --git a/src/main/java/com/example/oneul/domain/post/service/command/PostCommnadServiceImpl.java b/src/main/java/com/example/oneul/domain/post/service/command/PostCommnadServiceImpl.java index bfa2212..4320af6 100644 --- a/src/main/java/com/example/oneul/domain/post/service/command/PostCommnadServiceImpl.java +++ b/src/main/java/com/example/oneul/domain/post/service/command/PostCommnadServiceImpl.java @@ -61,6 +61,9 @@ public class PostCommnadServiceImpl implements PostCommandService{ Post postEntity = postCommandRepository.findByIdAndWriter(id, userEntity).orElseThrow(() -> new NotFoundException(id + " post not found")); postEntity.setConent(post.getContent()); postEntity = postCommandRepository.save(postEntity); + PostDocument postDocument = postQueryRepository.findById(postEntity.getId()).orElseThrow(() -> new NotFoundException("query repository doesn't have " + id)); + postDocument.setContent(postEntity.getContent()); + postQueryRepository.save(postDocument); log.info(postEntity.toString() + " is updated"); return postEntity; @@ -71,6 +74,7 @@ public class PostCommnadServiceImpl implements PostCommandService{ // TODO: 이 때 세션이 만기되면 어떡함 UserEntity userEntity = (UserEntity)httpSession.getAttribute("user"); postCommandRepository.deleteByIdAndWriter(id, userEntity); + postQueryRepository.deleteById(id); log.info("post " + id + " is deleted"); } -} +} \ No newline at end of file