Commit 9dad9e555fa14c5e6bdfb2e78d41d48789a1c9e8

Authored by YunaiV
1 parent 04c4f4fc

code review 商品模块的表结构与模块划分

yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/brand/BrandDO.java
... ... @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
6 6 import com.baomidou.mybatisplus.annotation.TableName;
7 7 import lombok.*;
8 8  
  9 +// TODO @JeromeSoar:Product 前缀
9 10 /**
10 11 * 品牌 DO
11 12 *
... ... @@ -47,7 +48,7 @@ public class BrandDO extends BaseDO {
47 48 private String description;
48 49 /**
49 50 * 状态
50   - * <p>
  51 + *
51 52 * 枚举 {@link CommonStatusEnum}
52 53 */
53 54 private Integer status;
... ...
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/category/CategoryDO.java
... ... @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
6 6 import com.baomidou.mybatisplus.annotation.TableName;
7 7 import lombok.*;
8 8  
  9 +// TODO @JeromeSoar:Product 前缀
9 10 /**
10 11 * 商品分类 DO
11 12 *
... ...
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/property/PropertyDO.java
1 1 package cn.iocoder.yudao.module.product.dal.dataobject.property;
2 2  
3   -import lombok.*;
4   -import java.util.*;
5   -import com.baomidou.mybatisplus.annotation.*;
  3 +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
6 4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  5 +import com.baomidou.mybatisplus.annotation.KeySequence;
  6 +import com.baomidou.mybatisplus.annotation.TableId;
  7 +import com.baomidou.mybatisplus.annotation.TableName;
  8 +import lombok.*;
7 9  
  10 +// TODO @franky:每个表名,都加个 Product 前缀哈。
8 11 /**
9 12 * 规格名称 DO
10 13 *
... ... @@ -31,6 +34,8 @@ public class PropertyDO extends BaseDO {
31 34 private String name;
32 35 /**
33 36 * 状态: 0 开启 ,1 禁用
  37 + *
  38 + * TODO @franky:加个 枚举 {@link CommonStatusEnum} ,这样就能更好的知道
34 39 */
35 40 private Integer status;
36 41  
... ...
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/propertyvalue/PropertyValueDO.java
1 1 package cn.iocoder.yudao.module.product.dal.dataobject.propertyvalue;
2 2  
3   -import lombok.*;
4   -import java.util.*;
5   -import com.baomidou.mybatisplus.annotation.*;
6 3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import cn.iocoder.yudao.module.product.dal.dataobject.property.PropertyDO;
  5 +import com.baomidou.mybatisplus.annotation.KeySequence;
  6 +import com.baomidou.mybatisplus.annotation.TableId;
  7 +import com.baomidou.mybatisplus.annotation.TableName;
  8 +import lombok.*;
7 9  
  10 +// TODO @franky:包放到 property 中
8 11 /**
9 12 * 规格值 DO
10 13 *
... ... @@ -26,7 +29,9 @@ public class PropertyValueDO extends BaseDO {
26 29 @TableId
27 30 private Integer id;
28 31 /**
29   - * 规格键id
  32 + * 规格键 id
  33 + *
  34 + * TODO @franky:加个 关联 {@link PropertyDO#getId()} ,这样就能更好的知道
30 35 */
31 36 private Long propertyId;
32 37 /**
... ...
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/sku/SkuDO.java
1 1 package cn.iocoder.yudao.module.product.dal.dataobject.sku;
2 2  
3   -import lombok.*;
4   -import java.util.*;
5   -import com.baomidou.mybatisplus.annotation.*;
6 3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import com.baomidou.mybatisplus.annotation.KeySequence;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import lombok.*;
7 8  
8 9 /**
9 10 * 商品sku DO
... ... @@ -32,13 +33,14 @@ public class SkuDO extends BaseDO {
32 33 /**
33 34 * 规格值数组-json格式, [{propertId: , valueId: }, {propertId: , valueId: }]
34 35 */
  36 + // TODO franky:可以定义一个内部的 Property 类,然后 List<Property>
