添加名医精彩标签判断

This commit is contained in:
wuchunlei
2025-06-18 11:35:26 +08:00
parent 8633a8b453
commit 01369e4cef

View File

@@ -4,9 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.common.utils.R;
import com.peanut.modules.common.entity.CourseEntity;
import com.peanut.modules.common.entity.CourseToTalent;
import com.peanut.modules.common.entity.TaihuTalent;
import com.peanut.common.utils.ShiroUtils;
import com.peanut.modules.common.entity.*;
import com.peanut.modules.common.service.CourseTaihumedService;
import com.peanut.modules.common.service.CourseToTalentService;
import com.peanut.modules.common.service.TaihuTalentService;
import com.peanut.modules.master.service.CourseService;
@@ -27,6 +27,8 @@ import java.util.Map;
@RequestMapping("taihumed/course")
public class CourseController {
@Autowired
private CourseTaihumedService courseTaihumedService;
@Autowired
private CourseToTalentService courseToTalentService;
@Autowired
@@ -34,22 +36,50 @@ public class CourseController {
@Autowired
private CourseService courseService;
//我的课程
@RequestMapping("/getMyCourseList")
public R getMyCourseList(@RequestBody Map<String,Object> params){
MPJLambdaWrapper<CourseEntity> wrapper = new MPJLambdaWrapper<>();
wrapper.distinct();
int count = courseTaihumedService.count(new LambdaQueryWrapper<CourseTaihumed>()
.eq(CourseTaihumed::getPid,0));
if (count > 0){
wrapper.rightJoin(CourseToTaihumed.class,CourseToTaihumed::getCourseId,CourseEntity::getId);
}else {
wrapper.rightJoin(CourseToTalent.class,CourseToTalent::getCourseId,CourseEntity::getId);
}
wrapper.leftJoin(UserCourseBuyEntity.class,UserCourseBuyEntity::getCourseId,CourseEntity::getId);
wrapper.eq(UserCourseBuyEntity::getUserId,ShiroUtils.getUId());
wrapper.selectAll(CourseEntity.class);
wrapper.orderByAsc(CourseEntity::getSort);
Page<CourseEntity> pageRes = courseService.page(new Page<>(Long.parseLong(params.get("current").toString())
, Long.parseLong(params.get("limit").toString())),wrapper);
return R.ok().put("pageRes",pageRes);
}
//名医精彩列表
@RequestMapping("/getCourseToTalentList")
public R getCourseToTalentList(@RequestBody Map<String,Object> params){
List res = new ArrayList();
MPJLambdaWrapper<CourseToTalent> wrapper = new MPJLambdaWrapper();
wrapper.leftJoin(CourseEntity.class,CourseEntity::getId,CourseToTalent::getCourseId);
MPJLambdaWrapper<CourseEntity> wrapper = new MPJLambdaWrapper();
int count = courseTaihumedService.count(new LambdaQueryWrapper<CourseTaihumed>()
.eq(CourseTaihumed::getPid,0));
if (count > 0){
wrapper.rightJoin(CourseToTaihumed.class,CourseToTaihumed::getCourseId,CourseEntity::getId);
wrapper.orderByAsc(CourseToTaihumed::getSort);
}else {
wrapper.rightJoin(CourseToTalent.class,CourseToTalent::getCourseId,CourseEntity::getId);
wrapper.orderByAsc(CourseToTalent::getSort);
}
wrapper.leftJoin(CourseToTalent.class,CourseToTalent::getCourseId,CourseEntity::getId);
wrapper.leftJoin(TaihuTalent.class,TaihuTalent::getId,CourseToTalent::getTalentId);
wrapper.selectAll(CourseToTalent.class);
wrapper.selectAll(CourseEntity.class);
wrapper.selectAs(TaihuTalent::getId,"taihuTalentId");
wrapper.like(StringUtils.isNotEmpty(params.get("userName").toString()),TaihuTalent::getName,params.get("userName"));
wrapper.like(StringUtils.isNotEmpty(params.get("courseName").toString()),CourseEntity::getTitle,params.get("courseName"));
wrapper.orderByAsc(CourseToTalent::getSort);
Page<CourseToTalent> pageRes = courseToTalentService.page(new Page<>(Long.parseLong(params.get("current").toString())
Page<CourseEntity> pageRes = courseService.page(new Page<>(Long.parseLong(params.get("current").toString())
, Long.parseLong(params.get("limit").toString())),wrapper);
for (CourseToTalent courseToTalent:pageRes.getRecords()){
courseToTalent.setCourseEntity(courseService.getById(courseToTalent.getCourseId()));
courseToTalent.setTaihuTalent(taihuTalentService.getById(courseToTalent.getTalentId()));
for (CourseEntity course:pageRes.getRecords()){
course.setTaihuTalent(taihuTalentService.getById(course.getTaihuTalentId()));
}
return R.ok().put("pageRes",pageRes);
}