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 ApplyRecordDto {
    @ExcelIgnore
    private Long id;
    @ApiModelProperty(value = "申请单号")
    @ExcelProperty(value = "出库审核记录单号")
    private String code;
    /**
     * 设备类型id
     */
    @ApiModelProperty(value = "设备类型id")
    @ExcelIgnore
    private Integer deviceTypeId;
    /**
     * 设备类型编码
     */
    @ApiModelProperty(value = "设备类型编码")
    @ExcelProperty(value = "设备类型编码")
    private String deviceTypeCode;
    /**
     * 设备类型名称
     */
    @ApiModelProperty(value = "设备类型名称")
    @ExcelProperty(value = "设备类型名称")
    private String deviceTypeName;
    @ApiModelProperty(value = "设备号", required = true)
    @ExcelProperty(value = "设备号")
    private String equipmentCode;
    @ApiModelProperty(value = "物料id", required = true)
    @ExcelIgnore
    private Long materialId;
    @ApiModelProperty(value = "物料类型", required = true)
    @ExcelProperty(value = "物料类型")
    private String materialType;
    @ApiModelProperty(value = "物料名称", required = true)
    @ExcelProperty(value = "物料名称")
    private String materialName;
    @ApiModelProperty(value = "物料料号", required = true)
    @ExcelProperty(value = "物料料号")
    private String materialCode;
    @ApiModelProperty(value = "数量", required = true)
    @ExcelProperty(value = "数量")
    private Integer number;
    @ApiModelProperty(value = "单位", required = true)
    @ExcelProperty(value = "单位")
    private String unit;
    @ApiModelProperty(value = "原因")
    @ExcelProperty(value = "原因")
    private String reason;
    @ApiModelProperty(value = "物料状态（0:正常,1:返修,2:报废,3:煅烧可用,）")
    @ExcelProperty(value = "物料状态")
    private Integer accessoryStatus;
    @ApiModelProperty(value = "状态（0:待出库，1:已出库，2：已取消，3:已拒绝）")
    @ExcelProperty(value = "状态")
    private Integer status;
    @ApiModelProperty(value = "申请人", required = true)
    @ExcelProperty(value = "申请人")
    private String userCreate;
    @ApiModelProperty(value = "申请时间", required = true)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "申请时间")
    private Date gmtCreate;
    @ApiModelProperty(value = "确认人")
    @ExcelProperty(value = "确认人")
    private String userConfirm;
    @ApiModelProperty(value = "确认时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "确认时间")
    private Date gmtConfirm;

    @ApiModelProperty(value = "部位id")
    @ExcelIgnore
    private Long partId;

    @ApiModelProperty(value = "部位编码")
    @ExcelProperty(value = "部位编码")
    private String partCode;

    @ApiModelProperty(value = "部位名称")
    @ExcelProperty(value = "部位名称")
    private String partName;
}