package com.xisc.pm.domain.entity;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.xisc.pm.infra.constant.Constants;
import com.xisc.pm.infra.util.Utils;
import io.choerodon.mybatis.annotation.ModifyAudit;
import io.choerodon.mybatis.annotation.VersionAudit;
import io.choerodon.mybatis.domain.AuditDomain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;


/**
 * 命令大板表(PmCmdLargePlt)实体类
 *
 * @author 纪文桃 wentao.ji01@hand-china.com
 * @since 2024-08-20 15:20:41
 */

@Getter
@Setter
@ApiModel("命令大板表")
@VersionAudit
@ModifyAudit
@JsonInclude(value = JsonInclude.Include.NON_NULL)
@Table(name = "PM_CMD_LARGE_PLT")
public class PmCmdLargePlt extends AuditDomain implements Serializable {
    private static final long serialVersionUID = 797551254429409672L;

    public static final String FIELD_PM_CMD_LARGE_PLT_ID = "pmCmdLargePltId";
    public static final String FIELD_PONO_SLAB_NO = "ponoSlabNo";
    public static final String FIELD_TMP_SLAB_NO = "tmpSlabNo";
    public static final String FIELD_PD_BACKLOG_SEQ = "pdBacklogSeq";
    public static final String FIELD_PD_BACKLOG_CODE = "pdBacklogCode";
    public static final String FIELD_PLATE_NO = "plateNo";
    public static final String FIELD_SLAB_NO = "slabNo";
    public static final String FIELD_SLAB_DIV_NO = "slabDivNo";
    public static final String FIELD_PD_STATUS_HP = "pdStatusHp";
    public static final String FIELD_FORM_PLATE_MODE = "formPlateMode";
    public static final String FIELD_PICK_MODE_LEN_DIR = "pickModeLenDir";
    public static final String FIELD_PICK_MODE_WID_DIR = "pickModeWidDir";
    public static final String FIELD_FUR_TYPE = "furType";
    public static final String FIELD_AUTO_MANUAL_FLAG = "autoManualFlag";
    public static final String FIELD_ORDER_REMAIN_DIV = "orderRemainDiv";
    public static final String FIELD_MAT_DESIGN_KIND = "matDesignKind";
    public static final String FIELD_ORDER_NUM_IN_PLATE = "orderNumInPlate";
    public static final String FIELD_TOT_SMALL_PLATE_NUM = "totSmallPlateNum";
    public static final String FIELD_PROD_CODE_HP = "prodCodeHp";
    public static final String FIELD_AD_TYPE_CODE = "adTypeCode";
    public static final String FIELD_AD_MODE_CODE = "adModeCode";
    public static final String FIELD_ULT_CODE = "ultCode";
    public static final String FIELD_UOE_FLAG = "uoeFlag";
    public static final String FIELD_COOL_CODE = "coolCode";
    public static final String FIELD_CTRL_ROLL_CODE = "ctrlRollCode";
    public static final String FIELD_WITH_SIDE_FLAG = "withSideFlag";
    public static final String FIELD_CUT_MODE_CODE = "cutModeCode";
    public static final String FIELD_HEAD_CUT = "headCut";
    public static final String FIELD_TAIL_CUT = "tailCut";
    public static final String FIELD_SG_SIGN = "sgSign";
    public static final String FIELD_ST_NO = "stNo";
    public static final String FIELD_TWO_ROLL_INTERIM_FLAG = "twoRollInterimFlag";
    public static final String FIELD_ROLL_AIM_THICK = "rollAimThick";
    public static final String FIELD_ROLL_AIM_WIDTH = "rollAimWidth";
    public static final String FIELD_ROLL_AIM_LEN = "rollAimLen";
    public static final String FIELD_ROLL_THICK_TOL_MAX = "rollThickTolMax";
    public static final String FIELD_ROLL_THICK_TOL_MIN = "rollThickTolMin";
    public static final String FIELD_MAX_ROLL_THICK = "maxRollThick";
    public static final String FIELD_MIN_ROLL_THICK = "minRollThick";
    public static final String FIELD_ORDER1_THICK = "order1Thick";
    public static final String FIELD_COMBINE_PLATE_WIDTH = "combinePlateWidth";
    public static final String FIELD_COMBINE_PLATE_LEN = "combinePlateLen";
    public static final String FIELD_ROLL_WT_HP = "rollWtHp";
    public static final String FIELD_NORM_YIELD = "normYield";
    public static final String FIELD_COMMAND_YIELD = "commandYield";
    public static final String FIELD_ROLL_YIELD = "rollYield";
    public static final String FIELD_EDGER_USE_FLAG = "edgerUseFlag";
    public static final String FIELD_BROAD_MAS_USE_FLAG = "broadMasUseFlag";
    public static final String FIELD_FORM_MAS_USE_FLAG = "formMasUseFlag";
    public static final String FIELD_ROLL_DIRECT_CODE = "rollDirectCode";
    public static final String FIELD_SAMPLE_LEN_HEAD = "sampleLenHead";
    public static final String FIELD_SAMPLE_LEN_TAIL = "sampleLenTail";
    public static final String FIELD_SAMPLE_LEN_MID = "sampleLenMid";
    public static final String FIELD_SAMPLE_LEN_GIVE = "sampleLenGive";
    public static final String FIELD_SAMPLE_LEN = "sampleLen";
    public static final String FIELD_RS_CODE = "rsCode";
    public static final String FIELD_BROAD_FLAG = "broadFlag";
    public static final String FIELD_TAPER_ROLL_THICK1 = "taperRollThick1";
    public static final String FIELD_TAPER_ROLL_THICK_MAX1 = "taperRollThickMax1";
    public static final String FIELD_TAPER_ROLL_THICK_MIN1 = "taperRollThickMin1";
    public static final String FIELD_TAPER_ROLL_THICK2 = "taperRollThick2";
    public static final String FIELD_TAPER_ROLL_THICK_MAX2 = "taperRollThickMax2";
    public static final String FIELD_TAPER_ROLL_THICK_MIN2 = "taperRollThickMin2";
    public static final String FIELD_TAPER_ROLL_THICK3 = "taperRollThick3";
    public static final String FIELD_TAPER_ROLL_THICK_MAX3 = "taperRollThickMax3";
    public static final String FIELD_TAPER_ROLL_THICK_MIN3 = "taperRollThickMin3";
    public static final String FIELD_TAPER_ROLL_WIDTH = "taperRollWidth";
    public static final String FIELD_TAPER_ROLL_LEN1 = "taperRollLen1";
    public static final String FIELD_TAPER_ROLL_LEN2 = "taperRollLen2";
    public static final String FIELD_TAPER_ROLL_LEN3 = "taperRollLen3";
    public static final String FIELD_TAPER_ROLL_LEN4 = "taperRollLen4";
    public static final String FIELD_TAPER_ROLL_LEN5 = "taperRollLen5";
    public static final String FIELD_G_FLAG = "gFlag";
    public static final String FIELD_CS_FLAG = "csFlag";
    public static final String FIELD_DSS_FLAG = "dssFlag";
    public static final String FIELD_SS_FLAG = "ssFlag";
    public static final String FIELD_DS_FLAG = "dsFlag";
    public static final String FIELD_FORM_PLATE_TIME = "formPlateTime";
    public static final String FIELD_OTHER_PLATE_NO1 = "otherPlateNo1";
    public static final String FIELD_OTHER_PLATE_NO2 = "otherPlateNo2";
    public static final String FIELD_OTHER_PLATE_NO3 = "otherPlateNo3";
    public static final String FIELD_OTHER_PLATE_NO4 = "otherPlateNo4";
    public static final String FIELD_PLATE_PRE_PROC1 = "platePreProc1";
    public static final String FIELD_PLATE_PRE_PROC2 = "platePreProc2";
    public static final String FIELD_PLATE_PRE_PROC3 = "platePreProc3";
    public static final String FIELD_PLATE_PRE_PROC4 = "platePreProc4";
    public static final String FIELD_PLATE_PRE_PROC5 = "platePreProc5";
    public static final String FIELD_PLATE_PRE_PROC6 = "platePreProc6";
    public static final String FIELD_PLATE_PRE_PROC7 = "platePreProc7";
    public static final String FIELD_PLATE_PRE_PROC8 = "platePreProc8";
    public static final String FIELD_PLATE_PRE_PROC9 = "platePreProc9";
    public static final String FIELD_PLATE_PRE_PROC10 = "platePreProc10";
    public static final String FIELD_PLATE_PRE_PROC11 = "platePreProc11";
    public static final String FIELD_PLATE_PRE_PROC12 = "platePreProc12";
    public static final String FIELD_PLATE_PRE_PROC13 = "platePreProc13";
    public static final String FIELD_PLATE_PRE_PROC14 = "platePreProc14";
    public static final String FIELD_PLATE_PRE_PROC15 = "platePreProc15";
    public static final String FIELD_PLATE_PRE_PROC16 = "platePreProc16";
    public static final String FIELD_PLATE_PRE_PROC17 = "platePreProc17";
    public static final String FIELD_PLATE_PRE_PROC18 = "platePreProc18";
    public static final String FIELD_PLATE_PRE_PROC19 = "platePreProc19";
    public static final String FIELD_PLATE_PRE_PROC20 = "platePreProc20";
    public static final String FIELD_PLATE_PRE_PROC21 = "platePreProc21";
    public static final String FIELD_PLATE_PRE_PROC22 = "platePreProc22";
    public static final String FIELD_PLATE_PRE_PROC23 = "platePreProc23";
    public static final String FIELD_PLATE_PRE_PROC24 = "platePreProc24";
    public static final String FIELD_PLATE_PRE_PROC25 = "platePreProc25";
    public static final String FIELD_PLATE_PRE_PROC26 = "platePreProc26";
    public static final String FIELD_PLATE_PRE_PROC27 = "platePreProc27";
    public static final String FIELD_PLATE_PRE_PROC28 = "platePreProc28";
    public static final String FIELD_PLATE_PRE_PROC29 = "platePreProc29";
    public static final String FIELD_PLATE_PRE_PROC30 = "platePreProc30";
    public static final String FIELD_PROD_DENSITY = "prodDensity";
    public static final String FIELD_ROLL_PLATE_DEST = "rollPlateDest";
    public static final String FIELD_PLATE_DT_CODE = "plateDtCode";
    public static final String FIELD_TRACE_CODE = "traceCode";
    public static final String FIELD_MIN_CR1_THICK = "minCr1Thick";
    public static final String FIELD_CR1_TEMP_AIM = "cr1TempAim";
    public static final String FIELD_MAX_CR1_TEMP = "maxCr1Temp";
    public static final String FIELD_MIN_CR1_TEMP = "minCr1Temp";
    public static final String FIELD_MIN_PRESS_BEFCR1 = "minPressBefcr1";
    public static final String FIELD_MIN_CR2_THICK = "minCr2Thick";
    public static final String FIELD_CR2_TEMP_AIM = "cr2TempAim";
    public static final String FIELD_MIN_CR2_TEMP = "minCr2Temp";
    public static final String FIELD_MAX_CR2_TEMP = "maxCr2Temp";
    public static final String FIELD_MIN_PRESS_BEFCR2 = "minPressBefcr2";
    public static final String FIELD_AFFT_TEMP_AIM = "afftTempAim";
    public static final String FIELD_MAX_AFFT_TEMP = "maxAfftTemp";
    public static final String FIELD_MIN_AFFT_TEMP = "minAfftTemp";
    public static final String FIELD_MIN_PRESS_LAST = "minPressLast";
    public static final String FIELD_MIDDLE_COOL_MODE = "middleCoolMode";
    public static final String FIELD_MAX_MIDDLE_COOL_SPEED = "maxMiddleCoolSpeed";
    public static final String FIELD_MAX_ACC_WAIT_TIME = "maxAccWaitTime";
    public static final String FIELD_MIN_ACC_WAIT_TIME = "minAccWaitTime";
    public static final String FIELD_FAST_BG_TEMP_AIM = "fastBgTempAim";
    public static final String FIELD_MAX_FAST_BG_TEMP = "maxFastBgTemp";
    public static final String FIELD_MIN_FAST_BG_TEMP = "minFastBgTemp";
    public static final String FIELD_FAST_SP_AIM = "fastSpAim";
    public static final String FIELD_MAX_FAST_SP = "maxFastSp";
    public static final String FIELD_MIN_FAST_SP = "minFastSp";
    public static final String FIELD_FAST_END_TEMP_AIM = "fastEndTempAim";
    public static final String FIELD_MAX_FAST_END_TEMP = "maxFastEndTemp";
    public static final String FIELD_MIN_FAST_END_TEMP = "minFastEndTemp";
    public static final String FIELD_SLOW1_T_BG_TEMP_AIM = "slow1TBgTempAim";
    public static final String FIELD_MAX_SLOW1_BG_TEMP = "maxSlow1BgTemp";
    public static final String FIELD_MIN_SLOW1_BG_TEMP = "minSlow1BgTemp";
    public static final String FIELD_SLOW1_SP_AIM = "slow1SpAim";
    public static final String FIELD_MAX_SLOW1_SP = "maxSlow1Sp";
    public static final String FIELD_MIN_SLOW1_SP = "minSlow1Sp";
    public static final String FIELD_SLOW1_END_TEMP_AIM = "slow1EndTempAim";
    public static final String FIELD_MAX_SLOW1_END_TEMP = "maxSlow1EndTemp";
    public static final String FIELD_MIN_SLOW1_END_TEMP = "minSlow1EndTemp";
    public static final String FIELD_SLOW2_T_BG_TEMP_AIM = "slow2TBgTempAim";
    public static final String FIELD_MAX_SLOW2_BG_TEMP = "maxSlow2BgTemp";
    public static final String FIELD_MIN_SLOW2_BG_TEMP = "minSlow2BgTemp";
    public static final String FIELD_SLOW2_SP_AIM = "slow2SpAim";
    public static final String FIELD_MAX_SLOW2_SP = "maxSlow2Sp";
    public static final String FIELD_MIN_SLOW2_SP = "minSlow2Sp";
    public static final String FIELD_SLOW2_END_TEMP_AIM = "slow2EndTempAim";
    public static final String FIELD_MAX_SLOW2_END_TEMP = "maxSlow2EndTemp";
    public static final String FIELD_MIN_SLOW2_END_TEMP = "minSlow2EndTemp";
    public static final String FIELD_STAND_FLAG = "standFlag";
    public static final String FIELD_EXPAND_QUOT = "expandQuot";
    public static final String FIELD_PLATE_CONVEX_AIM = "plateConvexAim";
    public static final String FIELD_HOT_RECTIFY_FLAG = "hotRectifyFlag";
    public static final String FIELD_HOT_RECTIFY_METHOD_CODE = "hotRectifyMethodCode";
    public static final String FIELD_TS_MAX = "tsMax";
    public static final String FIELD_TS_MIN = "tsMin";
    public static final String FIELD_PRESS_APPOINT = "pressAppoint";
    public static final String FIELD_FINISH_PLAN_DATE = "finishPlanDate";
    public static final String FIELD_SHP_CODE = "shpCode";
    public static final String FIELD_ROLL_PLAN_TYPE = "rollPlanType";
    public static final String FIELD_ULT_DETECT_METHOD_CODE = "ultDetectMethodCode";
    public static final String FIELD_SAMPLE_HEAD_LEN_FREE = "sampleHeadLenFree";
    public static final String FIELD_SAMPLE_TAIL_LEN_FREE = "sampleTailLenFree";
    public static final String FIELD_SAMPLE_HEAD_LEN_PLATE = "sampleHeadLenPlate";
    public static final String FIELD_SAMPLE_TAIL_LEN_PLATE = "sampleTailLenPlate";
    public static final String FIELD_SAMPLE_HEAD_LEN_MB = "sampleHeadLenMb";
    public static final String FIELD_SAMPLE_TAIL_LEN_MB = "sampleTailLenMb";
    public static final String FIELD_ACC_TEMP_START = "accTempStart";
    public static final String FIELD_ACC_TEMP_END = "accTempEnd";
    public static final String FIELD_ACC_COLD_V = "accColdV";
    public static final String FIELD_LOAD_FUR_TEMP = "loadFurTemp";
    public static final String FIELD_HEAT_TEMP = "heatTemp";
    public static final String FIELD_FIRST_THICK = "firstThick";
    public static final String FIELD_FIRST_BG_TEMP = "firstBgTemp";
    public static final String FIELD_FIRST_END_TEMP = "firstEndTemp";
    public static final String FIELD_SCD_THICK = "scdThick";
    public static final String FIELD_SCD_BG_TEMP = "scdBgTemp";
    public static final String FIELD_SCD_END_TEMP = "scdEndTemp";
    public static final String FIELD_MSC_LINE_NO = "mscLineNo";
    public static final String FIELD_TAPER_ROLL_THICK4 = "taperRollThick4";
    public static final String FIELD_TAPER_ROLL_THICK_MAX4 = "taperRollThickMax4";
    public static final String FIELD_TAPER_ROLL_THICK_MIN4 = "taperRollThickMin4";
    public static final String FIELD_TAPER_ROLL_THICK5 = "taperRollThick5";
    public static final String FIELD_TAPER_ROLL_THICK_MAX5 = "taperRollThickMax5";
    public static final String FIELD_TAPER_ROLL_THICK_MIN5 = "taperRollThickMin5";
    public static final String FIELD_TAPER_ROLL_THICK6 = "taperRollThick6";
    public static final String FIELD_TAPER_ROLL_THICK_MAX6 = "taperRollThickMax6";
    public static final String FIELD_TAPER_ROLL_THICK_MIN6 = "taperRollThickMin6";
    public static final String FIELD_TAPER_ROLL_THICK7 = "taperRollThick7";
    public static final String FIELD_TAPER_ROLL_THICK_MAX7 = "taperRollThickMax7";
    public static final String FIELD_TAPER_ROLL_THICK_MIN7 = "taperRollThickMin7";
    public static final String FIELD_TAPER_ROLL_LEN6 = "taperRollLen6";
    public static final String FIELD_TAPER_ROLL_LEN7 = "taperRollLen7";
    public static final String FIELD_TENANT_ID = "tenantId";
    public static final String FIELD_ATTRIBUTE1 = "attribute1";
    public static final String FIELD_ATTRIBUTE2 = "attribute2";
    public static final String FIELD_ATTRIBUTE3 = "attribute3";
    public static final String FIELD_ATTRIBUTE4 = "attribute4";
    public static final String FIELD_ATTRIBUTE5 = "attribute5";

