Bladeren bron

GPT续费目前升级规格

zoujiajian 2 jaren geleden
bovenliggende
commit
7884c7bd53

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

@@ -28,4 +28,9 @@ public class OrderDonRenewRecord extends BaseEntity{
 	 * 是否过期,默认false
 	 */
 	private Boolean isValid;
+
+	/**
+	 * 1普通,2续费
+	 */
+	private Integer orderType;
 }

+ 5 - 0
netflix-dao/src/main/java/com/cyksj/model/views/ChatGptUserView.java

@@ -75,4 +75,9 @@ public class ChatGptUserView {
      * 是否是续费升级
      */
     private Boolean isRenewPackage;
+
+    /**
+     * 续费升级规格id
+     */
+    private Long renewSkuId;
 }

+ 42 - 0
netflix-dao/src/main/java/com/cyksj/model/views/GoodsDonSkuRenewView.java

@@ -0,0 +1,42 @@
+package com.cyksj.model.views;
+
+import com.ejlchina.searcher.bean.DbField;
+import com.ejlchina.searcher.bean.DbIgnore;
+import com.ejlchina.searcher.bean.SearchBean;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+
+/**
+ * 项目名: yhlxj
+ * 文件名: GoodsDonSkuRenewView
+ * 创建者: JavaZou
+ * 创建时间:2024/8/29 11:38
+ */
+@Getter
+@Setter
+@SearchBean(tables = "goods_don_sku sku left join goods_don g on g.id = sku.goods_id",
+		where = "sku.status is true and g.status is true and g.deleted is true")
+public class GoodsDonSkuRenewView {
+	@DbField("sku.id")
+	private Long skuId;
+
+	@DbField("sku.spec_val")
+	private String specVal;
+
+	@DbField("sku.price")
+	private BigDecimal price;
+
+	@DbField("g.id")
+	private Long goodsId;
+
+	@DbField("g.title")
+	private String title;
+
+	/**
+	 * 续费升级套餐id
+	 */
+	@DbIgnore
+	private Long packageId;
+}

+ 12 - 0
netflix-dao/src/main/java/com/cyksj/model/views/RenewalView.java

@@ -291,6 +291,18 @@ public class RenewalView {
     @DbIgnore
     private Boolean isRenewPackage;
 
+    /**
+     * 续费升级规格id
+     */
+    @DbIgnore
+    private Long renewSkuId;
+
+    /**
+     * 续费升级目前规格
+     */
+    @DbIgnore
+    private GoodsDonSkuRenewView renewSku;
+
     /**
      * 续费升级折扣
      */

+ 1 - 0
netflix-service/src/main/java/com/cyksj/service/chatgpt/impl/ChatGptAccountServiceImpl.java

@@ -843,6 +843,7 @@ public class ChatGptAccountServiceImpl implements ChatGptAccountService {
                     .packageId(chatgptUser.getPackageId())
                     .packagePrice(packagePrice)
                     .isRenewPackage(chatgptUser.getRenewOrderId() != null ? true : false)
+                    .renewSkuId(chatgptUser.getRenewSkuId())
                     .build();
         } else {
             throw BusinessRuntimeException.getInstance("您还未购买该车票");

+ 9 - 0
netflix-service/src/main/java/com/cyksj/service/order/impl/OrderDonServiceImpl.java

@@ -1075,6 +1075,14 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 		}
 		//记录订单ip关联
 		recordOrderDonLocationRelate(orderDon.getId(), payRequest.getIp());
+		//GPT续费升级 目前升级套餐续费
+		if (payRequest.getPackageId() != null && payRequest.getPackageId() != 0 && orderDon.getGoodsId() == 18) {
+			//记录续费升级订单 目前升级规格续费
+			RenewUpgradePackage renewUpgradePackage = renewUpgradePackageMapper.selectById(payRequest.getPackageId());
+			//无优惠折扣 但订单可使用优惠码
+			renewUpgradePackage.setDiscount(BigDecimal.ONE);
+			recordRenewOrderDon(orderDon, renewUpgradePackage, groupsTrips);
+		}
 		return orderDon;
 	}
 
@@ -3831,6 +3839,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
 		orderDonRenewRecord.setPackageId(renewUpgradePackage.getId());
 		orderDonRenewRecord.setDiscount(renewUpgradePackage.getDiscount());
 		orderDonRenewRecord.setOriSkuId(groupsTrips.getSkuId());
+		orderDonRenewRecord.setOrderType(orderDon.getOrderType());
 		orderDonRenewRecordMapper.insert(orderDonRenewRecord);
 	}
 

+ 5 - 0
netflix-service/src/main/java/com/cyksj/service/relation/impl/GroupRelationFrontServiceImpl.java

@@ -309,6 +309,11 @@ public class GroupRelationFrontServiceImpl implements GroupRelationFrontService
 						ticket.setPackagePrice(upgradePackage.getPrice());
 					}
 					ticket.setIsRenewPackage(userInfo.getIsRenewPackage());
+					Long renewSkuId = userInfo.getRenewSkuId();
+					if (renewSkuId != null) {
+						GoodsDonSkuRenewView renewSku = beanSearcher.searchFirst(GoodsDonSkuRenewView.class, MapUtils.builder().field(GoodsDonSkuRenewView::getSkuId, renewSkuId).build());
+						ticket.setRenewSku(renewSku);
+					}
 				} catch (Exception e) {
 				}
 			}