diff --git a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/comment/dto/ProductCommentCreateReqDTO.java b/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/comment/dto/ProductCommentCreateReqDTO.java index aff7fbd27..0afcfe92a 100644 --- a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/comment/dto/ProductCommentCreateReqDTO.java +++ b/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/comment/dto/ProductCommentCreateReqDTO.java @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.product.api.comment.dto; import lombok.Data; +import javax.validation.constraints.NotNull; import java.util.List; /** @@ -15,6 +16,7 @@ public class ProductCommentCreateReqDTO { /** * 商品 SKU 编号 */ + @NotNull(message = "商品 SKU 编号不能为空") private Long skuId; /** * 订单编号 @@ -25,21 +27,20 @@ public class ProductCommentCreateReqDTO { */ private Long orderItemId; - /** - * 评分星级 1-5 分 - */ - private Integer scores; /** * 描述星级 1-5 分 */ + @NotNull(message = "描述星级不能为空") private Integer descriptionScores; /** * 服务星级 1-5 分 */ + @NotNull(message = "服务星级不能为空") private Integer benefitScores; /** * 评论内容 */ + @NotNull(message = "评论内容不能为空") private String content; /** * 评论图片地址数组,以逗号分隔最多上传 9 张 @@ -49,11 +50,12 @@ public class ProductCommentCreateReqDTO { /** * 是否匿名 */ + @NotNull(message = "是否匿名不能为空") private Boolean anonymous; /** * 评价人 */ + @NotNull(message = "评价人不能为空") private Long userId; - } diff --git a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/property/ProductPropertyValueApi.java b/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/property/ProductPropertyValueApi.java deleted file mode 100644 index 83269f91d..000000000 --- a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/property/ProductPropertyValueApi.java +++ /dev/null @@ -1,23 +0,0 @@ -package cn.iocoder.yudao.module.product.api.property; - -import cn.iocoder.yudao.module.product.api.property.dto.ProductPropertyValueDetailRespDTO; - -import java.util.Collection; -import java.util.List; - -/** - * 商品属性值 API 接口 - * - * @author 芋道源码 - */ -public interface ProductPropertyValueApi { - - /** - * 根据编号数组,获得属性值列表 - * - * @param ids 编号数组 - * @return 属性值明细列表 - */ - List getPropertyValueDetailList(Collection ids); - -} diff --git a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/spu/dto/ProductSpuRespDTO.java b/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/spu/dto/ProductSpuRespDTO.java index cd7a62eea..dfe43ba38 100644 --- a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/spu/dto/ProductSpuRespDTO.java +++ b/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/api/spu/dto/ProductSpuRespDTO.java @@ -3,8 +3,6 @@ package cn.iocoder.yudao.module.product.api.spu.dto; import cn.iocoder.yudao.module.product.enums.spu.ProductSpuStatusEnum; import lombok.Data; -import java.util.List; - // TODO @LeeYan9: ProductSpuRespDTO /** * 商品 SPU 信息 Response DTO @@ -26,55 +24,22 @@ public class ProductSpuRespDTO { * 商品名称 */ private String name; - /** - * 关键字 - */ - private String keyword; /** * 单位 * * 对应 product_unit 数据字典 */ private Integer unit; - /** - * 商品简介 - */ - private String introduction; - /** - * 商品详情 - */ - private String description; - // TODO @芋艿:是不是要删除 - /** - * 商品条码(一维码) - */ - private String barCode; /** * 商品分类编号 */ private Long categoryId; - /** - * 商品品牌编号 - */ - private Long brandId; /** * 商品封面图 */ private String picUrl; - /** - * 商品轮播图 - */ - private List sliderPicUrls; - /** - * 商品视频 - */ - private String videoUrl; - /** - * 排序字段 - */ - private Integer sort; /** * 商品状态 *

