From 640ff18d2d7f4be02ddb7f8f75e899f05545eb98 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 05 二月 2024 11:56:52 +0800
Subject: [PATCH] 更新bug修改

---
 cloud-server-course/src/main/java/com/dsh/course/controller/CancelledClassesController.java |   97 +++++++++++++++++++++++++++++++++++-------------
 1 files changed, 70 insertions(+), 27 deletions(-)

diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CancelledClassesController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CancelledClassesController.java
index ce1da41..c8bf140 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CancelledClassesController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CancelledClassesController.java
@@ -1,8 +1,8 @@
 package com.dsh.course.controller;
 
-import com.dsh.course.entity.CancelledClasses;
-import com.dsh.course.entity.CoursePackageScheduling;
-import com.dsh.course.entity.TCoursePackagePayment;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.dsh.course.entity.*;
 import com.dsh.course.feignclient.account.AppUserClient;
 import com.dsh.course.feignclient.account.CoachClient;
 import com.dsh.course.feignclient.account.StudentClient;
@@ -22,6 +22,7 @@
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * @author zhibing.pu
@@ -53,34 +54,57 @@
      */
     @ResponseBody
     @PostMapping("/cancelledClasses/listAll")
-    public List<CancelClassesVO> listAll(@RequestBody CancelClassesQuery query){
-
+    public List<CancelClassesVO> listAll(@RequestBody CancelClassesQuery query) {
         List<CancelClassesVO> res = new ArrayList<>();
-        if (!query.getStudentName().equals("")){
-            List<Integer> s = new ArrayList<>();
-            List<Student> students = studentClient.queryStudentListByName(query.getStudentName());
-            if (students.size()==0){
-                return new ArrayList<>();
+        if (query.getStudentName() != null) {
+            if (!query.getStudentName().equals("")) {
+                List<Integer> s = new ArrayList<>();
+                List<Student> students = studentClient.queryStudentListByName(query.getStudentName());
+                if (students.size() == 0) {
+                    return new ArrayList<>();
+                }
+                for (Student coach : students) {
+                    s.add(coach.getId());
+                }
+                query.setStudentIds(s);
             }
-            for (Student coach : students) {
-                s.add(coach.getId());
-            }
-            query.setStudentIds(s);
         }
-        if (!query.getCoachName().equals("")){
-            List<Integer> c = new ArrayList<>();
-            List<Coach> coaches = coachClient.queryCoachListByName(query.getCoachName());
-            if (coaches.size()==0){
-                return new ArrayList<>();
+        if (query.getCoachName() != null) {
+            if (!query.getCoachName().equals("")) {
+                List<Integer> c = new ArrayList<>();
+                List<Coach> coaches = coachClient.queryCoachListByName(query.getCoachName());
+                if (coaches.size() == 0) {
+                    return new ArrayList<>();
+                }
+                for (Coach coach : coaches) {
+                    c.add(coach.getId());
+                }
+                query.setCoachIds(c);
             }
-            for (Coach coach : coaches) {
-                c.add(coach.getId());
-            }
-            query.setCoachIds(c);
         }
-        List<CancelClassesVO> result = cancelledClassesService.listAll(query);
+        List<Integer> collect = new ArrayList<>();
+        if (query.getStoreId() != null) {
+            List<TCoursePackage> list = coursePackageService.list(new LambdaQueryWrapper<TCoursePackage>().eq(TCoursePackage::getStoreId, query.getStoreId()));
+            collect = list.stream().map(TCoursePackage::getId).collect(Collectors.toList());
+            if (collect.size() == 0) {
+                collect.add(-1);
+            }
+        }
+        if (query.getStoreIds() != null && query.getStoreIds().size() != 0) {
+            List<TCoursePackage> list = coursePackageService
+                    .list(new LambdaQueryWrapper<TCoursePackage>()
+                            .in(TCoursePackage::getStoreId, query.getStoreIds()));
+            collect = list.stream().map(TCoursePackage::getId).collect(Collectors.toList());
+            if (collect.size() == 0) {
+                collect.add(-1);
+            }
+        }
+        List<CancelClassesVO> result = cancelledClassesService.listAll(query, collect);
         for (CancelClassesVO cancelClassesVO : result) {
             CoursePackageScheduling byId1 = coursePackageSchedulingService.getById(cancelClassesVO.getCoursePackageSchedulingId());
+            if (byId1 == null) {
+                continue;
+            }
             SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
             String string = format.format(byId1.getClassDate());
             String string1 = format.format(byId1.getEndDate());
@@ -88,25 +112,44 @@
             String minute = string1.substring(14, 16);
             // 去除后三位
             String s = string.substring(0, string.length() - 3);
-            String temp = s+"-"+hour+":"+ minute;
+            String temp = s + "-" + hour + ":" + minute;
             cancelClassesVO.setStartAndEnd(temp);
             TCoursePackagePayment byId = coursePackagePaymentService.getById(cancelClassesVO.getCoursePackagePaymentId());
             cancelClassesVO.setStoreName(storeClient.queryStoreById(cancelClassesVO.getStoreId()).getName());
-            cancelClassesVO.setStudentName(studentClient.queryStudentById(byId.getStudentId()).getName());
+            if(null != byId){
+                cancelClassesVO.setStudentName(studentClient.queryStudentById(byId.getStudentId()).getName());
+            }
             cancelClassesVO.setCoachName(coachClient.queryCoachById(cancelClassesVO.getCoachId()).getName());
 
         }
         return result;
     }
 
+
+    @Autowired
+    private CourseCounsumService courseCounsumService;
+
+
+    @Autowired
+    private ICoursePackageOrderStudentService orderStudentService;
     /**
      * 添加数据
+     *
      * @param cancelledClasses
      */
     @ResponseBody
     @PostMapping("/cancelledClasses/addCancelledClasses")
-    public void addCancelledClasses(@RequestBody CancelledClasses cancelledClasses){
+    public void addCancelledClasses(@RequestBody CancelledClasses cancelledClasses) {
         cancelledClassesService.save(cancelledClasses);
+        orderStudentService.getById(cancelledClasses.getCoursePackagePaymentId());
+        CourseCounsum courseCounsum = new CourseCounsum();
+        courseCounsum.setPaymentId(cancelledClasses.getCoursePackagePaymentId());
+        courseCounsum.setChangeType(0);
+        courseCounsum.setNum(cancelledClasses.getCancelledClassesNumber());
+        courseCounsum.setInsertTime(new Date());
+        courseCounsum.setReason("消课");
+        courseCounsumService.save(courseCounsum);
     }
 
+
 }

--
Gitblit v1.7.1