diff --git a/backend/src/main/java/com/printcalculator/controller/QuoteSessionController.java b/backend/src/main/java/com/printcalculator/controller/QuoteSessionController.java index cde3605..e4c1442 100644 --- a/backend/src/main/java/com/printcalculator/controller/QuoteSessionController.java +++ b/backend/src/main/java/com/printcalculator/controller/QuoteSessionController.java @@ -130,6 +130,7 @@ public class QuoteSessionController { } @GetMapping("/{id}") + @Transactional(readOnly = true) public ResponseEntity> getQuoteSession(@PathVariable UUID id) { QuoteSession session = sessionRepo.findById(id) .orElseThrow(() -> new RuntimeException("Session not found")); diff --git a/backend/src/main/java/com/printcalculator/repository/QuoteLineItemRepository.java b/backend/src/main/java/com/printcalculator/repository/QuoteLineItemRepository.java index 5b51980..658a6e9 100644 --- a/backend/src/main/java/com/printcalculator/repository/QuoteLineItemRepository.java +++ b/backend/src/main/java/com/printcalculator/repository/QuoteLineItemRepository.java @@ -1,6 +1,7 @@ package com.printcalculator.repository; import com.printcalculator.entity.QuoteLineItem; +import org.springframework.data.jpa.repository.EntityGraph; import org.springframework.data.jpa.repository.JpaRepository; import java.util.List; @@ -8,9 +9,16 @@ import java.util.Optional; import java.util.UUID; public interface QuoteLineItemRepository extends JpaRepository { + @EntityGraph(attributePaths = {"filamentVariant", "shopProduct", "shopProductVariant"}) List findByQuoteSessionId(UUID quoteSessionId); + + @EntityGraph(attributePaths = {"filamentVariant", "shopProduct", "shopProductVariant"}) List findByQuoteSessionIdOrderByCreatedAtAsc(UUID quoteSessionId); + + @EntityGraph(attributePaths = {"filamentVariant", "shopProduct", "shopProductVariant"}) Optional findByIdAndQuoteSession_Id(UUID lineItemId, UUID quoteSessionId); + + @EntityGraph(attributePaths = {"shopProductVariant"}) Optional findFirstByQuoteSession_IdAndLineItemTypeAndShopProductVariant_Id( UUID quoteSessionId, String lineItemType,