zhibing.pu
2024-07-24 c52f83ef5f702b3c178881d3eee72267c77e7751
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -930,6 +930,7 @@
            coursePackageOrder.setStatus(1);
            coursePackageOrder.setState(1);
            coursePackageOrder.setInsertTime(new Date());
            coursePackageOrder.setOrderType(1);
            coursePackageOrderService.save(coursePackageOrder);
            orderId = coursePackageOrder.getId();
        }else{
@@ -942,7 +943,8 @@
            coursePackageOrderService.updateById(coursePackageOrder);
        }
        ResultUtil weixinpay = payMoneyUtil.weixinpay("购买课程", coursePackagePaymentConfig.getId().toString(), code, paymentPrice.toString(), "/base/course/weChatPaymentCourseCallback", "APP", "");
        ResultUtil weixinpay = payMoneyUtil.weixinpay("报名运动营", coursePackagePaymentConfig.getId().toString(), code, paymentPrice.toString(),
                "/base/course/weChatPaymentCourseCallback", "APP", "");
        if (weixinpay.getCode() == 200) {
            String finalCode = code;
            new Thread(new Runnable() {
@@ -974,7 +976,7 @@
                                Map<String, String> data1 = resultUtil.getData();
                                String s = data1.get("trade_state");
                                String transaction_id = data1.get("transaction_id");
                                if ("REFUND".equals(s) || "NOTPAY".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
                                if ("REFUND".equals(s) || "CLOSED".equals(s) || "REVOKED".equals(s) || "PAYERROR".equals(s) || num == 10) {
                                    //有待支付的订单,这里不处理
//                                    coursePackageOrder1.setState(3);
//                                    coursePackageOrderService.updateById(coursePackageOrder1);
@@ -986,12 +988,10 @@
                                    coursePackageOrder1.setAppUserId(null);
                                    coursePackageOrderService.updateById(coursePackageOrder1);
                                    //修改课时有效期
                                    addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig);
                                    break;
                                }
                                if ("USERPAYING".equals(s)) {
                                if ("USERPAYING".equals(s) || "NOTPAY".equals(s)) {
                                    num++;
                                }
                            }
@@ -1038,6 +1038,7 @@
            coursePackageOrder.setStatus(1);
            coursePackageOrder.setState(1);
            coursePackageOrder.setInsertTime(new Date());
            coursePackageOrder.setOrderType(1);
            coursePackageOrderService.save(coursePackageOrder);
        }else {
            CoursePackageOrder coursePackageOrder = coursePackageOrderService.getById(paymentCourseVo.getOrderId());
@@ -1061,7 +1062,7 @@
                smid1 = storeClient.getSMIDByOperatorId(store.getOperatorId());
            }
        }
        ResultUtil alipay = payMoneyUtil.alipay(smid1,"购买课程", "购买课程",
        ResultUtil alipay = payMoneyUtil.alipay(smid1,"报名运动营", "报名运动营",
                coursePackagePaymentConfig.getId().toString(),
                code, paymentPrice.toString(), "/base/course/aliPaymentCourseCallback");
        if (alipay.getCode() == 200) {
@@ -1251,6 +1252,7 @@
            coursePackageOrder.setStatus(1);
            coursePackageOrder.setState(1);
            coursePackageOrder.setInsertTime(new Date());
            coursePackageOrder.setOrderType(1);
            coursePackageOrderService.save(coursePackageOrder);
            orderId = coursePackageOrder.getId();
        }else{
@@ -1335,17 +1337,22 @@
                    coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent);
                    //更新学员课时有效期
                    boolean b = true;
                    if(null == student.getValidity()){
                        student.setValidity(calendar.getTime());
                        addOldPackageStudent(student);
                        b = false;
                    }else if(calendar.getTimeInMillis() > student.getValidity().getTime()){
                        student.setValidity(calendar.getTime());
                        addOldPackageStudent(student);
                        b = false;
                    }
                    studentClient.frozen(student);
                    //开始排课
                    addPackageStudent(coursePackage, coursePackageOrder.getAppUserId(), Integer.valueOf(id), coursePackageOrderStudent, student.getValidity());
                    if(b){
                        addPackageStudent(coursePackage, coursePackageOrder.getAppUserId(), Integer.valueOf(id), coursePackageOrderStudent, student.getValidity());
                    }
                    //课时记录
                    CourseCounsum courseCounsum = new CourseCounsum();
@@ -1353,7 +1360,7 @@
                    courseCounsum.setChangeType(1);
                    courseCounsum.setNum(coursePackagePaymentConfig.getClassHours());
                    courseCounsum.setInsertTime(new Date());
                    courseCounsum.setReason("购买课包");
                    courseCounsum.setReason("报名运动营");
                    courseCounsumService.save(courseCounsum);
                    //账单记录
                    if(coursePackageOrder.getPayType() != 3){
@@ -1378,17 +1385,20 @@
                    coursePackageOrderStudent.setUseTime(calendar.getTime());
                    coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent);
                    //更新学员课时有效期
                    boolean b = true;
                    if(null == student.getValidity()){
                        student.setValidity(calendar.getTime());
                        addOldPackageStudent(student);
                        b = false;
                    }else if(calendar.getTimeInMillis() > student.getValidity().getTime()){
                        student.setValidity(calendar.getTime());
                        addOldPackageStudent(student);
                        b = false;
                    }
                    studentClient.frozen(student);
                    //中间断课,没有连续续费的情况需要重新排课
                    if (useTime.compareTo(new Date()) < 0) {
                    if (useTime.compareTo(new Date()) < 0 && b) {
                        addPackageStudent(coursePackage, coursePackageOrder.getAppUserId(), Integer.valueOf(id), coursePackageOrderStudent, student.getValidity());
                    }