|
@@ -7,9 +7,11 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
|
import cn.iocoder.yudao.module.product.controller.app.spu.vo.AppProductSpuDetailRespVO;
|
|
import cn.iocoder.yudao.module.product.controller.app.spu.vo.AppProductSpuDetailRespVO;
|
|
import cn.iocoder.yudao.module.product.controller.app.spu.vo.AppProductSpuPageReqVO;
|
|
import cn.iocoder.yudao.module.product.controller.app.spu.vo.AppProductSpuPageReqVO;
|
|
import cn.iocoder.yudao.module.product.controller.app.spu.vo.AppProductSpuRespVO;
|
|
import cn.iocoder.yudao.module.product.controller.app.spu.vo.AppProductSpuRespVO;
|
|
|
|
+import cn.iocoder.yudao.module.product.dal.dataobject.category.ProductCategoryDO;
|
|
import cn.iocoder.yudao.module.product.dal.dataobject.sku.ProductSkuDO;
|
|
import cn.iocoder.yudao.module.product.dal.dataobject.sku.ProductSkuDO;
|
|
import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
|
|
import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
|
|
import cn.iocoder.yudao.module.product.enums.spu.ProductSpuStatusEnum;
|
|
import cn.iocoder.yudao.module.product.enums.spu.ProductSpuStatusEnum;
|
|
|
|
+import cn.iocoder.yudao.module.product.service.category.ProductCategoryService;
|
|
import cn.iocoder.yudao.module.product.service.history.ProductBrowseHistoryService;
|
|
import cn.iocoder.yudao.module.product.service.history.ProductBrowseHistoryService;
|
|
import cn.iocoder.yudao.module.product.service.sku.ProductSkuService;
|
|
import cn.iocoder.yudao.module.product.service.sku.ProductSkuService;
|
|
import cn.iocoder.yudao.module.product.service.spu.ProductSpuService;
|
|
import cn.iocoder.yudao.module.product.service.spu.ProductSpuService;
|
|
@@ -46,6 +48,8 @@ public class AppProductSpuController {
|
|
@Resource
|
|
@Resource
|
|
private ProductSkuService productSkuService;
|
|
private ProductSkuService productSkuService;
|
|
@Resource
|
|
@Resource
|
|
|
|
+ private ProductCategoryService productCategoryService;
|
|
|
|
+ @Resource
|
|
private ProductBrowseHistoryService productBrowseHistoryService;
|
|
private ProductBrowseHistoryService productBrowseHistoryService;
|
|
|
|
|
|
@GetMapping("/list-by-ids")
|
|
@GetMapping("/list-by-ids")
|
|
@@ -89,6 +93,8 @@ public class AppProductSpuController {
|
|
if (spu == null) {
|
|
if (spu == null) {
|
|
throw exception(SPU_NOT_EXISTS);
|
|
throw exception(SPU_NOT_EXISTS);
|
|
}
|
|
}
|
|
|
|
+ ProductCategoryDO category = productCategoryService.getCategory(spu.getCategoryId());
|
|
|
|
+
|
|
if (!ProductSpuStatusEnum.isEnable(spu.getStatus())) {
|
|
if (!ProductSpuStatusEnum.isEnable(spu.getStatus())) {
|
|
throw exception(SPU_NOT_ENABLE, spu.getName());
|
|
throw exception(SPU_NOT_ENABLE, spu.getName());
|
|
}
|
|
}
|
|
@@ -102,8 +108,12 @@ public class AppProductSpuController {
|
|
|
|
|
|
// 拼接返回
|
|
// 拼接返回
|
|
spu.setSalesCount(spu.getSalesCount() + spu.getVirtualSalesCount());
|
|
spu.setSalesCount(spu.getSalesCount() + spu.getVirtualSalesCount());
|
|
|
|
+
|
|
AppProductSpuDetailRespVO spuVO = BeanUtils.toBean(spu, AppProductSpuDetailRespVO.class)
|
|
AppProductSpuDetailRespVO spuVO = BeanUtils.toBean(spu, AppProductSpuDetailRespVO.class)
|
|
.setSkus(BeanUtils.toBean(skus, AppProductSpuDetailRespVO.Sku.class));
|
|
.setSkus(BeanUtils.toBean(skus, AppProductSpuDetailRespVO.Sku.class));
|
|
|
|
+ if (category != null) {
|
|
|
|
+ spuVO.setInfoTypes(category.getInfoTypes());
|
|
|
|
+ }
|
|
return success(spuVO);
|
|
return success(spuVO);
|
|
}
|
|
}
|
|
|
|
|