package com.yihu.jw.entity.care.birthday;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.jw.entity.IdEntity;

import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;

/**
 * 生日祝福推送记录表
 * Created by humingfen on 2018/10/24.
 */
@Entity
@Table(name = "birthday_wishes_to_patient")
public class BirthDayWishesToPatient extends IdEntity {


    //说明：如医生推送生日祝福给5个居民，则保存5条userType=1的记录和1条userType=2的记录（共6条）batchNo批次号一样。
    private String batchNo;//批次号记录发送所属批次（ES：必填）
    private String patientCode; // 患者标识（ES）（根据userType的值，userType=1，必填；userType=2，为空）
    private String patientName; // 患者名称（ES）（根据userType的值，userType=1，必填；userType=2，为空）
    private String doctorCode;  //发送人code(doctor表中的code)（ES：必填）
    private String doctorName;  //发送人名称(doctor表中的name)（ES：必填）
    private Integer userType; // 1、患者，2医生（ES：必填）


    //备注：从发送人的信息中获取（doctor表获取）
    private String sendPic;   // 发送人头像（ES）
    private String sendSex;   // 发送人性别（ES）
    private Long adminTeamCode;// 行政团队（ES）
    private String adminTeamName;// 行政团队（ES）
    private String hospital; // 所属机构（ES）
    private String hospitalName; // 所属机构（ES）
    private String town; // 所属区划（ES）
    private String townName; // 所属区划（ES）
    private Integer sendType;//发送类型 1医生发送 2（管理员）卫纪委发送（ES:必填）
    private Integer sendLevel;   // 发送人级别  1专科医生，2全科医生，3健康管理师 4 管理员（ES）

    //说明：如普通医生推送则保存doctor表中的hospital字段，如管理员推送则保存当前角色的code（取wlyy_user_role表中的role字段）
    private String currentUserRoleCode;//发送者当前登录的角色code（ES:必填）
    private String currentUserRoleLevel;//发送者当前登录的角色级别，1、省，2、市，3、区，4、机构（ES:必填）
    private Integer sendSource; //1或者为空 i健康后台推送  2PC端推送（默认旧数据为1）（为后续平台推送统计做备用字段）
    private Integer allCount;//所有的推送数目（ES:必填）
    private String openidSet;//本次发送生日祝福的openid的总集合

    //生日祝福
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "MM-dd")
    private String birthday;  // 居民生日（ES:必填）
    private Long templateId; //生日模板id
    private String content; //生日祝福内容 （ES:必填）

    private String createTime;  // 创建时间（ES:必填）


    public String getBatchNo() {
        return batchNo;
    }

    public void setBatchNo(String batchNo) {
        this.batchNo = batchNo;
    }

    public String getPatientCode() {
        return patientCode;
    }

    public void setPatientCode(String patientCode) {
        this.patientCode = patientCode;
    }

    public String getPatientName() {
        return patientName;
    }

    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }

    public String getDoctorCode() {
        return doctorCode;
    }

    public void setDoctorCode(String doctorCode) {
        this.doctorCode = doctorCode;
    }

    public String getDoctorName() {
        return doctorName;
    }

    public void setDoctorName(String doctorName) {
        this.doctorName = doctorName;
    }

    public Integer getUserType() {
        return userType;
    }

    public void setUserType(Integer userType) {
        this.userType = userType;
    }

    public String getSendPic() {
        return sendPic;
    }

    public void setSendPic(String sendPic) {
        this.sendPic = sendPic;
    }

    public String getSendSex() {
        return sendSex;
    }

    public void setSendSex(String sendSex) {
        this.sendSex = sendSex;
    }

    public Long getAdminTeamCode() {
        return adminTeamCode;
    }

    public void setAdminTeamCode(Long adminTeamCode) {
        this.adminTeamCode = adminTeamCode;
    }

    public String getAdminTeamName() {
        return adminTeamName;
    }

    public void setAdminTeamName(String adminTeamName) {
        this.adminTeamName = adminTeamName;
    }

    public String getHospital() {
        return hospital;
    }

    public void setHospital(String hospital) {
        this.hospital = hospital;
    }

    public String getHospitalName() {
        return hospitalName;
    }

    public void setHospitalName(String hospitalName) {
        this.hospitalName = hospitalName;
    }

    public String getTown() {
        return town;
    }

    public void setTown(String town) {
        this.town = town;
    }

    public String getTownName() {
        return townName;
    }

    public void setTownName(String townName) {
        this.townName = townName;
    }

    public String getCurrentUserRoleCode() {
        return currentUserRoleCode;
    }

    public void setCurrentUserRoleCode(String currentUserRoleCode) {
        this.currentUserRoleCode = currentUserRoleCode;
    }

    public String getCurrentUserRoleLevel() {
        return currentUserRoleLevel;
    }

    public void setCurrentUserRoleLevel(String currentUserRoleLevel) {
        this.currentUserRoleLevel = currentUserRoleLevel;
    }

    public Integer getSendSource() {
        return sendSource;
    }

    public void setSendSource(Integer sendSource) {
        this.sendSource = sendSource;
    }

    public Integer getAllCount() {
        return allCount;
    }

    public void setAllCount(Integer allCount) {
        this.allCount = allCount;
    }

    public String getBirthday() {
        return birthday;
    }

    public void setBirthday(String birthday) {
        this.birthday = birthday;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public Integer getSendType() {
        return sendType;
    }

    public void setSendType(Integer sendType) {
        this.sendType = sendType;
    }

    public Integer getSendLevel() {
        return sendLevel;
    }

    public void setSendLevel(Integer sendLevel) {
        this.sendLevel = sendLevel;
    }

    public String getOpenidSet() {
        return openidSet;
    }

    public void setOpenidSet(String openidSet) {
        this.openidSet = openidSet;
    }

    public Long getTemplateId() {
        return templateId;
    }

    public void setTemplateId(Long templateId) {
        this.templateId = templateId;
    }
}
