Prechádzať zdrojové kódy

Merge branch 'renew_upgrade' into pre

zoujiajian 2 rokov pred
rodič
commit
fa68d7af6a

+ 2 - 0
netflix-dao/src/main/java/com/cyksj/model/entity/OrderDonRenewRecord.java

@@ -16,6 +16,8 @@ import java.math.BigDecimal;
 public class OrderDonRenewRecord extends BaseEntity{
 	private Long orderId;
 
+	private Long oriSkuId;
+
 	private Long userId;
 
 	private Long packageId;

+ 9 - 0
netflix-dao/src/main/java/com/cyksj/model/manage/views/OrderDonSearchView.java

@@ -64,6 +64,9 @@ public class OrderDonSearchView {
 	@DbField("sku.spec_val")
 	private String specVal;
 
+	@DbField("o.order_type")
+	private Integer orderType;
+
 	@DbField("sku.months")
 	private Integer months;
 
@@ -164,4 +167,10 @@ public class OrderDonSearchView {
 
 	@DbField("sku.is_mirror")
 	private Boolean isMirror;
+
+	/**
+	 * 原先规格
+	 */
+	@DbIgnore
+	private String oriSpecVal;
 }

+ 3 - 2
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -3776,7 +3776,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 
 		orderDonMapper.insert(orderDon);
 		//记录续费升级的规格
-		recordRenewOrderDon(orderDon, renewUpgradePackage);
+		recordRenewOrderDon(orderDon, renewUpgradePackage, groupsTrips);
 
 		jobManager.addJob(EXPIRY_TIME, () -> {
 			closeOrder(orderDon.getId(), null);
@@ -3800,12 +3800,13 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 	/**
 	 * 记录续费升级的规格
 	 */
-	private void recordRenewOrderDon(OrderDon orderDon, RenewUpgradePackage renewUpgradePackage) {
+	private void recordRenewOrderDon(OrderDon orderDon, RenewUpgradePackage renewUpgradePackage, GroupsTrips groupsTrips) {
 		OrderDonRenewRecord orderDonRenewRecord = new OrderDonRenewRecord();
 		orderDonRenewRecord.setOrderId(orderDon.getId());
 		orderDonRenewRecord.setUserId(orderDon.getUserId());
 		orderDonRenewRecord.setPackageId(renewUpgradePackage.getId());
 		orderDonRenewRecord.setDiscount(renewUpgradePackage.getDiscount());
+		orderDonRenewRecord.setOriSkuId(groupsTrips.getSkuId());
 		orderDonRenewRecordMapper.insert(orderDonRenewRecord);
 	}
 

+ 10 - 4
netflix-web/src/main/java/com/cyksj/web/controller/payment/OrderController.java

@@ -69,10 +69,7 @@ import javax.servlet.http.HttpServletResponse;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.nio.charset.StandardCharsets;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -528,6 +525,15 @@ public class OrderController {
         if (orderDonView == null) {
             throw BusinessRuntimeException.getInstance("订单不存在");
         }
+        if (orderDonView.getIsMirror() && orderDonView.getOrderType() == 2) {
+            Optional.ofNullable(orderDonRenewRecordMapper.selectOne(Wrappers.lambdaQuery(OrderDonRenewRecord.class)
+                            .eq(OrderDonRenewRecord::getOrderId, orderId)
+                            .last("limit 1")))
+                    .ifPresent(renew -> {
+                        GoodsDonSku sku = skuMapper.selectById(renew.getOriSkuId());
+                        orderDonView.setOriSpecVal(sku.getSpecVal());
+                    });
+        }
         return GatewayResponse.SUCCESS.newBuilder().toResult(orderDonView);
     }