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-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java |  116 ++++++++++++++++++++++++++++++++++------------------------
 1 files changed, 68 insertions(+), 48 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java
index 65c5561..045f9b7 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java
@@ -3,7 +3,11 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.dsh.course.entity.CoursePackageOrderStudent;
+import com.dsh.course.feignClient.account.StudentHonorClient;
+import com.dsh.course.feignClient.account.model.StudentHonor;
 import com.dsh.course.feignClient.course.*;
 import com.dsh.course.feignClient.course.model.*;
 import com.dsh.guns.config.UserExt;
@@ -22,10 +26,8 @@
 import java.math.BigDecimal;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @author zhibing.pu
@@ -57,6 +59,9 @@
 
     @Resource
     private CancelledClassesClient cancelledClassesClient;
+
+    @Resource
+    private StudentHonorClient studentHonorClient;
 
 
 
@@ -172,6 +177,9 @@
         }
         coursePackageClient.updateCoursePackage(coursePackage);
         coursePackagePaymentConfigClient.delCoursePackagePaymentConfig(coursePackage.getId());
+        List<TCoursePackageDiscount> tCoursePackageDiscounts = coursePackageDiscountClient
+                .queryByCoursePackageId(coursePackage.getId());
+
         JSONArray jsonArray = JSON.parseArray(coursePackagePaymentConfig);
         for (int i = 0; i < jsonArray.size(); i++) {
             JSONObject jsonObject = jsonArray.getJSONObject(i);
@@ -185,7 +193,11 @@
             coursePackagePaymentConfig1.setCashPayment(cashPayment);
             coursePackagePaymentConfig1.setPlayPaiCoin(playPaiCoin);
             coursePackagePaymentConfig1.setCouponIds(couponIds);
-            coursePackagePaymentConfigClient.addCoursePackagePaymentConfig(coursePackagePaymentConfig1);
+            int i1 = coursePackagePaymentConfigClient.addCoursePackagePaymentConfig(coursePackagePaymentConfig1);
+//            for (TCoursePackageDiscount tCoursePackageDiscount : tCoursePackageDiscounts) {
+//                tCoursePackageDiscount.setCoursePackagePaymentConfigId(coursePackagePaymentConfig1.getId());
+//                coursePackageDiscountClient.update(tCoursePackageDiscount);
+//            }
         }
     }
 
