package com.bonus.canteen.core.auth.menu.vo;

import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

@ApiModel("菜单树")
public class MgrMenuTreeVO {
   @TableId
   @ApiModelProperty("菜单id")
   private Long menuId;
   @ApiModelProperty("编码")
   private String menuCode;
   @ApiModelProperty("菜单名称")
   private @NotBlank(
   message = "菜单名称不能为空"
) String name;
   @ApiModelProperty("菜单父id")
   private @NotNull(
   message = "菜单父ID不能为空"
) Long parentId;
   @ApiModelProperty("删除标记")
   private Integer delFlag;
   @ApiModelProperty("是否默认选中")
   private Integer ifDefault;
   @ApiModelProperty("排序号")
   private Integer sort;
   @ApiModelProperty("是否有子级")
   private Integer hasChildren;
   @ApiModelProperty("节点状态：1全选；2半选")
   private Integer halfSelect;
   @ApiModelProperty("0：菜单；1：按钮；2：目录")
   private Integer type;
   @ApiModelProperty("页面是否缓存（1缓存 2不缓存）")
   private Integer ifCache;
   @ApiModelProperty("菜单状态（1显示 2隐藏）")
   private Integer ifVisible;
   @ApiModelProperty("组件路径")
   private String component;
   @ApiModelProperty("菜单图标")
   private String icon;
   @ApiModelProperty("菜单归属类型：1:web，2:app")
   private Integer webType;

   public Long getMenuId() {
      return this.menuId;
   }

   public String getMenuCode() {
      return this.menuCode;
   }

   public String getName() {
      return this.name;
   }

   public Long getParentId() {
      return this.parentId;
   }

   public Integer getDelFlag() {
      return this.delFlag;
   }

   public Integer getIfDefault() {
      return this.ifDefault;
   }

   public Integer getSort() {
      return this.sort;
   }

   public Integer getHasChildren() {
      return this.hasChildren;
   }

   public Integer getHalfSelect() {
      return this.halfSelect;
   }

   public Integer getType() {
      return this.type;
   }

   public Integer getIfCache() {
      return this.ifCache;
   }

   public Integer getIfVisible() {
      return this.ifVisible;
   }

   public String getComponent() {
      return this.component;
   }

   public String getIcon() {
      return this.icon;
   }

   public Integer getWebType() {
      return this.webType;
   }

   public void setMenuId(final Long menuId) {
      this.menuId = menuId;
   }

   public void setMenuCode(final String menuCode) {
      this.menuCode = menuCode;
   }

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

   public void setParentId(final Long parentId) {
      this.parentId = parentId;
   }

   public void setDelFlag(final Integer delFlag) {
      this.delFlag = delFlag;
   }

   public void setIfDefault(final Integer ifDefault) {
      this.ifDefault = ifDefault;
   }

   public void setSort(final Integer sort) {
      this.sort = sort;
   }

   public void setHasChildren(final Integer hasChildren) {
      this.hasChildren = hasChildren;
   }

   public void setHalfSelect(final Integer halfSelect) {
      this.halfSelect = halfSelect;
   }

   public void setType(final Integer type) {
      this.type = type;
   }

   public void setIfCache(final Integer ifCache) {
      this.ifCache = ifCache;
   }

   public void setIfVisible(final Integer ifVisible) {
      this.ifVisible = ifVisible;
   }

   public void setComponent(final String component) {
      this.component = component;
   }

   public void setIcon(final String icon) {
      this.icon = icon;
   }

   public void setWebType(final Integer webType) {
      this.webType = webType;
   }

   public String toString() {
      Long var10000 = this.getMenuId();
      return "MgrMenuTreeVO(menuId=" + var10000 + ", menuCode=" + this.getMenuCode() + ", name=" + this.getName() + ", parentId=" + this.getParentId() + ", delFlag=" + this.getDelFlag() + ", ifDefault=" + this.getIfDefault() + ", sort=" + this.getSort() + ", hasChildren=" + this.getHasChildren() + ", halfSelect=" + this.getHalfSelect() + ", type=" + this.getType() + ", ifCache=" + this.getIfCache() + ", ifVisible=" + this.getIfVisible() + ", component=" + this.getComponent() + ", icon=" + this.getIcon() + ", webType=" + this.getWebType() + ")";
   }
}
