package com.bonus.sgzb.material.domain;

import com.bonus.sgzb.common.core.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
* @description 综合查询--机具报废查询
* @author hay
* @date   2024/2/26 14:51
*/
@ApiModel(description = "机具报废查询")
@Data
public class ScrapRecord {

    private static final long serialVersionUID = 2227217051604273598L;

    @ApiModelProperty(value = "")
    private Integer id;

    /**
     * 单位Id
     */
    @ApiModelProperty(value = "单位Id")
    private Integer unitId;

    /**
     * 往来单位
     */
    @ApiModelProperty(value = "往来单位")
    @Excel(name = "往来单位")
    private String unitName;

    /**
     * 工程Id
     */
    @ApiModelProperty(value = "工程Id")
    private Integer proId;

    /**
     * 工程名称
     */
    @ApiModelProperty(value = "工程名称")
    @Excel(name = "工程名称")
    private String proName;

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

    /**
     * 来源单号
     */
    @ApiModelProperty(value = "来源单号")
    @Excel(name = "来源单号")
    private String sourceCode;

    /**
     * 机具名称
     */
    @ApiModelProperty(value = "机具名称")
    @Excel(name = "机具名称")
    private String typeName;

    /**
     * 规格ID
     */
    @ApiModelProperty(value = "规格ID")
    private Integer typeId;

    /**
     * 规格型号
     */
    @ApiModelProperty(value = "规格型号")
    @Excel(name = "规格型号")
    private String typeModelName;

    /**
     * 单位
     */
    @ApiModelProperty(value = "单位")
    @Excel(name = "单位")
    private String unit;

    /**
     * 协议号
     */
    @ApiModelProperty(value = "协议号")
    private String agreementCode;

    /**
     * 设备编号
     */
    @ApiModelProperty(value = "设备编号")
    @Excel(name = "设备编号")
    private String maCode;

    /**
     * 报废时间
     */
    @ApiModelProperty(value = "报废时间")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "报废时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date scrapTime;

    /**
     * 报废数量
     */
    @ApiModelProperty(value = "报废数量")
    @Excel(name = "报废数量",cellType = Excel.ColumnType.NUMERIC)
    private Double scrapNum;

    /**
     * 退料人
     */
    @ApiModelProperty(value = "退料人")
    private String backPerson;



    /**
     * 创建者
     */
    @ApiModelProperty(value = "创建者")
    private String createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 更新者
     */
    @ApiModelProperty(value = "更新者")
    private String updateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间 ")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 报废原因
     */
    @ApiModelProperty(value = "报废原因")
    @Excel(name = "报废原因")
    private String remark;

    /**
     * 报废人
     */
    @ApiModelProperty(value = "报废人")
    @Excel(name = "报废人")
    private String userName;

    /**
     * 关键字
     */
    @ApiModelProperty(value = "关键字")
    private String keyWord;

    @ApiModelProperty(value="开始时间")
    private String startTime;

    @ApiModelProperty(value="结束时间")
    private String endTime;


    /**
     * 设备所属类型
     */
    @ApiModelProperty(value = "数据所属组织")
    private Integer companyId;

    /**
     * 装备管理方式(0编号 1计数)
     */
    @ApiModelProperty(value = "装备管理方式")
    private int manageType;

    /**
     * 装备管理方式(0编号 1计数)
     */
    @ApiModelProperty(value = "装备管理方式名称")
    private String manageTypeName;

    /**
     * 实时库存
     */
    @ApiModelProperty(value = "实时库存")
    private Double num;

}