package com.ruoyi.sy.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 专业对象 sy_major_subject
 * 
 * @author mingxue
 * @date 2022-04-27
 */
public class SyMajorSubject extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 科目code */
    @Excel(name = "科目code")
    private String code;

    /** 科目parentcode */
    @Excel(name = "科目parentcode")
    private String parentCode;

    /** 科目名称 */
    @Excel(name = "科目名称")
    private String name;

    /** 科目类型，本科/专科 */
    @Excel(name = "科目类型，本科/专科")
    private String type;

    /** 层级 */
    @Excel(name = "层级")
    private Integer level;

    /** 祖级编码 */
    @Excel(name = "祖级编码")
    private String ancestors;

    /** 子级数量 */
    @Excel(name = "子级数量")
    private Integer childCount;

    /** 孙级数量 */
    @Excel(name = "孙级数量")
    private Integer grandchildCount;

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

    public Long getId() 
    {
        return id;
    }
    public void setCode(String code) 
    {
        this.code = code;
    }

    public String getCode() 
    {
        return code;
    }
    public void setParentCode(String parentCode) 
    {
        this.parentCode = parentCode;
    }

    public String getParentCode() 
    {
        return parentCode;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public SyMajorSubject setType(String type)
    {
        this.type = type;
        return this;
    }

    public String getType() 
    {
        return type;
    }
    public void setLevel(Integer level) 
    {
        this.level = level;
    }

    public Integer getLevel() 
    {
        return level;
    }
    public void setAncestors(String ancestors) 
    {
        this.ancestors = ancestors;
    }

    public String getAncestors() 
    {
        return ancestors;
    }
    public void setChildCount(Integer childCount)
    {
        this.childCount = childCount;
    }

    public Integer getChildCount()
    {
        return childCount;
    }
    public void setGrandchildCount(Integer grandchildCount)
    {
        this.grandchildCount = grandchildCount;
    }

    public Integer getGrandchildCount()
    {
        return grandchildCount;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("code", getCode())
            .append("parentCode", getParentCode())
            .append("name", getName())
            .append("type", getType())
            .append("level", getLevel())
            .append("ancestors", getAncestors())
            .append("childCount", getChildCount())
            .append("grandchildCount", getGrandchildCount())
            .toString();
    }
}
