package com.qmth.distributed.print.business.bean.result;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qmth.distributed.print.business.bean.dto.CourseDimensionOccupiedDto;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;

/**
 * @Description: 课程知识点树结果
 * @Author: CaoZixuan
 * @Date: 2024-02-28
 */
public class CourseDimensionTree {
    @ApiModelProperty("知识点id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    @ApiModelProperty("知识点编号")
    private String code;

    @ApiModelProperty("知识点名称")
    private String name;

    @ApiModelProperty("占用状态")
    private CourseDimensionOccupiedDto occupied;

    @ApiModelProperty("子知识点")
    private List<CourseDimensionTree> children;

    public CourseDimensionTree(Long id, String code, String name, CourseDimensionOccupiedDto occupied,
            List<CourseDimensionTree> children) {
        this.id = id;
        this.code = code;
        this.name = name;
        this.occupied = occupied;
        this.children = children;
    }

    public CourseDimensionTree() {
    }

    public Long getId() {
        return id;
    }

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

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

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

    public CourseDimensionOccupiedDto getOccupied() {
        return occupied;
    }

    public void setOccupied(CourseDimensionOccupiedDto occupied) {
        this.occupied = occupied;
    }

    public List<CourseDimensionTree> getChildren() {
        return children;
    }

    public void setChildren(List<CourseDimensionTree> children) {
        this.children = children;
    }
}
