44323
2023-09-23 5f804115139dfdeeb2ce950a0f584b30f94b285c
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -1061,33 +1061,40 @@
            }else if(integer>i) {
                Calendar instance = Calendar.getInstance();
                instance.add(Calendar.DATE,integer-i);
                Date time = instance.getTime();
                Date time1 = instance.getTime();
                List<Date> list = new ArrayList<>();
                list.add(time1);
                instance.add(Calendar.DATE,7);
                Date time2 = instance.getTime();
                list.add(time2);
                for (Date time : list) {
                    for (int i1 = 0; i1 < split.length; i1++) {
                        CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                        coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
                        try {
                            Date parse = format1.parse(format.format(time) + " " + split[i1]);
                            Date parse1 = format1.parse(format.format(time) + " " + split1[i1]);
                            coursePackageScheduling.setClassDate(parse);
                            coursePackageScheduling.setEndDate(parse1);
                            coursePackageScheduling.setStatus(1);
                            coursePackageSchedulingService.save(coursePackageScheduling);
                for (int i1 = 0; i1 < split.length; i1++) {
                    CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                    coursePackageScheduling.setCoursePackageId(tCoursePackage.getId());
                    try {
                        Date parse = format1.parse(format.format(time) + " " + split[i1]);
                        Date parse1 = format1.parse(format.format(time) + " " + split1[i1]);
                        coursePackageScheduling.setClassDate(parse);
                        coursePackageScheduling.setEndDate(parse1);
                        coursePackageScheduling.setStatus(1);
                        coursePackageSchedulingService.save(coursePackageScheduling);
                        CoursePackageStudent student1 = new CoursePackageStudent();
                        student1.setAppUserId(userId);
                        student1.setStudentId(sId);
                        student1.setCoursePackageId(tCoursePackage.getId());
                        student1.setCoursePackagePaymentId(paymentId);
                        student1.setCoursePackageSchedulingId(coursePackageScheduling.getId());
                        student1.setSignInOrNot(0);
                        student1.setReservationStatus(1);
                        student1.setInsertTime(new Date());
                        cpsMapper.insert(student1);
                    } catch (ParseException e) {
                        e.printStackTrace();
                            CoursePackageStudent student1 = new CoursePackageStudent();
                            student1.setAppUserId(userId);
                            student1.setStudentId(sId);
                            student1.setCoursePackageId(tCoursePackage.getId());
                            student1.setCoursePackagePaymentId(paymentId);
                            student1.setCoursePackageSchedulingId(coursePackageScheduling.getId());
                            student1.setSignInOrNot(0);
                            student1.setReservationStatus(1);
                            student1.setInsertTime(new Date());
                            cpsMapper.insert(student1);
                        } catch (ParseException e) {
                            e.printStackTrace();
                        }
                    }
                }
            }else {
                Calendar instance = Calendar.getInstance();
                instance.add(Calendar.DATE,7);
@@ -1212,50 +1219,70 @@
            SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Date date = sdf1.parse(sdf.format(new Date()) + " 00:00:00");
            List<String> list = Arrays.asList(coursePackage.getClassWeeks().split(";"));
            String classStartTime = coursePackage.getClassStartTime();
            String[] split = classStartTime.split(":");
            String classEndTime = coursePackage.getClassEndTime();
            String[] split1 = classEndTime.split(":");
            Calendar s = Calendar.getInstance();
            s.setTime(date);
            s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1);
            s.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0]));
            s.set(Calendar.MINUTE, Integer.valueOf(split[1]));
            s.set(Calendar.SECOND, 0);
            String value = coursePackage.getClassStartTime();
            String value1 = coursePackage.getClassEndTime();
            Calendar e = Calendar.getInstance();
            e.setTime(date);
            e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13);
            long timeInMillis = e.getTimeInMillis();
            String[] star = value.split(",");
            String[] end = value1.split(",");
            while (true){
                int w = s.get(Calendar.DAY_OF_WEEK);
                WeekEnum weekEnum = WeekEnum.getWeekEnum(w);
                if(list.contains(weekEnum.getChineseName())){
                    Calendar classDate = Calendar.getInstance();
                    classDate.setTime(s.getTime());
                    classDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0]));
                    classDate.set(Calendar.MINUTE, Integer.valueOf(split[1]));
                    classDate.set(Calendar.SECOND, 0);
            for (int i = 0; i < star.length; i++) {
                    Calendar endDate = Calendar.getInstance();
                    endDate.setTime(s.getTime());
                    endDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split1[0]));
                    endDate.set(Calendar.MINUTE, Integer.valueOf(split1[1]));
                    endDate.set(Calendar.SECOND, 0);
                    CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                    coursePackageScheduling.setCoursePackageId(coursePackage.getId());
                    coursePackageScheduling.setClassDate(classDate.getTime());
                    coursePackageScheduling.setEndDate(endDate.getTime());
                    coursePackageScheduling.setStatus(1);
                    coursePackageSchedulingService.save(coursePackageScheduling);
                }
//                int index = star[i].indexOf(",");
//
//
//                String result = value.substring(0, index).trim();
                String classStartTime = star[i];
                String[] split = classStartTime.split(":");
//            String value1 = en;
                int index1 = value1.indexOf(",");
//                String result1 = value.substring(0, index1).trim();
                String classEndTime = end[i];
                String[] split1 = classEndTime.split(":");
                Calendar s = Calendar.getInstance();
                s.setTime(date);
                s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1);
                if(s.getTimeInMillis() > timeInMillis){
                    break;
                s.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0]));
                s.set(Calendar.MINUTE, Integer.valueOf(split[1]));
                s.set(Calendar.SECOND, 0);
                Calendar e = Calendar.getInstance();
                e.setTime(date);
                e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13);
                long timeInMillis = e.getTimeInMillis();
                while (true){
                    int w = s.get(Calendar.DAY_OF_WEEK);
                    WeekEnum weekEnum = WeekEnum.getWeekEnum(w);
                    if(list.contains(weekEnum.getChineseName())){
                        Calendar classDate = Calendar.getInstance();
                        classDate.setTime(s.getTime());
                        classDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0]));
                        classDate.set(Calendar.MINUTE, Integer.valueOf(split[1]));
                        classDate.set(Calendar.SECOND, 0);
                        Calendar endDate = Calendar.getInstance();
                        endDate.setTime(s.getTime());
                        endDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split1[0]));
                        endDate.set(Calendar.MINUTE, Integer.valueOf(split1[1]));
                        endDate.set(Calendar.SECOND, 0);
                        CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling();
                        coursePackageScheduling.setCoursePackageId(coursePackage.getId());
                        coursePackageScheduling.setClassDate(classDate.getTime());
                        coursePackageScheduling.setEndDate(endDate.getTime());
                        coursePackageScheduling.setStatus(1);
                        coursePackageSchedulingService.save(coursePackageScheduling);
                    }
                    s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1);
                    if(s.getTimeInMillis() > timeInMillis){
                        break;
                    }
                }
            }
            return coursePackage.getId();
        }catch (Exception e){
            e.printStackTrace();