package com.fs.qywx.domain;

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;

/**
 * 企业微信三方应用授权公司对象 qywx_company
 *
 * @author fs
 * @date 2023-07-24
 */
public class QywxCompany extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Integer id;

    /** 企业id */
    @Excel(name = "企业id")
    private String corpId;

    /** 企业永久授权码 */
    @Excel(name = "企业永久授权码")
    private String permanentCode;

    /** 企业名称 */
    @Excel(name = "企业名称")
    private String corpName;

    /** 企业全称 */
    @Excel(name = "企业全称")
    private String corpFullName;

    /** 企业类型 */
    @Excel(name = "企业类型")
    private Integer subjectType;

    /** 企业认证到期时间 */
    @Excel(name = "企业认证到期时间")
    private String verifiedEndTime;

    /** 授权应用id */
    @Excel(name = "授权应用id")
    private Integer agentId;


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


    /** accessToken */
    @Excel(name = "accessToken")
    private String accessToken;

    /** token过期时间 */
    @Excel(name = "token过期时间")
    private Integer expiresIn;

    /** docPrivateKey */
    @Excel(name = "docPrivateKey")
    private String docPrivateKey;

    /** docPublicKey */
    @Excel(name = "docPublicKey")
    private String docPublicKey;

    /** docPrivateSecret */
    @Excel(name = "docPrivateSecret")
    private String docPrivateSecret;

    /** 账户状态，-1为删除，禁用为0 启用为1 */
    @Excel(name = "账户状态，-1为删除，禁用为0 启用为1")
    private Integer status;

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

    public Integer getId()
    {
        return id;
    }
    public void setCorpId(String corpId)
    {
        this.corpId = corpId;
    }

    public String getCorpId()
    {
        return corpId;
    }
    public void setPermanentCode(String permanentCode)
    {
        this.permanentCode = permanentCode;
    }

    public String getPermanentCode()
    {
        return permanentCode;
    }
    public void setCorpName(String corpName)
    {
        this.corpName = corpName;
    }

    public String getCorpName()
    {
        return corpName;
    }
    public void setCorpFullName(String corpFullName)
    {
        this.corpFullName = corpFullName;
    }

    public String getCorpFullName()
    {
        return corpFullName;
    }
    public void setSubjectType(Integer subjectType)
    {
        this.subjectType = subjectType;
    }

    public Integer getSubjectType()
    {
        return subjectType;
    }
    public void setVerifiedEndTime(String verifiedEndTime)
    {
        this.verifiedEndTime = verifiedEndTime;
    }

    public String getVerifiedEndTime()
    {
        return verifiedEndTime;
    }
    public void setAgentId(Integer agentId)
    {
        this.agentId = agentId;
    }

    public Integer getAgentId()
    {
        return agentId;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }

    public Long getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Long companyId) {
        this.companyId = companyId;
    }

    public String getAccessToken() {
        return accessToken;
    }

    public void setAccessToken(String accessToken) {
        this.accessToken = accessToken;
    }

    public Integer getExpiresIn() {
        return expiresIn;
    }

    public void setExpiresIn(Integer expiresIn) {
        this.expiresIn = expiresIn;
    }


    public String getDocPrivateKey() {
        return docPrivateKey;
    }

    public void setDocPrivateKey(String docPrivateKey) {
        this.docPrivateKey = docPrivateKey;
    }

    public String getDocPublicKey() {
        return docPublicKey;
    }

    public void setDocPublicKey(String docPublicKey) {
        this.docPublicKey = docPublicKey;
    }

    public String getDocPrivateSecret() {
        return docPrivateSecret;
    }

    public void setDocPrivateSecret(String docPrivateSecret) {
        this.docPrivateSecret = docPrivateSecret;
    }


    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("corpId", getCorpId())
            .append("permanentCode", getPermanentCode())
            .append("corpName", getCorpName())
            .append("corpFullName", getCorpFullName())
            .append("subjectType", getSubjectType())
            .append("verifiedEndTime", getVerifiedEndTime())
            .append("agentId", getAgentId())
            .append("status", getStatus())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
