From 01369e4cef1426982b011a036c22fa7204a1b6ba Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Wed, 18 Jun 2025 11:35:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=90=8D=E5=8C=BB=E7=B2=BE?= =?UTF-8?q?=E5=BD=A9=E6=A0=87=E7=AD=BE=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../taihumed/controller/CourseController.java | 54 ++++++++++++++----- 1 file changed, 42 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/peanut/modules/taihumed/controller/CourseController.java b/src/main/java/com/peanut/modules/taihumed/controller/CourseController.java index f1399dc5..f0648976 100644 --- a/src/main/java/com/peanut/modules/taihumed/controller/CourseController.java +++ b/src/main/java/com/peanut/modules/taihumed/controller/CourseController.java @@ -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 params){ + MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>(); + wrapper.distinct(); + int count = courseTaihumedService.count(new LambdaQueryWrapper() + .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 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 params){ - List res = new ArrayList(); - MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); - wrapper.leftJoin(CourseEntity.class,CourseEntity::getId,CourseToTalent::getCourseId); + MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); + int count = courseTaihumedService.count(new LambdaQueryWrapper() + .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 pageRes = courseToTalentService.page(new Page<>(Long.parseLong(params.get("current").toString()) + Page 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); }