5
0

2 Commits 4d11f2cf8e ... c289e3f471

Auteur SHA1 Message Date
  大数据与最优化研究所 c289e3f471 /schedule/schedule/course-table 课表接口(PC端),日期范围应该正常 il y a 3 mois
  大数据与最优化研究所 6ade322ed3 /schedule/schedule/course-table 课表接口(PC端),日期范围应该 il y a 3 mois

+ 12 - 12
src/main/java/com/xjrsoft/module/courseTable/service/impl/CourseTableServiceImpl.java

@@ -249,24 +249,24 @@ public class CourseTableServiceImpl extends ServiceImpl<CourseTableMapper, Cours
                     throw new MyException("周数必须在1到" + totalWeeks + "之间");
                 }
 
-                LocalDateTime semesterStartDateTime = baseSemester.getTeachingStart().toInstant()
+                LocalDate semesterStartDate = baseSemester.getTeachingStart().toInstant()
                         .atZone(ZoneId.systemDefault())
-                        .toLocalDateTime();
+                        .toLocalDate();
 
-                LocalDateTime weekStartDateTime = semesterStartDateTime
+                LocalDate weekStartDate = semesterStartDate
                         .plusWeeks(weekNumber - 1)
-                        .toLocalDate()
-                        .with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY))
-                        .atStartOfDay();
+                        .with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY));
 
-                LocalDateTime weekEndDateTime = weekStartDateTime.plusDays(6)
-                        .with(LocalTime.MAX);
+                LocalDate weekEndDate = weekStartDate.plusDays(6);
 
-                dto.setStartDate(weekStartDateTime);
-                dto.setEndDate(weekEndDateTime);
+                dto.setStartDate(weekStartDate); // 如果需要LocalDateTime,在这里转换
+                dto.setEndDate(weekEndDate);
                 tableVo.setWeek("第" + weekNumber + "周");
-                tableVo.setStartDate(weekStartDateTime.toLocalDate());
-                tableVo.setEndDate(weekEndDateTime.toLocalDate());
+                tableVo.setStartDate(weekStartDate); // 直接使用LocalDate
+                tableVo.setEndDate(weekEndDate);     // 直接使用LocalDate
+                tableVo.setWeek("第" + weekNumber + "周");
+                tableVo.setStartDate(weekStartDate);
+                tableVo.setEndDate(weekEndDate);
             }
         }
         if (!StrUtil.isEmpty(dto.getTeacherName())) {

+ 3 - 2
src/main/java/com/xjrsoft/module/schedule/dto/CourseTableDto.java

@@ -6,6 +6,7 @@ import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
 
 import java.io.Serializable;
+import java.time.LocalDate;
 import java.time.LocalDateTime;
 
 
@@ -50,9 +51,9 @@ public class CourseTableDto implements Serializable {
     private Long studentId;
 
     @ApiModelProperty("开始时间")
-    private LocalDateTime startDate;
+    private LocalDate startDate;
     @ApiModelProperty("结束时间")
-    private LocalDateTime endDate;
+    private LocalDate endDate;
 
     @ApiModelProperty("当前日期")
     private LocalDateTime toDay;

+ 4 - 2
src/main/resources/mapper/courseTable/CourseTable.xml

@@ -32,7 +32,8 @@
             </if>
         </if>
         <if test="dto.startDate != null and dto.endDate != null">
-            and t1.schedule_date between #{dto.startDate} and #{dto.endDate}
+            and t1.schedule_date >= #{dto.startDate}
+            and t1.schedule_date &lt;= #{dto.endDate}
         </if>
         <if test="dto.toDay != null">
             and t1.schedule_date = #{dto.toDay}
@@ -43,8 +44,9 @@
         <if test="dto.classId != null">
             and t5.id = #{dto.classId}
         </if>
-        ORDER BY t1.weeks,t1.time_period,t1.time_number
+        ORDER BY t1.schedule_date, t1.weeks, t1.time_period, t1.time_number
     </select>
+
     <select id="getAdjustList" parameterType="com.xjrsoft.module.schedule.dto.CourseTableAdjustDto" resultType="com.xjrsoft.module.schedule.vo.CourseListVo">
         SELECT t1.time_period,t4.short_name as time_number,t1.course_name,t2.name AS class_name,t3.name AS classroom_name,t1.id,t2.id as class_id FROM course_table t1
         LEFT JOIN base_class t2 ON t1.class_id = t2.id