package com.ym.mec.auth.api.entity;

import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;

import java.util.List;

/**
 * 对应数据库表(sys_menu):
 */
public class SysMenu {

	/** 菜单ID */
	@ApiModelProperty(value = "菜单ID",required = false)
	private Integer id;

	/** 菜单名称 */
	@ApiModelProperty(value = "菜单名称",required = false)
	private String name;

	/** 菜单权限标识 */
	@ApiModelProperty(value = "菜单权限标识",required = false)
	private String permission;

	/** 菜单权限标识 */
	@ApiModelProperty(value = "顶级菜单权限标识",required = false)
	private String parentPermission;

	/** 接口路径 */
	@ApiModelProperty(value = "接口路径",required = false)
	private String path;

	/** 父菜单ID */
	@ApiModelProperty(value = "父菜单ID",required = false)
	private Integer parentId;

	/** 图标 */
	@ApiModelProperty(value = "图标 */",required = false)
	private String icon;

	/** 前端页面地址 */
	@ApiModelProperty(value = "前端页面地址",required = false)
	private String component;

	/** 排序值 */
	@ApiModelProperty(value = "排序值",required = false)
	private Integer sort;

	/** 0-开启，1- 关闭 */
	@ApiModelProperty(value = "0-开启，1- 关闭",required = false)
	private String keepAlive;

	/** 菜单类型 （0菜单 1按钮） */
	@ApiModelProperty(value = "菜单类型 （0菜单 1按钮）",required = false)
	private String type;

	/** 创建时间 */
	private java.util.Date createTime;

	/** 更新时间 */
	private java.util.Date updateTime;

	/** 逻辑删除标记(0--正常 1--删除) */
	@ApiModelProperty(value = "逻辑删除标记(0--正常 1--删除)",required = false)
	private String delFlag;

	private Integer hid;

	@ApiModelProperty(value = "子节点列表",required = false)
	private List<SysMenu> sysMenus;

	private String memo;

	public String getMemo() {
		return memo;
	}

	public void setMemo(String memo) {
		this.memo = memo;
	}

	public String getParentPermission() {
		return parentPermission;
	}

	public void setParentPermission(String parentPermission) {
		this.parentPermission = parentPermission;
	}

	public Integer getHid() {
		return hid;
	}

	public void setHid(Integer hid) {
		this.hid = hid;
	}

	public List<SysMenu> getSysMenus() {
		return sysMenus;
	}

	public void setSysMenus(List<SysMenu> sysMenus) {
		this.sysMenus = sysMenus;
	}

	public Integer getId() {
		return id;
	}

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

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

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

	public void setPermission(String permission) {
		this.permission = permission;
	}

	public String getPermission() {
		return this.permission;
	}

	public void setPath(String path) {
		this.path = path;
	}

	public String getPath() {
		return this.path;
	}

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

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

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

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

	public String getComponent() {
		return component;
	}

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

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

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

	public void setKeepAlive(String keepAlive) {
		this.keepAlive = keepAlive;
	}

	public String getKeepAlive() {
		return this.keepAlive;
	}

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

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

	public void setCreateTime(java.util.Date createTime) {
		this.createTime = createTime;
	}

	public java.util.Date getCreateTime() {
		return this.createTime;
	}

	public void setUpdateTime(java.util.Date updateTime) {
		this.updateTime = updateTime;
	}

	public java.util.Date getUpdateTime() {
		return this.updateTime;
	}

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

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

	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}

}