    @Id
    @GeneratedValue
    private Long pmCmdLargePltId;

    @ApiModelProperty(value = "命令板坯号", required = true)
    @NotBlank
    private String ponoSlabNo;

    @ApiModelProperty(value = "临时命令板坯号")
    private String tmpSlabNo;

    @ApiModelProperty(value = "组批工序顺序号")
    private Long pdBacklogSeq;

    @ApiModelProperty(value = "组批工序代码")
    private String pdBacklogCode;

    @ApiModelProperty(value = "钢板号")
    private String plateNo;

    @ApiModelProperty(value = "板坯号")
    private String slabNo;

    @ApiModelProperty(value = "板坯分割号")
    private Long slabDivNo;

    @ApiModelProperty(value = "组板状态")
    private String pdStatusHp;

    @ApiModelProperty(value = "组板方式")
    private String formPlateMode;

    @ApiModelProperty(value = "取板方式_长度方向")
    private Long pickModeLenDir;

    @ApiModelProperty(value = "取板方式_宽度方向")
    private Long pickModeWidDir;

    @ApiModelProperty(value = "加热炉类型")
    private String furType;

    @ApiModelProperty(value = "自动人工标记")
    private String autoManualFlag;

    @ApiModelProperty(value = "合同材/预备材区分")
    private String orderRemainDiv;