35 37 private String properties;
36 38 /**
37 39 * 销售价格,单位:分
38 40 */
39 41 private Integer price;
40 42 /**
41   - * 原价, 单位: 分
  43 + * 原价,单位:分
42 44 */
43 45 private Integer originalPrice;
44 46 /**
... ...
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/spu/SpuDO.java
1 1 package cn.iocoder.yudao.module.product.dal.dataobject.spu;
2 2  
3   -import lombok.*;
4   -import java.util.*;
5   -import com.baomidou.mybatisplus.annotation.*;
6 3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import com.baomidou.mybatisplus.annotation.KeySequence;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import lombok.*;
7 8  
8 9 /**
9 10 * 商品spu DO
... ... @@ -44,6 +45,7 @@ public class SpuDO extends BaseDO {
44 45 /**
45 46 * 商品主图地址,* 数组,以逗号分隔,最多上传15张
46 47 */
  48 + // TODO franky:List<String>
47 49 private String picUrls;
48 50 /**
49 51 * 排序字段
... ...
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/property/PropertyServiceImpl.java
1 1 package cn.iocoder.yudao.module.product.service.property;
2 2  
3   -import org.springframework.stereotype.Service;
4   -import javax.annotation.Resource;
5   -import org.springframework.validation.annotation.Validated;
6   -
7   -import java.util.*;
8   -import cn.iocoder.yudao.module.product.controller.admin.property.vo.*;
9   -import cn.iocoder.yudao.module.product.dal.dataobject.property.PropertyDO;
10 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
11   -
  4 +import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyCreateReqVO;
  5 +import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyExportReqVO;
  6 +import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyPageReqVO;
  7 +import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyUpdateReqVO;
12 8 import cn.iocoder.yudao.module.product.convert.property.PropertyConvert;
  9 +import cn.iocoder.yudao.module.product.dal.dataobject.property.PropertyDO;
13 10 import cn.iocoder.yudao.module.product.dal.mysql.property.PropertyMapper;
  11 +import org.springframework.stereotype.Service;
  12 +import org.springframework.validation.annotation.Validated;
  13 +
  14 +import javax.annotation.Resource;
  15 +import java.util.Collection;
  16 +import java.util.List;
14 17  
15 18 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
16   -import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.*;
  19 +import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.PROPERTY_NOT_EXISTS;
17 20  
18 21 /**
19 22 * 规格名称 Service 实现类
... ...
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/service/propertyvalue/PropertyValueServiceImpl.java
1 1 package cn.iocoder.yudao.module.product.service.propertyvalue;
2 2  
3   -import org.springframework.stereotype.Service;
4   -import javax.annotation.Resource;
5   -import org.springframework.validation.annotation.Validated;
6   -
7   -import java.util.*;
8   -import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.*;
9   -import cn.iocoder.yudao.module.product.dal.dataobject.propertyvalue.PropertyValueDO;
10 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
11   -
  4 +import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValueCreateReqVO;
  5 +import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValueExportReqVO;
  6 +import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValuePageReqVO;
  7 +import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValueUpdateReqVO;
12 8 import cn.iocoder.yudao.module.product.convert.propertyvalue.PropertyValueConvert;
  9 +import cn.iocoder.yudao.module.product.dal.dataobject.propertyvalue.PropertyValueDO;
13 10 import cn.iocoder.yudao.module.product.dal.mysql.propertyvalue.PropertyValueMapper;
  11 +import org.springframework.stereotype.Service;
  12 +import org.springframework.validation.annotation.Validated;
  13 +
  14 +import javax.annotation.Resource;
  15 +import java.util.Collection;
  16 +import java.util.List;
14 17  
15 18 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
16   -import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.*;
  19 +import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.PROPERTY_VALUE_NOT_EXISTS;
17 20  
18 21 /**
19 22 * 规格值 Service 实现类
... ... @@ -27,6 +30,8 @@ public class PropertyValueServiceImpl implements PropertyValueService {
27 30 @Resource
28 31 private PropertyValueMapper propertyValueMapper;
29 32  
  33 + // TODO @franky:这个合并到 property 中。他们本身是在一起的哈。基本不存在只查询规格,而不查询规格值。
  34 +
30 35 @Override
31 36 public Integer createPropertyValue(PropertyValueCreateReqVO createReqVO) {
32 37 // 插入
... ...