diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java index cba83a6e..0f4b94d5 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java @@ -819,7 +819,7 @@ public class StudyCourseServiceImpl implements IStudyCourseService{ query.addFilter(FieldFilters.eq("aid", sc.getAid())); } // 25.11.25新增:添加基于时间的查询条件 - if (sc.getQueryStartTime() != null && sc.getQueryFinishTime() != null) { + if (StringUtils.isNotBlank(sc.getQueryStartTime()) && StringUtils.isNotBlank(sc.getQueryFinishTime())) { // 开始结束时间均传入的情况,实现筛选逻辑 // (startTime >= 查询开始时间 AND startTime <= 查询结束时间) OR (finishTime >= 查询开始时间 AND finishTime <= 查询结束时间) // 这样兼容查询结束时间为空值的情况,因为学员课程未结束时没有结束时间 @@ -836,13 +836,13 @@ public class StudyCourseServiceImpl implements IStudyCourseService{ } else { // 只输出单个参数情况 // 筛选开始时间 - if (sc.getQueryStartTime() != null) { + if (StringUtils.isNotBlank(sc.getQueryStartTime())) { LocalDate startDate = LocalDate.parse(sc.getQueryStartTime()); LocalDateTime startDateTime = startDate.atStartOfDay(); query.addFilter(FieldFilters.ge("startTime", startDateTime)); } // 筛选结束时间 - if (sc.getQueryFinishTime() != null) { + if (StringUtils.isNotBlank(sc.getQueryFinishTime())) { LocalDate finishDate = LocalDate.parse(sc.getQueryFinishTime()); LocalDateTime finishDateTime = finishDate.atTime(LocalTime.MAX); query.addFilter(FieldFilters.le("finishTime", finishDateTime));