@@ -124,22 +89,6 @@ public class ProductSpuRespDTO { */ private Integer giveIntegral; - // ========== 统计相关字段 ========= - - /** - * 商品销量 - */ - private Integer salesCount; - /** - * 虚拟销量 - */ - private Integer virtualSalesCount; - /** - * 商品点击量 - */ - private Integer clickCount; - - // ========== 分销相关字段 ========= /** diff --git a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/group/ProductGroupStyleEnum.java b/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/group/ProductGroupStyleEnum.java deleted file mode 100644 index c5e55e8e4..000000000 --- a/yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/group/ProductGroupStyleEnum.java +++ /dev/null @@ -1,38 +0,0 @@ -package cn.iocoder.yudao.module.product.enums.group; - -import cn.iocoder.yudao.framework.common.core.IntArrayValuable; -import lombok.AllArgsConstructor; -import lombok.Getter; - -import java.util.Arrays; - -/** - * 商品分组的样式枚举 - * - * @author 芋道源码 - */ -@Getter -@AllArgsConstructor -public enum ProductGroupStyleEnum implements IntArrayValuable { - - ONE(1, "每列一个"), - TWO(2, "每列两个"), - THREE(2, "每列三个"),; - - public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(ProductGroupStyleEnum::getStyle).toArray(); - - /** - * 列表样式 - */ - private final Integer style; - /** - * 状态名 - */ - private final String name; - - @Override - public int[] array() { - return ARRAYS; - } - -} diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/property/ProductPropertyValueApiImpl.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/property/ProductPropertyValueApiImpl.java deleted file mode 100644 index d3eaaf42d..000000000 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/property/ProductPropertyValueApiImpl.java +++ /dev/null @@ -1,31 +0,0 @@ -package cn.iocoder.yudao.module.product.api.property; - -import cn.iocoder.yudao.module.product.api.property.dto.ProductPropertyValueDetailRespDTO; -import cn.iocoder.yudao.module.product.convert.property.ProductPropertyValueConvert; -import cn.iocoder.yudao.module.product.service.property.ProductPropertyValueService; -import org.springframework.stereotype.Service; -import org.springframework.validation.annotation.Validated; - -import javax.annotation.Resource; -import java.util.Collection; -import java.util.List; - -/** - * 商品属性值 API 实现类 - * - * @author 芋道源码 - */ -@Service -@Validated -public class ProductPropertyValueApiImpl implements ProductPropertyValueApi { - - @Resource - private ProductPropertyValueService productPropertyValueService; - - @Override - public List getPropertyValueDetailList(Collection ids) { - return ProductPropertyValueConvert.INSTANCE.convertList02( - productPropertyValueService.getPropertyValueDetailList(ids)); - } - -} diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/sku/ProductSkuApiImpl.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/sku/ProductSkuApiImpl.java index bd0258efa..7c9e2973b 100644 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/sku/ProductSkuApiImpl.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/sku/ProductSkuApiImpl.java @@ -1,6 +1,5 @@ package cn.iocoder.yudao.module.product.api.sku; -import cn.hutool.core.collection.CollUtil; import cn.iocoder.yudao.module.product.api.sku.dto.ProductSkuRespDTO; import cn.iocoder.yudao.module.product.api.sku.dto.ProductSkuUpdateStockReqDTO; import cn.iocoder.yudao.module.product.convert.sku.ProductSkuConvert; @@ -11,7 +10,6 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.util.Collection; -import java.util.Collections; import java.util.List; /** @@ -35,18 +33,12 @@ public class ProductSkuApiImpl implements ProductSkuApi { @Override public List getSkuList(Collection ids) { - if (CollUtil.isEmpty(ids)) { - return Collections.emptyList(); - } List skus = productSkuService.getSkuList(ids); return ProductSkuConvert.INSTANCE.convertList04(skus); } @Override public List getSkuListBySpuId(Collection spuIds) { - if (CollUtil.isEmpty(spuIds)) { - return Collections.emptyList(); - } List skus = productSkuService.getSkuListBySpuId(spuIds); return ProductSkuConvert.INSTANCE.convertList04(skus); } diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/spu/ProductSpuApiImpl.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/spu/ProductSpuApiImpl.java index 559075898..cf726d739 100644 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/spu/ProductSpuApiImpl.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/api/spu/ProductSpuApiImpl.java @@ -27,9 +27,6 @@ public class ProductSpuApiImpl implements ProductSpuApi { @Override public List getSpuList(Collection ids) { - if (CollectionUtil.isEmpty(ids)) { - return Collections.emptyList(); - } return ProductSpuConvert.INSTANCE.convertList2(spuService.getSpuList(ids)); } diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/convert/property/ProductPropertyValueConvert.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/convert/property/ProductPropertyValueConvert.java index 5429f35fe..57ac4e172 100644 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/convert/property/ProductPropertyValueConvert.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/convert/property/ProductPropertyValueConvert.java @@ -1,22 +1,14 @@ package cn.iocoder.yudao.module.product.convert.property; import cn.iocoder.yudao.framework.common.pojo.PageResult; -import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; -import cn.iocoder.yudao.framework.common.util.collection.MapUtils; -import cn.iocoder.yudao.module.product.api.property.dto.ProductPropertyValueDetailRespDTO; import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValueCreateReqVO; import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValueRespVO; import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValueUpdateReqVO; -import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyDO; import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyValueDO; -import cn.iocoder.yudao.module.product.service.property.bo.ProductPropertyValueDetailRespBO; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; import java.util.List; -import java.util.Map; - -import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMap; /** * 属性值 Convert @@ -38,18 +30,4 @@ public interface ProductPropertyValueConvert { PageResult convertPage(PageResult page); - default List convertList(List values, List keys) { - Map keyMap = convertMap(keys, ProductPropertyDO::getId); - return CollectionUtils.convertList(values, value -> { - ProductPropertyValueDetailRespBO valueDetail = new ProductPropertyValueDetailRespBO() - .setValueId(value.getId()).setValueName(value.getName()); - // 设置属性项 - MapUtils.findAndThen(keyMap, value.getPropertyId(), - key -> valueDetail.setPropertyId(key.getId()).setPropertyName(key.getName())); - return valueDetail; - }); - } - - List convertList02(List list); - } diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueService.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueService.java index 553e2578d..29f5e55ec 100644 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueService.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueService.java @@ -5,7 +5,6 @@ import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.Produc import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValuePageReqVO; import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValueUpdateReqVO; import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyValueDO; -import cn.iocoder.yudao.module.product.service.property.bo.ProductPropertyValueDetailRespBO; import java.util.Collection; import java.util.List; @@ -56,14 +55,6 @@ public interface ProductPropertyValueService { */ List getPropertyValueListByPropertyId(Collection propertyIds); - /** - * 根据编号数组,获得属性值列表 - * - * @param ids 编号数组 - * @return 属性值明细列表 - */ - List getPropertyValueDetailList(Collection ids); - /** * 根据属性项编号,活的属性值数量 * diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueServiceImpl.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueServiceImpl.java index 0f74bca1f..7bfdcdfcb 100644 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueServiceImpl.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/ProductPropertyValueServiceImpl.java @@ -1,15 +1,12 @@ package cn.iocoder.yudao.module.product.service.property; -import cn.hutool.core.collection.CollUtil; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValueCreateReqVO; import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValuePageReqVO; import cn.iocoder.yudao.module.product.controller.admin.property.vo.value.ProductPropertyValueUpdateReqVO; import cn.iocoder.yudao.module.product.convert.property.ProductPropertyValueConvert; -import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyDO; import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyValueDO; import cn.iocoder.yudao.module.product.dal.mysql.property.ProductPropertyValueMapper; -import cn.iocoder.yudao.module.product.service.property.bo.ProductPropertyValueDetailRespBO; import cn.iocoder.yudao.module.product.service.sku.ProductSkuService; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; @@ -17,11 +14,9 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; import java.util.Collection; -import java.util.Collections; import java.util.List; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; -import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.PROPERTY_VALUE_EXISTS; import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.PROPERTY_VALUE_NOT_EXISTS; @@ -99,23 +94,6 @@ public class ProductPropertyValueServiceImpl implements ProductPropertyValueServ return productPropertyValueMapper.selectListByPropertyId(propertyIds); } - @Override - public List getPropertyValueDetailList(Collection ids) { - // 获得属性值列表 - if (CollUtil.isEmpty(ids)) { - return Collections.emptyList(); - } - List values = productPropertyValueMapper.selectBatchIds(ids); - if (CollUtil.isEmpty(values)) { - return Collections.emptyList(); - } - // 获得属性项列表 - List keys = productPropertyService.getPropertyList( - convertSet(values, ProductPropertyValueDO::getPropertyId)); - // 组装明细 - return ProductPropertyValueConvert.INSTANCE.convertList(values, keys); - } - @Override public Integer getPropertyValueCountByPropertyId(Long propertyId) { return productPropertyValueMapper.selectCountByPropertyId(propertyId); diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/bo/ProductPropertyValueDetailRespBO.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/bo/ProductPropertyValueDetailRespBO.java deleted file mode 100644 index 6776731f9..000000000 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/bo/ProductPropertyValueDetailRespBO.java +++ /dev/null @@ -1,33 +0,0 @@ -package cn.iocoder.yudao.module.product.service.property.bo; - -import lombok.Data; - -/** - * 商品属性项的明细 Response BO - * - * @author 芋道源码 - */ -@Data -public class ProductPropertyValueDetailRespBO { - - /** - * 属性的编号 - */ - private Long propertyId; - - /** - * 属性的名称 - */ - private String propertyName; - - /** - * 属性值的编号 - */ - private Long valueId; - - /** - * 属性值的名称 - */ - private String valueName; - -} diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/sku/ProductSkuServiceImpl.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/sku/ProductSkuServiceImpl.java index cd0ba6b46..9876afe9d 100755 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/sku/ProductSkuServiceImpl.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/sku/ProductSkuServiceImpl.java @@ -153,6 +153,9 @@ public class ProductSkuServiceImpl implements ProductSkuService { @Override public List getSkuListBySpuId(Collection spuIds) { + if (CollUtil.isEmpty(spuIds)) { + return Collections.emptyList(); + } return productSkuMapper.selectListBySpuId(spuIds); } diff --git a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java index 5f2fcbb04..b82998267 100755 --- a/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java +++ b/yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/spu/ProductSpuServiceImpl.java @@ -216,6 +216,9 @@ public class ProductSpuServiceImpl implements ProductSpuService { @Override public List getSpuList(Collection ids) { + if (CollUtil.isEmpty(ids)) { + return Collections.emptyList(); + } return productSpuMapper.selectBatchIds(ids); }