From f88cfa02e36752e4acad7adc4b045155e8e50f21 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 08 十二月 2023 09:16:29 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/PlayPai

---
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java |   65 +++++++++++++++++---------------
 1 files changed, 35 insertions(+), 30 deletions(-)

diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
index 42473f5..565114e 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java
@@ -28,6 +28,7 @@
 import com.dsh.course.util.*;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.obs.services.internal.ServiceException;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -179,6 +180,7 @@
         coursePackageOrder.setStudentIds(String.valueOf(packagePayment.getStudentId()));
         coursePackageOrder.setCoursePackageId(packagePayment.getCoursePackageId());
         coursePackageOrder.setClassHours(packagePayment.getClassHours());
+        coursePackageOrder.setLaveClassHours(packagePayment.getClassHours());
         coursePackageOrder.setOriginalPrice(packagePayment.getOriginalPrice());
         coursePackageOrder.setCashPayment(packagePayment.getCashPayment());
         coursePackageOrder.setPlayPaiCoin(packagePayment.getPlayPaiCoin());
@@ -241,11 +243,11 @@
                 calendar.setTime(new Date());
                 calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + validDays);
                 coursePackageOrderStudent.setUseTime(calendar.getTime());
-
+                coursePackageOrderStudent.setInsertTime(new Date());
                 coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent);
                 Integer studentId = Integer.valueOf(byId1.getStudentIds());
                 //开始排课
-                addPackageStudent1(byId, byId1.getAppUserId(), studentId, coursePackageOrderStudent);
+                addPackageStudent1(byId, byId1.getAppUserId(), studentId, byId1, coursePackageOrderStudent);
             } else {
                 Date useTime = coursePackageOrderStudent.getUseTime();
                 coursePackageOrderStudent.setTotalClassHours(coursePackageOrderStudent.getTotalClassHours() + byId1.getClassHours());
@@ -274,16 +276,17 @@
                 calendar9.add(Calendar.DAY_OF_MONTH, byId.getValidDays());
                 Date time = calendar9.getTime();
                 coursePackageOrderStudent.setUseTime(time);
+                coursePackageOrderStudent.setInsertTime(new Date());
                 coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent);
                 Integer studentId = Integer.valueOf(byId1.getStudentIds());
                 //中间断课,没有连续续费的情况需要重新排课
                 if (useTime.compareTo(new Date()) < 0) {
-                    addPackageStudent1(byId, byId1.getAppUserId(), studentId, coursePackageOrderStudent);
+                    addPackageStudent1(byId, byId1.getAppUserId(), studentId, byId1, coursePackageOrderStudent);
                 }
             }
         }
             if(byId.getType() == 2){
-                addPackageStudent1(byId, byId1.getAppUserId(), Integer.valueOf(byId1.getStudentIds()), null);
+                addPackageStudent1(byId, byId1.getAppUserId(), Integer.valueOf(byId1.getStudentIds()), byId1, null);
             }
         return packagePaymentService.changeState(dto);
     }
@@ -333,7 +336,7 @@
             Store store = storeClient.queryStoreById(re.getStoreId());
             TAppUser appUser = appUserClient.queryAppUser1(re.getAppUserId());
             String studentId = re.getStudentId();
-            String[] split = studentId.split(",");
+            String[] split = studentId.split(";");
             StringBuilder stringBuilder = new StringBuilder("");
 
             for (String s : split) {
@@ -1181,7 +1184,6 @@
      */
     @PostMapping("/base/coursePackage/alipayRegisteredCoursesCallback")
     public void alipayCallback(HttpServletRequest request, HttpServletResponse response) {
-        System.err.println("========支付宝支付回调========");
         try {
             Map<String, String> map = payMoneyUtil.alipayCallback(request);
             if (null != map) {
@@ -1728,7 +1730,7 @@
                 if (student != null) {
                     sId = student.getId();
                 }
-                addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePayment.getId());
+                addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePayment, coursePackagePayment.getId());
 
 
                 CourseCounsum courseCounsum = new CourseCounsum();
@@ -1751,7 +1753,7 @@
                 if (student != null) {
                     sId = student.getId();
                 }
-                addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePaymentServiceOne.getId());
+                addPackageStudent(orderDto.getClassId(), orderDto.getAppUserId(), Integer.valueOf(s), coursePackagePaymentServiceOne, coursePackagePaymentServiceOne.getId());
 
 
                 CourseCounsum courseCounsum = new CourseCounsum();
@@ -1760,6 +1762,7 @@
                 courseCounsum.setNum(orderDto.getClassHours());
                 courseCounsum.setInsertTime(new Date());
                 courseCounsum.setReason("积分兑换");
+                courseCounsum.setInsertTime(new Date());
                 courseCounsumService.save(courseCounsum);
 
 
@@ -1901,7 +1904,8 @@
 
     @Autowired
     private TCoursePackageService coursePackageService;
-    private void addPackageStudent1(TCoursePackage tCoursePackage, Integer userId, Integer sId, CoursePackageOrderStudent coursePackageOrderStudent) {
+
+    private void addPackageStudent1(TCoursePackage tCoursePackage, Integer userId, Integer sId, CoursePackageOrder coursePackageOrder, CoursePackageOrderStudent coursePackageOrderStudent) {
         try {
             //1常规 2假期 3体验
             if (tCoursePackage.getType() == 1) {
@@ -1958,6 +1962,7 @@
                         coursePackageScheduling.setAppUserId(userId);
                         coursePackageScheduling.setStudentId(sId);
                         coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
+                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackageOrder.getId().toString());
                         Date parse = format1.parse(format.format(time) + " " + split[j]);
                         Date parse1 = format1.parse(format.format(time) + " " + split1[j]);
                         coursePackageScheduling.setClassDate(parse);
@@ -2018,6 +2023,7 @@
                         coursePackageScheduling.setAppUserId(userId);
                         coursePackageScheduling.setStudentId(sId);
                         coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
+                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackageOrder.getId().toString());
                         Date parse = format1.parse(format.format(time) + " " + split[j]);
                         Date parse1 = format1.parse(format.format(time) + " " + split1[j]);
                         coursePackageScheduling.setClassDate(parse);
@@ -2043,7 +2049,7 @@
             e.printStackTrace();
         }
     }
-    private void addPackageStudent(Integer courseId, Integer userId, Integer sId, Long paymentId) throws ParseException {
+    private void addPackageStudent(Integer courseId, Integer userId, Integer sId, TCoursePackagePayment coursePackagePayment, Long paymentId) throws ParseException {
         // 课包
         TCoursePackage tCoursePackage = coursePackageService.getById(courseId);
 
@@ -2094,6 +2100,7 @@
                         }
                         CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                         coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
+                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackagePayment.getId().toString());
                         Date parse = format1.parse(format.format(date) + " " + split[i1]);
                         Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
                         coursePackageScheduling.setClassDate(parse);
@@ -2157,6 +2164,7 @@
                         }
                         CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                         coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
