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")
@ApiModel(value = "车间出库单据（库房解缴|返检单据|）对象", description = "车间出库单据（库房解缴|返检单据|）")
public class WorkshopOutbound implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * -主键ID -10
     */
    @ApiModelProperty(value = "主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "所属部门ID")
    @TableField(value = "dept_id")
    private Integer deptId;

    @ApiModelProperty(value = "所属部门名称")
    @TableField(value = "dept")
    private String dept;
    /**
     * -单据类型： 1: 解缴单 2: 返检单 -10
     */
    @ApiModelProperty(value = "单据类型： 1: 解缴单  2: 返检单")
    @TableField(value = "order_type")
    private Integer orderType;
    /**
     * -车间出库单单号 -20
     */
    @ApiModelProperty(value = "车间出库单单号")
    @TableField(value = "order_no")
    private String orderNo;
    /**
     * -品名id -10
     */
    @ApiModelProperty(value = "品名id")
    @TableField(value = "securities_id")
    private Integer securitiesId;
    /**
     * -品名 -60
     */
    @ApiModelProperty(value = "品名")
    @TableField(value = "securities")
    private String securities;
    /**
     * -实际拍数（由于仓位不同，实际手持端可多次修改，与计划拍数相等后，该条目不再显示） -10
     */
    @ApiModelProperty(value = "实际拍数（由于仓位不同，实际手持端可多次修改，与计划拍数相等后，该条目不再显示）")
    @TableField(value = "real_num")
    private Integer realNum;
    /**
     * -计划拍数（车间出库单初始值） -10
     */
    @ApiModelProperty(value = "计划拍数（车间出库单初始值）")
    @TableField(value = "plan_num")
    private Integer planNum;
    /**
     * -创建日期 -19
     */
    @ApiModelProperty(value = "创建日期")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    @JSONField(format = "yyyy-MM-dd")
    private Date createTime;
    /**
     * -合计箱数 -10
     */
    @ApiModelProperty(value = "合计箱数")
    @TableField(value = "total_box_amount")
    private Integer totalBoxAmount;
    /**
     * -合计枚数 -10
     */
    @ApiModelProperty(value = "合计枚数")
    @TableField(value = "total_amount")
    private Integer totalAmount;
    /**
     * -拍最大净重 -22
     */
    @ApiModelProperty(value = "拍最大净重")
    @TableField(value = "max_net_weight")
    private Double maxNetWeight;
    /**
     * -拍最小净重 -22
     */
    @ApiModelProperty(value = "拍最小净重")
    @TableField(value = "min_net_weight")
    private Double minNetWeight;
    /**
     * -创建人ID（付出人） -10
     */
    @ApiModelProperty(value = "创建人ID（付出人）")
    @TableField(value = "create_id")
    private Integer createId;
    /**
     * -创建人名称 -20
     */
    @ApiModelProperty(value = "创建人名称")
    @TableField(value = "create_by")
    private String createBy;
    /**
     * -审核人ID（付出人2） -10
     */
    @ApiModelProperty(value = "审核人ID（付出人2）")
    @TableField(value = "check_id")
    private Integer checkId;
    /**
     * -付出人名称（审核人） -20
     */
    @ApiModelProperty(value = "付出人名称（审核人）")
    @TableField(value = "checker")
    private String checker;
    /**
     * -收入人ID（收入人1） -10
     */
    @ApiModelProperty(value = "收入人ID（收入人1）")
    @TableField(value = "receiver_id")
    private Integer receiverId;
    /**
     * -收入人姓名 -20
     */
    @ApiModelProperty(value = "收入人姓名")
    @TableField(value = "receiver")
    private String receiver;
    /**
     * -收入复核人ID -10
     */
    @ApiModelProperty(value = "收入复核人ID")
    @TableField(value = "receiver_check_id")
    private Integer receiverCheckId;
    /**
     * -收入复核人（收入人2） -20
     */
    @ApiModelProperty(value = "收入复核人（收入人2）")
    @TableField(value = "receiver_check")
    private String receiverCheck;
    /**
     * -车间入库确认的拍子数量 -10
     */
    @ApiModelProperty(value = "车间入库确认的拍子数量")
    @TableField(value = "shop_real_num")
    private Integer shopRealNum;
    /**
     * -状态:1.新建 2.已出库 3.已入库 -10
     */
    @ApiModelProperty(value = "状态:1.新建 2.已出库 3.已入库")
    @TableField(value = "status")
    private Integer status;
}
