package digital.laboratory.platform.reagent.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import digital.laboratory.platform.common.mybatis.base.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
import lombok.EqualsAndHashCode;


/**
 * (标准物质停用/报废销毁/恢复/降级使用审批表)
 *
 * @author Zhang Xiaolong created at  2023-03-10 14:25:05
 * @describe (标准物质停用/报废销毁/恢复/降级使用审批表) 实体类
 */
@Data
@TableName(value = "standard_material_approval_form", autoResultMap = true)
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "(标准物质停用/报废销毁/恢复/降级使用审批表)")
public class StandardMaterialApprovalForm extends BaseEntity {

    /**
     * (一级审核意见)
     */
    @ApiModelProperty(value="(一级审核意见)")
    private String auditOpinionOfPrimary;

    /**
     * (二级审核意见)
     */
    @ApiModelProperty(value="(二级审核意见)")
    private String auditOpinionOfSecondary;

    /**
     * (一级审核结果)
     */
    @ApiModelProperty(value="(一级审核结果)")
    private Boolean auditResultOfPrimary;

    /**
     * (二级审核结果)
     */
    @ApiModelProperty(value="(二级审核结果)")
    private Boolean auditResultOfSecondary;

    /**
     * (一级审核时间)
     */
    @ApiModelProperty(value="(一级审核时间)")
    private LocalDateTime auditTimeOfPrimary;

    /**
     * (二级审核时间)
     */
    @ApiModelProperty(value="(二级审核时间)")
    private LocalDateTime auditTimeOfSecondary;

    /**
     * (一级审核人ID)
     */
    @ApiModelProperty(value="(一级审核人ID)")
    private String primaryAuditorId;

    /**
     * (二级审核人ID)
     */
    @ApiModelProperty(value="(二级审核人ID)")
    private String secondaryAuditorId;

    /**
     * (审批人ID)
     */
    @ApiModelProperty(value="(审批人ID)")
    private String approverId;

    /**
     * (主任审批意见)
     */
    @ApiModelProperty(value="(审批意见)")
    private String opinionOfApproval;

    /**
     * (审批结果)
     */
    @ApiModelProperty(value="(审批结果)")
    private Boolean resultOfApproval;

    /**
     * (审批时间)
     */
    @ApiModelProperty(value="(审批时间)")
    private LocalDateTime approvalOfTime;

    /**
     * (经办人)
     */
    @ApiModelProperty(value="(经办人)")
    private String agentName;

    /**
     * (申请人)
     */
    @ApiModelProperty(value="(申请人)")
    private String applicantId;



    /**
     * (申请时间)
     */
    @ApiModelProperty(value="(申请时间)")
    private LocalDateTime applicationTime;


    /**
     * (批号)
     */
    @ApiModelProperty(value="(批号)")
    private String batchNumber;

    /**
     * (提交状态)
     */
    @ApiModelProperty(value="(提交状态)")
    private Integer commitStatus;


    /**
     * (定值结果)
     */
    @ApiModelProperty(value="(定值结果)")
    private String fixedResult;

    /**
     * (制造商)
     */
    @ApiModelProperty(value="(制造商)")
    private String manufacturerId;

    /**
     * (编号)
     */
    @ApiModelProperty(value="(编号)")
    private String number;
    /**
     * (标准物质编号)
     */
    @ApiModelProperty(value="(标准物质编号)")
    private String referenceMaterialNumber;
 /**
     * (标准物质名称)
     */
    @ApiModelProperty(value="(标准物质名称)")
    private String referenceMaterialName;

    /**
     * (处理时间)
     */
    @ApiModelProperty(value="(处理时间)")
    private LocalDateTime processingTime;

    /**
     * (购置时间)
     */
    @ApiModelProperty(value="(购置时间)")
    private LocalDateTime purchaseTime;

    /**
     * (数量)
     */
    @ApiModelProperty(value="(数量)")
    private Integer quantity;

    /**
     * (申请原因)
     */
    @ApiModelProperty(value="(申请原因)")
    private String reasonForApplication;

    /**
     * (标准物质id)
     */
    @ApiModelProperty(value="(标准物质id)")
    private String referenceMaterialId;

    /**
     * (备注)
     */
    @ApiModelProperty(value="(备注)")
    private String remarks;

    /**
     * (规格)
     */
    @ApiModelProperty(value="(规格)")
    private String specification;


    /**
     * standardMaterialApprovalFormId
     */
    @TableId(value = "standard_material_approval_form_id", type = IdType.ASSIGN_UUID)
    @ApiModelProperty(value="standardMaterialApprovalFormId")
    private String standardMaterialApprovalFormId;


}
