From 510a0d6fdeb89e4d681f8a140ba79ab56bae79ff Mon Sep 17 00:00:00 2001 From: wuchunlei Date: Mon, 17 Jun 2024 13:10:34 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=BE=E7=A8=8B=E8=AF=A6=E7=BB=86=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E8=AF=BE=E7=A8=8B=E5=85=B3=E8=81=94=E5=95=86=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../master/controller/CourseController.java | 19 ++++++++++++++++++- .../modules/master/service/CourseService.java | 3 +++ .../service/impl/CourseServiceImpl.java | 18 ++++++++++++++++-- 3 files changed, 37 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/peanut/modules/master/controller/CourseController.java b/src/main/java/com/peanut/modules/master/controller/CourseController.java index e91b46ec..97ac8430 100644 --- a/src/main/java/com/peanut/modules/master/controller/CourseController.java +++ b/src/main/java/com/peanut/modules/master/controller/CourseController.java @@ -9,6 +9,7 @@ import com.peanut.modules.common.to.ParamTo; import com.peanut.modules.common.to.ChangeCatalogueFeeDto; import com.peanut.modules.master.service.*; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; @@ -32,6 +33,8 @@ public class CourseController { private CourseCatalogueChapterVideoService courseCatalogueChapterVideoService; @Autowired private SysCourseDirectService sysCourseDirectService; + @Autowired + private ShopProductService shopProductService; @RequestMapping("/getCourseList") @@ -60,7 +63,15 @@ public class CourseController { @RequestMapping("/getCoursedetail") public R getCoursedetail(@RequestBody ParamTo param){ CourseEntity course = courseService.getById(param.getId()); - return R.ok().put("course",course); + List shopProductList = null; + //课程关联商品 + if (StringUtils.isNotEmpty(course.getRelationProductIds())){ + String[] ids = course.getRelationProductIds().split(","); + shopProductList = shopProductService.list(new LambdaQueryWrapper() + .in(ShopProduct::getProductId, ids) + .orderByAsc(ShopProduct::getSort)); + } + return R.ok().put("course",course).put("shopProductList",shopProductList); } @RequestMapping("/getCourseCatalogues") @@ -195,6 +206,12 @@ public class CourseController { return R.ok(); } + @RequestMapping("/getProductListForCourse") + public R getProductListForCourse(@RequestBody Map param){ + Page shopProductListhopProducts = courseService.getProductListForCourse(param); + return R.ok().put("shopProductListhopProducts",shopProductListhopProducts); + } + } diff --git a/src/main/java/com/peanut/modules/master/service/CourseService.java b/src/main/java/com/peanut/modules/master/service/CourseService.java index 72ee38f6..076d3b6c 100644 --- a/src/main/java/com/peanut/modules/master/service/CourseService.java +++ b/src/main/java/com/peanut/modules/master/service/CourseService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.peanut.common.utils.R; import com.peanut.modules.common.entity.CourseEntity; +import com.peanut.modules.common.entity.ShopProduct; import com.peanut.modules.common.to.ParamTo; import java.util.List; @@ -30,4 +31,6 @@ public interface CourseService extends IService { R courseCatalogueTransfer(Map param); R getCourseLableLinkList(Map param); + + Page getProductListForCourse(Map param); } diff --git a/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java index fe9f667e..4f3a3a09 100644 --- a/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/master/service/impl/CourseServiceImpl.java @@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.peanut.common.utils.ObjectUtils; import com.peanut.common.utils.R; -import com.peanut.modules.book.service.CouponProductRelationService; import com.peanut.modules.common.dao.*; import com.peanut.modules.common.entity.*; import com.peanut.modules.common.to.ParamTo; @@ -15,7 +14,6 @@ import com.peanut.modules.master.service.CourseService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; - import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; @@ -289,6 +287,22 @@ public class CourseServiceImpl extends ServiceImpl impl return R.ok().put("resList",resList); } + @Override + public Page getProductListForCourse(Map param) { + Integer limit = Integer.valueOf(param.get("limit").toString()); + Integer page = Integer.valueOf(param.get("page").toString()); + CourseEntity c = this.getOne(new LambdaQueryWrapper().eq(CourseEntity::getId,param.get("courseId"))); + Page resPage = null; + LambdaQueryWrapper w = new LambdaQueryWrapper<>(); + w.like(ShopProduct::getProductName,param.get("productName")); + if (StringUtils.isNotBlank(c.getRelationProductIds())){ + String[] productIds = c.getRelationProductIds().split(","); + w.notIn(ShopProduct::getProductId,productIds); + } + resPage = shopProductDao.selectPage(new Page<>(page, limit), w); + return resPage; + } + private CourseMedicine getPCourseMedicine(CourseMedicine m){ if (m.getPid()!=0){ CourseMedicine pm = medicalDao.selectById(m.getPid());