    @ApiModelProperty(value = "材料设计种类")
    private String matDesignKind;

    @ApiModelProperty(value = "板内合同个数")
    private Long orderNumInPlate;

    @ApiModelProperty(value = "大板内成品小板总块数")
    private Long totSmallPlateNum;

    @ApiModelProperty(value = "厚板品种代码")
    private String prodCodeHp;

    @ApiModelProperty(value = "AD类型代码")
    private String adTypeCode;

    @ApiModelProperty(value = "AD控制模式代码")
    private String adModeCode;

    @ApiModelProperty(value = "超声探伤代码")
    private String ultCode;

    @ApiModelProperty(value = "UOE合同标记")
    private String uoeFlag;

    @ApiModelProperty(value = "钢板缓冷代码")
    private String coolCode;

    @ApiModelProperty(value = "控轧代码")
    private String ctrlRollCode;

    @ApiModelProperty(value = "毛边切边标记")
    private String withSideFlag;

    @ApiModelProperty(value = "切断方式代码")
    private String cutModeCode;

    @ApiModelProperty(value = "头部切舍量")
    private BigDecimal headCut;

    @ApiModelProperty(value = "尾部切舍量")
    private BigDecimal tailCut;

    @ApiModelProperty(value = "牌号（钢级）")
    private String sgSign;

