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/CourseStudentController.java |  155 +++++++++++++++++++++------------------------------
 1 files changed, 63 insertions(+), 92 deletions(-)

diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java
index 4d355e3..594fed2 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java
@@ -10,11 +10,13 @@
 import com.dsh.course.entity.dto.*;
 import com.dsh.course.feignclient.account.AppUserClient;
 import com.dsh.course.feignclient.account.StudentClient;
+import com.dsh.course.feignclient.account.model.AppUser;
 import com.dsh.course.feignclient.account.model.Student;
 import com.dsh.course.mapper.CoursePackageSchedulingMapper;
 import com.dsh.course.mapper.CoursePackageStudentMapper;
 import com.dsh.course.model.dto.ToClassDto;
 import com.dsh.course.service.*;
+import com.dsh.course.util.ALiSendSms;
 import com.dsh.course.util.ResultUtil;
 import com.dsh.course.util.UUIDUtil;
 import io.swagger.annotations.Api;
@@ -50,7 +52,6 @@
     private TCoursePackageService coursePackageService;
     @Resource
     private CoursePackageStudentMapper cpsMapper;
-
     //获取退费记录
     @RequestMapping("/getRefund")
     @ResponseBody
@@ -58,36 +59,19 @@
         // 查询已通过申请的退费记录
         return counsumService.getRefund();
     }
-
-
     @Resource
     private CoursePackageSchedulingMapper coursePackageSchedulingService;
-
-
     @RequestMapping("/getStudentTotal")
     @ResponseBody
     public List<Map<String, Object>> get(@RequestBody StudentQeryDto studentQeryDto) {
         List<Map<String, Object>> pays = paymentService.getStudentTotal(studentQeryDto);
         return pays;
-
     }
-
 
     @RequestMapping("/bypac")
     @ResponseBody
     public List<Map<String, Object>> bypac(@RequestBody PacQueryDto pacQueryDto) {
-        System.out.println("-====studentQeryDto=========" + pacQueryDto);
-        if (pacQueryDto.getStoreIds() != null && pacQueryDto.getStoreIds().size() != 0) {
-            // 根据门店id 查询课包ids
-            List<Integer> coursePackageIds = coursePackageService.list(new QueryWrapper<TCoursePackage>()
-                    .in("storeId", pacQueryDto.getStoreIds())).stream()
-                    .map(TCoursePackage::getId).collect(Collectors.toList());
-            pacQueryDto.setStoreIds(coursePackageIds);
-        }
         List<Map<String, Object>> pays = paymentService.bypac(pacQueryDto);
-
-        System.out.println("=========pays======" + pays);
-
         return pays;
 
     }
@@ -189,6 +173,9 @@
 
     @Resource
     private AppUserClient appUserClient;
+
+    @Autowired
+    private ALiSendSms aLiSendSms;
 
 
     @Autowired
@@ -402,9 +389,9 @@
             courseCounsum.setReason("退费");
             courseCounsum.setPaymentId(o.getId());
             courseCounsum.setInsertTime(new Date());
+            courseCounsum.setAppUserId(o.getAppUserId());
             counsumService.save(courseCounsum);
 
-            o.setTotalClassHours(0);
             o.setLaveClassHours(0);
             o.setStatus(2);
             o.setAppUserId(null);
@@ -522,6 +509,7 @@
             courseCounsum.setNum(laveClassHours);
             courseCounsum.setChangeType(0);
             courseCounsum.setPaymentId(orinPay.getId());
+            courseCounsum.setAppUserId(orinPay.getAppUserId());
             counsumService.save(courseCounsum);
 
             CourseCounsum courseCounsum1 = new CourseCounsum();
@@ -534,6 +522,7 @@
             courseCounsum1.setNum(laveClassHours);
             courseCounsum1.setChangeType(1);
             courseCounsum1.setPaymentId(studentPay.getId());
+            courseCounsum1.setAppUserId(studentPay.getAppUserId());
             counsumService.save(courseCounsum1);
 
             schedulingService.addNewCoursePackageScheduling(studentPay.getId(), laveClassHours);
@@ -591,6 +580,7 @@
             courseCounsum.setNum(laveClassHours1);
             courseCounsum.setChangeType(0);
             courseCounsum.setPaymentId(orinPay.getId());
+            courseCounsum.setAppUserId(orinPay.getAppUserId());
             counsumService.save(courseCounsum);
 
 
@@ -600,6 +590,7 @@
             courseCounsum1.setNum(laveClassHours1);
             courseCounsum1.setChangeType(1);
             courseCounsum1.setPaymentId(to.getId());
+            courseCounsum1.setAppUserId(to.getAppUserId());
             counsumService.save(courseCounsum1);
 
             //开始排课
@@ -688,7 +679,6 @@
                         coursePackageScheduling.setAppUserId(userId);
                         coursePackageScheduling.setStudentId(sId);
                         coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
-                        coursePackageScheduling.setCoursePackagePaymentId();
                         Date parse = format1.parse(format.format(time) + " " + split[j]);
                         Date parse1 = format1.parse(format.format(time) + " " + split1[j]);
                         coursePackageScheduling.setClassDate(parse);
