package com.fs.doctor.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 讲者业务员绑定对象 doctor_company_user
 *
 * @author fs
 * @date 2025-12-30
 */
public class DoctorCompanyUser extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 讲者业务ID */
    @Excel(name = "讲者业务ID")
    private String doctorId;

    /** 业务员ID */
    @Excel(name = "业务员ID")
    private String companyUserId;

    /** 业务员姓名 */
    @Excel(name = "业务员姓名")
    private String companyUserName;

    /** 公司ID */
    @Excel(name = "公司ID")
    private Long companyId;

    /** 对应产品 */
    @Excel(name = "对应产品")
    private String product;

    /** 绑定时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "绑定时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date bindtime;

    /** 逻辑删除标记（0-未删除 1-已删除） */
    @Excel(name = "逻辑删除标记", readConverterExp = "0=-未删除,1=-已删除")
    private Long deleted;

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

    public Long getId()
    {
        return id;
    }
    public void setDoctorId(String doctorId)
    {
        this.doctorId = doctorId;
    }

    public String getDoctorId()
    {
        return doctorId;
    }
    public void setCompanyUserId(String companyUserId)
    {
        this.companyUserId = companyUserId;
    }

    public String getCompanyUserId()
    {
        return companyUserId;
    }
    public void setCompanyUserName(String companyUserName)
    {
        this.companyUserName = companyUserName;
    }

    public String getCompanyUserName()
    {
        return companyUserName;
    }
    public void setCompanyId(Long companyId)
    {
        this.companyId = companyId;
    }

    public Long getCompanyId()
    {
        return companyId;
    }
    public void setProduct(String product)
    {
        this.product = product;
    }

    public String getProduct()
    {
        return product;
    }
    public void setBindtime(Date bindtime)
    {
        this.bindtime = bindtime;
    }

    public Date getBindtime()
    {
        return bindtime;
    }
    public void setDeleted(Long deleted)
    {
        this.deleted = deleted;
    }

    public Long getDeleted()
    {
        return deleted;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("doctorId", getDoctorId())
            .append("companyUserId", getCompanyUserId())
            .append("companyUserName", getCompanyUserName())
            .append("companyId", getCompanyId())
            .append("product", getProduct())
            .append("bindtime", getBindtime())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("deleted", getDeleted())
            .toString();
    }
}