    @ApiModelProperty(value = "出钢记号")
    private String stNo;

    @ApiModelProperty(value = "二次开坯标记")
    private String twoRollInterimFlag;

    @ApiModelProperty(value = "轧制目标厚度")
    private BigDecimal rollAimThick;

    @ApiModelProperty(value = "轧制目标宽度")
    private BigDecimal rollAimWidth;

    @ApiModelProperty(value = "轧制目标长度")
    private BigDecimal rollAimLen;

    @ApiModelProperty(value = "轧制厚度公差上限")
    private BigDecimal rollThickTolMax;

    @ApiModelProperty(value = "轧制厚度公差下限")
    private BigDecimal rollThickTolMin;

    @ApiModelProperty(value = "最大轧制厚度")
    private BigDecimal maxRollThick;

    @ApiModelProperty(value = "最小轧制厚度")
    private BigDecimal minRollThick;

    @ApiModelProperty(value = "第一合同订货厚度")
    private BigDecimal order1Thick;

    @ApiModelProperty(value = "组合板宽度")
    private BigDecimal combinePlateWidth;

    @ApiModelProperty(value = "组合板长度")
    private BigDecimal combinePlateLen;

    @ApiModelProperty(value = "厚板轧制重量")
    private BigDecimal rollWtHp;

