From 18b58aaf9bd99cadd0e7f80fe5d80586f2f4831a Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期五, 24 十一月 2023 18:32:43 +0800
Subject: [PATCH] 11.24

---
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java |   56 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 51 insertions(+), 5 deletions(-)

diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
index 9fd9159..0cc4ea6 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -1166,6 +1166,10 @@
 
 
             }else {
+                if (coursePackagePaymentServiceOne.getPayStatus()==1){
+                    isContinue = 1;
+
+                }
 //                coursePackagePaymentServiceOne.setClassHours(coursePackagePaymentServiceOne.getClassHours()+coursePackagePaymentConfig.getClassHours());
 //                coursePackagePaymentServiceOne.setOriginalPrice(coursePackagePaymentServiceOne.getOriginalPrice()+paymentCourseVo.getPrice());
 //                coursePackagePaymentServiceOne.setPlayPaiCoin(coursePackagePaymentServiceOne.getPlayPaiCoin()+paymentPrice.intValue());
@@ -1203,11 +1207,11 @@
         }
 
 
-
+        //新的订单添加
         if (paymentCourseVo.getOrderId()==null) {
             TOrder order = new TOrder();
             order.setIsPay(1);
-            order.setPayType(2);
+            order.setPayType(1);
             order.setAppUserId(uid);
             order.setPrice(paymentPrice);
             order.setCode(code);
@@ -1245,12 +1249,17 @@
                             Thread.sleep(wait);
                             List<TCoursePackagePayment> list = coursePackagePaymentService.list(new QueryWrapper<TCoursePackagePayment>().eq("state", 1).eq("code", code).eq("payType", 2));
                             TCoursePackagePayment one = list.get(0);
+
+                            List<TOrder> list1 = orderService.list(new QueryWrapper<TOrder>().eq("code", code).eq("payType", 1));
+                            TOrder order = list1.get(0);
+
+
                             AlipayTradeQueryResponse alipayTradeQueryResponse = payMoneyUtil.queryALIOrder(code);
-                            if(one.getPayStatus() == 2){
+                            if(order.getIsPay() == 2){
                                 break;
                             }
 
-                            if( one.getPayStatus() == 1){
+                            if(order.getIsPay() == 1){
                                 /**
                                  * WAIT_BUYER_PAY(交易创建,等待买家付款)、
                                  * TRADE_CLOSED(未付款交易超时关闭,或支付完成后全额退款)、
@@ -1276,6 +1285,14 @@
                                     }
 
                                     coursePackagePaymentService.updateBatchById(list);
+
+
+                                    for (TOrder tOrder : list1) {
+                                        tOrder.setIsPay(2);
+                                        tOrder.setOrderNum(tradeNo);
+                                    }
+                                    orderService.updateBatchById(list1);
+
 
 
                                     for (String s1 : split) {
@@ -1348,7 +1365,7 @@
                                     userCouponClient.sendUserCoupon(new SendCouponReq(uid,coursePackagePaymentConfig.getCouponIds()));
 
                                     for (TCoursePackagePayment coursePackagePayment : list) {
-                                        addPackageStudent(paymentCourseVo.getId(),uid, finalSid,coursePackagePayment.getId(),paymentCourseVo.getPrice());
+                                        addPackageStudent(paymentCourseVo.getId(),uid, finalSid,coursePackagePayment.getId(),paymentPrice);
                                     }
 
                                     moneyOut(tradeNo,tradeNo);
@@ -1483,6 +1500,9 @@
         SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
         String code = sdf.format(new Date()) + UUIDUtil.getNumberRandom(5);
 
+        List<Long> pays = new ArrayList<>();
+
+
         TCoursePackage course = coursePackageService.getById(paymentCourseVo.getId());
 
 
@@ -1561,6 +1581,8 @@
                     courseCounsumService.save(courseCounsum1);
                 }
 
+
+                pays.add(coursePackagePayment.getId());
             }else{
                 coursePackagePaymentServiceOne.setClassHours(coursePackagePaymentServiceOne.getClassHours()+coursePackagePaymentConfig.getClassHours()+hour);
                 if (coursePackagePaymentServiceOne.getOriginalPrice()!=null) {
@@ -1618,10 +1640,34 @@
                 }
 
 
+                pays.add(coursePackagePaymentServiceOne.getId());
+
+
+
             }
 
         }
 
+
+        if (paymentCourseVo.getOrderId()==null) {
+            TOrder order = new TOrder();
+            order.setIsPay(1);
+            order.setPayType(2);
+            order.setAppUserId(appUser.getId());
+            order.setPrice(paymentPrice);
+            order.setCode(code);
+
+            String paysStr = pays.stream()
+                    .map(String::valueOf)
+                    .collect(Collectors.joining(","));
+            order.setPaysId(paysStr);
+
+            orderService.save(order);
+
+        }
+
+
+
         Integer playPaiCoins = appUser.getPlayPaiCoins();
         appUser.setPlayPaiCoins(playPaiCoins - paymentPrice.intValue());
         appUserClient.updateAppUser(appUser);

--
Gitblit v1.7.1