发表于: 2018-01-21 22:55:41

1 686


今天完成的事情:

完成前台搜素接口,分为课程搜索和课时搜索两个接口.

@RequestMapping(value = "/a/u/search/course",method = RequestMethod.GET)
  public String searchCourse(HttpServletRequest request,HttpServletResponse response,    ModelMap model, Long subject,Long grade,String name,Integer page, Integer size)throws Exception{

     if (IsNullUtil.isListNullOrEmpty(subject)){
        model.addAttribute("code","-1000");
        return "common/fail";
     }
     if (IsNullUtil.isListNullOrEmpty(grade)){
        model.addAttribute("code","-1000");
        return "common/fail";
     }
     if (null == page) {
        page = 1;
     }
     if (null == size) {
        size = 5;
     }
//      当页开始数目
     int firstNmuber = (page - 1) * size;
     if (firstNmuber < 0) {
        firstNmuber = 0;
     }
     Integer total =null;
     List<HashMap<String,Object>> realSearchCourse=new ArrayList<>();
     HashMap<String,Object>  serachCourse=new HashMap<>();
     try {
//       根据搜索条件获取课程ids,获取课程List
        List<Long> searchCourseIds=courseService.getCourseIdsBySearch(grade,subject,name,firstNmuber,size);
        total = searchCourseIds.size();
        List<Course> courseList = courseService.getObjectsByIds(searchCourseIds);
        if (IsNullUtil.isListNullOrEmpty(courseList)){
        model.addAttribute("code","-3210");
        return "common/fail";
        }

        for (Course course:courseList){
           Long courseId= course.getId();
//          获取多少人已学,年级,推荐状态.名称
           Long learnPeople = userCourseService.countIdsByCourseId(courseId).get(0);
           Long courseGrade = grade;
           Integer courseRecommend = course.getRecommend();
           String courseName = course.getName();
           //       根据课程 id  获取下面所有加锁状态 的课时ids 若为空则该课程没有加锁
           List<Long> lockLessonPeriodids = lockstitchService.getLockLessonPeriodByCourseId(courseId);
           Integer lockLessonPeriodidsSunm = lockLessonPeriodids.size();
           Integer lockCourseStatus = 1;
           if (lockLessonPeriodids.equals(0)) {
              lockCourseStatus = 0;
           }
//       获取解锁表里面所有解锁课时的 总数与加锁的课时ids总数做对比
           Integer unlockLessonPeriod = lockstitchService.getlockIdByLessonPeriodId(lockLessonPeriodids).size();
           if (lockLessonPeriodidsSunm.equals(unlockLessonPeriod)) {
              lockCourseStatus = 0;
           }

           serachCourse.put("courseId",courseId);
           serachCourse.put("learnPeople",learnPeople);
           serachCourse.put("courseRecommend",courseRecommend);
           serachCourse.put("courseName",courseName);
           serachCourse.put("courseGrade",courseGrade);
           serachCourse.put("lockCourseStatus",lockCourseStatus);
           realSearchCourse.add(serachCourse);
        }

        log.info("get  course data is " + realSearchCourse);
        model.addAttribute("code", 0);
        model.addAttribute("total", total);
        model.addAttribute("size", size);
        model.addAttribute("realSearchCourse", realSearchCourse);
     }catch (Throwable t) {
        log.error(t.getMessage());
        log.error("get course error,id is  ");
        model.addAttribute("code", -1);
     }
     return "userCourse/json/searchCourse";
  }
}



明天计划的事情:

对前面写的接口和其他有问题的接口进行测试

完成推荐测试.


困难:

暂无


任务进度:接口编写

任务开始时间:2017-12-12

预计demo时间:2017-02-09

是否有延期风险:暂无

禅道地址:http://task.ptteng.com/zentao/task-view-17095.html




返回列表 返回列表
评论

    分享到