    @ApiModelProperty(value = "基准收得率")
    private BigDecimal normYield;

    @ApiModelProperty(value = "命令收得率")
    private BigDecimal commandYield;

    @ApiModelProperty(value = "轧制收得率")
    private BigDecimal rollYield;

    @ApiModelProperty(value = "立辊使用标记")
    private String edgerUseFlag;

    @ApiModelProperty(value = "展宽MAS使用标记")
    private String broadMasUseFlag;

    @ApiModelProperty(value = "成形MAS使用标记")
    private String formMasUseFlag;

    @ApiModelProperty(value = "轧制方向代码")
    private String rollDirectCode;

    @ApiModelProperty(value = "头部试材长度")
    private BigDecimal sampleLenHead;

    @ApiModelProperty(value = "尾部试材长度")
    private BigDecimal sampleLenTail;

    @ApiModelProperty(value = "中部试材长度")
    private BigDecimal sampleLenMid;

    @ApiModelProperty(value = "奉送试材长度")
    private BigDecimal sampleLenGive;

    @ApiModelProperty(value = "试样长度")
    private BigDecimal sampleLen;

    @ApiModelProperty(value = "RS代码")
    private String rsCode;

    @ApiModelProperty(value = "展宽标记")
    private String broadFlag;

    @ApiModelProperty(value = "特殊形状板轧制厚度1")
    private BigDecimal taperRollThick1;

    @ApiModelProperty(value = "特殊形状板轧制厚度上限1")
    private BigDecimal taperRollThickMax1;

    @ApiModelProperty(value = "特殊形状板轧制厚度下限1")
    private BigDecimal taperRollThickMin1;

    @ApiModelProperty(value = "特殊形状板轧制厚度2")
    private BigDecimal taperRollThick2;

    @ApiModelProperty(value = "特殊形状板轧制厚度上限2")
    private BigDecimal taperRollThickMax2;

    @ApiModelProperty(value = "特殊形状板轧制厚度下限2")
    private BigDecimal taperRollThickMin2;

    @ApiModelProperty(value = "特殊形状板轧制厚度3")
    private BigDecimal taperRollThick3;

    @ApiModelProperty(value = "特殊形状板轧制厚度上限3")
    private BigDecimal taperRollThickMax3;

    @ApiModelProperty(value = "特殊形状板轧制厚度下限3")
    private BigDecimal taperRollThickMin3;

    @ApiModelProperty(value = "特殊形状板轧制宽度")
    private BigDecimal taperRollWidth;

    @ApiModelProperty(value = "特殊形状板轧制长度1")
    private BigDecimal taperRollLen1;

    @ApiModelProperty(value = "特殊形状板轧制长度2")
    private BigDecimal taperRollLen2;

    @ApiModelProperty(value = "特殊形状板轧制长度3")
    private BigDecimal taperRollLen3;

    @ApiModelProperty(value = "特殊形状板轧制长度4")
    private BigDecimal taperRollLen4;

    @ApiModelProperty(value = "特殊形状板轧制长度5")
    private BigDecimal taperRollLen5;

    @ApiModelProperty(value = "气切可否")
    private String gFlag;

    @ApiModelProperty(value = "CS可否")
    private String csFlag;

    @ApiModelProperty(value = "DSS可否")
    private String dssFlag;

    @ApiModelProperty(value = "SS可否")
    private String ssFlag;

    @ApiModelProperty(value = "DS可否")
    private String dsFlag;

    @ApiModelProperty(value = "组板时间")
    private Date formPlateTime;

    @ApiModelProperty(value = "余母板号1")
    private String otherPlateNo1;

    @ApiModelProperty(value = "余母板号2")
    private String otherPlateNo2;

    @ApiModelProperty(value = "余母板号3")
    private String otherPlateNo3;

    @ApiModelProperty(value = "余母板号4")
    private String otherPlateNo4;

    @ApiModelProperty(value = "厚板预定通过工序1")
    private String platePreProc1;

    @ApiModelProperty(value = "厚板预定通过工序2")
    private String platePreProc2;

    @ApiModelProperty(value = "厚板预定通过工序3")
    private String platePreProc3;

    @ApiModelProperty(value = "厚板预定通过工序4")
    private String platePreProc4;

    @ApiModelProperty(value = "厚板预定通过工序5")
    private String platePreProc5;

    @ApiModelProperty(value = "厚板预定通过工序6")
    private String platePreProc6;

    @ApiModelProperty(value = "厚板预定通过工序7")
    private String platePreProc7;

    @ApiModelProperty(value = "厚板预定通过工序8")
    private String platePreProc8;

    @ApiModelProperty(value = "厚板预定通过工序9")
    private String platePreProc9;

    @ApiModelProperty(value = "厚板预定通过工序10")
    private String platePreProc10;

