Skip to content

Commit

Permalink
Merge pull request #17 from GDSC-DGU/feat/16
Browse files Browse the repository at this point in the history
  • Loading branch information
kmjenny authored Feb 17, 2024
2 parents 02d6806 + 5d6ea77 commit add040c
Show file tree
Hide file tree
Showing 8 changed files with 28 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import org.harang.server.dto.type.SuccessMessage;
import org.harang.server.service.PostService;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@Slf4j
Expand All @@ -30,6 +29,11 @@ public ApiResponse<?> createPost(@MemberId Long memberId, @Valid @RequestBody Po
return ApiResponse.success(SuccessMessage.CREATED);
}

@DeleteMapping("/{postId}")
public ApiResponse<?> deletePost(@MemberId Long memberId, @PathVariable Long postId) {
postService.deletePost(memberId, postId);
return ApiResponse.success(SuccessMessage.OK);

@GetMapping
public ApiResponse<List<PostResponse>> getAllPosts() {
return ApiResponse.success(postService.getAllPosts());
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/org/harang/server/domain/Category.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ public class Category {
@Column(name = "name", nullable = false)
private String name;

@OneToMany(mappedBy = "category")
@OneToMany(mappedBy = "category", cascade = CascadeType.ALL)
private List<PostCategory> postCategoryList = new ArrayList<>();

@Builder
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/org/harang/server/domain/Help.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ public class Help {
private String name;

/* Relation Parent Mapping */
@OneToMany(mappedBy = "help")
@OneToMany(mappedBy = "help", cascade = CascadeType.ALL)
private List<MemberHelp> memberHelpList = new ArrayList<>();

@Builder
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/org/harang/server/domain/Location.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public class Location {
@Column(name = "id", nullable = false)
private Long id;

@OneToOne(fetch = FetchType.LAZY)
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "post_id")
private Post post;

Expand Down
4 changes: 2 additions & 2 deletions src/main/java/org/harang/server/domain/MemberInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,10 @@ public class MemberInfo {
private String refreshToken;

/* Relation Parent Mapping */
@OneToMany(mappedBy = "memberInfo")
@OneToMany(mappedBy = "memberInfo", cascade = CascadeType.ALL)
private List<MemberHelp> memberHelpList = new ArrayList<>();

@OneToMany(mappedBy = "memberInfo")
@OneToMany(mappedBy = "memberInfo", cascade = CascadeType.ALL)
private List<Certification> certificationList = new ArrayList<>();

@Builder
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/org/harang/server/domain/Post.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,10 +55,10 @@ public class Post {
private Status status = Status.WAITING;

/* Relation Parent Mapping */
@OneToMany(mappedBy = "post")
@OneToMany(mappedBy = "post", cascade = CascadeType.ALL)
private List<Matching> matchingList = new ArrayList<>();

@OneToMany(mappedBy = "post")
@OneToMany(mappedBy = "post", cascade = CascadeType.ALL)
private List<PostCategory> postCategoryList = new ArrayList<>();

@OneToMany(mappedBy = "post")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,16 @@
package org.harang.server.repository;

import jakarta.transaction.Transactional;
import org.harang.server.domain.Location;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;

public interface LocationRepository extends JpaRepository<Location, Long> {
Location findByPostId(Long PostId);

@Transactional
@Modifying
@Query("DELETE FROM Location l WHERE l.post.id = :postId")
void deleteByPostId(Long postId);
}
7 changes: 7 additions & 0 deletions src/main/java/org/harang/server/service/PostService.java
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,13 @@ public Post createPost(Long memberId, PostRequest request) {
return savedPost;
}

@Transactional
public void deletePost(Long memberId, Long postId) {
Post post = postRepository.findByIdOrThrow(postId);

locationRepository.deleteByPostId(postId);
postRepository.delete(post);

public List<PostResponse> getAllPosts() {
return postRepository.findAll()
.stream()
Expand Down

0 comments on commit add040c

Please sign in to comment.