From 4206b94626e7093236675d52b2d539fc5513f54b Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期二, 06 一月 2026 10:36:34 +0800
Subject: [PATCH] 优化

---
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/CourseController.java |   40 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/CourseController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/CourseController.java
index 4074a3d..99d7647 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/CourseController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/CourseController.java
@@ -138,6 +138,46 @@
         LocalDate endTime = course.getEndTime();
 
 
+        if(endTime.isBefore(LocalDate.now())){
+            return R.fail("课程已截至报名");
+        }
+        long count = courseOrderService.count(Wrappers.lambdaQuery(TCourseOrder.class).eq(TCourseOrder::getCourseId, course.getId()).in(TCourseOrder::getPayStatus, Arrays.asList(1, 2, 5)));
+        if(count>=course.getPeopleLimit()){
+            return R.fail("报名人数已满");
+        }
+
+        courseOrder.setAppUserId(userId);
+        courseOrder.setPayMoney(course.getCourseCost());
+        courseOrder.setPayStatus(1);
+        courseOrder.setOrderNumber(OrderNos.getDid());
+        boolean save = courseOrderService.save(courseOrder);
+//        if (save) {
+//            Map<String, ? extends Object> maps =
+//                    new ImmutableMap.Builder<String, String>().
+//                            put("id", courseOrder.getId())
+//                            .build();
+//            QuartzManager.addJob(
+//                    OrderJob.class,
+//                    (OrderJob.name+courseOrder.getId()).toUpperCase(),
+//                    TimeJobType.CANCEL_ORDER,
+//                    DateUtils.localDateTimeToDate(LocalDateTime.now().plusMinutes(15)),
+//                    maps
+//            );
+//            Map<String, Object> result = wxV3Pay.jsApi(courseOrder.getOrderNumber(), course.getCourseCost().multiply(BigDecimal.valueOf(100)).longValue(), appUser.getOpenId(),"购买课程","");
+//            return R.ok(result);
+////            return R.ok();
+//        }
+        return R.ok();
+    }
+    @PostMapping("/saveOrderAndPay")
+    @ApiOperation(value = "课程模块--报名并支付")
+    public R<Map<String, Object>> saveOrderAndPay(@RequestBody TCourseOrder courseOrder) {
+        String userId = tokenService.getLoginUserApplet().getUserId();
+        TAppUser appUser = appUserService.getById(userId);
+        TCourse course = courseService.getById(courseOrder.getCourseId());
+        LocalDate endTime = course.getEndTime();
+
+
         long count1 = insuranceOrderService.count(new LambdaQueryWrapper<TInsuranceOrder>().eq(TInsuranceOrder::getType,course.getCourseType()).eq(TInsuranceOrder::getAppUserId, userId).eq(TInsuranceOrder::getStatus, 2));
         if(count1<=0){
             return R.fail("请先缴纳保险费");

--
Gitblit v1.7.1