    @ApiModelProperty(value = "厚板预定通过工序11")
    private String platePreProc11;

    @ApiModelProperty(value = "厚板预定通过工序12")
    private String platePreProc12;

    @ApiModelProperty(value = "厚板预定通过工序13")
    private String platePreProc13;

    @ApiModelProperty(value = "厚板预定通过工序14")
    private String platePreProc14;

    @ApiModelProperty(value = "厚板预定通过工序15")
    private String platePreProc15;

    @ApiModelProperty(value = "厚板预定通过工序16")
    private String platePreProc16;

    @ApiModelProperty(value = "厚板预定通过工序17")
    private String platePreProc17;

    @ApiModelProperty(value = "厚板预定通过工序18")
    private String platePreProc18;

    @ApiModelProperty(value = "厚板预定通过工序19")
    private String platePreProc19;

    @ApiModelProperty(value = "厚板预定通过工序20")
    private String platePreProc20;

    @ApiModelProperty(value = "厚板预定通过工序21")
    private String platePreProc21;

    @ApiModelProperty(value = "厚板预定通过工序22")
    private String platePreProc22;

    @ApiModelProperty(value = "厚板预定通过工序23")
    private String platePreProc23;

    @ApiModelProperty(value = "厚板预定通过工序24")
    private String platePreProc24;

    @ApiModelProperty(value = "厚板预定通过工序25")
    private String platePreProc25;

    @ApiModelProperty(value = "厚板预定通过工序26")
    private String platePreProc26;

    @ApiModelProperty(value = "厚板预定通过工序27")
    private String platePreProc27;

    @ApiModelProperty(value = "厚板预定通过工序28")
    private String platePreProc28;

    @ApiModelProperty(value = "厚板预定通过工序29")
    private String platePreProc29;

    @ApiModelProperty(value = "厚板预定通过工序30")
    private String platePreProc30;

    @ApiModelProperty(value = "产品密度")
    private BigDecimal prodDensity;

    @ApiModelProperty(value = "轧制大板去向")
    private String rollPlateDest;

    @ApiModelProperty(value = "厚板流向代码")
    private String plateDtCode;

    @ApiModelProperty(value = "生产跟踪代码")
    private String traceCode;

    @ApiModelProperty(value = "第一控轧点厚度最小值")
    private BigDecimal minCr1Thick;

    @ApiModelProperty(value = "第一控轧点温度目标值")
    private BigDecimal cr1TempAim;

    @ApiModelProperty(value = "第一控轧点温度最大值")
    private BigDecimal maxCr1Temp;

    @ApiModelProperty(value = "第一控轧点温度最小值")
    private BigDecimal minCr1Temp;

    @ApiModelProperty(value = "第一控轧点前最后道次的最小压下量")
    private BigDecimal minPressBefcr1;

    @ApiModelProperty(value = "第二控轧点厚度最小值")
    private BigDecimal minCr2Thick;

    @ApiModelProperty(value = "第二控轧点温度目标值")
    private BigDecimal cr2TempAim;

    @ApiModelProperty(value = "第二控轧点温度最小值")
    private BigDecimal minCr2Temp;

    @ApiModelProperty(value = "第二控轧点温度最大值")
    private BigDecimal maxCr2Temp;

    @ApiModelProperty(value = "第二控轧点前最后道次的最小压下量")
    private BigDecimal minPressBefcr2;

    @ApiModelProperty(value = "终轧温度目标值")
    private BigDecimal afftTempAim;

    @ApiModelProperty(value = "终轧温度最大值")
    private BigDecimal maxAfftTemp;

    @ApiModelProperty(value = "终轧温度最小值")
    private BigDecimal minAfftTemp;

    @ApiModelProperty(value = "延伸轧制阶段最小压下量")
    private BigDecimal minPressLast;

    @ApiModelProperty(value = "中间冷却模式")
    private String middleCoolMode;

    @ApiModelProperty(value = "中间冷却最大冷却速度")
    private BigDecimal maxMiddleCoolSpeed;

    @ApiModelProperty(value = "ACC冷却开始等待时间上限")
    private BigDecimal maxAccWaitTime;

    @ApiModelProperty(value = "ACC冷却开始等待时间下限")
    private BigDecimal minAccWaitTime;

    @ApiModelProperty(value = "快冷开始温度目标值")
    private BigDecimal fastBgTempAim;

    @ApiModelProperty(value = "快冷开始温度上限")
    private BigDecimal maxFastBgTemp;

    @ApiModelProperty(value = "快冷开始温度下限")
    private BigDecimal minFastBgTemp;

    @ApiModelProperty(value = "快冷速率目标值")
    private BigDecimal fastSpAim;

    @ApiModelProperty(value = "快冷速率上限")
    private BigDecimal maxFastSp;

    @ApiModelProperty(value = "快冷速率下限")
    private BigDecimal minFastSp;

    @ApiModelProperty(value = "快冷结束温度目标值")
    private BigDecimal fastEndTempAim;

    @ApiModelProperty(value = "快冷结束温度上限")
    private BigDecimal maxFastEndTemp;

    @ApiModelProperty(value = "快冷结束温度下限")
    private BigDecimal minFastEndTemp;

    @ApiModelProperty(value = "慢冷开始温度1目标值")
    private BigDecimal slow1TBgTempAim;

    @ApiModelProperty(value = "慢冷开始温度1上限")
    private BigDecimal maxSlow1BgTemp;

    @ApiModelProperty(value = "慢冷开始温度1下限")
    private BigDecimal minSlow1BgTemp;

