Skip to content

Commit

Permalink
#5 feat: apply에서 post와 연결
Browse files Browse the repository at this point in the history
  • Loading branch information
sycuuui committed Jan 30, 2024
1 parent c3de0b2 commit edfdd04
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,14 @@
import com.gongjakso.server.domain.apply.entity.Apply;
import com.gongjakso.server.domain.apply.service.ApplyService;
import com.gongjakso.server.domain.member.entity.Member;
import com.gongjakso.server.domain.post.entity.Post;
import com.gongjakso.server.domain.post.service.PostService;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.*;

@RequiredArgsConstructor
Expand All @@ -18,12 +22,13 @@
public class ApplyController {
private final ApplyService applyService;
//지원 요청 api
// @PostMapping("/1")
// public ResponseEntity<Apply> addApply(@AuthenticationPrincipal Member member, @RequestBody AddApplyReq req){
// Apply savedApply = applyService.save(member,req);
// return ResponseEntity.status(HttpStatus.CREATED).body(savedApply);
// }
//특정 지원자 지원서 가져오는 api
@PostMapping("/{post_id}")
public ResponseEntity<Apply> addApply(@AuthenticationPrincipal Member member, @PathVariable Post post_id, @RequestBody AddApplyReq req){
Post post = PostService.findById(post_id);
Apply savedApply = applyService.save(member,post,req);
return ResponseEntity.status(HttpStatus.CREATED).body(savedApply);
}
// 특정 지원자 지원서 가져오는 api
// @GetMapping("/apply/{post_id}/application")
// public ResponseEntity<ApplyMemberRes> findMemberApplication(@RequestHeader Long member_id){
// ApplyMemberRes applyMemberRes = applyService.findMemberApplication(member_id);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import com.gongjakso.server.domain.apply.entity.Apply;
import com.gongjakso.server.domain.apply.enumerate.PostType;
import com.gongjakso.server.domain.member.entity.Member;
import com.gongjakso.server.domain.post.entity.Post;

public record AddApplyReq(
String application,
Expand All @@ -11,9 +12,10 @@ public record AddApplyReq(
Boolean is_pass,
Boolean is_open
) {
public Apply toEntity(Member member){
public Apply toEntity(Member member, Post post_id){
return Apply.builder()
.member(member)
.post(post_id)
.application(application)
.recruit_part(recruit_part)
.type(type)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import com.gongjakso.server.domain.apply.enumerate.PostType;
import com.gongjakso.server.domain.member.entity.Member;
import com.gongjakso.server.domain.post.entity.Post;
import com.gongjakso.server.global.common.BaseTimeEntity;
import jakarta.persistence.*;
import lombok.AccessLevel;
Expand All @@ -23,6 +24,10 @@ public class Apply extends BaseTimeEntity {
@JoinColumn(name = "member_id")
private Member member;

@ManyToOne(targetEntity = Post.class, fetch = FetchType.LAZY)
@JoinColumn(name = "post_id")
private Post post;

@Column(name = "application",nullable = false,columnDefinition = "varchar(500)")
private String application;

Expand All @@ -39,9 +44,10 @@ public class Apply extends BaseTimeEntity {
private Boolean is_open;

@Builder
public Apply(Long listID, Member member, String application,String recruit_part,PostType type, Boolean is_pass,Boolean is_open){
public Apply(Long listID, Member member,Post post, String application,String recruit_part,PostType type, Boolean is_pass,Boolean is_open){
this.listID=listID;
this.member=member;
this.post=post;
this.application=application;
this.recruit_part=recruit_part;
this.type=type;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,5 @@
import java.util.Optional;

public interface ApplyRepository extends JpaRepository<Apply,Long> {
// Optional<Apply> findByMemberId(Long memberId);

// Apply findApplyByMemberMemberId();
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,18 @@
import com.gongjakso.server.domain.apply.entity.Apply;
import com.gongjakso.server.domain.apply.repository.ApplyRepository;
import com.gongjakso.server.domain.member.entity.Member;
import com.gongjakso.server.domain.post.entity.Post;
import lombok.RequiredArgsConstructor;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.stereotype.Service;

import java.util.Optional;

@Service
@Transactional
@RequiredArgsConstructor
public class ApplyService {
private final ApplyRepository applyRepository;
public Apply save(Member member,AddApplyReq req){
Apply apply = req.toEntity(member);
public Apply save(Member member, Post post_id,AddApplyReq req){
Apply apply = req.toEntity(member,post_id);
return applyRepository.save(apply);
}
public Apply findMemberApplication(Long memberId){
Expand Down

0 comments on commit edfdd04

Please sign in to comment.