package com.xinelu.manage.domain.projectresult;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinelu.common.annotation.Excel;
import com.xinelu.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 检测项目结果对象 project_result
 *
 * @author haown
 * @date 2024-03-11
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "检测项目结果对象", description = "project_result")
public class ProjectResult extends BaseEntity
        {
private static final long serialVersionUID=1L;

    /** 主键id */
    private Long id;

    /** 患者id */
    @ApiModelProperty(value = "患者id")
    @Excel(name = "患者id")
    private Long patientId;

    /** 患者姓名 */
    @ApiModelProperty(value = "患者姓名")
    @Excel(name = "患者姓名")
    private String patientName;

    /** 患者身份证号 */
    @ApiModelProperty(value = "患者身份证号")
    @Excel(name = "患者身份证号")
    private String cardNo;

    /** 批次表id */
    @ApiModelProperty(value = "批次表id")
    @Excel(name = "批次表id")
    private Long batchId;

    /** 批次名称 */
    @ApiModelProperty(value = "批次名称")
    @Excel(name = "批次名称")
    private String batchName;

    /** 分组id */
    @ApiModelProperty(value = "分组id")
    @Excel(name = "分组id")
    private Long groupId;

    /** 分组名称 */
    @ApiModelProperty(value = "分组名称")
    @Excel(name = "分组名称")
    private String groupName;

    /** 项目id */
    @ApiModelProperty(value = "项目id")
    @Excel(name = "项目id")
    private Long projectId;

    /** 项目名称 */
    @ApiModelProperty(value = "项目名称")
    @Excel(name = "项目名称")
    private String projectName;

    /** 检测设备id */
    @ApiModelProperty(value = "检测设备id")
    @Excel(name = "检测设备id")
    private Long deviceId;

    /** 检测设备名称 */
    @ApiModelProperty(value = "检测设备名称")
    @Excel(name = "检测设备名称")
    private String deviceName;

    /** 项目别名 */
    @ApiModelProperty(value = "项目别名")
    @Excel(name = "项目别名")
    private String projectAlias;

    /** 判断模式，定量：QUANTIFY，定性：QUALITATIVE */
    @ApiModelProperty(value = "判断模式，定量：QUANTIFY，定性：QUALITATIVE")
    @Excel(name = "判断模式，定量：QUANTIFY，定性：QUALITATIVE")
    private String judgeMode;

    /** 检测结果，数字或文字描述 */
    @ApiModelProperty(value = "检测结果，数字或文字描述")
    @Excel(name = "检测结果，数字或文字描述")
    private String measureResult;

    /** 项目指标最大值 */
    @ApiModelProperty(value = "项目指标最大值")
    @Excel(name = "项目指标最大值")
    private BigDecimal maxValue;

    /** 项目指标最小值 */
    @ApiModelProperty(value = "项目指标最小值")
    @Excel(name = "项目指标最小值")
    private BigDecimal minValue;

    /** 项目指标默认值 */
    @ApiModelProperty(value = "项目指标默认值")
    @Excel(name = "项目指标默认值")
    private String defaultValue;

    /** LIS对照 */
    @ApiModelProperty(value = "LIS对照")
    @Excel(name = "LIS对照")
    private String lisCompare;

    /** 检测时间 */
    @ApiModelProperty(value = "检测时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "检测时间", width = 30, dateFormat = "yyyy-MM-dd")
    private LocalDateTime measureTime;

    /** 检测人姓名，自动上传时为空，手动上传为上传人姓名 */
    @ApiModelProperty(value = "检测人姓名，自动上传时为空，手动上传为上传人姓名")
    @Excel(name = "检测人姓名，自动上传时为空，手动上传为上传人姓名")
    private String measureName;

    /** 备注信息 */
    @ApiModelProperty(value = "备注信息")
    @Excel(name = "备注信息")
    private String recordRemark;

    /** 合格标识，合格：QUALIFIED，不合格：NOT_QUALIFIED */
    @ApiModelProperty(value = "合格标识，合格：QUALIFIED，不合格：NOT_QUALIFIED")
    @Excel(name = "合格标识，合格：QUALIFIED，不合格：NOT_QUALIFIED")
    private String qualifiedSign;

    /** 检测结果附件路径 */
    @ApiModelProperty(value = "检测结果附件路径")
    @Excel(name = "检测结果附件路径")
    private String measureResultPath;

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

}
