package com.xisc.pm.domain.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Id;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.Date;


/**
 * @author 蒋雨航 yuhang.jiang02@hand-china.com
 * @since 2024-08-14 15:46:42
 */
@Data
public class CtMainVO1 implements Serializable {
    private static final long serialVersionUID = -91325713648367266L;

    @ApiModelProperty("流向记录ID")
    @Id
    private Long mainId;

    @ApiModelProperty(value = "合约号")
    private String contractNum;

    @ApiModelProperty(value = "合同号")
    private String orderNo;

    @ApiModelProperty(value = "合同状态")
    private String orderStatus;

    @ApiModelProperty(value = "合同处理状态")
    private String lineupStatus;

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

    @ApiModelProperty(value = "订货重量")
    private Long orderWgt;

    @ApiModelProperty(value = "订货件数")
    private Long orderNum;

    @ApiModelProperty(value = "需生产重量")
    private Long reqrProdWgt;

    @ApiModelProperty(value = "需生产件数")
    private Long reqrProdNum;

    @ApiModelProperty(value = "准发重量")
    private Long confmWgt;

    @ApiModelProperty(value = "准发件数")
    private Long confmNum;

    @ApiModelProperty(value = "出厂重量")
    private Long delivyWgt;

    @ApiModelProperty(value = "出厂件数")
    private Long delivyNum;

    @ApiModelProperty(value = "合同厚度")
    private Long ordThk;

    @ApiModelProperty(value = "合同宽度")
    private Long ordWid;

    @ApiModelProperty(value = "合同长度")
    private Long ordLen;

    @ApiModelProperty(value = "合同单重")
    private Long ordWgt;

    @ApiModelProperty(value = "交货件数正公差")
    private Long delivyNumTolPlus;

    @ApiModelProperty(value = "交货件数负公差")
    private Long delivyNumTolMinus;

    @ApiModelProperty(value = "交货重量正公差")
    private Long delivyWgtTolPlus;

    @ApiModelProperty(value = "交货重量负公差")
    private Long delivyWgtTolMinus;

    @ApiModelProperty(value = "生产结束标记(1正常系统结束，2人工强制结束)")
    private Long prodEndFlag;

    @ApiModelProperty(value = "交货结束标记")
    private Long delivyEndFlag;

    @ApiModelProperty(value = "合同拖期标记")
    private Long orderDelayFlag;

    @ApiModelProperty(value = "尾量标记")
    private Long tailFlag;

    @ApiModelProperty(value = "合同创建时间(YYYY-MM-DD,HH24:MI:SS)")
    private Date orderCreateTime;

    @ApiModelProperty(value = "合同处理时间(YYYY-MM-DD,HH24:MI:SS)")
    private Date orderProcTime;

    @ApiModelProperty(value = "合同变更时间(YYYY-MM-DD,HH24:MI:SS)")
    private Date orderModiTime;

    @ApiModelProperty(value = "生产投料时间(YYYY-MM-DD,HH24:MI:SS)")
    private Date prodDevoTime;

    @ApiModelProperty(value = "生产结束时间(YYYY-MM-DD,HH24:MI:SS)")
    private Date prodEndTime;

    @ApiModelProperty(value = "交货结束时间(YYYY-MM-DD,HH24:MI:SS)")
    private Date delivyEndTime;

    @ApiModelProperty(value = "财务结束时间(YYYY-MM-DD,HH24:MI:SS)")
    private Date finaEndTime;

    @ApiModelProperty(value = "累计补轧次数")
    private Long supplementaryRollsNumTotal;

    @ApiModelProperty(value = "累计超投重量")
    private Long overDevoWgtTotal;

    @ApiModelProperty(value = "累计超投件数")

    private Long overDevoNumTotal;
    @ApiModelProperty(value = "累计脱合同重量")
    private Long offOrderWgtTotal;

    @ApiModelProperty(value = "累计脱合同件数")
    private Long offOrderNumTotal;

    @ApiModelProperty(value = "累计挂合同重量")
    private Long onOrderWgtTotal;

    @ApiModelProperty(value = "累计挂合同件数")
    private Long onOrderNumTotal;

    @ApiModelProperty(value = "销售原因超投件")
    private Long xsOverNum;

    @ApiModelProperty(value = "生产原因超投件")
    private Long scOverNum;

    @ApiModelProperty(value = "组板作业期限(YYYY-MM-DD)待定")
    private Date desDuedate;

    @ApiModelProperty(value = "炼钢作业期限(YYYY-MM-DD)")
    private Date smsDuedate;

    @ApiModelProperty(value = "轧钢作业期限(YYYY-MM-DD)")
    private Date millDuedate;

    @ApiModelProperty(value = "精整作业期限(YYYY-MM-DD)")
    private Date cutDuedate;

    @ApiModelProperty(value = "热处理作业期限(YYYY-MM-DD)")
    private Date htmDuedate;

    @ApiModelProperty(value = "形合作业期限(YYYY-MM-DD)")
    private Date shapeDuedate;

    @ApiModelProperty(value = "材合作业期限(YYYY-MM-DD)")
    private Date qualityDuedate;

    @ApiModelProperty(value = "发货作业期限(YYYY-MM-DD)")
    private Date shpDuedate;

    @ApiModelProperty(value = "合同交货期(YYYY-MM-DD)")
    private Date orderDuedate;

    @ApiModelProperty(value = "计划完成交货期(YYYY-MM-DD)")
    private Date planDuedate;

    @ApiModelProperty(value = "交货期拖延天数")
    private Long delDelayDay;

    @ApiModelProperty(value = "预警等级")
    @NotBlank
    private String levelCode;

    @ApiModelProperty(value = "生产备注")
    private String remark;

    @ApiModelProperty(value = "合同欠重量")
    private Long ordRemWgt;

    @ApiModelProperty(value = "合同欠件数")
    private Long ordRemNum;

    @ApiModelProperty(value = "生产进程量")
    private Long prodWgt;

    @ApiModelProperty(value = "生产进程件数")
    private Long prodNum;

    @ApiModelProperty(value = "生产结束量")
    private Long prodEndWgt;

    @ApiModelProperty(value = "生产结束件数")
    private Long prodEndNum;

    @ApiModelProperty(value = "发运完成量")
    private Long shipEndWgt;

    @ApiModelProperty(value = "发运完成件数")
    private Long shipEndNum;

    @ApiModelProperty(value = "租户ID")
    private Long tenantId;


}