@@ -749,7 +739,6 @@
                         coursePackageScheduling.setAppUserId(userId);
                         coursePackageScheduling.setStudentId(sId);
                         coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
-                        coursePackageScheduling.setCoursePackagePaymentId();
                         Date parse = format1.parse(format.format(time) + " " + split[j]);
                         Date parse1 = format1.parse(format.format(time) + " " + split1[j]);
                         coursePackageScheduling.setClassDate(parse);
@@ -802,45 +791,60 @@
             Student student = studentClient.queryStudentById(Integer.valueOf(stuId));
 
             // 扣除 原来的课时数
-        // 添加购买课时 paytyoe为7
-        // 排课可期  判断课程时间段  添加排课表  添加上课记录表
-        // 找到原来的课包 扣课时
-//        CoursePackageOrderStudent coursePackageOrderStudent = orderStudentService.getById(toHoliDto.getId());
-        CoursePackageOrderStudent coursePackageOrderStudent = orderStudentService.getOne(new QueryWrapper<CoursePackageOrderStudent>().eq("coursePackageId",toHoliDto.getId()).eq("studentId",stuId));
+            // 添加购买课时 paytyoe为7
+            // 排课可期  判断课程时间段  添加排课表  添加上课记录表
+            // 找到原来的课包 扣课时
+            CoursePackageOrderStudent coursePackageOrderStudent = orderStudentService.getOne(new QueryWrapper<CoursePackageOrderStudent>().eq("coursePackageId",toHoliDto.getId()).eq("studentId",stuId));
 
-        TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId());
-        TCoursePackage coursePackage1 = coursePackageService.getById(toHoliDto.getClassId());
-        //判断剩余课时是否已经全部进行排课,如果排课需要删除已经排好的记录
-        List<CoursePackageScheduling> list1 = coursePackageSchedulingService.selectList(new QueryWrapper<CoursePackageScheduling>()
-                .eq("studentId", coursePackageOrderStudent.getStudentId()).eq("status", 1)
-                .eq("type", 1).orderByDesc("classDate"));
-        //已经排课但没有使用的课时数量
-        int number = list1.size() * coursePackage.getNeedNum();
-        Integer laveClassHours1 = coursePackageOrderStudent.getLaveClassHours();
-        laveClassHours1 -= number;
-        //需要购买使用的课时数
-        Integer num = toHoliDto.getClassNum();
-        //需要删除多余的排课记录
-        if(num.compareTo(laveClassHours1) > 0){
-            //课时数差额
-            int number1 = num - laveClassHours1;
-            double o = number1 % coursePackage.getNeedNum();
-            int l = 0;
-            if(0 != o){
-                l = 1;
-            }
-            int n = Double.valueOf(number1 / coursePackage.getNeedNum()).intValue() + l;
-            for (int i = 0; i < n; i++) {
-                CoursePackageScheduling coursePackageScheduling = list1.get(i);
-                coursePackageSchedulingService.deleteById(coursePackageScheduling.getId());
+            TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId());
+            TCoursePackage coursePackage1 = coursePackageService.getById(toHoliDto.getClassId());
+            //判断剩余课时是否已经全部进行排课,如果排课需要删除已经排好的记录
+            List<CoursePackageScheduling> list1 = coursePackageSchedulingService.selectList(new QueryWrapper<CoursePackageScheduling>()
+                    .eq("studentId", coursePackageOrderStudent.getStudentId()).eq("status", 1)
+                    .eq("type", 1).orderByDesc("classDate"));
+            //已经排课但没有使用的课时数量
+            int number = list1.size() * coursePackage.getNeedNum();
+            Integer laveClassHours1 = coursePackageOrderStudent.getLaveClassHours();
+            laveClassHours1 -= number;
+            //需要购买使用的课时数
+            Integer num = toHoliDto.getClassNum();
+            //需要删除多余的排课记录
+            if(num.compareTo(laveClassHours1) > 0){
+                //课时数差额
+                int number1 = num - laveClassHours1;
+                double o = number1 % coursePackage.getNeedNum();
+                int l = 0;
+                if(0 != o){
+                    l = 1;
+                }
+                int n = Double.valueOf(number1 / coursePackage.getNeedNum()).intValue() + l;
+                for (int i = 0; i < n; i++) {
+                    CoursePackageScheduling coursePackageScheduling = list1.get(i);
+                    coursePackageSchedulingService.deleteById(coursePackageScheduling.getId());
 
-                coursePackageStudentService.getBaseMapper().delete(new QueryWrapper<CoursePackageStudent>()
-                        .eq("coursePackageSchedulingId", coursePackageScheduling.getId()));
+                    coursePackageStudentService.getBaseMapper().delete(new QueryWrapper<CoursePackageStudent>()
+                            .eq("coursePackageSchedulingId", coursePackageScheduling.getId()));
+                }
             }
-        }
             coursePackageOrderStudent.setAppUserId(null);
-        coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours()-toHoliDto.getClassNum());
+            coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours()-toHoliDto.getClassNum());
             orderStudentService.updateById(coursePackageOrderStudent);
