package com.oying.modules.pc.product.domain;
|
|
import lombok.Data;
|
import cn.hutool.core.bean.BeanUtil;
|
import io.swagger.annotations.ApiModelProperty;
|
import cn.hutool.core.bean.copier.CopyOptions;
|
import java.sql.Timestamp;
|
import java.math.BigDecimal;
|
import javax.validation.constraints.NotBlank;
|
import javax.validation.constraints.NotNull;
|
import java.io.Serializable;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
|
/**
|
* @description /
|
* @author lzp
|
* @date 2025-04-30
|
**/
|
@Data
|
@TableName("pc_product")
|
public class Product implements Serializable {
|
|
@TableId(value = "product_id")
|
@ApiModelProperty(value = "ID")
|
private Long productId;
|
|
@NotBlank
|
@ApiModelProperty(value = "店铺ID")
|
private Long storeId;
|
|
@NotBlank
|
@ApiModelProperty(value = "条形码")
|
private String barcode;
|
|
@NotBlank
|
@ApiModelProperty(value = "商品名称")
|
private String name;
|
|
@NotBlank
|
@ApiModelProperty(value = "商品标题")
|
private String title;
|
|
@NotNull
|
@ApiModelProperty(value = "一级分类ID")
|
private Long categoryId;
|
|
@NotNull
|
@ApiModelProperty(value = "二级分类ID")
|
private Long secondCategoryId;
|
|
@NotNull
|
@ApiModelProperty(value = "状态:1000-草稿 1001上架 1002下架")
|
private Integer status;
|
|
@NotBlank
|
@ApiModelProperty(value = "主图片")
|
private String mainImage;
|
|
@ApiModelProperty(value = "详情图片")
|
private String detailImage;
|
|
@ApiModelProperty(value = "商品描述")
|
private String description;
|
|
@NotNull
|
@ApiModelProperty(value = "销售价格")
|
private BigDecimal price;
|
|
@NotNull
|
@ApiModelProperty(value = "库存数量")
|
private Integer stockQuantity;
|
|
@NotNull
|
@ApiModelProperty(value = "起售数量")
|
private Integer minPurchaseQuantity;
|
|
@ApiModelProperty(value = "预警库存")
|
private Integer warnStock;
|
|
@ApiModelProperty(value = "重量(单位:g)")
|
private Integer weight;
|
|
@ApiModelProperty(value = "宽度(单位:厘米)")
|
private Integer width;
|
|
@ApiModelProperty(value = "长度(单位:厘米)")
|
private Integer length;
|
|
@ApiModelProperty(value = "高度(单位:厘米)")
|
private Integer height;
|
|
@NotNull
|
@ApiModelProperty(value = "是否删除")
|
private Integer deletedFlag;
|
|
@NotNull
|
@ApiModelProperty(value = "创建人")
|
private Long createBy;
|
|
@NotNull
|
@ApiModelProperty(value = "创建时间")
|
private Timestamp createTime;
|
|
@NotNull
|
@ApiModelProperty(value = "修改人")
|
private Long updateBy;
|
|
@NotNull
|
@ApiModelProperty(value = "修改时间")
|
private Timestamp updateTime;
|
|
@NotNull
|
@ApiModelProperty(value = "版本号")
|
private Long version;
|
|
public void copy(Product source){
|
BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
|
}
|
}
|