package com.docus.server.archivefile.infrastructure.entity;

import com.docus.server.archivefile.infrastructure.dto.ReportDTO;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 上报记录保存表
 */
@Data
public class AfReportRecord implements Serializable {

    private static final long serialVersionUID = 1L;

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

    /**
     * 住院号
     */
    private String inpatientNo;

    /**
     * 住院流水号，记账号
     */
    private String jzh;

    /**
     * 住院次数
     */
    private Integer admissTimes;

    /**
     * 下载地址，多个使用 | 分隔
     */
    private String downUrl;

    /**
     * 下载路径类型 1:url，2:base64，3:url base64，4:共享文件，5：本地文件base64
     */
    private Integer downType;

    /**
     * 状态 0 未开始，可用于补偿，1 已发送下载
     */
    private Integer state;

    /**
     * 报告唯一id
     */
    private String serialnum;

    /**
     * 报告来源 采集器标识
     */
    private String sysflag;

    /**
     * 报告所属文件分段id
     */
    private String zdAssortId;

    /**
     * 记录创建时间
     */
    private Date createTime;

    /**
     * 记录更新时间
     */
    private Date updateTime;

    /**
     * 报告名称
     */
    private String fileName;

    /**
     * 病案主键
     */
    private String patientId;


    public AfReportRecord() {
    }

    public AfReportRecord(ReportDTO reportDTO) {
        this.jzh = reportDTO.getJzh();
        this.admissTimes = reportDTO.getAdmisstimes();
        this.inpatientNo = reportDTO.getInpatientNo();
        this.downUrl = reportDTO.getDownUrl();
        this.sysflag = reportDTO.getSysFlag();
        this.zdAssortId = reportDTO.getAssortId();
        this.serialnum = reportDTO.getSerialnum();
        this.fileName = reportDTO.getFileTitle();
        this.downType = reportDTO.getDowntype();
    }
}
