From 280ef5100bece9b40ac51736aef037704a52a4ca Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 30 七月 2026 14:58:52 +0800
Subject: [PATCH] update

---
 backend/src/main/java/com/tourguide/modules/review/service/OrderReviewService.java |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/backend/src/main/java/com/tourguide/modules/review/service/OrderReviewService.java b/backend/src/main/java/com/tourguide/modules/review/service/OrderReviewService.java
index 42573dc..7dff404 100644
--- a/backend/src/main/java/com/tourguide/modules/review/service/OrderReviewService.java
+++ b/backend/src/main/java/com/tourguide/modules/review/service/OrderReviewService.java
@@ -127,6 +127,21 @@
         return new OrderReviewResponse(review);
     }
 
+    public OrderReviewResponse detailByOrder(Long visitorId, Long orderId) {
+        TourOrder order = orderMapper.selectById(orderId);
+        if (order == null) throw new BusinessException(404, "order not found");
+        if (order.getVisitorId() == null || !order.getVisitorId().equals(visitorId)) {
+            throw new BusinessException(403, "cannot view another visitor's review");
+        }
+
+        OrderReview review = reviewMapper.selectOne(new LambdaQueryWrapper<OrderReview>()
+                .eq(OrderReview::getOrderId, orderId)
+                .eq(OrderReview::getStatus, 1)
+                .last("LIMIT 1"));
+        if (review == null) throw new BusinessException(404, "review not found");
+        return new OrderReviewResponse(review);
+    }
+
     @Transactional
     public void delete(Long id) {
         OrderReview review = reviewMapper.selectById(id);

--
Gitblit v1.7.1