\u0040GetMapping("/queryCarUserCourseRecordsAllByPage")\n\tpublic Result<Object> queryCarUserCourseRecordsAllByPage(QueryRequest queryRequest, CarUser carUser, HttpServletRequest request) {\n\n\t\t//权限验证\n\t\tString token = (String) request.getAttribute("claims_user");\n\t\tif (token == null || "".equals(token)) {\n\t\t\tthrow new RuntimeException("权限不足!");\n\t\t}\n\t\t//把查询到的的对象放入map集合\n\t\tMap<String, Object> map = new HashMap<>();\n\n\t\t//查询所有教练信息\n\t\tMap<Long, Coach> coachMap = coachService.queryAllCoaches(); // 使用Map存储教练信息,以教练ID作为键\n\n\t\t//查询学员所有约课记录\n\t\tList<CourseDto> courseDtos = courseInfoService.queryCourseByUserId(carUser.getUserId());\n\t\t//查询记录练车状态\n\t\tfor (CourseDto courseDto : courseDtos) {\n\t\t\t//从Map中获取教练对象\n\t\t\tCoach coach = coachMap.get(courseDto.getCoachId());\n\t\t\tcourseDto.setCoach(coach);\n\t\t\t//查询当前日期对应周几\n\t\t\tString week = RcqtUtils.getDayOfWeek(DateUtils.getTime(courseDto.getCourseDate()));\n\t\t\tcourseDto.setWeek(week);\n\n\t\t\t//1.获得当前日期(yyyy-MM-dd)\n\t\t\tDate today = RcqtUtils.getDay();\n\t\t\t//2.排除已取消的课程\n\t\t\tif (courseDto.getTrainingStatus() != 3) {\n\t\t\t\t//3.查询到待训练的\n\t\t\t\tif (courseDto.getCourseDate().after(today)) {\n\t\t\t\t\tcourseDto.setTrainingStatus(0);\n\t\t\t\t} else if (courseDto.getCourseDate().before(today)) {\n\t\t\t\t\t//4.查询到已训练的\n\t\t\t\t\tcourseDto.setTrainingStatus(2);\n\t\t\t\t} else if (courseDto.getCourseDate().equals(today)) {\n\t\t\t\t\t//5.查询到日期等于今天的\n\t\t\t\t\tif (LocalTime.now().isAfter(courseDto.getEndReservationTime().toLocalTime())) {\n\t\t\t\t\t\t//已训练\n\t\t\t\t\t\tcourseDto.setTrainingStatus(2);\n\t\t\t\t\t} else if (LocalTime.now().isAfter(courseDto.getStartReservationTime().toLocalTime()) && LocalTime.now().isBefore(courseDto.getEndReservationTime().toLocalTime())) {\n\t\t\t\t\t\tlog.info("训练中!");\n\t\t\t\t\t\tcourseDto.setTrainingStatus(1);\n\t\t\t\t\t} else if (LocalTime.now().isBefore(courseDto.getStartReservationTime().toLocalTime())) {\n\t\t\t\t\t\t//待训练\n\t\t\t\t\t\tcourseDto.setTrainingStatus(0);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t//分页处理\n\t\tList<CourseDto> courseDtoList = courseDtos.stream().skip((long) (queryRequest.getPageNum() - 1) * queryRequest.getPageSize()).limit(queryRequest.getPageSize()).toList();\n\t\tint total = courseDtos.size();\n\n\t\tmap.put("CourseDto", courseDtoList);\n\t\tmap.put("total", total);\n\n\t\t//查询到学员传给前端\n\t\tlog.info("查询学员约课成功!");\n\t\treturn new Result<>(ResultCode.SUCCESS, map);\n}\n


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

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