package com.fizz.business.domain;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@TableName("crm_pdi_plan")
@Schema(description = "钢卷计划信息表")
public class CrmPdiPlan implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId
    @Schema(description = "主键ID")
    private Long id;

    @Schema(description = "顺序号")
    private Integer seqid;

    @Schema(description = "钢卷号")
    private String coilid;

    @Schema(description = "机组号")
    private String unitCode;

    @Schema(description = "虚卷标识")
    private Integer dummyCoilFlag;

    @Schema(description = "状态")
    private String status;

    @Schema(description = "计划ID")
    private String planid;

    @Schema(description = "计划类型")
    private String planType;

    @Schema(description = "屈服点")
    private BigDecimal yieldPoint;

    @Schema(description = "入口重量(t)")
    private BigDecimal entryWeight;

    @Schema(description = "入口厚度(mm)")
    private BigDecimal entryThick;

    @Schema(description = "入口宽度(mm)")
    private BigDecimal entryWidth;

    @Schema(description = "入口长度(mm)")
    private BigDecimal entryLength;

    @Schema(description = "入口外径(mm)")
    private BigDecimal entryOuterDiameter;

    @Schema(description = "入口内径(mm)")
    private BigDecimal entryInnerDiameter;

    @Schema(description = "出口内径(mm)")
    private BigDecimal exitInnerDiameter;

    @Schema(description = "钢种")
    private String steelGrade;

    @Schema(description = "出口卷号")
    private String exitCoilid;

    @Schema(description = "张力平整标识")
    private Integer tlvFlag;

    @Schema(description = "订单号")
    private String orderNo;

    @Schema(description = "客户代码")
    private String custommerCode;

    @Schema(description = "订单厚度(mm)")
    private BigDecimal orderThick;

    @Schema(description = "订单宽度(mm)")
    private BigDecimal orderWidth;

    @Schema(description = "订单长度下限(mm)")
    private BigDecimal orderLenLow;

    @Schema(description = "订单长度上限(mm)")
    private BigDecimal orderLenUp;

    @Schema(description = "订单重量(t)")
    private BigDecimal orderWt;

    @Schema(description = "订单重量下限(t)")
    private BigDecimal orderWtLow;

    @Schema(description = "订单重量上限(t)")
    private BigDecimal orderWtUp;

    @Schema(description = "订单镀层上")
    private BigDecimal orderMetCoatTop;

    @Schema(description = "订单镀层下")
    private BigDecimal orderMetCoatBot;

    @Schema(description = "最终用途")
    private String finalUse;

    @Schema(description = "热卷代码")
    private String hotCoilCode;

    @Schema(description = "出口目标长度(mm)")
    private BigDecimal exitLengthTar;

    @Schema(description = "出口长度公差最大值(mm)")
    private BigDecimal exitLengthTolMax;

    @Schema(description = "出口长度公差最小值(mm)")
    private BigDecimal exitLengthTolMin;

    @Schema(description = "出口目标厚度(mm)")
    private BigDecimal exitThickTar;

    @Schema(description = "出口厚度公差最大值(mm)")
    private BigDecimal exitThickTolMax;

    @Schema(description = "出口厚度公差最小值(mm)")
    private BigDecimal exitThickTolMin;

    @Schema(description = "出口目标宽度(mm)")
    private BigDecimal exitWidthTar;

    @Schema(description = "出口宽度公差最大值(mm)")
    private BigDecimal exitWidthTolMax;

    @Schema(description = "出口宽度公差最小值(mm)")
    private BigDecimal exitWidthTolMin;

    @Schema(description = "下道全流程积压代码")
    private String nextWholeBacklogCode;

    @Schema(description = "上道全流程积压代码")
    private String prevWholeBacklogCode;

    @Schema(description = "出口重量模式")
    private String exitWtMode;

    @Schema(description = "分卷数量")
    private Integer splitNum;

    @Schema(description = "出口重量1")
    private BigDecimal exitWeight1;

    @Schema(description = "出口重量2")
    private BigDecimal exitWeight2;

    @Schema(description = "出口重量3")
    private BigDecimal exitWeight3;

    @Schema(description = "出口重量4")
    private BigDecimal exitWeight4;

    @Schema(description = "出口重量5")
    private BigDecimal exitWeight5;

    @Schema(description = "出口重量6")
    private BigDecimal exitWeight6;

    @Schema(description = "头部取样模式")
    private String headSampleMode;

    @Schema(description = "头部取样位置")
    private String headSamplePosition;

    @Schema(description = "头部取样长度(mm)")
    private BigDecimal headSampleLength;

    @Schema(description = "头部取样地点")
    private String headSamplePlace;

    @Schema(description = "头部取样数量")
    private Integer headSampleNum;

    @Schema(description = "尾部取样模式")
    private String tailSampleMode;

    @Schema(description = "尾部取样位置")
    private String tailSamplePosition;

    @Schema(description = "尾部取样长度(mm)")
    private BigDecimal tailSampleLength;

    @Schema(description = "尾部取样地点")
    private String tailSamplePlace;

    @Schema(description = "尾部取样数量")
    private Integer tailSampleNum;

    @Schema(description = "时间戳")
    private LocalDateTime timestamp;

    @Schema(description = "上线时间")
    private LocalDateTime onlineDate;

    @Schema(description = "开始时间")
    private LocalDateTime startDate;

    @Schema(description = "结束时间")
    private LocalDateTime endDate;

    @Schema(description = "进炉时间")
    private LocalDateTime furInDate;

    @Schema(description = "出炉时间")
    private LocalDateTime furOutDate;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    @Schema(description = "更新时间")
    private LocalDateTime updateTime;

    @Schema(description = "副面")
    private String surfaceVice;

    @Schema(description = "焊缝代码")
    private String weldCode;

    @Schema(description = "SPM标识")
    private Integer spmFlag;

    @Schema(description = "SPM延伸率(%)")
    private BigDecimal spmElongation;

    @Schema(description = "SPM轧制力")
    private BigDecimal spmRollforce;

    @Schema(description = "SPM工艺类型")
    private String spmProcessType;

    @Schema(description = "SPM控制模式")
    private String spmControlMode;

    @Schema(description = "SPM弯曲力")
    private BigDecimal spmBendingForce;

    @Schema(description = "SPM咬入辊目")
    private BigDecimal spmCrimpingRollMesh;

    @Schema(description = "SPM精轧辊目")
    private BigDecimal spmBillyRollMesh;

    @Schema(description = "切边标识")
    private Integer trimFlag;

    @Schema(description = "张力平整模式")
    private String tlvMode;

    @Schema(description = "张力平整延伸率(%)")
    private BigDecimal tlvElongation;

    @Schema(description = "钝化标识")
    private Integer chromating;

    @Schema(description = "镀层代码")
    private String coatingCode;

    @Schema(description = "涂油标识")
    private Integer oilingFlag;

    @Schema(description = "涂油类型")
    private String oilingType;

    @Schema(description = "涂油上")
    private BigDecimal oilingTop;

    @Schema(description = "涂油下")
    private BigDecimal oilingBottom;

    @Schema(description = "热循环")
    private String heatCycle;

    @Schema(description = "镀层选择")
    private String coatingSelection;

    @Schema(description = "镀层类型")
    private String coatingType;

    @Schema(description = "化学处理模式")
    private String chemTreatMode;

    @Schema(description = "目标重量上")
    private BigDecimal aimWeightTop;

    @Schema(description = "目标重量下")
    private BigDecimal aimWeightBottom;

    @Schema(description = "最大公差重量上")
    private BigDecimal maxTolWeightTop;

    @Schema(description = "最大公差重量下")
    private BigDecimal maxTolWeightBottom;

    @Schema(description = "头端测厚长度(mm)")
    private BigDecimal headendGaugeLength;

    @Schema(description = "尾端测厚长度(mm)")
    private BigDecimal tailendGaugeLength;

    @Schema(description = "原卷号")
    private String originCoilid;
}
