From d0626c36b538cd0a0737ec1213bf49151d1674af Mon Sep 17 00:00:00 2001 From: "kuang.yifei@iwhalecloud.com" Date: Tue, 7 Jun 2022 10:33:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=95=86=E5=9F=8E=E7=AB=AF-?= =?UTF-8?q?=E7=83=AD=E9=97=A8=E5=95=86=E5=93=81=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/goods/GoodsController.java | 31 ++++++++++++++++--- .../com/ghy/goods/mapper/GoodsMapper.java | 8 +++++ .../com/ghy/goods/service/GoodsService.java | 8 +++++ .../goods/service/impl/GoodsServiceImpl.java | 5 +++ .../mapper/goods/DeptGoodsCategoryMapper.xml | 6 ++++ .../resources/mapper/goods/GoodsMapper.xml | 11 +++++++ 6 files changed, 65 insertions(+), 4 deletions(-) diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/goods/GoodsController.java b/ghy-admin/src/main/java/com/ghy/web/controller/goods/GoodsController.java index b77e5997..4e0fb6d0 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/goods/GoodsController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/goods/GoodsController.java @@ -17,10 +17,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; @Controller @@ -64,6 +61,32 @@ public class GoodsController extends BaseController { return getDataTable(list); } + @PostMapping("/hot/list") + @ResponseBody + public TableDataInfo hotList(Goods goods) { + DeptGoodsCategory deptGoodsCategory = new DeptGoodsCategory(); + deptGoodsCategory.setDeptId(goods.getDeptId()); + deptGoodsCategory.setIsHot(1); + deptGoodsCategory.setLevel(2); + List categoryList = deptGoodsCategoryService.list(deptGoodsCategory); + Collection ids = new ArrayList<>(); + categoryList.forEach(category->{ + ids.add(category.getGoodsCategoryId()); + }); + + startPage(); + List list = goodsService.selectByCategoryIds(ids); + list.forEach(one->{ + // 补全商品 + List goodsAreas = goodsAreaService.selectByGoodsId(one.getGoodsId()); + one.setGoodsAreaList(goodsAreas); + + // 补全商品类别 + List goodsStandards = goodsStandardService.selectByGoodsId(one.getGoodsId()); + one.setGoodsStandardList(goodsStandards); + }); + return getDataTable(list); + } @PostMapping("/addGoods") @ResponseBody diff --git a/ghy-goods/src/main/java/com/ghy/goods/mapper/GoodsMapper.java b/ghy-goods/src/main/java/com/ghy/goods/mapper/GoodsMapper.java index 26771226..c2b99029 100644 --- a/ghy-goods/src/main/java/com/ghy/goods/mapper/GoodsMapper.java +++ b/ghy-goods/src/main/java/com/ghy/goods/mapper/GoodsMapper.java @@ -88,4 +88,12 @@ public interface GoodsMapper { * @param ids 商品ID */ List selectByIds(Collection ids); + + /** + * 用类目ID批量查询 + * + * @param ids 第三级类目ID + */ + List selectByCategoryIds(Collection ids); + } diff --git a/ghy-goods/src/main/java/com/ghy/goods/service/GoodsService.java b/ghy-goods/src/main/java/com/ghy/goods/service/GoodsService.java index 5e135834..ff5e422e 100644 --- a/ghy-goods/src/main/java/com/ghy/goods/service/GoodsService.java +++ b/ghy-goods/src/main/java/com/ghy/goods/service/GoodsService.java @@ -85,4 +85,12 @@ public interface GoodsService { * @param ids 商品ID */ List selectByIds(Collection ids); + + /** + * 用第三级类目ID批量查询 + * + * @param ids 类目ID + */ + List selectByCategoryIds(Collection ids); + } diff --git a/ghy-goods/src/main/java/com/ghy/goods/service/impl/GoodsServiceImpl.java b/ghy-goods/src/main/java/com/ghy/goods/service/impl/GoodsServiceImpl.java index 82709da8..81e7e8e2 100644 --- a/ghy-goods/src/main/java/com/ghy/goods/service/impl/GoodsServiceImpl.java +++ b/ghy-goods/src/main/java/com/ghy/goods/service/impl/GoodsServiceImpl.java @@ -141,6 +141,11 @@ public class GoodsServiceImpl implements GoodsService { return goodsMapper.selectByIds(ids); } + @Override + public List selectByCategoryIds(Collection ids) { + return goodsMapper.selectByCategoryIds(ids); + } + public int countUserGoodsById(Goods goods) { //TODO 校验商品是否上架 diff --git a/ghy-goods/src/main/resources/mapper/goods/DeptGoodsCategoryMapper.xml b/ghy-goods/src/main/resources/mapper/goods/DeptGoodsCategoryMapper.xml index bce024de..79c0f1bb 100644 --- a/ghy-goods/src/main/resources/mapper/goods/DeptGoodsCategoryMapper.xml +++ b/ghy-goods/src/main/resources/mapper/goods/DeptGoodsCategoryMapper.xml @@ -130,6 +130,12 @@ AND gc.status = #{status} + + AND gc.level = #{level} + + + AND dgc.is_hot = #{isHot} + diff --git a/ghy-goods/src/main/resources/mapper/goods/GoodsMapper.xml b/ghy-goods/src/main/resources/mapper/goods/GoodsMapper.xml index fd977b08..4813cfea 100644 --- a/ghy-goods/src/main/resources/mapper/goods/GoodsMapper.xml +++ b/ghy-goods/src/main/resources/mapper/goods/GoodsMapper.xml @@ -85,6 +85,9 @@ AND goods_code like concat('%', #{goodsCode}, '%') + + AND dept_goods_category_id = #{deptGoodsCategoryId} + @@ -126,4 +129,12 @@ #{ids} + + \ No newline at end of file