nickchange
2023-11-28 b3bf5a0b4fac7ba6bc85b2bdce5e05d55cdeb69f
11.27,9
2个文件已修改
35 ■■■■■ 已修改文件
cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageSchedulingServiceImpl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java
@@ -521,6 +521,7 @@
            studentClient.frozen(student);
            Integer laveClassHours1 = orinPay.getLaveClassHours();
            Integer appUserId = orinPay.getAppUserId();
            orinPay.setLaveClassHours(0);
            orinPay.setAppUserId(null);
@@ -531,7 +532,7 @@
            CourseCounsum courseCounsum = new CourseCounsum();
            courseCounsum.setInsertTime(new Date());
            courseCounsum.setReason("赠课");
            courseCounsum.setNum(orinPay.getLaveClassHours());
            courseCounsum.setNum(laveClassHours1);
            courseCounsum.setChangeType(0);
            courseCounsum.setPaymentId(orinPay.getId());
            counsumService.save(courseCounsum);
@@ -540,7 +541,7 @@
            CourseCounsum courseCounsum1 = new CourseCounsum();
            courseCounsum1.setInsertTime(new Date());
            courseCounsum1.setReason("赠课");
            courseCounsum1.setNum(orinPay.getLaveClassHours());
            courseCounsum1.setNum(laveClassHours1);
            courseCounsum1.setChangeType(1);
            courseCounsum1.setPaymentId(to.getId());
            counsumService.save(courseCounsum1);
cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageSchedulingServiceImpl.java
@@ -320,7 +320,7 @@
            TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId());
            Integer codeTime = coursePackage.getCodeTime();
            Integer laveClassHours = coursePackageOrderStudent.getLaveClassHours();
            Student student = studentClient.queryStudentById(coursePackageScheduling.getStudentId());
            Student student = studentClient.queryStudentById(coursePackageOrderStudent.getStudentId());
            Date validity = student.getValidity();
            Calendar calendar = Calendar.getInstance();
@@ -344,7 +344,7 @@
                //从第二天开始
                Calendar startTime = Calendar.getInstance();
                startTime.setTime(new Date());
                startTime.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + 1);
                startTime.set(Calendar.DAY_OF_YEAR, startTime.get(Calendar.DAY_OF_YEAR) + 1);
                startTime.set(Calendar.HOUR_OF_DAY, 0);
                startTime.set(Calendar.MINUTE, 0);
                startTime.set(Calendar.SECOND, 0);
@@ -415,11 +415,19 @@
            }else{
                Date classDate = coursePackageScheduling.getClassDate();
                if(codeTime.compareTo(laveClassHours) > 0 && calendar.getTimeInMillis() > classDate.getTime()){
                int count = this.count(new QueryWrapper<CoursePackageScheduling>()
                        .eq("appUserId", coursePackageOrderStudent.getAppUserId())
                        .eq("studentId", coursePackageOrderStudent.getStudentId())
                        .eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId())
                        .eq("status", 1)
                );
                Integer number = laveClassHours - count;
                if(codeTime.compareTo(number) > 0 && calendar.getTimeInMillis() > classDate.getTime()){
                    //从第二天开始
                    Calendar startTime = Calendar.getInstance();
                    startTime.setTime(new Date());
                    startTime.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + 1);
                    startTime.setTime(coursePackageScheduling.getClassDate());
                    startTime.set(Calendar.DAY_OF_YEAR, startTime.get(Calendar.DAY_OF_YEAR) + 1);
                    startTime.set(Calendar.HOUR_OF_DAY, 0);
                    startTime.set(Calendar.MINUTE, 0);
                    startTime.set(Calendar.SECOND, 0);
@@ -431,13 +439,13 @@
                    String classWeeks = coursePackage.getClassWeeks();
                    List<Integer> week = week(classWeeks);
                    //新剩余课时
                    laveClassHours += classNumber;
                    number += classNumber;
                    //判断最后一天是否所有时段都已排完
                    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                    SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
                    String format = sdf.format(coursePackageScheduling.getClassDate());
                    String time = format.substring(format.indexOf(" "));
                    String time = format.substring(format.indexOf(" ") + 1);
                    String classStartTime = coursePackage.getClassStartTime();
                    String classEndTime = coursePackage.getClassEndTime();
                    String[] split = classStartTime.split(",");
@@ -448,10 +456,10 @@
                        n++;
                        for (int i = n; i < split.length; i++) {
                            //剩余数量不足以排课
                            if (laveClassHours.compareTo(codeTime) < 0) {
                            if (number.compareTo(codeTime) < 0) {
                                break;
                            }
                            laveClassHours -= codeTime;
                            number -= codeTime;
                            CoursePackageScheduling packageScheduling = new CoursePackageScheduling();
                            packageScheduling.setType(coursePackage.getType());
                            packageScheduling.setAppUserId(coursePackageOrderStudent.getAppUserId());
@@ -493,11 +501,11 @@
                        }
                        for (int j = 0; j < split.length; j++) {
                            //剩余数量不足以排课
                            if (laveClassHours.compareTo(codeTime) < 0) {
                            if (number.compareTo(codeTime) < 0) {
                                break;
                            }
                            laveClassHours -= codeTime;
                            number -= codeTime;
                            CoursePackageScheduling packageScheduling = new CoursePackageScheduling();
                            packageScheduling.setType(coursePackage.getType());