    @ApiModelProperty(value = "慢冷速率1目标值")
    private BigDecimal slow1SpAim;

    @ApiModelProperty(value = "慢冷速率1上限")
    private BigDecimal maxSlow1Sp;

    @ApiModelProperty(value = "慢冷速率1下限")
    private BigDecimal minSlow1Sp;

    @ApiModelProperty(value = "慢冷结束温度1目标值")
    private BigDecimal slow1EndTempAim;

    @ApiModelProperty(value = "慢冷结束温度1上限")
    private BigDecimal maxSlow1EndTemp;

    @ApiModelProperty(value = "慢冷结束温度1下限")
    private BigDecimal minSlow1EndTemp;

    @ApiModelProperty(value = "慢冷开始温度2目标值")
    private BigDecimal slow2TBgTempAim;

    @ApiModelProperty(value = "慢冷开始温度2上限")
    private BigDecimal maxSlow2BgTemp;

    @ApiModelProperty(value = "慢冷开始温度2下限")
    private BigDecimal minSlow2BgTemp;

    @ApiModelProperty(value = "慢冷速率2目标值")
    private BigDecimal slow2SpAim;

    @ApiModelProperty(value = "慢冷速率2上限")
    private BigDecimal maxSlow2Sp;

    @ApiModelProperty(value = "慢冷速率2下限")
    private BigDecimal minSlow2Sp;

    @ApiModelProperty(value = "慢冷结束温度2目标值")
    private BigDecimal slow2EndTempAim;

    @ApiModelProperty(value = "慢冷结束温度2上限")
    private BigDecimal maxSlow2EndTemp;

    @ApiModelProperty(value = "慢冷结束温度2下限")
    private BigDecimal minSlow2EndTemp;

    @ApiModelProperty(value = "机架使用标志")
    private String standFlag;

    @ApiModelProperty(value = "线膨胀系数")
    private BigDecimal expandQuot;

    @ApiModelProperty(value = "钢板凸度目标值")
    private BigDecimal plateConvexAim;

    @ApiModelProperty(value = "热矫可否")
    private String hotRectifyFlag;

    @ApiModelProperty(value = "热矫方法代码")
    private String hotRectifyMethodCode;

    @ApiModelProperty(value = "抗拉强度最大值")
    private BigDecimal tsMax;

    @ApiModelProperty(value = "抗拉强度最小值")
    private BigDecimal tsMin;

    @ApiModelProperty(value = "大压下指定")
    private String pressAppoint;

    @ApiModelProperty(value = "精整计划日期")
    private Date finishPlanDate;

    @ApiModelProperty(value = "钢板形状代码")
    private String shpCode;

    @ApiModelProperty(value = "轧制计划类型")
    private String rollPlanType;

    @ApiModelProperty(value = "探伤方式代码")
    private String ultDetectMethodCode;

    @ApiModelProperty(value = "自然张取样头部试材长度")
    private BigDecimal sampleHeadLenFree;

    @ApiModelProperty(value = "自然张取样尾部试材长度")
    private BigDecimal sampleTailLenFree;

    @ApiModelProperty(value = "大板取样头部试材长度")
    private BigDecimal sampleHeadLenPlate;

    @ApiModelProperty(value = "大板取样尾部试材长度")
    private BigDecimal sampleTailLenPlate;

    @ApiModelProperty(value = "热处理母板取样头部试材长度")
    private BigDecimal sampleHeadLenMb;

    @ApiModelProperty(value = "热处理母板取样尾部试材长度")
    private BigDecimal sampleTailLenMb;

    @ApiModelProperty(value = "ACC冷却开始温度")
    private BigDecimal accTempStart;

    @ApiModelProperty(value = "ACC冷却结束温度")
    private BigDecimal accTempEnd;

    @ApiModelProperty(value = "ACC冷却速率")
    private BigDecimal accColdV;

    @ApiModelProperty(value = "装炉温度")
    private BigDecimal loadFurTemp;

    @ApiModelProperty(value = "出炉温度")
    private BigDecimal heatTemp;

    @ApiModelProperty(value = "第一阶段厚度")
    private BigDecimal firstThick;

    @ApiModelProperty(value = "第一阶段开始温度")
    private BigDecimal firstBgTemp;

    @ApiModelProperty(value = "第一阶段结束温度")
    private BigDecimal firstEndTemp;

    @ApiModelProperty(value = "第二阶段厚度")
    private BigDecimal scdThick;

    @ApiModelProperty(value = "第二阶段开始温度")
    private BigDecimal scdBgTemp;

    @ApiModelProperty(value = "第二阶段结束温度")
    private BigDecimal scdEndTemp;

    @ApiModelProperty(value = "产线号")
    private String mscLineNo;

    @ApiModelProperty(value = "特殊形状板轧制厚度4")
    private BigDecimal taperRollThick4;

    @ApiModelProperty(value = "特殊形状板轧制厚度上限4")
    private BigDecimal taperRollThickMax4;

    @ApiModelProperty(value = "特殊形状板轧制厚度下限4")
    private BigDecimal taperRollThickMin4;

    @ApiModelProperty(value = "特殊形状板轧制厚度5")
    private BigDecimal taperRollThick5;

    @ApiModelProperty(value = "特殊形状板轧制厚度上限5")
    private BigDecimal taperRollThickMax5;

    @ApiModelProperty(value = "特殊形状板轧制厚度下限5")
    private BigDecimal taperRollThickMin5;

    @ApiModelProperty(value = "特殊形状板轧制厚度6")
    private BigDecimal taperRollThick6;

