package user import ( "SciencesServer/app/api/admin/controller/menu" "SciencesServer/app/api/admin/model" model2 "SciencesServer/app/common/model" "SciencesServer/app/session" ) type Menu struct{ *session.Admin } type MenuHandle func(session *session.Admin) *Menu // Index ่œๅ•ๅˆ—่กจ func (c *Menu) Index() ([]*menu.Tree, error) { mSysMenu := model.NewSysMenu() kinds := []model2.SysMenuKind{ model2.SysMenuKindForCatalogue, model2.SysMenuKindForMenu, } if c.IsAdmin { if c.TenantID > 0 { return menu.MenuForTenant(mSysMenu, c.TenantID, model2.NewWhereIn("m.kind", kinds)) } return menu.MenuForSystem(mSysMenu, model2.NewWhereIn("kind", kinds)) } return menu.MenuForUser(mSysMenu, c.TenantID, c.UID, model2.NewWhereIn("m.kind", kinds)) } func NewMenu() MenuHandle { return func(session *session.Admin) *Menu { return &Menu{Admin: session} } }