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

This commit is contained in:
YunaiV 2022-05-18 19:35:25 +08:00
parent 04c4f4fcfc
commit 9dad9e555f
8 changed files with 57 additions and 33 deletions

View File

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
// TODO @JeromeSoarProduct 前缀
/**
* 品牌 DO
*
@ -47,7 +48,7 @@ public class BrandDO extends BaseDO {
private String description;
/**
* 状态
* <p>
*
* 枚举 {@link CommonStatusEnum}
*/
private Integer status;

View File

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
// TODO @JeromeSoarProduct 前缀
/**
* 商品分类 DO
*

View File

@ -1,10 +1,13 @@
package cn.iocoder.yudao.module.product.dal.dataobject.property;
import lombok.*;
import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
// TODO @franky每个表名都加个 Product 前缀哈
/**
* 规格名称 DO
*
@ -31,6 +34,8 @@ public class PropertyDO extends BaseDO {
private String name;
/**
* 状态 0 开启 1 禁用
*
* TODO @franky加个 枚举 {@link CommonStatusEnum} 这样就能更好的知道
*/
private Integer status;

View File

@ -1,10 +1,13 @@
package cn.iocoder.yudao.module.product.dal.dataobject.propertyvalue;
import lombok.*;
import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.module.product.dal.dataobject.property.PropertyDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
// TODO @franky包放到 property
/**
* 规格值 DO
*
@ -26,7 +29,9 @@ public class PropertyValueDO extends BaseDO {
@TableId
private Integer id;
/**
* 规格键id
* 规格键 id
*
* TODO @franky加个 关联 {@link PropertyDO#getId()} 这样就能更好的知道
*/
private Long propertyId;
/**

View File

@ -1,9 +1,10 @@
package cn.iocoder.yudao.module.product.dal.dataobject.sku;
import lombok.*;
import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/**
* 商品sku DO
@ -32,13 +33,14 @@ public class SkuDO extends BaseDO {
/**
* 规格值数组-json格式 [{propertId: , valueId: }, {propertId: , valueId: }]
*/
// TODO franky可以定义一个内部的 Property 然后 List<Property>
private String properties;
/**
* 销售价格单位
*/
private Integer price;
/**
* 原价 单位
* 原价单位
*/
private Integer originalPrice;
/**

View File

@ -1,9 +1,10 @@
package cn.iocoder.yudao.module.product.dal.dataobject.spu;
import lombok.*;
import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/**
* 商品spu DO
@ -44,6 +45,7 @@ public class SpuDO extends BaseDO {
/**
* 商品主图地址,* 数组以逗号分隔,最多上传15张
*/
// TODO frankyList<String>
private String picUrls;
/**
* 排序字段

View File

@ -1,19 +1,22 @@
package cn.iocoder.yudao.module.product.service.property;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyCreateReqVO;
import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyExportReqVO;
import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyPageReqVO;
import cn.iocoder.yudao.module.product.controller.admin.property.vo.PropertyUpdateReqVO;
import cn.iocoder.yudao.module.product.convert.property.PropertyConvert;
import cn.iocoder.yudao.module.product.dal.dataobject.property.PropertyDO;
import cn.iocoder.yudao.module.product.dal.mysql.property.PropertyMapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import cn.iocoder.yudao.module.product.controller.admin.property.vo.*;
import cn.iocoder.yudao.module.product.dal.dataobject.property.PropertyDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.product.convert.property.PropertyConvert;
import cn.iocoder.yudao.module.product.dal.mysql.property.PropertyMapper;
import javax.annotation.Resource;
import java.util.Collection;
import java.util.List;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.*;
import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.PROPERTY_NOT_EXISTS;
/**
* 规格名称 Service 实现类

View File

@ -1,19 +1,22 @@
package cn.iocoder.yudao.module.product.service.propertyvalue;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValueCreateReqVO;
import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValueExportReqVO;
import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValuePageReqVO;
import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.PropertyValueUpdateReqVO;
import cn.iocoder.yudao.module.product.convert.propertyvalue.PropertyValueConvert;
import cn.iocoder.yudao.module.product.dal.dataobject.propertyvalue.PropertyValueDO;
import cn.iocoder.yudao.module.product.dal.mysql.propertyvalue.PropertyValueMapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import cn.iocoder.yudao.module.product.controller.admin.propertyvalue.vo.*;
import cn.iocoder.yudao.module.product.dal.dataobject.propertyvalue.PropertyValueDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.product.convert.propertyvalue.PropertyValueConvert;
import cn.iocoder.yudao.module.product.dal.mysql.propertyvalue.PropertyValueMapper;
import javax.annotation.Resource;
import java.util.Collection;
import java.util.List;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.*;
import static cn.iocoder.yudao.module.product.enums.ErrorCodeConstants.PROPERTY_VALUE_NOT_EXISTS;
/**
* 规格值 Service 实现类
@ -27,6 +30,8 @@ public class PropertyValueServiceImpl implements PropertyValueService {
@Resource
private PropertyValueMapper propertyValueMapper;
// TODO @franky这个合并到 property 他们本身是在一起的哈基本不存在只查询规格而不查询规格值
@Override
public Integer createPropertyValue(PropertyValueCreateReqVO createReqVO) {
// 插入