From d0fe90adfae626158a431b038395caa908e48e8c Mon Sep 17 00:00:00 2001
From: java <linlangsur163@163.com>
Date: 星期五, 30 六月 2023 11:34:05 +0800
Subject: [PATCH] 课程信息:课时详情的数据处理

---
 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java |  101 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 91 insertions(+), 10 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 b240beb..6ba4f0a 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
@@ -1,23 +1,24 @@
 package com.dsh.course.controller;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.dsh.course.entity.TCoursePackage;
 import com.dsh.course.entity.TCoursePackagePayment;
-import com.dsh.course.feignclient.model.CourseOfStoreVo;
-import com.dsh.course.feignclient.model.StuCourseResp;
+import com.dsh.course.feignclient.model.*;
+import com.dsh.course.service.TCoursePackagePaymentService;
 import com.dsh.course.service.TCoursePackageService;
-import com.dsh.course.servs.CoursePackagePaymentRepository;
+import com.dsh.course.util.DateUtil;
 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.CrossOrigin;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 @Api
 @CrossOrigin
@@ -27,11 +28,14 @@
 
     private Logger logger = LoggerFactory.getLogger("business-log");
 
+
     @Autowired
-    private CoursePackagePaymentRepository coursePackagePaymentRepository;
+    private TCoursePackagePaymentService packagePaymentService;
 
     @Autowired
     private TCoursePackageService tcpService;
+
+    private final SimpleDateFormat format = new SimpleDateFormat("MM-dd HH:mm");
 
     /**
      * 获取 没有学员信息的图片配置
@@ -39,9 +43,9 @@
      * @return  课包列表
      */
     @PostMapping("/coursePack/queryPayment")
-    public List<StuCourseResp> getStuCoursePackagePayment(Integer stuId){
+    public List<StuCourseResp> getStuCoursePackagePayment(@RequestBody Integer stuId,@RequestBody Integer appUserId){
         List<StuCourseResp> resps = new ArrayList<>();
-        List<TCoursePackagePayment> byUserId = coursePackagePaymentRepository.findByUserId(stuId);
+        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(null,null,stuId,appUserId);
         if (byUserId.size() > 0 ){
             for (TCoursePackagePayment tCoursePackagePayment : byUserId) {
                 TCoursePackage tCoursePackage = tcpService.getById(tCoursePackagePayment.getCoursePackageId());
@@ -51,6 +55,7 @@
                 resp.setTotalCourseNums(tCoursePackagePayment.getTotalClassHours());
                 resp.setResidueNums(tCoursePackagePayment.getLaveClassHours());
                 resp.setDeductionNums(tCoursePackagePayment.getTotalClassHours()-tCoursePackagePayment.getLaveClassHours());
+                resps.add(resp);
             }
         }
         return resps;
@@ -62,7 +67,83 @@
      */
     @PostMapping("/coursePack/storeOfCourse")
     public List<CourseOfStoreVo> getStuCourseWithStores(){
+        List<CourseOfStoreVo> courseOfStoreVos = tcpService.queryStoreOfCourse();
+        if (courseOfStoreVos.size() > 0){
+            for (CourseOfStoreVo courseOfStoreVo : courseOfStoreVos) {
+                String[] split = courseOfStoreVo.getClassWeeks().split(";");
+                List<Integer> integers = new ArrayList<>();
+                for (String s : split) {
+                    int num = Integer.parseInt(s);
+                    integers.add(num);
+                }
+                courseOfStoreVo.setClassWeekList(integers);
+            }
+        }
         return tcpService.queryStoreOfCourse();
     }
 
+
+    /**
+     *
+     * 课程名称列表
+     */
+    @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);
+        if (byUserId.size() > 0){
+            List<Integer> collect = byUserId.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList());
+            List<TCoursePackage> list = tcpService.list(new QueryWrapper<TCoursePackage>()
+                    .in("id", collect));
+            list.forEach(vo -> {
+                StuSessionDetailsVo detVo = new StuSessionDetailsVo();
+                detVo.setSessionid(vo.getId());
+                detVo.setSessionName(vo.getName());
+                String afterDayDate = DateUtil.getAfterDayDate2(vo.getInsertTime(),vo.getValidDays() + "");
+                detVo.setPeriodOfValidity(afterDayDate);
+                detailsVos.add(detVo);
+            });
+        }
+        return detailsVos;
+    }
+
+    @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);
+        if (coursePackage.size() > 0 ){
+            coursePackage.forEach( cspackage -> {
+                PurchaseRecordVo recordVo = new PurchaseRecordVo();
+                recordVo.setPurchaseAmount("+"+cspackage.getClassHours());
+                recordVo.setPurchaseTime(format.format(cspackage.getInsertTime()));
+                recordVo.setPurchaseType("购买课包");
+                purchaseRecordVos.add(recordVo);
+            });
+        }
+        return purchaseRecordVos;
+    }
+
+
+
+    @PostMapping("/coursePack/stuOfCourses")
+    public StuWithCoursesListVo getStuOfCoursesDetails(@RequestBody Integer stuId, @RequestBody Integer appUserId){
+        StuWithCoursesListVo lisco = new StuWithCoursesListVo();
+        Integer totalNu = 0;
+        Integer dedutNu = 0;
+        Integer remainNu = 0;
+        List<TCoursePackagePayment> byUserId = packagePaymentService.queryAllCoursePackage(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());
+            }
+            lisco.setTotalNums(totalNu);
+            lisco.setDeductedNums(remainNu);
+            lisco.setRemainingNums(dedutNu);
+        }
+        return lisco;
+    }
+
 }

--
Gitblit v1.7.1