package com.sw.mes.agv.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "复投物料搭配方案DTO")
public class MonitorRechargeDto {

    private Long id;

    @ApiModelProperty(value = "设备编号")
    private String name;

    @ApiModelProperty(value = "炉次号")
    private String lotNo;

    @ApiModelProperty(value = "复投类型")
    private String rechargeType;

    @ApiModelProperty(value = "搭配方案")
    private String techBom;

    @ApiModelProperty(value = "搭配工艺明细")
    private String techBomItem;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Temporal(TemporalType.TIMESTAMP)
    private Date preSlingTime;

    @ApiModelProperty(value = "呼叫状态")
    private String slingState;

    @ApiModelProperty(value = "呼叫桶数")
    private Integer rechargeNum;

    @ApiModelProperty(value = "呼叫重量")
    private Double rechargeWeight;

    @ApiModelProperty(value = "搭配操作员")
    private String mixUser;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Temporal(TemporalType.TIMESTAMP)
    private Date mixTime;


    /**
     * 导电型号
     */
    @ApiModelProperty(value = "导电型号")
    private String pn;

    /**
     * 复投次数
     */
    @ApiModelProperty(value = "复投次数")
    private Integer rechargeTimes;

    /**
     * 剩料重量
     */
    @ApiModelProperty(value = "剩料重量")
    private BigDecimal leftWeight;

    @ApiModelProperty(value = "搭配方案ID")
    private Long techId;

    private List<RechargeMixDto> mixDtos = new ArrayList<>();

}
