// Copyright (c) Shenyang Leading Edge Intelligent Technology Co., Ltd. All rights reserved.

package base

import (
	"LAPP_ACURA_MOM_BACKEND/grmi"
	"xorm.io/core"
)

/******************************************************************************
 *
 * @Struct Name              : Menu
 *-----------------------------------------------------------------------------
 *
 * @Description              : Menu的实体映射
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-08-20 11:28:44
 *
 ******************************************************************************/
type Menu struct {
	MenuId     int           `xorm:"pk int 'MenuId' autoincr" json:"Menu-MenuId"`
	MenuName   string        `xorm:"varchar(128) 'MenuName'" json:"Menu-MenuName"`
	Title      string        `xorm:"varchar(128) 'Title'" json:"Menu-Title"`
	Icon       string        `xorm:"varchar(40) 'Icon'" json:"Menu-Icon"`
	Path       string        `xorm:"varchar(128) 'Path'" json:"Menu-Path"`
	Paths      string        `xorm:"varchar(128) 'Paths'" json:"Menu-Paths"`
	MenuType   string        `xorm:"varchar(1) 'MenuType'" json:"Menu-MenuType"`
	Action     string        `xorm:"varchar(16) 'Action'" json:"Menu-Action"`
	Permission string        `xorm:"varchar(32) 'Permission'" json:"Menu-Permission"`
	ParentId   int           `xorm:"int 'ParentId'" json:"Menu-ParentId"`
	NoCache    string        `xorm:"varchar(1) 'NoCache'" json:"Menu-NoCache"`
	BreadCrumb string        `xorm:"varchar(32) 'BreadCrumb'" json:"Menu-BreadCrumb"`
	Component  string        `xorm:"varchar(32) 'Component'" json:"Menu-Component"`
	ParentName string        `xorm:"varchar(64) 'ParentName'" json:"Menu-ParentName"`
	Sort       int           `xorm:"int 'Sort'" json:"Menu-Sort"`
	Visible    string        `xorm:"varchar(1) 'Visible'" json:"Menu-Visible"`
	IsFrame    int           `xorm:"int 'IsFrame'" json:"Menu-IsFrame"`
	LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"Menu-LastModify"`
	LastUser   string        `xorm:"nvarchar(20) 'LastUser' not null" json:"Menu-LastUser"`
	CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"Menu-CreateTime"`
	DataScope  string        `json:"DataScope" xorm:"-"`
	RoleId     int           `xorm:"-" form:"role_id" json:"RoleId"`
	Children   []Menu        `json:"Children" xorm:"-"`
	IsSelect   bool          `json:"IsSelect" xorm:"-"`
}

/******************************************************************************
 *
 * @Function Name            : GetKey
 *-----------------------------------------------------------------------------
 *
 * @Description              : 获取实体的主键
 *
 * @Return Value             : 实体的主键
 *
 * @Author                   : 代码生成器创建
 *
 * @Date                     : 2021-08-20 11:28:44
 *
 ******************************************************************************/
func (self *Menu) GetKey() core.PK {
	return core.PK{self.MenuId}
}
