package com.diagbot.dto;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description:病历质控报表返回结构
 * @Author:cy
 * @time: 2021/1/20 13:32
 */
@Getter
@Setter
public class QualityControlDTO {

    /**
     * 姓名
     */
    @Excel(name = "病人姓名", width = 12, orderNum = "1")
    private String name;

    /**
     * 病人住院ID
     */
    @Excel(name = "住院号", width = 16, orderNum = "2")
    private String behospitalCode;

    /**
     * 主管医生id
     */
    private String doctorId;

    /**
     * 年龄
     */
    private String age;

    /**
     * 医生姓名
     */
    @Excel(name = "主治医生", width = 12, orderNum = "3")
    private String doctorName;

    /**
     * 科室id（科室编码）
     */
    private String deptId;
    /**
     * 科室名称
     */
    @Excel(name = "科室名称", width = 16, orderNum = "4")
    private String deptName;

    /**
     * 入院时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date behospitalDate;

    /**
     * 出院时间
     */
    @Excel(name = "出院时间", width = 25, orderNum = "5", exportFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date leaveHospitalDate;

    /**
     * 病案首页--
     */
    @Excel(name = "病案首页", width = 30, orderNum = "6")
    private String medHomePage = "无缺陷";
    /**
     * 病案首页扣分
     */
    @Excel(name = "扣分",width = 12, orderNum = "7")
    private Double medHomePageScore= 0d;

    /**
     * 入院记录--
     */
    @Excel(name = "入院记录",width = 30, orderNum = "8")
    private String admissionNote = "无缺陷";

    /**
     * 入院记录扣分
     */
    @Excel(name = "扣分",width = 12, orderNum = "9")
    private Double admissionNoteScore= 0d;

    /**
     * 首次病程录--
     */
    @Excel(name = "首次病程录",width = 30, orderNum = "10")
    private String firstCourseNote = "无缺陷";

    /**
     * 首次病程录扣分
     */
    @Excel(name = "扣分",width = 12, orderNum = "11")
    private Double firstCourseNoteScore= 0d;

    /**
     * 病程记录--
     */
    @Excel(name = "病程记录",width = 30, orderNum = "12")
    private String courseRecord = "无缺陷";

    /**
     * 病程记录扣分
     */
    @Excel(name = "扣分", width = 12,orderNum = "13")
    private Double courseRecordScore= 0d;

    /**
     * 手术信息--
     */
    @Excel(name = "手术信息",width = 30, orderNum = "14")
    private String  operationInfo = "无缺陷";

    /**
     * 手术信息扣分
     */
    @Excel(name = "扣分",width = 12, orderNum = "15")
    private Double operationInfoScore= 0d;

    /**
     * 出院记录--
     */
    @Excel(name = "出院记录",width = 30, orderNum = "16")
    private String  dischargeNote = "无缺陷";
    /**
     * 出院记录扣分
     */
    @Excel(name = "扣分",width = 12, orderNum = "17")
    private Double  dischargeNoteScore= 0d;

    /**
     * 医嘱单--
     */
    @Excel(name = "医嘱单",width = 30, orderNum = "18")
    private String  docAdviceNote = "无缺陷";
    /**
     * 医嘱单扣分
     */
    @Excel(name = "扣分",width = 12, orderNum = "19")
    private Double docAdviceNoteScore= 0d;

    /**
     * 其他
     */
    @Excel(name = "其他",width = 30, orderNum = "20")
    private String  otherCase = "无缺陷";
    /**
     * 其他扣分
     */
    @Excel(name = "扣分",width = 12, orderNum = "21")
    private Double otherCaseScore= 0d;

    /**
     * 总分
     */
    @Excel(name = "总分",width = 12, orderNum = "22")
    private Double  totalScore= 0d;
    /**
     * 病历等级
     */
    @Excel(name = "病历等级",width = 12, orderNum = "23")
    private String level;

    /**
     * 病案首页核查人
     */
    @Excel(name = "首页检查者", width = 12,orderNum = "24")
    private String  mrName;
    /**
     * 病历核查人
     */
    @Excel(name = "病历检查者",width = 12, orderNum = "25")
    private String chName;

}
