package com.bonus.material.fieldMaintenance.domain;

import com.bonus.common.biz.domain.BmFileInfo;
import com.bonus.common.core.annotation.Excel;
import com.bonus.material.back.domain.MaCodeDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.List;

@Accessors(chain = true)
@Data
@ToString
public class FieldApplyDetails {
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 退料单号 */
    @Excel(name = "退料单号")
    @ApiModelProperty(value = "退料单号")
    private String code;

    @ApiModelProperty(value = "机具id")
    private Long maId;

    @ApiModelProperty(value = "机具id")
    private Long taskId;

    /** 任务ID */
    @Excel(name = "任务ID")
    @ApiModelProperty(value = "任务ID")
    private Long parentId;

    @ApiModelProperty(value = "物资类型")
    private String materialType;

    /** 规格ID */
    @Excel(name = "规格ID")
    @ApiModelProperty(value = "规格ID")
    private Long typeId;

    @ApiModelProperty(value = "类型名称")
    private String typeName;

    @ApiModelProperty(value = "规格型号")
    private String typeModel;

    @ApiModelProperty(value = "单位名称")
    private String unitName;

    @ApiModelProperty(value = "单位名称数值")
    private String unitValue;

    @ApiModelProperty(value = "管理方式(0编号 1计数)")
    private String manageType;

    /**
     * 机具编码
     */
    @ApiModelProperty(value = "机具编码")
    private String maCode;

    private String materialName;

    private String maStatus;

    /**
     * 机具编码集合（可能存在多个，数据库存储用逗号分割）
     */
    private List<MaCodeDto> maCodeList;

    /** 退料数量 */
    @ApiModelProperty(value = "维修数量")
    private BigDecimal preNum;

    /** 审批数量 */
    @ApiModelProperty(value = "审批数量")
    private BigDecimal auditNum;


    /** 在用数量 */
    @ApiModelProperty(value = "在用数量")
    private BigDecimal num;

    @ApiModelProperty(value = "退料状态")
    private String backStatus;

    @ApiModelProperty(value = "是否完成 (0:未完成退料,可以撤回 1:已完成退料,不能撤回)")
    private Integer isFinished;

    private String keyWord;
}
