package com.xinelu.manage.vo.screeningrecord;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinelu.manage.vo.patientinfo.PatientInfoVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.Data;

/**
 * @Author mengkuiliang
 * @Description 居民预约记录展示对象
 * @Date 2023-01-29 14:06
 * @Param
 * @return
 **/
@Data
@ApiModel("居民预约记录展示对象")
public class ScreeningRecordVo {

    /** 居民信息 */
    @ApiModelProperty("居民信息")
    private PatientInfoVO patientInfoVO;

    /**
     * 业务主键
     */
    @ApiModelProperty("业务主键")
    private String screeningId;

    /**
     * 居民业务主键
     */
    @ApiModelProperty("居民业务主键")
    private Long patientId;

    /**
     * 居民姓名
     */
    @ApiModelProperty("居民姓名")
    private String patientName;

	/**
	 * 性别（1：男 2：女）
	 */
	private String gender;

	/**
	 * 身份证号
	 */
	private String identity;

	/**
	 * 出生日期
	 */
	@JsonFormat(pattern = "yyyy-MM-dd")
	private Date birthday;

	/**
	 * 联系电话
	 */
	private String phone;

	@ApiModelProperty("纳入管理状态")
	private String manageStatus;

	@ApiModelProperty("纳入管理时间")
	private Date manageDate;

    /**
     * 状态（1：已预约 2：取消预约 3：已登记 4：已完成）
     */
    @ApiModelProperty("状态（1：已预约 2：取消预约 3：已登记 4：已完成）")
    private String screeningStatus;

    /**
     * 基础疾病
     */
    @ApiModelProperty("基础疾病")
    private String disease;

	@ApiModelProperty("预约项目id")
	private String projectId;

	@ApiModelProperty("预约项目")
	private String projectName;

	@ApiModelProperty(value = "诊断结果")
	private String diagnosticResult;

	@ApiModelProperty("附件一")
	private String attachment;

	@ApiModelProperty("附件二")
	private String attachmentTwo;
    /**
     * 医院编号
     */
    @ApiModelProperty("医院编号")
    private Long hospitalId;

    /**
     * 医院名称
     */
    @ApiModelProperty("医院名称")
    private String hospitalName;

    /**
     * 医生编号
     */
    @ApiModelProperty("医生编号")
    private Long doctorId;

    /**
     * 医生名称
     */
    @ApiModelProperty("医生名称")
    private String doctorName;

    /**
     * 检查日期
     */
    @ApiModelProperty("检查日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date screeningDate;

    /**
     * 预约开始时间
     */
    @ApiModelProperty("预约开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date applyStartTime;

    /**
     * 预约结束时间
     */
    @ApiModelProperty("预约结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date applyEndTime;

    /**
     * 预约时间区间
     */
    @ApiModelProperty("预约时间区间")
    private String applyTime;

	@ApiModelProperty("预约码")
	private String applyCode;

	@ApiModelProperty("预约条码")
	private String applyBarcode;

	@ApiModelProperty("登记日期")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm")
	private Date registrationDate;

	@ApiModelProperty("登记码")
	private String registrationCode;

	@ApiModelProperty(value = "登记条码")
	private String registrationBarcode;

	@ApiModelProperty("是否过期，0:生效中,1:已过期")
	private String exceedStatus;

	@ApiModelProperty("是否生成筛查结果，0:未生成,1:已生成")
	private String hasResult;

	@ApiModelProperty("是否诊断，0:未诊断,1:已诊断")
	private String hasDiagnose;

	@ApiModelProperty(value = "筛查种类，1：居民预约，2：医生推送")
	private String screeningType;

	@ApiModelProperty(value = "医生推送日期")
	private Date pushDate;

	@ApiModelProperty(value = "评估业务主键")
	private String assessRecordId;

    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String remark;


	/**
	 * 文件类型
	 */
	@ApiModelProperty("文件类型")
	private String fileType;

}
