package com.aucma.dms.domain;

import com.aucma.common.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;

/**
 * 维修材料明细对象 dms_repair_material
 *
 * @author Cascade AI
 * @date 2025-01-10
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class DmsRepairMaterial extends DmsBaseEntity {
    
    private static final long serialVersionUID = 1L;

    /** 维修材料ID */
    private Long materialId;

    /** 维修工单ID */
    @Excel(name = "维修工单ID")
    private Long workOrderId;

    /** 材料编码 */
    @Excel(name = "材料编码")
    private String materialCode;

    /** 材料名称 */
    @Excel(name = "材料名称")
    private String materialName;

    /** 材料规格型号 */
    @Excel(name = "规格型号")
    private String materialSpec;

    /** 材料类型：1-备件 2-耗材 3-工具 */
    @Excel(name = "材料类型", dictType = "dms_material_type")
    private String materialType;

    /** 计量单位 */
    @Excel(name = "计量单位")
    private String unit;

    /** 计划数量 */
    @Excel(name = "计划数量")
    private BigDecimal planQuantity;

    /** 实际使用数量 */
    @Excel(name = "实际使用数量")
    private BigDecimal actualQuantity;

    /** 单价 */
    @Excel(name = "单价")
    private BigDecimal unitPrice;

    /** 总金额 */
    @Excel(name = "总金额")
    private BigDecimal totalAmount;

    /** 领用状态：0-待领用 1-已领用 2-已归还 */
    @Excel(name = "领用状态", dictType = "dms_receive_status")
    private String receiveStatus;

    /** 领用人 */
    @Excel(name = "领用人")
    private String receiver;

    /** 领用时间 */
    @Excel(name = "领用时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private String receiveTime;

    /** 仓库ID */
    @Excel(name = "仓库ID")
    private Long warehouseId;

    /** 仓库名称 */
    @Excel(name = "仓库名称")
    private String warehouseName;

    /** 备注 */
    @Excel(name = "备注")
    private String remark;
}
