From 39f6fca28e3f78abe48f08e474ec011abb990b36 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期三, 09 九月 2026 10:39:21 +0800
Subject: [PATCH] update

---
 backend/src/main/java/com/tourguide/modules/order/dto/TourOrderResponse.java |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/backend/src/main/java/com/tourguide/modules/order/dto/TourOrderResponse.java b/backend/src/main/java/com/tourguide/modules/order/dto/TourOrderResponse.java
index 5b51e8b..3743c25 100644
--- a/backend/src/main/java/com/tourguide/modules/order/dto/TourOrderResponse.java
+++ b/backend/src/main/java/com/tourguide/modules/order/dto/TourOrderResponse.java
@@ -1,6 +1,7 @@
 package com.tourguide.modules.order.dto;
 
 import com.tourguide.modules.order.entity.TourOrder;
+import com.tourguide.modules.order.domain.RefundAmountCalculator;
 import com.tourguide.modules.operation.entity.OperationScenicSpot;
 import com.tourguide.modules.operation.entity.ScenicMeetingPoint;
 import com.tourguide.modules.operation.entity.ScenicPricing;
@@ -45,9 +46,12 @@
     private LocalDateTime arrivedAt;
     private LocalDateTime serviceStartedAt;
     private LocalDateTime completedAt;
+    private LocalDateTime cancelledAt;
     private String status;
     private String refundStatus;
     private BigDecimal refundAmount;
+    private BigDecimal refundedAmount;
+    private BigDecimal refundableAmount;
     private LocalDateTime refundTime;
     private String refundOrderNo;
     private String refundMethod;
@@ -64,6 +68,7 @@
     private BigDecimal guideRating;
     private String guideAvatar;
     private Integer unacceptedAutoRefundMinutes;
+    private Integer unpaidCancelMinutes;
 
     public static TourOrderResponse from(TourOrder order) {
         TourOrderResponse response = new TourOrderResponse();
@@ -105,9 +110,12 @@
         response.arrivedAt = order.getArrivedAt();
         response.serviceStartedAt = order.getServiceStartedAt();
         response.completedAt = order.getCompletedAt();
+        response.cancelledAt = order.getCancelledAt();
         response.status = order.getStatus();
         response.refundStatus = order.getRefundStatus();
         response.refundAmount = order.getRefundAmount();
+        response.refundedAmount = RefundAmountCalculator.refundedAmount(order);
+        response.refundableAmount = RefundAmountCalculator.refundableAmount(order);
         response.refundTime = order.getRefundTime();
         response.refundOrderNo = order.getRefundOrderNo();
         response.refundMethod = order.getRefundMethod();
@@ -149,6 +157,11 @@
         return this;
     }
 
+    public TourOrderResponse withUnpaidCancelMinutes(Integer minutes) {
+        this.unpaidCancelMinutes = minutes;
+        return this;
+    }
+
     public Long getId() { return id; }
     public String getOrderNo() { return orderNo; }
     public Long getVisitorId() { return visitorId; }
@@ -184,9 +197,12 @@
     public LocalDateTime getArrivedAt() { return arrivedAt; }
     public LocalDateTime getServiceStartedAt() { return serviceStartedAt; }
     public LocalDateTime getCompletedAt() { return completedAt; }
+    public LocalDateTime getCancelledAt() { return cancelledAt; }
     public String getStatus() { return status; }
     public String getRefundStatus() { return refundStatus; }
     public BigDecimal getRefundAmount() { return refundAmount; }
+    public BigDecimal getRefundedAmount() { return refundedAmount; }
+    public BigDecimal getRefundableAmount() { return refundableAmount; }
     public LocalDateTime getRefundTime() { return refundTime; }
     public String getRefundOrderNo() { return refundOrderNo; }
     public String getRefundMethod() { return refundMethod; }
@@ -203,4 +219,5 @@
     public BigDecimal getGuideRating() { return guideRating; }
     public String getGuideAvatar() { return guideAvatar; }
     public Integer getUnacceptedAutoRefundMinutes() { return unacceptedAutoRefundMinutes; }
+    public Integer getUnpaidCancelMinutes() { return unpaidCancelMinutes; }
 }

--
Gitblit v1.7.1