package cn.sh.stc.sict.theme.hphy.model;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * 电子病历-病历概要-患者基本信息表
 *
 * @author F_xh
 * @date 2020-09-29 15:05:30
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("hphy_bl_emr_med_case_patient")
public class HphyBlEmrMedCasePatient extends Model<HphyBlEmrMedCasePatient> {
    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @TableId
    @ApiModelProperty(hidden = false, value = "ID")
    private Long id;
    /**
     * 门(急)诊流水号
     */
    @ApiModelProperty(hidden = false, value = "门(急)诊流水号")
    private Long caseId;
    /**
     * 居民主索引
     */
    @ApiModelProperty(hidden = false, value = "居民主索引")
    private Long residentId;
    /**
     * 院内患者唯一标识
     */
    @ApiModelProperty(hidden = false, value = "院内患者唯一标识")
    private Long hospitalPatientId;
    /**
     * 居民健康卡号
     */
    @ApiModelProperty(hidden = false, value = "居民健康卡号")
    private Long healthCardId;
    /**
     * 城乡居民个人健康档案的唯一标识
     */
    @ApiModelProperty(hidden = false, value = "城乡居民个人健康档案的唯一标识")
    private Long healthRecordId;
    /**
     * 城乡居民个人健康档案的编号
     */
    @ApiModelProperty(hidden = false, value = "城乡居民个人健康档案的编号")
    private String healthRecordCode;
    /**
     * 医疗保险类别代码
     */
    @ApiModelProperty(hidden = false, value = "医疗保险类别代码")
    private String medicalInsuranceCode;
    /**
     * 医疗保险类别
     */
    @ApiModelProperty(hidden = false, value = "医疗保险类别")
    private String medicalInsurance;
    /**
     * 本人姓名
     */
    @ApiModelProperty(hidden = false, value = "本人姓名")
    private String patientName;
    /**
     * 身份证件类别代码
     */
    @ApiModelProperty(hidden = false, value = "身份证件类别代码")
    private String idCardCode;
    /**
     * 身份证件类别名称
     */
    @ApiModelProperty(hidden = false, value = "身份证件类别名称")
    private String idCardName;
    /**
     * 身份证件号码
     */
    @ApiModelProperty(hidden = false, value = "身份证件号码")
    private String idCardNo;
    /**
     * 出生日期
     */
    @ApiModelProperty(hidden = false, value = "出生日期")
    private Date birthDate;
    /**
     * 性别代码GB/T2261.1
     */
    @ApiModelProperty(hidden = false, value = "性别代码GB/T2261.1")
    private String sexCode;
    /**
     * 性别名称
     */
    @ApiModelProperty(hidden = false, value = "性别名称")
    private String sexName;
    /**
     * 婚姻状况代码
     */
    @ApiModelProperty(hidden = false, value = "婚姻状况代码")
    private String maritalCode;
    /**
     * 婚姻状况名称
     */
    @ApiModelProperty(hidden = false, value = "婚姻状况名称")
    private String marital;
    /**
     * 民族代码
     */
    @ApiModelProperty(hidden = false, value = "民族代码")
    private String ethnicGroupCode;
    /**
     * 民族名称
     */
    @ApiModelProperty(hidden = false, value = "民族名称")
    private String ethnicGroup;
    /**
     * 职业类别代码GB/T6565
     */
    @ApiModelProperty(hidden = false, value = "职业类别代码GB/T6565")
    private String occupationCode;
    /**
     * 职业类别名称
     */
    @ApiModelProperty(hidden = false, value = "职业类别名称")
    private String occupation;
    /**
     * 工作单位名称
     */
    @ApiModelProperty(hidden = false, value = "工作单位名称")
    private String workUnitName;
    /**
     * ABO血型代码
     */
    @ApiModelProperty(hidden = false, value = "ABO血型代码")
    private String aboBloodCode;
    /**
     * ABO血型名称
     */
    @ApiModelProperty(hidden = false, value = "ABO血型名称")
    private String aboBlood;
    /**
     * RH血型代码
     */
    @ApiModelProperty(hidden = false, value = "RH血型代码")
    private String rhBloodCode;
    /**
     * RH血型名称
     */
    @ApiModelProperty(hidden = false, value = "RH血型名称")
    private String rhBlood;
    /**
     * 工作单位电话号码
     */
    @ApiModelProperty(hidden = false, value = "工作单位电话号码")
    private String workUnitTelephone;
    /**
     * 地址类别代码
     */
    @ApiModelProperty(hidden = false, value = "地址类别代码")
    private String addrSortCode;
    /**
     * 地址类别
     */
    @ApiModelProperty(hidden = false, value = "地址类别")
    private String addrSort;
    /**
     * 现住地址-省
     */
    @ApiModelProperty(hidden = false, value = "现住地址-省")
    private String province;
    /**
     * 现住地址-市(地区、州)
     */
    @ApiModelProperty(hidden = false, value = "现住地址-市(地区、州)")
    private String city;
    /**
     * 现住地址-县(区)
     */
    @ApiModelProperty(hidden = false, value = "现住地址-县(区)")
    private String county;
    /**
     * 现住地址-乡(镇、街道办事处)
     */
    @ApiModelProperty(hidden = false, value = "现住地址-乡(镇、街道办事处)")
    private String township;
    /**
     * 现住地址-村(街、路、弄等)
     */
    @ApiModelProperty(hidden = false, value = "现住地址-村(街、路、弄等)")
    private String village;
    /**
     * 现住地址-门牌号码
     */
    @ApiModelProperty(hidden = false, value = "现住地址-门牌号码")
    private String houseNo;
    /**
     * 现住地址-详细地址
     */
    @ApiModelProperty(hidden = false, value = "现住地址-详细地址")
    private String detailedAddr;
    /**
     * 邮政编码
     */
    @ApiModelProperty(hidden = false, value = "邮政编码")
    private String postcode;
    /**
     * 患者电话号码
     */
    @ApiModelProperty(hidden = false, value = "患者电话号码")
    private String patientPhone;
    /**
     * 联系人姓名
     */
    @ApiModelProperty(hidden = false, value = "联系人姓名")
    private String contactName;
    /**
     * 联系人电话号码
     */
    @ApiModelProperty(hidden = false, value = "联系人电话号码")
    private String contactPhone;
    /**
     * 建档日期时间
     */
    @ApiModelProperty(hidden = false, value = "建档日期时间")
    private Date filingDate;
    /**
     * 建档医疗机构组织机构名称
     */
    @ApiModelProperty(hidden = false, value = "建档医疗机构组织机构名称")
    private String filingOrgName;
    /**
     * 建档医疗机构组织机构代码
     */
    @ApiModelProperty(hidden = false, value = "建档医疗机构组织机构代码")
    private String filingOrgCode;
    /**
     * 建档者姓名
     */
    @ApiModelProperty(hidden = false, value = "建档者姓名")
    private String filingOpeName;
    /**
     * 机构编码
     */
    @ApiModelProperty(hidden = false, value = "机构编码")
    private String orgCode;
    /**
     * 机构名称
     */
    @ApiModelProperty(hidden = false, value = "机构名称")
    private String orgName;
    /**
     * 录入时间
     */
    @ApiModelProperty(hidden = false, value = "录入时间")
    private Date createTime;
    /**
     * 录入人编号
     */
    @ApiModelProperty(hidden = false, value = "录入人编号")
    private Long creatorId;
    /**
     * 录入人名称
     */
    @ApiModelProperty(hidden = false, value = "录入人名称")
    private String creator;
    /**
     * 最后修改时间
     */
    @ApiModelProperty(hidden = false, value = "最后修改时间")
    private Date modifiedTime;
    /**
     * 最后修改人编号
     */
    @ApiModelProperty(hidden = false, value = "最后修改人编号")
    private Long modifierId;
    /**
     * 最后修改人名称
     */
    @ApiModelProperty(hidden = false, value = "最后修改人名称")
    private String modifier;

    /**
     * 主键值
     */
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
