关键是 属性只和产品类型关联
并,抽象出来一个[属性值]的概念
public class Category {
Category parent; // 父分类
String name; // 分类名称
String orderNo; // 排序
List<Property> properties;//这个分类可以选的属性
}
public class Property {
String name; // 属性名称
String valueType; // 取值类型(1:单选 2:多选 3:输入)
String necessaryFlag; // 是否必须项(0:否 1:是 默认0)
String orderNo; // 排序
}
public class PropertyValue {
String value; // 属性值
Property property;//属性名
}
public class Product {
Category category; // 分类
String name; // 名称
String status; // 状态(1新建2在架3下架)
Integer displayPrice; // 展示价格
int sellNum; // 商品销量
String collectNum; // 收藏数量
Integer viewNum; //浏览量
}
商品↑ 只是对用户展示的概念,sku↓才是我们实际管理的单位,是一切的核心
public class Sku {
Product product;
Integer stock; // 库存
Integer purchasePrice;//进价
Integer price;//售价
List<PropertyValue> propertyValues;
}