+                        coursePackageScheduling.setCoursePackagePaymentIds(coursePackagePayment.getId().toString());
                         Date parse = format1.parse(format.format(date) + " " + split[i1]);
                         Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
                         coursePackageScheduling.setClassDate(parse);
@@ -2269,6 +2277,7 @@
                     }
                     CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                     coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
+                    coursePackageScheduling.setCoursePackagePaymentIds(pay.getId().toString());
                     Date parse = format1.parse(format.format(date) + " " + split[i1]);
                     Date parse1 = format1.parse(format.format(date) + " " + split1[i1]);
                     coursePackageScheduling.setClassDate(parse);
@@ -2367,13 +2376,13 @@
 
     @ResponseBody
     @PostMapping("/coursePackagePayment/consumeCourse")
-    public ResultUtil consumeCourse(@RequestBody Integer coursePackagePaymentId) {
+    public Integer consumeCourse(@RequestBody Integer coursePackagePaymentId) {
         CoursePackageOrderStudent coursePackageOrderStudent = orderStudentService.getById(coursePackagePaymentId);
 
         TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId());
 
         if (coursePackageOrderStudent.getLaveClassHours()<coursePackage.getNeedNum()){
-            return ResultUtil.error("当前学员课时数不足");
+           return 1;
         }
         coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours()-coursePackage.getNeedNum());
         orderStudentService.updateById(coursePackageOrderStudent);
@@ -2384,14 +2393,14 @@
         courseCounsum.setInsertTime(new Date());
         courseCounsum.setReason("补课");
         courseCounsumService.save(courseCounsum);
-        return ResultUtil.success("补课成功");
+        return 2;
     }
 
 
     @ResponseBody
     @PostMapping("/coursePackagePayment/CountqueryByClassId")
     public Integer CountqueryByClassId(@RequestBody Integer id) {
-        int coursePackageId = packagePaymentService.count(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", id));
+        int coursePackageId = coursePackageOrderStudentService.count(new QueryWrapper<CoursePackageOrderStudent>().eq("coursePackageId", id));
 
 
         return coursePackageId;
@@ -2547,21 +2556,6 @@
                 .in(CoursePackageScheduling::getCoursePackageId, collect)
         );
         List<Integer> collect1 = list8.stream().map(CoursePackageScheduling::getCoursePackageId).collect(Collectors.toList());
-//        // 找出购买的课包
-//        List<CoursePackageOrderStudent> list1 = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>()
-//                .eq("appUserId", courseDetailReq.getAppUserId())
-//                .eq("studentId", courseDetailReq.getStuId())
-//                .in("coursePackageId", collect1)
-//                .eq("status", 1)
-//                .eq("state", 1)
-//        );
-
-
-
-//        List<Integer> collect1 = list1.stream().map(CoursePackageOrderStudent::getCoursePackageId).collect(Collectors.toList());
-//        List<Long> ids = list1.stream().map(CoursePackageOrderStudent::getId).collect(Collectors.toList());
-
-
         for (TCoursePackage tCoursePackage : list) {
             DetailsListVo detailsListVo = new DetailsListVo();
             detailsListVo.setId(tCoursePackage.getId());
@@ -2640,14 +2634,25 @@
                     detailsListVo.setIsType(list4.get(0).getType());
 
                     for (CoursePackageStudent coursePackageStudent : list4) {
+                        CoursePackageScheduling coursePackageScheduling = coursePackageSchedulingMapper.selectById(coursePackageStudent.getCoursePackageSchedulingId());
+                        if (coursePackageScheduling.getStatus()==4){
+                            detailsListVo.setIsType(3);
+                        }
+
                         Integer signInOrNot1 = coursePackageStudent.getSignInOrNot();
                         detailsListVo.setType(1);
 
                         if (signInOrNot1 == 2) {
                             detailsListVo.setType(3);
                         }
+                        //体验购课去掉按钮
+                        if(coursePackageScheduling.getType() == 3){
+                            detailsListVo.setCourseType(3);
+                            detailsListVo.setType(2);
+                        }
+
+
                         detailsListVo.setIsType(coursePackageStudent.getType());
-                        CoursePackageScheduling coursePackageScheduling = coursePackageSchedulingMapper.selectById(coursePackageStudent.getCoursePackageSchedulingId());
                         Date classDate = coursePackageScheduling.getClassDate();
                         Date endDate = coursePackageScheduling.getEndDate();
                         SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");

--
Gitblit v1.7.1