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; /** *

* 线上课程表 服务实现类 *

* * @author mitao * @since 2024-08-21 */ @Service public class CourseServiceImpl extends ServiceImpl implements CourseService { /** * 获取课程列表-分页 * * @param courseTitle 课程标题 * @param cateId 分类id * @param pageCurr 分页参数,当前页码 * @param pageSize 分页参数,每页数量 * @return 课程分页列表 */ @Override public PageDTO getCoursePageList(String courseTitle, Long cateId, Integer pageCurr, Integer pageSize) { LambdaQueryWrapper 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 page = this.page(new Page<>(pageCurr, pageSize),courseLambdaQueryWrapper); if (CollUtils.isEmpty(page.getRecords())) { return PageDTO.empty(page); } return PageDTO.of(page, ClientCourseVO.class); } }