package com.xinelu.manage.vo.patientinfoimportmain;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinelu.common.annotation.Excel;
import com.xinelu.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
public class PatientInfoImportMainVO extends BaseEntity {

    /** $column.columnComment */
    private Long id;

    /** 附件名称 */
    @ApiModelProperty(value = "附件名称")
    private String fileName;

    /** 已随访：FOLLOWED;未随访：NOT_FOLLOWED；PARTIAL_FOLLOWED */
    @ApiModelProperty(value = "已随访：FOLLOWED;未随访：NOT_FOLLOWED；PARTIAL_FOLLOWED")
    private String followupStatus;

    /** 已随访人数 */
    @ApiModelProperty(value = "已随访人数")
    private Long followupCount;

    /** 流水号 */
    @ApiModelProperty(value = "流水号")
    private Long sn;

    /** 患者数量 */
    @ApiModelProperty(value = "患者数量")
    private String patientCount;


    /** 导入人员 */
    @ApiModelProperty(value = "导入人员")
    private String createBy;

    /**
     * 导入日期
     */
    @ApiModelProperty(value = "导入日期时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "机构ID")
    private Long hospitalAgencyId;

    @ApiModelProperty(value = "机构名称")
    private String hospitalAgencyName;

    @ApiModelProperty(value = "院区ID")
    private Long campusAgencyId;


    /** 开始导入时间，时间格式：yyyy-MM-dd */
    @ApiModelProperty(value = "开始导入时间，时间格式：yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate importTimeStart;

    /** 导入时间，时间格式：yyyy-MM-dd */
    @ApiModelProperty(value = "截止导入时间，时间格式：yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate importTimeEnd;

    /**
     * 患者导入情况：FINISHED：已完成；UNFINISHED：未完成；NULL表示未完成
     */
    @ApiModelProperty(value = "患者导入情况")
    @Excel(name = "患者导入情况")
    private String importStatus;

    /**
     * 导入批次名称
     */
    @ApiModelProperty(value = "导入批次名称")
    @Excel(name = "导入批次名称")
    private String importName;
}
