List<CourseDto> courseInfos = courseInfoService.queryCourseByUpdateTimeIdByStatus0(updateTime.getUpdateTimeId());
//存放待训练的课程
List<CourseDto> courseDtoListByNow = new ArrayList<>();
List<CarUser> carUserList = new ArrayList<>();

for (CourseDto courseDto0 : courseInfos) {
    if (isCourseAvailable(courseDto0)) {
        courseDtoListByNow.add(courseDto0);
        CarUser carUser = carUserService.queryOneCarUserById(courseDto0.getUserId());
        carUserList.add(carUser);
    }
}

if (!CollectionUtils.isEmpty(courseDtoListByNow)) {
    for (CourseDto courseDto : courseDtoListByNow) {
        courseDto.setCarUserList(carUserList);
    }

    log.info('通知');
    map.put('courseInfos', courseDtoListByNow);
    return new Result<>(ResultCode.NOTICE_COACH, map);
} else {
    log.info('当前无预约学员');
    //当前无预约学员
    updateTimeMy.setStartReservationTime(start);
    updateTimeMy.setEndReservationTime(end);
}

private boolean isCourseAvailable(CourseDto courseDto) {
    LocalDate today = RcqtUtils.getDay();
    LocalDate courseDate = courseDto.getCourseDate();
    LocalTime startReservationTime = courseDto.getStartReservationTime().toLocalTime();
    
    if (courseDate.equals(today) && LocalTime.now().isBefore(startReservationTime)) {
        return true;
    } else if (courseDate.isAfter(today)) {
        return true;
    }
    
    return false;
}

代码优化说明:

  1. 提取判断逻辑: 将判断课程是否可供训练的逻辑提取到 isCourseAvailable 函数中,提高代码可读性和复用性。
  2. 合并循环: 将获取课程信息和学员信息的循环合并为一个循环,减少代码冗余。
  3. 优化判断条件: 使用 isAfter 方法判断日期是否在当前日期之后,代码更加简洁。
  4. 代码注释: 添加必要的注释,解释代码的功能和逻辑。

优化后的代码优点:

  • 代码更简洁易懂
  • 逻辑更清晰
  • 提高了代码的效率和可维护性
  • 增强了代码的可读性

搜索引擎优化 (SEO):

  • 标题: 使用了更准确的描述性标题,例如 'Java 代码优化:获取待训练课程和学员信息',方便用户搜索。
  • 描述: 添加了对代码功能和优化的简要描述,帮助用户了解代码内容。
  • 关键词: 使用了更精准的关键词,例如 'Java', '代码优化', '课程', '学员', '信息获取', '代码重构', '可读性', '效率',方便用户搜索相关内容。
  • 代码内容: 优化后的代码更加简洁易懂,有利于搜索引擎爬取和理解。

总结:

通过以上优化,代码变得更加简洁高效,同时增强了代码的可读性和可维护性,并优化了代码的 SEO 属性,使代码更容易被搜索引擎收录和索引。

注意:

  • 优化后的代码只是示例,具体的代码实现需要根据实际情况进行调整。
  • 建议使用更具描述性的变量名和函数名,提高代码可读性。
  • 应该定期对代码进行审查和优化,以确保代码的质量和效率。
Java 代码优化:获取待训练课程和学员信息

原文地址: https://www.cveoy.top/t/topic/qnLv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录