package com.red.circle.console.app.dto.clienobject.admin;

import com.red.circle.framework.dto.ClientObject;
import java.io.Serial;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * <p>
 * 菜单树CO.
 * </p>
 *
 * @author Mybatis Plus
 */
@Data
@NoArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class MenuTreeCO extends ClientObject {

  @Serial
  private static final long serialVersionUID = 1L;

  /**
   * 记录id.
   */
  protected Integer id;

  /**
   * 父节点id.
   */
  protected Integer parentId;

  /**
   * 子节点信息.
   */
  protected List<MenuTreeCO> childrens = new ArrayList<>();

  /**
   * 菜单名称.
   */
  private String menuName;
  /**
   * 类型:1:目录,2:菜单,3:按钮.
   */
  private Integer menuType;
  /**
   * 映射地址.
   */
  private String router;
  /**
   * 路径.
   */
  private String path;
  /**
   * 图标.
   */
  private String icon;
  /**
   * 别名.
   */
  private String alias;
}
