|
@@ -1,6 +1,7 @@
|
|
package cn.iocoder.yudao.module.product.convert.spu;
|
|
package cn.iocoder.yudao.module.product.convert.spu;
|
|
|
|
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|
|
|
+import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
|
import cn.iocoder.yudao.framework.dict.core.util.DictFrameworkUtils;
|
|
import cn.iocoder.yudao.framework.dict.core.util.DictFrameworkUtils;
|
|
import cn.iocoder.yudao.module.product.api.spu.dto.ProductSpuRespDTO;
|
|
import cn.iocoder.yudao.module.product.api.spu.dto.ProductSpuRespDTO;
|
|
import cn.iocoder.yudao.module.product.controller.admin.spu.vo.*;
|
|
import cn.iocoder.yudao.module.product.controller.admin.spu.vo.*;
|
|
@@ -18,6 +19,7 @@ import org.mapstruct.factory.Mappers;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
|
|
|
|
import static cn.hutool.core.util.ObjectUtil.defaultIfNull;
|
|
import static cn.hutool.core.util.ObjectUtil.defaultIfNull;
|
|
|
|
|
|
@@ -107,4 +109,15 @@ public interface ProductSpuConvert {
|
|
return detailRespVO;
|
|
return detailRespVO;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ default List<ProductSpuDetailRespVO> convertForSpuDetailRespListVO(List<ProductSpuDO> spus, List<ProductSkuDO> skus) {
|
|
|
|
+ ArrayList<ProductSpuDetailRespVO> vos = new ArrayList<>();
|
|
|
|
+ Map<Long, List<ProductSkuDO>> skuMultiMap = CollectionUtils.convertMultiMap(skus, ProductSkuDO::getSpuId);
|
|
|
|
+ spus.forEach(spu -> {
|
|
|
|
+ ProductSpuDetailRespVO detailRespVO = convert03(spu);
|
|
|
|
+ detailRespVO.setSkus(ProductSkuConvert.INSTANCE.convertList(skuMultiMap.get(spu.getId())));
|
|
|
|
+ vos.add(detailRespVO);
|
|
|
|
+ });
|
|
|
|
+ return vos;
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|