From d954784593cb24b0455529ea28588a317c5d766f Mon Sep 17 00:00:00 2001
From: luo <2855143437@qq.com>
Date: 星期二, 26 九月 2023 17:05:30 +0800
Subject: [PATCH] 9.26

---
 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java |  164 ++++++++++++++++++++++++++++++++----------------------
 1 files changed, 97 insertions(+), 67 deletions(-)

diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
index 854a8af..cf2a792 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
+++ b/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);
@@ -1206,56 +1213,79 @@
     @Override
     public Integer addCoursePackage(TCoursePackage coursePackage) {
         try {
+            coursePackage.setAuditStatus(2);
             this.baseMapper.insert(coursePackage);
-            //生成排课数据
-            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-            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);
 
-            Calendar e = Calendar.getInstance();
-            e.setTime(date);
-            e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13);
-            long timeInMillis = e.getTimeInMillis();
+            if (coursePackage.getClassStartTime()!=null&&coursePackage.getClassStartTime()!="") {
+                //生成排课数据
+                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+                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 value = coursePackage.getClassStartTime();
+                String value1 = coursePackage.getClassEndTime().trim();
 
-            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);
+                String[] star = value.split(",");
+                String[] end = value1.split(",");
 
-                    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);
+                for (int i = 0; i < star.length; i++) {
 
-                    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);
+                    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;
+                        }
+                    }
+
                 }
-                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();

--
Gitblit v1.7.1