| | |
| | | package com.xinquan.course.service.impl; |
| | | |
| | | import com.alibaba.nacos.common.utils.StringUtils; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.xinquan.common.core.utils.page.CollUtils; |
| | | import com.xinquan.common.core.utils.page.PageDTO; |
| | | import com.xinquan.course.api.domain.Course; |
| | | import com.xinquan.course.api.domain.CourseChapter; |
| | | import com.xinquan.course.domain.CourseLearningRecord; |
| | | import com.xinquan.course.domain.vo.ClientCourseVO; |
| | | import com.xinquan.course.mapper.CourseMapper; |
| | | import com.xinquan.course.service.CourseService; |
| | | |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | @Override |
| | | public PageDTO<ClientCourseVO> getCoursePageList(String courseTitle, Long cateId, |
| | | Integer pageCurr, Integer pageSize) { |
| | | Page<Course> page = this.lambdaQuery() |
| | | .like(StringUtils.isNotBlank(courseTitle), Course::getCourseTitle, courseTitle) |
| | | .eq(Objects.nonNull(cateId), Course::getCateId, cateId) |
| | | .orderByDesc(Course::getSortNum) |
| | | .page(new Page<>(pageCurr, pageSize)); |
| | | LambdaQueryWrapper<Course> courseLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if (org.springframework.util.StringUtils.hasLength(courseTitle)){ |
| | | courseLambdaQueryWrapper.like(Course::getCourseTitle, courseTitle); |
| | | } |
| | | if (cateId!=null && cateId.equals(1853706016887824386L)){ |
| | | courseLambdaQueryWrapper.eq(Course::getCourseType,2); |
| | | }else if (cateId!=null){ |
| | | courseLambdaQueryWrapper.eq(Course::getCateId, cateId); |
| | | } |
| | | if (cateId==null){ |
| | | courseLambdaQueryWrapper.eq(Course::getRecommend,1); |
| | | } |
| | | courseLambdaQueryWrapper.eq(Course::getListingStatus,1); |
| | | courseLambdaQueryWrapper.orderByDesc(Course::getSortNum); |
| | | Page<Course> page = this.page(new Page<>(pageCurr, pageSize),courseLambdaQueryWrapper); |
| | | if (CollUtils.isEmpty(page.getRecords())) { |
| | | return PageDTO.empty(page); |
| | | } |
| | | |
| | | return PageDTO.of(page, ClientCourseVO.class); |
| | | } |
| | | } |