package cn.pluss.platform.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * [设备展示表]
 * </p>
 *
 * @author bzg
 * @since 2020-11-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tb_pluss_device_detail")
public class DeviceDetail implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;


    /**
     * 对应商品表的code
     */
    @TableField(value = "code",whereStrategy = FieldStrategy.NOT_EMPTY)
    private String code;

    @TableField(exist = false)
    private String codeDesc;


    /**
     * 设备唯一识别码
     */
    @TableField(value = "venderCode",whereStrategy = FieldStrategy.NOT_EMPTY)
    private String venderCode;


    @TableField("deviceLogo")
    private String deviceLogo;


    /**
     * 厂家名称
     */
    @TableField(value = "venderName",whereStrategy = FieldStrategy.NOT_EMPTY,condition = SqlCondition.LIKE)
    private String venderName;


    /**
     * 厂家型号
     */
    @TableField(value = "venderModel",whereStrategy = FieldStrategy.NOT_EMPTY)
    private String venderModel;


    /**
     * 通道机器型号
     */
    @TableField(value = "aisleModel",whereStrategy = FieldStrategy.NOT_EMPTY)
    private String aisleModel;


    /**
     * 设备类型
     */
    @TableField(value = "type",whereStrategy = FieldStrategy.NOT_EMPTY)
    private String type;

    /**
     * 编码名称, 保存新的版本时候需要传名称
     */
    @TableField(exist = false)
    private String typeDesc;

    /**
     * 库存分组
     */
    @TableField(value = "groupNo",whereStrategy = FieldStrategy.NOT_EMPTY)
    private String groupNo;

    /**
     * 库存分组名称
     */
    @TableField(exist = false)
    private String groupNoDesc;

    /**
     * 简介
     */
    @TableField("introDesc")
    private String introDesc;

    /**
     * 排序
     */
    @TableField("seq")
    private Integer seq;


    /**
     * 状态   是否显示  0 不显示  1 显示
     */
    @TableField(value = "status",whereStrategy = FieldStrategy.NOT_EMPTY)
    private Integer status;


    /**
     * 创建时间
     */
    @TableField("createDt")
    private Date createDt;

    /**
     * 创建时间 开始时间
     */
    @TableField(exist = false, condition = "createDt &gt; #{%s}")
    private Date createDtStart;

    /**
     * 创建时间 截止时间
     */
    @TableField(exist = false, condition = "createDt &lt; #{%s}")
    private Date createDtEnd;

    /**
     * 单组数量
     */
    @TableField("size")
    private Integer size;

    /**
     * 单价
     */
    @TableField("unitPrice")
    private BigDecimal unitPrice;

    /**
     * 批发价
     */
    private BigDecimal wholesalePrice;

    /**
     * 批发价最低数量
     */
    private Integer wholesaleMinNum;

    @TableField("detail")
    private String detail;

    @TableField(exist = false)
    private BigDecimal weight;
}