package com.sw.mes.fb.turnstore.entity;

import lombok.Data;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

@Data
@Entity
@Table(name = "warehousing_statistics_info")
@DynamicUpdate
@DynamicInsert
public class WarehousingStatistics {

    @Id
    private Integer id;

    /**
     * 编号(方棒)
     */
    @Column(length = 50)
    private String sectionNo;

    // 一体机编号
    @Column(length = 40)
    private String deviceNo;

    // 厂区
    @Column(length = 40)
    private String factoryName;

    /**
     * 规格
     */
    @Column(length=100)
    private String specification;

    /**
     * 导电型号
     */
    @Column(length=100)
    private String conductionType;

    /**
     * 最终产品等级
     */
    @Column(length=50)
    private String productLevel;

    /**
     * 物料编码
     */
    @Column(length=80)
    private String materialNumber;

    // 方棒计划类型
    @Column(length = 20)
    private String planOrderType;

    // 计划订单号
    @Column(length = 20)
    private String planOrderNo;

    /**
     * 产品去向
     */
    @Column(length=40)
    private String hasGone;

    /**
     * 托号
     */
    @Column(length = 50)
    private String trayNo;

    /**
     * 方棒入库时间
     */
    @Column(length = 19)
    @Temporal(TemporalType.TIMESTAMP)
    private Date operationTime;

    /**
     * 确认时间
     */
    @Column(length = 19)
    @Temporal(TemporalType.TIMESTAMP)
    private Date confirmTime;

    /**
     * 入库状态
     */
    @Column(length = 3)
    private Integer state;

    /**
     * 方棒等级/检验入库类别
     */
    @Column(length=50)
    private String productLevelFb;

    /**
     * 检验类型
     */
    @Column(length=100)
    private String checkoutName;

    /**
     * 方棒长度
     */
    @Column(length=19)
    private BigDecimal length;

    /**
     * 直径max
     */
    @Column(length=19)
    private BigDecimal diameterMax;

    /**
     * 直径min
     */
    @Column(length=19)
    private BigDecimal diameterMin;

    /**
     * 边距max
     */
    @Column(length=19)
    private BigDecimal sideLengthMax;

    /**
     * 边距min
     */
    @Column(length=19)
    private BigDecimal sideLengthMin;

    /**
     * 弧宽max
     */
    @Column(length=19)
    private BigDecimal projectionMax;

    /**
     * 弧宽min
     */
    @Column(length=19)
    private BigDecimal projectionMin;

    /**
     * 崩边扣减上
     */
    @Column(length=19)
    private BigDecimal collapseLossSh;

    /**
     * 崩边扣减中
     */
    @Column(length=19)
    private BigDecimal collapseLossZh;

    /**
     * 崩边扣减下
     */
    @Column(length=19)
    private BigDecimal collapseLossXia;

    /**
     * 方棒崩边(mm)崩边扣减缺长度
     */
    @Column(length=19)
    private BigDecimal collapseLoss;

    /**
     * 有效切片长度
     */
    @Column(length=19)
    private BigDecimal effectiveLength;
    /**
     * 方棒称重
     */
    @Column(length=19)
    private BigDecimal weight;
    /**
     * 方棒理论重量
     */
    @Column(length=19)
    private BigDecimal theoryWeightFb;
    /**
     * 方棒备注
     */
    @Column(length=2000)
    private String squareRodRemark;
    /**
     * 拼数
     */
    @Column(length=10)
    private Integer sticksCount;

    /**
     * 拼棒总长(mm)
     */
    @Column(length=19)
    private BigDecimal spellBarLength;
    /**
     * 划痕长度(mm)
     */
    @Column(length=19)
    private BigDecimal scratch;
    /**
     * 线痕长度(mm)
     */
    @Column(length=19)
    private BigDecimal lineScratch;

    /**
     * 未磨到长度(mm)
     */
    @Column(length=19)
    private BigDecimal noFriction;

    /**
     * 倒角亮点
     */
    @Column(length = 19)
    private BigDecimal wheelHighLights;
    /**
     * 砂轮印
     */
    @Column(length=19)
    private BigDecimal wheelMark;

    /**
     * 斜面扣减(mm)  新增 2022-08-09
     */
    @Column(length=19)
    private BigDecimal bevelDeduction;

    /**
     * 粗糙度异常(mm)  新增 2022-08-09
     */
    @Column(length=19)
    private BigDecimal roughnessAbnormality;

    /**
     * 尺寸异常
     */
    @Column(length=19)
    private BigDecimal sizeException;

}
