[프로젝트] 연관관계

박연주·2022년 7월 3일
0

로그인한 회원이 카페 상세페이지에서 이벤트 예약을 할 경우
EventCreateRequestDto 에는 이벤트 예약정보와, 카페, 유저 정보가 필요함

#EventCreateRequestDto
@Data
public class EventCreateRequestDto {
    private String eventName;
    private EventCategory eventCategory;
    private LocalDate eventStartDate;
    private LocalDate eventEndDate;
    private String eventInfo;
    private int eventPrice;
    private List<MultipartFile> files;
    private Long cafeNumber;    // 유저와 카페를 number로 저장
    private Long userNumber;
}

# EventController
	@PostMapping("/api/events")
    public void createEvent(@RequestBody EventCreateRequestDto requestDto) {
        eventService.createEvent(requestDto);
    }

# EventService
@Transactional
    public void createEvent(EventCreateRequestDto requestDto) {

        User user = userRepository.findById(requestDto.getUserNumber()).orElseThrow();
        Cafe cafe = cafeRepository.findById(requestDto.getCafeNumber()).orElseThrow();
        Event event = new Event(requestDto, user, cafe);

        eventRepository.save(event);
   }
   // number로 각각의 카페와 유저를 찾아서 이벤트 정보와 함께 저장
profile
하루에 한 개념씩

0개의 댓글