[#16] Reservation 도메인 코드 코틀린 마이그레이션 #17

Merged
pricelees merged 40 commits from refactor/#16 into main 2025-07-21 12:08:56 +00:00
Showing only changes of commit 8a09eb045f - Show all commits

View File

@ -1,32 +1,31 @@
package roomescape.reservation.infrastructure.persistence;
package roomescape.reservation.infrastructure.persistence
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.data.jpa.repository.JpaSpecificationExecutor
import org.springframework.data.jpa.repository.Modifying
import org.springframework.data.jpa.repository.Query
import org.springframework.data.repository.query.Param
import roomescape.reservation.web.MyReservationResponse
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
interface ReservationRepository
: JpaRepository<ReservationEntity, Long>, JpaSpecificationExecutor<ReservationEntity>
{
fun findByReservationTime(reservationTime: ReservationTimeEntity): List<ReservationEntity>
import roomescape.reservation.web.MyReservationResponse;
fun findByThemeId(themeId: Long): List<ReservationEntity>
public interface ReservationRepository
extends JpaRepository<ReservationEntity, Long>, JpaSpecificationExecutor<ReservationEntity> {
List<ReservationEntity> findByReservationTime(ReservationTimeEntity reservationTime);
List<ReservationEntity> findByThemeId(Long themeId);
@Modifying
@Query("""
@Modifying
@Query("""
UPDATE ReservationEntity r
SET r.reservationStatus = :status
WHERE r.id = :id
""")
int updateStatusByReservationId(@Param(value = "id") Long reservationId,
@Param(value = "status") ReservationStatus statusForChange);
fun updateStatusByReservationId(
@Param(value = "id") reservationId: Long,
@Param(value = "status") statusForChange: ReservationStatus
): Int
@Query("""
@Query("""
SELECT EXISTS (
SELECT 1 FROM ReservationEntity r
WHERE r.theme.id = r2.theme.id
@ -37,9 +36,9 @@ public interface ReservationRepository
FROM ReservationEntity r2
WHERE r2.id = :id
""")
boolean isExistConfirmedReservation(@Param("id") Long reservationId);
fun isExistConfirmedReservation(@Param("id") reservationId: Long): Boolean
@Query("""
@Query("""
SELECT new roomescape.reservation.web.MyReservationResponse(
r.id,
t.name,
@ -56,5 +55,5 @@ public interface ReservationRepository
ON p.reservation = r
WHERE r.member.id = :memberId
""")
List<MyReservationResponse> findMyReservations(Long memberId);
fun findMyReservations(memberId: Long): List<MyReservationResponse>
}