MCPcopy Create free account
hub / github.com/GoSimplicity/LinkMe / GetMenus

Method GetMenus

internal/service/menu.go:34–51  ·  view source on GitHub ↗

GetMenus 获取菜单列表,支持分页和树形结构

(ctx context.Context, pageNum, pageSize int, isTree bool)

Source from the content-addressed store, hash-verified

32
33// GetMenus 获取菜单列表,支持分页和树形结构
34func (m *menuService) GetMenus(ctx context.Context, pageNum, pageSize int, isTree bool) ([]*domain.Menu, int, error) {
35 if pageNum < 1 || pageSize < 1 {
36 m.l.Warn("分页参数无效", zap.Int("页码", pageNum), zap.Int("每页数量", pageSize))
37 return nil, 0, errors.New("分页参数无效")
38 }
39
40 // 如果需要树形结构,则调用GetMenuTree
41 if isTree {
42 menus, err := m.repo.GetMenuTree(ctx)
43 if err != nil {
44 m.l.Error("获取菜单树失败", zap.Error(err))
45 return nil, 0, err
46 }
47 return menus, len(menus), nil
48 }
49
50 return m.repo.ListMenus(ctx, pageNum, pageSize)
51}
52
53// CreateMenu 创建新菜单
54func (m *menuService) CreateMenu(ctx context.Context, menu *domain.Menu) error {

Callers

nothing calls this directly

Calls 2

GetMenuTreeMethod · 0.65
ListMenusMethod · 0.65

Tested by

no test coverage detected