文档
测试

商品发布

POST
/admin/spu/save

请求参数

参数名
类型
描述
必填
spuId
int
商品id
必填
spuName
string
商品名称
必填

说明 / 示例

```json /** * 商品id */ private Integer spuId; /** * 商品名称 */ @NotBlank(message = "商名称不能为空!") private String spuName; /** * 商品描述 */ @NotBlank(message = "商品描述不能为空!") private String spuDesc; /** * 所属分类id */ @NotNull(message = "所属分类不能为空!") private Integer catId; /** * 重量 */ @NotNull(message = "重量不能为空!") private Integer weight; /** * 上架状态[0 - 下架,1 - 上架] */ private Boolean publishStatus; /** * 商品类型1实物商品 2 虚拟商品 */ private String type; /** * 商品图片地址 用来展示 */ @NotNull(message = "商品首图不能为空!") private String imgUrl; /** * 是否开启会员折扣 */ private Boolean memberDiscount; /** * 开售时间 */ @JsonFormat(pattern = DatePattern.NORM_DATETIME_PATTERN, timezone = "GMT+8") private Date saleTime; /** * 起售数量 */ private Integer saleMin; /** * 规格列表 */ @Valid @NotEmpty(message = "规格不能为空!") private List<ProductSkuSaveVo> skuList; /** * 基本属性列表 */ @Valid private List<ProductAttrValueSaveVo> baseAttrList; /** * 销售属性attrId集合用来校验 */ @NotEmpty(message = "商品销售属性信息不能为空!") private List<ProductSaleAttrVo> saleAttrList; /** * 商户id */ @NotNull(message = "商户id不能为空!") private Integer merchantId; /** * 商品图集 */ private List<ProductImagesSaveVo> imageList; /** * 虚拟商品输入框配置信息 */ private ProductInputRulesConfigDto inputRules; ``` 基本属性格式 ```json @Data public class ProductAttrValueSaveVo { /** * attr_id */ @NotNull(message = "基本属性的属性id不能为空!") private Integer attrId; /** * 属性值 */ @NotBlank(message = "基本属性属性值不能为空!") private String attrValue; /** * 顺序 */ private Integer attrSort; } ``` 商品规格信息参数 ```json /** * sku名称 */ private String skuName; /** * sku介绍描述 */ private String skuDesc; /** * 默认图片 */ private String skuImg; /** * 标题 */ private String skuTitle; /** * 价格 分 */ @NotNull(message = "商品价格不能为空!") private Integer currentPrice; /** * 商品库存 */ @NotNull(message = "库存不能为空!") @Min(value = 0, message = "库存最小为0!") private Integer inventory; /** * 商品原价 划线价 */ private Integer originPrice; /** * 成本价 */ private Integer costPrice; /** * 商品规格的销售属性 */ @Valid private List<ProductSkuAttrSaveVo> attrList; ``` 规格的销售属性 ```json /** * 属性id */ @NotNull(message = "属性id不能为空!") private Integer attrId; /** * 属性值 */ @NotBlank(message = "属性值不能为空!") private String attrValue; /** * 第三方虚拟商品信息 */ private ThirdSkuInfoDto thirdSkuInfo; ``` 商品销售属性格式 ```json ProductSaleAttrVo /** * 销售属性id */ private Integer saleAttrId; /** * 销售属性值列表 */ private Set<String> saleAttrValueList; ``` 商品图片列表 ```json /** * 排序 */ private Integer imgSort; /** * 图片地址 */ @NotBlank(message = "图片地址不能为空!") @Pattern(regexp = "^((ht|f)tps?):\\/\\/([\\w-]+(\\.[\\w-]+)*\\/?)+(\\?([\\w\\-\\.,@?^=%&:\\/~\\+#]*)+)?$", message = "图片地址错误!") private String imgUrl; ``` 虚拟商品规格第三方信息 ```json public class ThirdSkuInfoDto { /** * 第三方商品id */ private Integer productId; /** * 规格代码 */ private String standardCode; /** * 请求类型 1卡密 2 直充 */ private String requestType; } ``` 虚拟商品输入框配置信息 ```json /** * 规则详情列表 */ private List<ProductInputRuleDetailDto> rules; /** * 是否隐藏充值账号 */ private Boolean isHidden; ``` ```json @Data public class ProductInputRuleDetailDto { /** * 输入项名称 */ private String name; /** * 输入项属性 */ private String prop; /** * 输入项列表 */ private String type; /** * 长度限制 */ private String max; /** * 校验正则 */ private String pattern; } ```