package com.sy.coinage.workshop.model;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;

import com.alibaba.fastjson2.annotation.JSONField;

/**
 * -实体类
 */
@Data
@EqualsAndHashCode(callSuper = false)

@TableName("rfid_workshop_outbound_detail")
@ApiModel(value = "对象", description = "")
public class WorkshopOutboundDetail implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * -主键 ID -10
     */
    @ApiModelProperty(value = "主键 ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * -出库单ID,对应outbound表中ID -10
     */
    @ApiModelProperty(value = "出库单ID,对应outbound表中ID")
    @TableField(value = "out_id")
    private Integer outId;
    /**
     * -EPC码，唯一 -12
     */
    @ApiModelProperty(value = "EPC码，唯一")
    @TableField(value = "rfid")
    private String rfid;
    /**
     * -产品编号 -20
     */
    @ApiModelProperty(value = "产品编号")
    @TableField(value = "serial_number")
    private String serialNumber;
    /**
     * -皮重（kg） -10
     */
    @ApiModelProperty(value = "皮重（kg）")
    @TableField(value = "tare_weight")
    private Double tareWeight;
    /**
     * -毛重（kg） -10
     */
    @ApiModelProperty(value = "毛重（kg）")
    @TableField(value = "gross_weight")
    private Double grossWeight;
    /**
     * -净重（kg） -10
     */
    @ApiModelProperty(value = "净重（kg）")
    @TableField(value = "net_weight")
    private Double netWeight;
    /**
     * -将rfid对应的冠字号范围，拼装成字符串，保存在此字端，用于页面展示 -100
     */
    @ApiModelProperty(value = "将rfid对应的冠字号范围，拼装成字符串，保存在此字端，用于页面展示")
    @TableField(value = "crown_between_str")
    private String crownBetweenStr;
    /**
     * -冠字号范围：@开头的表示冠字号段 #开头的表示各个单独的冠字号（eg:@003-4970,003-5000;）(eg:#003-0005,003-0007) -100
     */
    @ApiModelProperty(value = "冠字号范围：@开头的表示冠字号段 #开头的表示各个单独的冠字号（eg:@003-4970,003-5000;）(eg:#003-0005,003-0007)")
    @TableField(value = "crown_between")
    private String crownBetween;
    /**
     * -备注 -100
     */
    @ApiModelProperty(value = "备注")
    @TableField(value = "remark")
    private String remark;
    /**
     * -临时库，主库一，主库二 -10
     */
    @ApiModelProperty(value = "临时库，主库一，主库二")
    @TableField(value = "ware_id")
    private Integer wareId;
    /**
     * -仓库名称（实际存储） -20
     */
    @ApiModelProperty(value = "仓库名称（实际存储）")
    @TableField(value = "ware_cn")
    private String wareCn;
    /**
     * -库位ID -10
     */
    @ApiModelProperty(value = "库位ID ")
    @TableField(value = "area_id")
    private Integer areaId;
    /**
     * -仓库库位（实际存储）名称 -20
     */
    @ApiModelProperty(value = "仓库库位（实际存储）名称 ")
    @TableField(value = "area_cn")
    private String areaCn;
    /**
     * -称重人ID -10
     */
    @ApiModelProperty(value = "称重人ID")
    @TableField(value = "weightor_id")
    private Integer weightorId;
    /**
     * -称重人 -20
     */
    @ApiModelProperty(value = "称重人")
    @TableField(value = "weightor")
    private String weightor;
    /**
     * -当解缴单：车间出库日期；当返检单：主库出库时间 -19
     */
    @ApiModelProperty(value = "当解缴单：车间出库日期；当返检单：主库出库时间")
    @TableField(value = "out_time")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date outTime;
    /**
     * -in_time -19
     */
    @ApiModelProperty(value = "in_time")
    @TableField(value = "in_time")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date inTime;

    @ApiModelProperty(value = "部门名称")
    @TableField(select = false, exist = false)
    private String dept;

    @ApiModelProperty(value = "品名")
    @TableField(select = false, exist = false)
    private String securities;

    @ApiModelProperty(value = "创建人名称")
    @TableField(value = "create_by", select = false, exist = false)
    private String createBy;

    @ApiModelProperty(value = "称重日期")
    @TableField(value = "weight_date", select = false, exist = false)
    @JSONField(format = "yyyy-MM-dd")
    private Date weightDate;

    @ApiModelProperty(value = "称重时间 hh:mm:ss")
    @TableField(value = "weight_time", select = false, exist = false)
    private String weightTime;

    @ApiModelProperty(value = "复核人")
    @TableField(value = "checker", select = false, exist = false)
    private String checker;

    @ApiModelProperty(value = "单据类型： 1: 解缴单  2: 返检单")
    @TableField(value = "order_type", select = false, exist = false)
    private Integer orderType;

}