    @ApiModelProperty(value = "特殊形状板轧制厚度上限6")
    private BigDecimal taperRollThickMax6;

    @ApiModelProperty(value = "特殊形状板轧制厚度下限6")
    private BigDecimal taperRollThickMin6;

    @ApiModelProperty(value = "特殊形状板轧制厚度7")
    private BigDecimal taperRollThick7;

    @ApiModelProperty(value = "特殊形状板轧制厚度上限7")
    private BigDecimal taperRollThickMax7;

    @ApiModelProperty(value = "特殊形状板轧制厚度下限7")
    private BigDecimal taperRollThickMin7;

    @ApiModelProperty(value = "特殊形状板轧制长度6")
    private BigDecimal taperRollLen6;

    @ApiModelProperty(value = "特殊形状板轧制长度7")
    private BigDecimal taperRollLen7;

    @ApiModelProperty(value = "租户ID", required = true)
    @NotNull
    private Long tenantId;

    @ApiModelProperty(value = "是否合并板坯(N:未合并、A:合并后、B：合并前那两条)")
    private String isMerge;

    @ApiModelProperty(value = "代预标记")
    private String replaceFlag;

    @ApiModelProperty(value = "轧制方式")
    private String rollMode;

    private String attribute1;

    private String attribute2;

    private String attribute3;

    private String attribute4;

    private String attribute5;

    @Transient
    @ApiModelProperty(value = "命令板坯号起")
    private String ponoSlabNoFrom;

    @Transient
    @ApiModelProperty(value = "命令板坯号至")
    private String ponoSlabNoTo;

    @Transient
    @ApiModelProperty(value = "命令生成时间起")
    private Date creationDateFrom;

    @Transient
    @ApiModelProperty(value = "命令生成时间至")
    private Date creationDateTo;

    @ApiModelProperty(value = "制造命令号")
    @Transient
    private String pono;

    @ApiModelProperty(value = "组板时间")
    @Transient
    private String fromPlateTime;

    @ApiModelProperty(value = "钢锭型")
    @Transient
    private String ingotType;

    @ApiModelProperty(value = "查询类型")
    @Transient
    private String queryType;

    @ApiModelProperty(value = "制造命令号上限")
    @Transient
    private String ponoUpperLimit;

    @ApiModelProperty(value = "制造命令号下限")
    @Transient
    private String ponoLowerLimit;

    @ApiModelProperty(value = "虚拟板坯号")
    @Transient
    private String virtualSlabNo;

    @ApiModelProperty(value = "连铸机类型")
    @Transient
    private String ccTypeValue;

    public void setRollAimThick(BigDecimal slabThick) {
        this.rollAimThick = Utils.conversionDecimal(slabThick, Constants.ConversionType.THICKNESS);
    }

    public void setRollAimWidth(BigDecimal slabWidth) {
        this.rollAimWidth = Utils.conversionDecimal(slabWidth, Constants.ConversionType.WIDTH);
    }

    public void setRollAimLen(BigDecimal slabLen) {
        this.rollAimLen = Utils.conversionDecimal(slabLen, Constants.ConversionType.LENGTH);
    }

    public void setRollWtHp(BigDecimal slabWeight) {
        this.rollWtHp = Utils.conversionDecimal(slabWeight, Constants.ConversionType.WEIGHT);
    }

    public void setCombinePlateWidth(BigDecimal width) {
        this.combinePlateWidth = Utils.conversionDecimal(width, Constants.ConversionType.WIDTH);
    }

    public void setCombinePlateLen(BigDecimal length) {
        this.combinePlateLen = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setOrder1Thick(BigDecimal thickness) {
        this.order1Thick = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThick1(BigDecimal thickness) {
        this.taperRollThick1 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThickMax1(BigDecimal thickness) {
        this.taperRollThickMax1 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThickMin1(BigDecimal thickness) {
        this.taperRollThickMin1 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThick2(BigDecimal thickness) {
        this.taperRollThick2 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThickMax2(BigDecimal thickness) {
        this.taperRollThickMax2 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThickMin2(BigDecimal thickness) {
        this.taperRollThickMin2 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThick3(BigDecimal thickness) {
        this.taperRollThick3 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThickMax3(BigDecimal thickness) {
        this.taperRollThickMax3 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollThickMin3(BigDecimal thickness) {
        this.taperRollThickMin3 = Utils.conversionDecimal(thickness, Constants.ConversionType.THICKNESS);
    }

    public void setTaperRollWidth(BigDecimal width) {
        this.taperRollWidth = Utils.conversionDecimal(width, Constants.ConversionType.WIDTH);
    }

    public void setTaperRollLen1(BigDecimal length) {
        this.taperRollLen1 = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setTaperRollLen2(BigDecimal length) {
        this.taperRollLen2 = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setTaperRollLen3(BigDecimal length) {
        this.taperRollLen3 = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setTaperRollLen4(BigDecimal length) {
        this.taperRollLen4 = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setTaperRollLen5(BigDecimal length) {
        this.taperRollLen5 = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setSampleLenHead(BigDecimal length) {
        this.sampleLenHead = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setSampleLenTail(BigDecimal length) {
        this.sampleLenTail = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setSampleLenMid(BigDecimal length) {
        this.sampleLenMid = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setSampleLenGive(BigDecimal length) {
        this.sampleLenGive = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

    public void setSampleLen(BigDecimal length) {
        this.sampleLen = Utils.conversionDecimal(length, Constants.ConversionType.LENGTH);
    }

}
