package com.sw.common.accessory.server.dto;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * @Author
 * @Description：
 * @Date: Create in
 * @Modified By:
 */
@Data
@ApiModel(value = "圆棒工单排程Dto")
public class ProductionScheduleDto {
    @ExcelIgnore
    private Long id;
    @ExcelIgnore
    @ApiModelProperty(value = "炉次id")
    Integer lotId;
    @ExcelProperty(value = "炉次号", index = 0)
    @ApiModelProperty(value = "炉次号")
    String lotNo;
    @ExcelIgnore
    @ApiModelProperty(value = "设备id")
    Long deviceId;

    @ExcelProperty(value = "设备编号", index = 1)
    @ApiModelProperty(value = "设备编号")
    String deviceNo;
    @ExcelIgnore
    @ApiModelProperty(value = "工单编号")
    String code;
    @ExcelIgnore
    @ApiModelProperty(value = "任务状态(0：未开始,1：进行中,2：已完成,3：已取消)", required = true)
    Integer status;
    @ExcelProperty(value = "状态说明", index = 14)
    @ApiModelProperty(value = "状态信息")
    String statusInfo;
    @ExcelProperty(value = "创建时间", index = 11)
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    Date createTime;
    @ExcelProperty(value = "排产数量", index = 10)
    @ApiModelProperty(value = "数量")
    Integer count;
    @ExcelIgnore
    @ApiModelProperty(value = "创建人id")
    Integer createUserId;
    @ExcelProperty(value = "创建人", index = 12)
    @ApiModelProperty(value = "创建人姓名")
    String createUserName;

    /**
     * 炉台类型【0:默认；0-量产;1-在建;2-研发;】
     */
    @ExcelIgnore
    @ApiModelProperty(value = "炉台类型")
    Integer furnaceType;

    /**
     * 任务状态名称
     */
    @ExcelProperty(value = "任务状态", index = 13)
    @ApiModelProperty(value = "状态信息")
    String statusName;

    /**
     * 其他信息
     */
    @ExcelIgnore
    @ApiModelProperty(value = "圆棒订单优先级")
    Integer productionOrderAprio;
    @ExcelIgnore
    @ApiModelProperty(value = "圆棒订单id", required = true)
    Integer productionOrderId;
    @ExcelProperty(value = "订单编号", index = 2)
    @ApiModelProperty(value = "圆棒订单编号", required = true)
    String productionOrderAufnr;
    @ExcelIgnore
    @ApiModelProperty(value = "圆棒订单类型", required = true)
    String productionOrderAuart;
    @ExcelProperty(value = "物料描述", index = 4)
    @ApiModelProperty(value = "物料描述")
    String productionOrderMtbez;
    @ExcelIgnore
    @ApiModelProperty(value = "圆棒订单方棒边长范围", required = true)
    String productionOrderSideLengthRange;
    @ExcelIgnore
    @ApiModelProperty(value = "圆棒产品模型id", required = true)
    Integer productModelId;
    @ExcelProperty(value = "料号", index = 3)
    @ApiModelProperty(value = "圆棒产品料号", required = true)
    String productModelCode;
    @ExcelIgnore
    @ApiModelProperty(value = "加工能力信息id", required = true)
    Integer capacityInfoId;
    @ExcelProperty(value = "型号", index = 6)
    @ApiModelProperty(value = "导电型号", required = true)
    String capacityInfoConductionType;
    @ExcelProperty(value = "规格", index = 5)
    @ApiModelProperty(value = "规格", required = true)
    String capacityInfoSpecification;
    @ExcelIgnore
    @ApiModelProperty(value = "产品等级", required = true)
    String capacityInfoProductRank;
    @ExcelProperty(value = "掺杂剂", index = 8)
    @ApiModelProperty(value = "掺杂剂", required = true)
    String capacityInfoDopant;
    @ExcelProperty(value = "产品简称", index = 7)
    @ApiModelProperty(value = "产品简称", required = true)
    String capacityInfoSimpleName;
    @ExcelProperty(value = "电阻类型", index = 9)
    @ApiModelProperty(value = "高低阻")
    String resistanceType;
    @ExcelIgnore
    @ApiModelProperty(value = "客户", required = true)
    String productionOrderCustomerid;
    @ExcelIgnore
    @ApiModelProperty(value = "客户", required = true)
    String completedQuantity;
}