package com.ywt.outpatient.domain.entity.center;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;

@Entity
@Table(name = "common_doctor_setting")
public class CommonDoctorSetting implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id
    @Column(name = "id", nullable = false)
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;

    /**
     * 创建时间
     */
    @Column(name = "create_time", nullable = false)
    private Date createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time", nullable = false)
    private Date updateTime;

    /**
     * 删除标识：0-未删除；1-已删除
     */
    @Column(name = "deleted", nullable = false)
    private Boolean deleted;

    /**
     * 医生 id
     */
    @Column(name = "doctor_id", nullable = false)
    private Integer doctorId;

    /**
     * 医院 id
     */
    @Column(name = "hospital_id", nullable = false)
    private Integer hospitalId;

    /**
     * 终端
     */
    @Column(name = "terminal", nullable = false)
    private Integer terminal;

    /**
     * 终端类型：患者端、医生端，目前只做显示用
     */
    @Column(name = "terminal_type")
    private String terminalType;

    /**
     * 终端所属的医院，目前只做显示用
     */
    @Column(name = "terminal_related_hospital")
    private String terminalRelatedHospital;

    /**
     * 设置类型，参考 sys_dict_type_item 的 common_doctor_setting_type 类型
     */
    @Column(name = "type", nullable = false)
    private Integer type;

    /**
     * 设置值
     */
    @Column(name = "value", nullable = false)
    private String value;

    /**
     * 终端所属的医院 id，可供医院后台查询过滤
     */
    @Column(name = "terminal_related_hospital_id")
    private Integer terminalRelatedHospitalId;

    /**
     * 扩展字段
     */
    @Column(name = "ext_value")
    private String extValue;

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getId() {
        return id;
    }

    /**
     * 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 删除标识：0-未删除；1-已删除
     */
    public void setDeleted(Boolean deleted) {
        this.deleted = deleted;
    }

    /**
     * 删除标识：0-未删除；1-已删除
     */
    public Boolean isDeleted() {
        return deleted;
    }

    /**
     * 医生 id
     */
    public void setDoctorId(Integer doctorId) {
        this.doctorId = doctorId;
    }

    /**
     * 医生 id
     */
    public Integer getDoctorId() {
        return doctorId;
    }

    /**
     * 医院 id
     */
    public void setHospitalId(Integer hospitalId) {
        this.hospitalId = hospitalId;
    }

    /**
     * 医院 id
     */
    public Integer getHospitalId() {
        return hospitalId;
    }

    /**
     * 终端
     */
    public void setTerminal(Integer terminal) {
        this.terminal = terminal;
    }

    /**
     * 终端
     */
    public Integer getTerminal() {
        return terminal;
    }

    /**
     * 终端类型：患者端、医生端，目前只做显示用
     */
    public void setTerminalType(String terminalType) {
        this.terminalType = terminalType;
    }

    /**
     * 终端类型：患者端、医生端，目前只做显示用
     */
    public String getTerminalType() {
        return terminalType;
    }

    /**
     * 终端所属的医院，目前只做显示用
     */
    public void setTerminalRelatedHospital(String terminalRelatedHospital) {
        this.terminalRelatedHospital = terminalRelatedHospital;
    }

    /**
     * 终端所属的医院，目前只做显示用
     */
    public String getTerminalRelatedHospital() {
        return terminalRelatedHospital;
    }

    /**
     * 设置类型，参考 sys_dict_type_item 的 common_doctor_setting_type 类型
     */
    public void setType(Integer type) {
        this.type = type;
    }

    /**
     * 设置类型，参考 sys_dict_type_item 的 common_doctor_setting_type 类型
     */
    public Integer getType() {
        return type;
    }

    /**
     * 设置值
     */
    public void setValue(String value) {
        this.value = value;
    }

    /**
     * 设置值
     */
    public String getValue() {
        return value;
    }

    /**
     * 终端所属的医院 id，可供医院后台查询过滤
     */
    public void setTerminalRelatedHospitalId(Integer terminalRelatedHospitalId) {
        this.terminalRelatedHospitalId = terminalRelatedHospitalId;
    }

    /**
     * 终端所属的医院 id，可供医院后台查询过滤
     */
    public Integer getTerminalRelatedHospitalId() {
        return terminalRelatedHospitalId;
    }

    /**
     * 扩展字段
     */
    public void setExtValue(String extValue) {
        this.extValue = extValue;
    }

    /**
     * 扩展字段
     */
    public String getExtValue() {
        return extValue;
    }

    @Override
    public String toString() {
        return "CommonDoctorSetting{" +
                "id=" + id + '\'' +
                "createTime=" + createTime + '\'' +
                "updateTime=" + updateTime + '\'' +
                "deleted=" + deleted + '\'' +
                "doctorId=" + doctorId + '\'' +
                "hospitalId=" + hospitalId + '\'' +
                "terminal=" + terminal + '\'' +
                "terminalType=" + terminalType + '\'' +
                "terminalRelatedHospital=" + terminalRelatedHospital + '\'' +
                "type=" + type + '\'' +
                "value=" + value + '\'' +
                "terminalRelatedHospitalId=" + terminalRelatedHospitalId + '\'' +
                "extValue=" + extValue + '\'' +
                '}';
    }
}
