add: findValidTickets(Long movieTimeId) in ticket repository

This commit is contained in:
손창현
2022-07-15 04:02:23 +09:00
parent e1987c21ba
commit 46a2fbc256
5 changed files with 17 additions and 2 deletions

View File

@@ -26,7 +26,7 @@ public class Ticket extends AbstractEntity {
@NotNull
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "movie_times_id", referencedColumnName = "id", updatable = false)
@JoinColumn(name = "movie_time_id", referencedColumnName = "id", updatable = false)
private MovieTime movieTime;
private Long paymentId;

View File

@@ -10,6 +10,15 @@ import org.springframework.stereotype.Repository;
@Repository
public interface TicketRepository extends JpaRepository<Ticket, Long> {
@Query(
value = "SELECT t "
+ "FROM Ticket t "
+ "JOIN FETCH t.seat s "
+ "WHERE t.movieTimeId = :movieTimeId "
+ "AND t.deletedAt IS NULL"
)
List<Ticket> findValidTickets(@Param("movieTimesId") Long movieTimeId);
@Query(
value =
"SELECT t "

View File

@@ -1,8 +1,10 @@
package com.ticketing.server.movie.service;
import com.ticketing.server.global.exception.ErrorCode;
import com.ticketing.server.movie.domain.Ticket;
import com.ticketing.server.movie.domain.repository.TicketRepository;
import com.ticketing.server.movie.service.dto.TicketDetailsDTO;
import com.ticketing.server.movie.service.dto.TicketListDTO;
import com.ticketing.server.movie.service.interfaces.TicketService;
import com.ticketing.server.payment.service.dto.TicketDetailDTO;
import java.util.List;
@@ -25,7 +27,7 @@ public class TicketServiceImpl implements TicketService {
@Override
public TicketListDTO getTickets(Long movieTimeId) {
List<Ticket> tickets = ticketRepository.findValidTickets(movieTimeId);
}
@Override

View File

@@ -1,5 +1,6 @@
package com.ticketing.server.movie.service.dto;
import com.ticketing.server.movie.application.response.TicketListResponse;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Getter;

View File

@@ -1,10 +1,13 @@
package com.ticketing.server.movie.service.interfaces;
import com.ticketing.server.movie.service.dto.TicketDetailsDTO;
import com.ticketing.server.movie.service.dto.TicketListDTO;
import javax.validation.constraints.NotNull;
public interface TicketService {
TicketListDTO getTickets(Long movieTimeId)
TicketDetailsDTO findTicketsByPaymentId(@NotNull Long paymentId);
}