+
+            CourseCounsum courseCounsum = new CourseCounsum();
+            courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
+            courseCounsum.setChangeType(0);
+            courseCounsum.setNum(toHoliDto.getClassNum());
+            courseCounsum.setInsertTime(new Date());
+            courseCounsum.setReason("报名假期班");
+            courseCounsum.setAppUserId(coursePackageOrderStudent.getAppUserId());
+            courseCounsumService.save(courseCounsum);
+
+            Integer laveClassHours = coursePackageOrderStudent.getLaveClassHours();
+            if(3 >= laveClassHours){
+                AppUser appUser = appUserClient.queryAppUser(coursePackageOrderStudent.getAppUserId());
+                //发送短信提醒
+                aLiSendSms.sendSms(appUser.getPhone(), "SMS_463646317", "");
+            }
 
             //上课星期
             String classWeeks = coursePackage1.getClassWeeks();
@@ -879,7 +883,6 @@
                     coursePackageScheduling.setAppUserId(student.getAppUserId());
                     coursePackageScheduling.setStudentId(Integer.valueOf(stuId));
                     coursePackageScheduling.setCoursePackageId(coursePackage1.getId());
-                    coursePackageScheduling.setCoursePackagePaymentId();
                     Date parse = format1.parse(format.format(time) + " " + split[j]);
                     Date parse1 = format1.parse(format.format(time) + " " + split1[j]);
                     coursePackageScheduling.setClassDate(parse);
@@ -900,18 +903,6 @@
                 //增加日期,用于判断
                 calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + 1);
             }
-
-
-
-
-        CourseCounsum courseCounsum = new CourseCounsum();
-        courseCounsum.setPaymentId(coursePackageOrderStudent.getId());
-        courseCounsum.setChangeType(0);
-        courseCounsum.setNum(toHoliDto.getClassNum());
-        courseCounsum.setInsertTime(new Date());
-        courseCounsum.setReason("报名假期班");
-//        courseCounsum.setAppUserId(userId);
-        courseCounsumService.save(courseCounsum);
         }
 
         return "报名成功";
@@ -976,23 +967,8 @@
     @ResponseBody
     public String toTrans(@RequestBody ToHoliDto toHoliDto) throws ParseException {
         String[] stuIds = toHoliDto.getIds();
-//        //查询出学员ids对应的棵树,判断剩余课时数是否够
-//        List<CoursePackageOrderStudent> list = orderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>().eq("coursePackageId", toHoliDto.getClassId()).in("studentId", stuIds));
-//        List<String> notStudent = new ArrayList<>();
-//        for (CoursePackageOrderStudent coursePackageOrderStudent : list) {
-//            if (coursePackageOrderStudent.getLaveClassHours() < toHoliDto.getClassNum()) {
-//                notStudent.add(studentClient.queryStudentById(coursePackageOrderStudent.getStudentId()).getName());
-//            }
-//        }
-//        if (!notStudent.isEmpty()) {
-//            String notStudentStr = String.join(",", notStudent);
-//            return notStudentStr+":课时数不足";
-//        }
-
-
         //转移课程
         for (String stuId : stuIds) {
-//            CoursePackageOrderStudent orinPay = orderStudentService.getById(toHoliDto.getId());
             CoursePackageOrderStudent orinPay = orderStudentService.getOne(new QueryWrapper<CoursePackageOrderStudent>()
                     .eq("studentId", stuId)
                     .eq("coursePackageId", toHoliDto.getId()));
@@ -1009,10 +985,7 @@
                 courseCounsum.setInsertTime(new Date());
                 Integer appUserId = orinPay.getAppUserId();
                 Integer appUserId1 = studentPay.getAppUserId();
-
-                    courseCounsum.setReason("换课");
-
-
+                courseCounsum.setReason("换课");
                 orinPay.setLaveClassHours(0);
                 orinPay.setStatus(3);
                 orinPay.setAppUserId(null);
@@ -1021,18 +994,16 @@
                 courseCounsum.setNum(laveClassHours);
                 courseCounsum.setChangeType(0);
                 courseCounsum.setPaymentId(orinPay.getId());
+                courseCounsum.setAppUserId(orinPay.getAppUserId());
                 counsumService.save(courseCounsum);
 
                 CourseCounsum courseCounsum1 = new CourseCounsum();
                 courseCounsum1.setInsertTime(new Date());
-//                if (appUserId.compareTo(appUserId1) != 0) {
-//                    courseCounsum1.setReason("赠课");
-//                } else {
-                    courseCounsum1.setReason("换课");
-//                }
+                courseCounsum1.setReason("换课");
                 courseCounsum1.setNum(laveClassHours);
                 courseCounsum1.setChangeType(1);
                 courseCounsum1.setPaymentId(studentPay.getId());
+                courseCounsum1.setAppUserId(studentPay.getAppUserId());
                 counsumService.save(courseCounsum1);
 
                 schedulingService.addNewCoursePackageScheduling(studentPay.getId(), laveClassHours);

--
Gitblit v1.7.1