diff --git a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/controller/app/GoodsController.java b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/controller/app/GoodsController.java index 24d3c837a..8a1bc14b5 100644 --- a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/controller/app/GoodsController.java +++ b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/controller/app/GoodsController.java @@ -55,7 +55,6 @@ public class GoodsController { return Result.success(list, pageResult.getTotal()); } - @ApiOperation(value = "商品详情") @ApiImplicitParam(name = "id", value = "商品ID", required = true, paramType = "path", dataType = "Long") @GetMapping("/{id}") @@ -63,4 +62,12 @@ public class GoodsController { GoodsDetailVO goodsDetailVO = goodsService.getGoodsById(id); return Result.success(goodsDetailVO); } + + @ApiOperation(value = "商品详情") + @ApiImplicitParam(name = "id", value = "商品SkuID", required = true, paramType = "path", dataType = "Long") + @GetMapping("/sku/{skuId}") + public Result detailBySkuId(@PathVariable Long skuId) { + GoodsDetailVO goodsDetailVO = goodsService.getGoodsBySkuId(skuId); + return Result.success(goodsDetailVO); + } } diff --git a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/IGoodsService.java b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/IGoodsService.java index dfb1a88d8..f3e473f8d 100644 --- a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/IGoodsService.java +++ b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/IGoodsService.java @@ -10,4 +10,6 @@ import com.youlai.mall.pms.pojo.vo.app.GoodsDetailVO; */ public interface IGoodsService extends IService { GoodsDetailVO getGoodsById(Long id); + + GoodsDetailVO getGoodsBySkuId(Long skuId); } diff --git a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/impl/GoodsServiceImpl.java b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/impl/GoodsServiceImpl.java index 7e505b04f..351ddecd5 100644 --- a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/impl/GoodsServiceImpl.java +++ b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/serviceapp/impl/GoodsServiceImpl.java @@ -6,6 +6,7 @@ import cn.hutool.core.lang.Assert; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.youlai.common.web.exception.BizException; import com.youlai.mall.pms.common.enums.AttributeTypeEnum; import com.youlai.mall.pms.mapper.PmsSpuMapper; import com.youlai.mall.pms.pojo.entity.PmsSku; @@ -112,4 +113,14 @@ public class GoodsServiceImpl extends ServiceImpl implemen } return goodsDetailVO; } + + @Override + public GoodsDetailVO getGoodsBySkuId(Long skuId) { + PmsSku skuInfo = skuService.getById(skuId); + if (null == skuInfo) { + throw new BizException("商品不存在"); + } + Long spuId = skuInfo.getSpuId(); + return getGoodsById(spuId); + } }