package com.crunii.micro.service.sysmgr.dto.org;

import com.crunii.micro.domain.dto.Worker;
import com.crunii.micro.domain.entity.main.TsmOrg;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.util.ArrayList;
import java.util.List;

@Getter
@Setter
@ToString
@ApiModel(value = "组织树节点")
public class OrgTreeNode extends TsmOrg {

    @ApiModelProperty(value = "组织类型名称")
    private String orgTypeName;

    @ApiModelProperty(value = "组织上级名称")
    private String orgUpName;

    @ApiModelProperty(value = "当前组织的有效人员")
    private List<Worker> users;

    @ApiModelProperty(value = "分配表id")
    private Long bpdId;

    @ApiModelProperty(value = "当前组织下所有人员数量")
    private Long orgUserNum;

    @ApiModelProperty(value = "有效节点")
    private Long leaf;

    @ApiModelProperty(value = "是否禁止")
    private Integer isDisabled;

    @ApiModelProperty(value = "子节点")
    private List<OrgTreeNode> children = new ArrayList<>();
}