@@ -401,9 +413,9 @@
     @Override
     public ResultUtil cancelReservation(Long id) {
         CoursePackageStudent coursePackageStudent = coursePackageStudentClient.queryCoursePackageStudentById(id);
-        if(coursePackageStudent.getSignInOrNot() == 1){
-            return ResultUtil.error("无法取消预约");
-        }
+//        if(coursePackageStudent.getSignInOrNot() == 1){
+//            return ResultUtil.error("当前学员已到课不能请假");
+//        }
 //        TCoursePackagePayment payment = coursePackagePaymentClient.queryCoursePackagePaymentById(coursePackageStudent.getCoursePackagePaymentId());
 //        payment.setAbsencesNumber(payment.getAbsencesNumber()+1);
 //        coursePackagePaymentClient.editCoursePackagePayment(payment);
@@ -411,8 +423,8 @@
 
         coursePackageStudent = new CoursePackageStudent();
         coursePackageStudent.setId(id);
-        coursePackageStudent.setReservationStatus(0);
-
+//        coursePackageStudent.setReservationStatus(0);
+        coursePackageStudent.setSignInOrNot(2);
 
 
         coursePackageStudent.getCoursePackagePaymentId();
@@ -505,6 +517,7 @@
         for (CoursePackageScheduling coursePackageScheduling : coursePackageSchedulings) {
             integers.add(coursePackageScheduling.getId());
             coursePackageScheduling.setCourseId(courseId);
+            coursePackageScheduling.setIntegral(integral);
         }
 
         coursePackageSchedulingClient.editCoursePackageScheduling(coursePackageSchedulings);
@@ -539,65 +552,68 @@
      */
     @Override
     public ResultUtil cancellationRecord(Long id, String cancelClasses, Integer deductClassHour) {
-//        CoursePackageScheduling coursePackageScheduling = coursePackageSchedulingClient.queryCoursePackageSchedulingById(id);
-
         List<CoursePackageScheduling> coursePackageSchedulings =  coursePackageSchedulingClient.queryCoursePackageSchedulingsById(id);
+        CoursePackageScheduling coursePackageScheduling1 = coursePackageSchedulings.get(0);
+        Date classDate = coursePackageScheduling1.getEndDate();
+
+        if (new Date().before(classDate)){
+            return ResultUtil.error("课程未结束,无法消课");
+        }
         List<Long> integers = new ArrayList<>();
         for (CoursePackageScheduling coursePackageScheduling : coursePackageSchedulings) {
             integers.add(coursePackageScheduling.getId());
             coursePackageScheduling.setCancelClasses(cancelClasses);
             coursePackageScheduling.setDeductClassHour(deductClassHour);
+            coursePackageScheduling.setStatus(3);
         }
-
-
-//        for (CoursePackageScheduling coursePackageScheduling : coursePackageSchedulings) {
-
-//        if(coursePackageScheduling.getStatus() == 1 || coursePackageScheduling.getStatus() == 4){
-//            return ResultUtil.error("不能添加消课凭证");
-//        }
-//        coursePackageScheduling.setCancelClasses(cancelClasses);
-//        coursePackageScheduling.setDeductClassHour(deductClassHour);
         coursePackageSchedulingClient.editCoursePackageScheduling(coursePackageSchedulings);
 
         List<CoursePackageStudent> coursePackageStudents = coursePackageStudentClient.queryByCoursePackageSchedulingId(integers);
         for (CoursePackageStudent coursePackageStudent : coursePackageStudents) {
-            if(coursePackageStudent.getReservationStatus() == 0){
+            if(coursePackageStudent.getSignInOrNot() == 2){
                 continue;
             }
-            TCoursePackagePayment tCoursePackagePayment = coursePackagePaymentClient.queryCoursePackagePaymentById(coursePackageStudent.getCoursePackagePaymentId());
+            CoursePackageOrderStudent coursePackageOrderStudent = coursePackagePaymentClient.queryCoursePackagePaymentById1(coursePackageStudent.getCoursePackagePaymentId());
 
             if (deductClassHour!=null) {
-                if (tCoursePackagePayment.getLaveClassHours() - deductClassHour < 0) {
+                if (coursePackageOrderStudent.getLaveClassHours() - deductClassHour < 0) {
                     coursePackageStudentClient.editCoursePackageStudent(coursePackageStudent);
                     continue;
                 }
-                tCoursePackagePayment.setLaveClassHours(tCoursePackagePayment.getLaveClassHours() - deductClassHour);
+                coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() - deductClassHour);
             }
 
             if(coursePackageStudent.getReservationStatus() == 0){
-                tCoursePackagePayment.setAbsencesNumber(tCoursePackagePayment.getAbsencesNumber() + 1);
+                coursePackageOrderStudent.setAbsencesNumber(coursePackageOrderStudent.getAbsencesNumber() + 1);
             }
-            System.out.println("====tCoursePackagePayment====="+tCoursePackagePayment);
-            coursePackagePaymentClient.editCoursePackagePayment1(tCoursePackagePayment);
+            System.out.println("====tCoursePackagePayment====="+coursePackageOrderStudent);
+            coursePackagePaymentClient.editCoursePackagePayment2(coursePackageOrderStudent);
+
 
             CancelledClasses cancelledClasses = new CancelledClasses();
             cancelledClasses.setType(1);
             cancelledClasses.setCoursePackageId(coursePackageStudent.getCoursePackageId());
-            cancelledClasses.setCoursePackagePaymentId(coursePackageStudent.getCoursePackagePaymentId());
+            cancelledClasses.setCoursePackagePaymentId(coursePackageOrderStudent.getId());
             cancelledClasses.setCoursePackageSchedulingId(coursePackageStudent.getCoursePackageSchedulingId());
             cancelledClasses.setVoucher(cancelClasses);
             if (deductClassHour!=null) {
-            cancelledClasses.setCancelledClassesNumber(deductClassHour);}
+                cancelledClasses.setCancelledClassesNumber(deductClassHour);
+            }
             cancelledClasses.setInsertTime(new Date());
             cancelledClassesClient.addCancelledClasses(cancelledClasses);
 
-
-
-
-
-
+            //添加勋章数据
+            QueryCoursePackageStudent queryCoursePackageStudent = new QueryCoursePackageStudent();
+            queryCoursePackageStudent.setAppUserId(coursePackageStudent.getAppUserId());
+            queryCoursePackageStudent.setSignInOrNot(1);
+            queryCoursePackageStudent.setReservationStatus(1);
+            List<CoursePackageStudent> coursePackageStudents1 = coursePackageStudentClient.queryCoursePackageStudent(queryCoursePackageStudent);
+            StudentHonor studentHonor = new StudentHonor();
+            studentHonor.setAppUserId(coursePackageStudent.getAppUserId());
+            studentHonor.setHonorType(1);
+            studentHonor.setNumber(coursePackageStudents1.size());
+            studentHonorClient.saveStudentHonor(studentHonor);
         }
-//        }
 
         return ResultUtil.success();
     }
@@ -700,18 +716,22 @@
      * @return
      */
     @Override
-    public ResultUtil makeUpMissedLessons(Long coursePackagePaymentId) {
-        TCoursePackagePayment coursePackagePayment = coursePackagePaymentClient.queryCoursePackagePaymentById(coursePackagePaymentId);
-        System.out.println("=========coursePackagePayment=====>"+coursePackagePayment);
-        if(coursePackagePayment.getStatus() == 2){
-            return ResultUtil.error("该学员已退课");
-        }
-        if(coursePackagePayment.getAbsencesNumber() == 0){
-            return ResultUtil.error("当前不需要补课");
-        }
-        coursePackagePayment.setAbsencesNumber(coursePackagePayment.getAbsencesNumber() - 1);
-        coursePackagePaymentClient.editCoursePackagePayment(coursePackagePayment);
-        return ResultUtil.success();
+    public ResultUtil makeUpMissedLessons(Integer coursePackagePaymentId){
+//        try {
+            Integer is = coursePackagePaymentClient.consumeCourse(coursePackagePaymentId);
+            if (is==1){
+                return ResultUtil.error("课时数不足");
+            }else {
+                return ResultUtil.success("补课成功");
+            }
+//            return  resultUtil;
+//            return  ResultUtil.success("补课成功");
+//        }catch (Exception e){
+//            return  ResultUtil.success("课时数不足");
+//
+//        }
+
+//        return resultUtil;
     }
 
 

--
Gitblit v1.7.1