Skip to content

Commit

Permalink
Merge pull request #12 from nak253/feature-GET-reservationList
Browse files Browse the repository at this point in the history
Feat: 숙소 예약 조회 기능 구현
  • Loading branch information
leekm0310 committed Jun 10, 2022
2 parents 812122f + 9b21449 commit 15985b7
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,10 @@
import kr.codesquad.airbnb.service.BookingService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

@RestController
@RequiredArgsConstructor
Expand All @@ -20,12 +18,19 @@ public class BookingController {

private final BookingService bookingService;

@PostMapping("/booking/lodging/{lodgingId}")
@PostMapping("/reservations/lodgings/{lodgingId}")
public BookingResponse bookLodging(@PathVariable Long lodgingId, @RequestBody BookingRequest bookingRequest, HttpServletRequest request) {
Members member = (Members) request.getAttribute("Members");
String githubId = member.getGithubId();
log.info("[github]:{}", githubId);
log.info("[request]:{}",bookingRequest);
return bookingService.bookLodging(lodgingId, bookingRequest, githubId);
}

@GetMapping("/reservations")
public List<BookingResponse> getReservations(HttpServletRequest request){
Members member = (Members) request.getAttribute("Members");
String githubId = member.getGithubId();
return bookingService.getReservations(githubId);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
import kr.codesquad.airbnb.domain.Reservation;
import org.springframework.data.jpa.repository.JpaRepository;

import java.util.List;

public interface BookingRepository extends JpaRepository<Reservation, Long> {

List<Reservation> findByMembers_GithubId(String githubId);
}
8 changes: 8 additions & 0 deletions src/main/java/kr/codesquad/airbnb/service/BookingService.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.stream.Collectors;


@Service
@RequiredArgsConstructor
Expand All @@ -27,4 +30,9 @@ public BookingResponse bookLodging(Long lodgingId, BookingRequest bookingRequest
Reservation save = bookingRepository.save(reservation);
return new BookingResponse(bookingRepository.findById(save.getId()).orElseThrow());
}

public List<BookingResponse> getReservations(String githubId) {
return bookingRepository.findByMembers_GithubId(githubId)
.stream().map(BookingResponse::new).collect(Collectors.toList());
}
}

0 comments on commit 15985b7

Please sign in to comment.