发表于: 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
评论