package com.bonus.material.clz.domain.vo.lease;

import com.bonus.common.core.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

/**
 * 工器具领料记录详情
 * @Author ma_sh
 * @create 2025/5/14 16:41
 */
@Data
public class LeaseTotalInfo {

    @ApiModelProperty(value = "是否导出 0 是，1 否")
    private Integer isExport;

    private Long id;

    private Long typeId;

    private Long parentId;

    @ApiModelProperty(value = "工器具名称")
    @Excel(name = "工器具名称")
    private String maTypeName;

    @ApiModelProperty(value = "规格型号名称")
    @Excel(name = "规格型号")
    private String typeName;

    @ApiModelProperty(value = "计量单位")
    @Excel(name = "计量单位")
    private String unitName;

    @ApiModelProperty(value = "预领料数")
    private BigDecimal preNum;

    @ApiModelProperty(value = "出库数量")
    @Excel(name = "出库数量")
    private BigDecimal outNum;

    @ApiModelProperty(value = "待出库数量")
    private BigDecimal pendingNum;

    @ApiModelProperty(value = "领料日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "领料日期",  dateFormat = "yyyy-MM-dd", width = 30)
    private String leaseDate;

    @ApiModelProperty(value = "出库日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出库日期",  dateFormat = "yyyy-MM-dd", width = 30)
    private String outDate;

    @ApiModelProperty(value = "领料班组")
    @Excel(name = "领料班组")
    private String teamName;

    @ApiModelProperty(value = "领料工程")
    @Excel(name = "领料工程")
    private String projectName;

    @ApiModelProperty(value = "领料人")
    @Excel(name = "班组长")
    private String leasePerson;

    @ApiModelProperty(value = "出库人")
    @Excel(name = "出库人")
    private String outPerson;

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

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

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

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

    @ApiModelProperty(value = "管理模式")
    private String manageType;

    @ApiModelProperty(value = "i8工程id")
    private String externalId;

    @ApiModelProperty(value = "实施单位id")
    private String impUnit;

    @ApiModelProperty(value = "身份证号码")
    private String idCard;

    /**
     * i8工程id集合
     */
    private List<String> projectIdList;

    @ApiModelProperty(value = "分公司")
    @Excel(name = "分公司")
    private String impUnitName;

    @ApiModelProperty(value = "项目部")
    @Excel(name = "项目部")
    private String departName;

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

    @ApiModelProperty(value = "分包单位")
    @Excel(name = "分包单位")
    private String subUnitName;
}
