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:06
 * @describe (分散采购申请) 实体类
 */
@Data
@TableName(value = "decentralized_request", autoResultMap = true)
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "(分散采购申请)")
public class DecentralizedRequest extends BaseEntity {

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

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

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

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

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

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

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

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

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

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

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

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

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

    /**
     * (需要符合性检验)
     */
    @ApiModelProperty(value="(需要符合性检验)")
    private Boolean complianceTesting;

    /**
     * (申请日期)
     */
    @ApiModelProperty(value="(申请日期)")
    private LocalDateTime dateOfApplication;

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

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

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

    /**
     * (采购清单ID)
     */
    @ApiModelProperty(value="(采购清单ID)")
    private String purchaseListId;

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

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





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


}
