From a79d4f40309196954dbcf6f3146c5c960a196d16 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Fri, 08 Oct 2021 11:55:33 +0800 Subject: [PATCH] 20211008 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java index 6a9f5a0..b7fc216 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java @@ -1,9 +1,14 @@ package cc.mrbird.febs.mall.service.impl; +import cc.mrbird.febs.common.exception.FebsException; +import cc.mrbird.febs.mall.conversion.MallGoodsConversion; +import cc.mrbird.febs.mall.conversion.MallMemberConversion; import cc.mrbird.febs.mall.dto.MallGoodsQueryDto; import cc.mrbird.febs.mall.entity.MallGoods; +import cc.mrbird.febs.mall.mapper.MallGoodsImagesMapper; import cc.mrbird.febs.mall.mapper.MallGoodsMapper; import cc.mrbird.febs.mall.service.IApiMallGoodsService; +import cc.mrbird.febs.mall.vo.MallGoodsDetailsVo; import cc.mrbird.febs.mall.vo.MallGoodsListVo; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -12,7 +17,9 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.util.List; +import java.util.Map; /** * @author wzy @@ -23,9 +30,27 @@ @RequiredArgsConstructor public class ApiMallGoodsServiceImpl extends ServiceImpl<MallGoodsMapper, MallGoods> implements IApiMallGoodsService { + private final MallGoodsImagesMapper goodsImagesMapper; + @Override public IPage<MallGoodsListVo> findMallGoodsListInPage(MallGoodsQueryDto queryDto) { Page<MallGoodsListVo> page = new Page<>(queryDto.getPageNow(), queryDto.getPageSize()); return this.baseMapper.selectMallGoodsListQueryInPage(queryDto, page); } + + @Override + public MallGoodsDetailsVo findMallGoodsDetailsById(Long id) { + MallGoods mallGoods = this.baseMapper.selectGoodsDetailById(id); + if (mallGoods == null) { + throw new FebsException("商品不存在"); + } + List<String> images = goodsImagesMapper.selectGoodsImagesByGoodsId(mallGoods.getId()); + MallGoodsDetailsVo mallGoodsDetailsVo = MallGoodsConversion.INSTANCE.entityToDetailsVo(mallGoods); + + Map<String, BigDecimal> stockAndVolume = this.baseMapper.selectGoodsStockAndVolume(id); + mallGoodsDetailsVo.setStock(stockAndVolume.get("stock").intValue()); + mallGoodsDetailsVo.setVolume(stockAndVolume.get("volume").intValue()); + mallGoodsDetailsVo.setImages(images); + return mallGoodsDetailsVo; + } } -- Gitblit v1.9.1