From add48c8930d02d58046e89e78b0530c2d5fce32d Mon Sep 17 00:00:00 2001
From: lisy <linlangsur163@163.com>
Date: 星期五, 30 六月 2023 18:34:15 +0800
Subject: [PATCH] 课程信息:课时详情中续课数据处理

---
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java |   95 +++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 90 insertions(+), 5 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 6ba4f0a..ab7af9d 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
@@ -8,12 +8,14 @@
 import com.dsh.course.service.TCoursePackagePaymentService;
 import com.dsh.course.service.TCoursePackageService;
 import com.dsh.course.util.DateUtil;
+import com.dsh.course.util.StrUtils;
 import io.swagger.annotations.Api;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
@@ -45,7 +47,7 @@
     @PostMapping("/coursePack/queryPayment")
     public List<StuCourseResp> getStuCoursePackagePayment(@RequestBody Integer stuId,@RequestBody Integer appUserId){
         List<StuCourseResp> resps = new ArrayList<>();
-        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,stuId,appUserId);
+        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,null,stuId,appUserId);
         if (byUserId.size() > 0 ){
             for (TCoursePackagePayment tCoursePackagePayment : byUserId) {
                 TCoursePackage tCoursePackage = tcpService.getById(tCoursePackagePayment.getCoursePackageId());
@@ -90,7 +92,7 @@
     @PostMapping("/coursePack/sessionNames")
     public List<StuSessionDetailsVo> getStuSessionList(@RequestBody Date startTime, @RequestBody Date  endTime, @RequestBody Integer stuId, @RequestBody Integer appUserId){
         List<StuSessionDetailsVo> detailsVos = new ArrayList<>();
-        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(startTime,endTime,stuId,appUserId);
+        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(startTime,endTime,null,stuId,appUserId);
         if (byUserId.size() > 0){
             List<Integer> collect = byUserId.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
             List<TCoursePackage> list = tcpService.list(new QueryWrapper<TCoursePackage>()
@@ -110,7 +112,7 @@
     @PostMapping("/coursePack/paymentCourse")
     public List<PurchaseRecordVo> queryCourseDetails(@RequestBody Date startTime, @RequestBody Date  endTime,@RequestBody Integer stuId, @RequestBody Integer appUserId) {
         List<PurchaseRecordVo> purchaseRecordVos = new ArrayList<>();
-        List<TCoursePackagePayment> coursePackage = packagePaymentService.queryAllCoursePackage(startTime,endTime,stuId, appUserId);
+        List<TCoursePackagePayment> coursePackage = packagePaymentService.queryAllCoursePackage(startTime,endTime,null,stuId, appUserId);
         if (coursePackage.size() > 0 ){
             coursePackage.forEach( cspackage -> {
                 PurchaseRecordVo recordVo = new PurchaseRecordVo();
@@ -131,10 +133,9 @@
         Integer totalNu = 0;
         Integer dedutNu = 0;
         Integer remainNu = 0;
-        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,stuId,appUserId);
+        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,null,stuId,appUserId);
         if (byUserId.size() > 0 ){
             for (TCoursePackagePayment tCoursePackagePayment : byUserId) {
-                StuWithCoursesListVo resp = new StuWithCoursesListVo();
                 totalNu = totalNu + tCoursePackagePayment.getTotalClassHours();
                 dedutNu = dedutNu + tCoursePackagePayment.getLaveClassHours();
                 remainNu = remainNu + (tCoursePackagePayment.getTotalClassHours()-tCoursePackagePayment.getLaveClassHours());
@@ -146,4 +147,88 @@
         return lisco;
     }
 
+
+
+    @PostMapping("/coursePack/continuingCourse")
+    public StudentOfCourseVo getStudentCourse(@RequestBody Integer courseId,@RequestBody Integer stuId,@RequestBody Integer appUserId){
+        StudentOfCourseVo courseVo = new StudentOfCourseVo();
+        List<TCoursePackagePayment> tCoursePackagePayments = packagePaymentService.queryAllCoursePackage(null,null,courseId,stuId,appUserId);
+        if (tCoursePackagePayments.size() > 0 ){
+
+            List<CourseHoursType> typeList = new ArrayList<>();
+            tCoursePackagePayments.forEach(cou -> {
+                CourseHoursType hoursType = new CourseHoursType();
+                hoursType.setCourseConfigId(cou.getId());
+                hoursType.setCourseConfigId(cou.getClassHours());
+                typeList.add(hoursType);
+            });
+            TCoursePackagePayment tCoursePackagePayment = tCoursePackagePayments.get(0);
+            courseVo.setCoursePackageId(tCoursePackagePayment.getCoursePackageId());
+            courseVo.setTypeList(typeList);
+
+            TCoursePackage coursePackage = tcpService.getById(tCoursePackagePayment.getCoursePackageId());
+            courseVo.setPackageImg(coursePackage.getCoverDrawing());
+            courseVo.setCourseName(coursePackage.getName());
+            courseVo.setCoachId(coursePackage.getCoachId());
+            String classWeeks = coursePackage.getClassWeeks();
+            List<Integer> integers = StrUtils.dealStrToList(classWeeks);
+            if (integers.size() > 0){
+                StringBuilder courWeeks = new StringBuilder("每");
+                for (Integer integer : integers) {
+                    switch (integer){
+                        case 1:
+                            courWeeks.append("周一、");
+                            break;
+                        case 2:
+                            courWeeks.append("周二、");
+                            break;
+                        case 3:
+                            courWeeks.append("周三、");
+                            break;
+                        case 4:
+                            courWeeks.append("周四、");
+                            break;
+                        case 5:
+                            courWeeks.append("周五、");
+                            break;
+                        case 6:
+                            courWeeks.append("周六、");
+                            break;
+                        case 7:
+                            courWeeks.append("周末、");
+                            break;
+                        default:
+                            break;
+                    }
+                }
+                if (courWeeks.length() > 0 && courWeeks.charAt(courWeeks.length() - 1) == ','){
+                    courWeeks.deleteCharAt(courWeeks.length() - 1);
+                }
+                courseVo.setCourseWeek(courWeeks.toString());
+            }
+
+            courseVo.setCourseTime(coursePackage.getClassStartTime()+"-"+coursePackage.getClassEndTime());
+            // TODO: 2023/6/30 查询会员折扣数据
+            String payType = tCoursePackagePayment.getPayType();
+            BigDecimal cashPayment = tCoursePackagePayment.getCashPayment();
+            double cashPaymentValue = cashPayment.doubleValue();
+            Integer playPaiCoin = tCoursePackagePayment.getPlayPaiCoin();
+            switch (payType) {
+                case "1;2":
+                    courseVo.setAmount(cashPaymentValue);
+                    courseVo.setWpGold(playPaiCoin);
+                    break;
+                case "1":
+                    courseVo.setAmount(cashPaymentValue);
+                    break;
+                case "2":
+                    courseVo.setWpGold(playPaiCoin);
+                    break;
+            }
+
+            courseVo.setStoreId(coursePackage.getStoreId());
+        }
+
+        return courseVo;
+    }
 }

--
Gitblit v1.7.1