From 2987ec0f865eb816cdcb3fd10e2d556f9b7d95d4 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 03 九月 2025 16:18:10 +0800 Subject: [PATCH] bug修改 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java | 73 +++++++++++++++++++++--------------- 1 files changed, 43 insertions(+), 30 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java index 82b3273..f81e391 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/GoodsServiceImpl.java @@ -20,11 +20,13 @@ import com.ruoyi.other.api.domain.*; import com.ruoyi.other.dto.AddGoodsDTO; import com.ruoyi.other.enums.GoodsStatus; +import com.ruoyi.other.mapper.GoodsEvaluateMapper; import com.ruoyi.other.mapper.GoodsMapper; import com.ruoyi.other.mapper.GoodsShopMapper; import com.ruoyi.other.mapper.ShopMapper; import com.ruoyi.other.service.*; import com.ruoyi.other.util.GeodesyUtil; +import com.ruoyi.other.vo.GoodsEvaluateVO; import com.ruoyi.other.vo.GoodsVO; import com.ruoyi.other.vo.NearbyShopVO; import com.ruoyi.system.api.domain.SysConfig; @@ -77,6 +79,8 @@ @Resource private ShopService shopService; + @Resource + private GoodsEvaluateMapper goodsEvaluateMapper; /** * 热门商品列表 @@ -88,9 +92,11 @@ public PageInfo<GoodsVO> goodsList(Goods search) { List<Long> shopIds=null; if (null!=search.getLongitude()&&null!=search.getLatitude()){ + //获取最近十家店的id List<NearbyShopVO> nearbyShopVOS = shopService.nearbyShopList(search.getLongitude(), search.getLatitude(), new Shop()); - shopIds = nearbyShopVOS.subList(0, 10).stream().map(NearbyShopVO::getId).collect(Collectors.toList()); + int endIndex = Math.min(10, nearbyShopVOS.size()); + shopIds = nearbyShopVOS.subList(0, endIndex).stream().map(NearbyShopVO::getId).collect(Collectors.toList()); } //查找满足条件的商品 分类、名称、附近十家店 List<GoodsVO> list = this.baseMapper.goodsList(search.getGoodsCategoryId(), search.getName(),shopIds); @@ -102,19 +108,18 @@ list = new ArrayList<>(uniqueGoodsMap.values()); for (GoodsVO goods : list) { - //计算所需价格和积分 - Price price = getPrice( goods.getGoodsId()); - if(null != price){ - //秒杀活动 - goods.setSellingPrice(price.getCash()); - goods.setIntegral(price.getPoint()); - goods.setStartTime(price.getStartTime()); - goods.setEndTime(price.getEndTime()); - goods.setPurchaseLimit(price.getPurchaseLimit()); - } - //已售数量 - Integer data = orderClient.getGoodsSaleNum(goods.getGoodsId(), 1).getData(); - goods.setSaleNum(data); + Integer point = getPoint(goods.getSellingPrice()); + goods.setIntegral(point); +// //计算所需价格和积分 +// Price price = getPrice( goods.getGoodsId()); +// if(null != price){ +// //秒杀活动 +// goods.setSellingPrice(price.getCash()); +// goods.setIntegral(price.getPoint()); +// goods.setStartTime(price.getStartTime()); +// goods.setEndTime(price.getEndTime()); +// goods.setPurchaseLimit(price.getPurchaseLimit()); +// } } //手动排序 if(StringUtils.isNotEmpty(search.getOrderByColumn())){ @@ -211,15 +216,17 @@ goodsVO.setGoodsName(goods.getName()); //计算所需价格和积分 - Price price = getPrice( goods.getId()); - if(null != price){ - //秒杀活动 - goodsVO.setSellingPrice(price.getCash()); - goodsVO.setIntegral(price.getPoint()); - goodsVO.setStartTime(price.getStartTime()); - goodsVO.setEndTime(price.getEndTime()); - goodsVO.setPurchaseLimit(price.getPurchaseLimit()); - } +// Price price = getPrice( goods.getId()); +// if(null != price){ +// //秒杀活动 +// goodsVO.setSellingPrice(price.getCash()); +// goodsVO.setIntegral(price.getPoint()); +// goodsVO.setStartTime(price.getStartTime()); +// goodsVO.setEndTime(price.getEndTime()); +// goodsVO.setPurchaseLimit(price.getPurchaseLimit()); +// } + Integer point = getPoint(goodsVO.getSellingPrice()); + goodsVO.setIntegral(point); //已售数量 Integer data = orderClient.getGoodsSaleNum(goods.getId(), 1).getData(); goodsVO.setSaleNum(data); @@ -234,6 +241,14 @@ Integer integer = orderClient.getGoodsSaleNum(goods.getId(), 1).getData(); goodsVO.setSaleNum(integer); + //商品评价 + GoodsEvaluate goodsEvaluate=goodsEvaluateMapper.getGoodsEvaluateOne(goods.getId()); + if (null != goodsEvaluate){ + AppUser appUserById = appUserClient.getAppUserById(goodsEvaluate.getAppUserId()); + goodsEvaluate.setAvatar(appUserById.getAvatar()); + goodsEvaluate.setUserName(appUserById.getName()); + goodsVO.setGoodsEvaluate(goodsEvaluate); + } return goodsVO; } @@ -264,13 +279,11 @@ } @Override - public IPage<Goods> getManageGoodsList(Page<Goods> page, Goods goods) { - IPage<Goods> goodsIPage = goodsMapper.selectManageGoodsList(page, goods); - /* goodsIPage.getRecords().forEach(goods1 -> { - Integer data = orderClient.getGoodsSaleNum(goods1.getId(), 1).getData(); - goods1.setSaleNum(data); - });*/ - return goodsIPage; + public R getManageGoodsList(Integer pageNum,Integer pageSize, Goods goods) { + PageInfo<Goods> pageInfo = new PageInfo<>(pageNum,pageSize); + List<Goods> list = goodsMapper.selectManageGoodsList(pageInfo, goods); + pageInfo.setRecords(list); + return R.ok(pageInfo); } @Override -- Gitblit v1.7.1