From 0983cebe1d43daac9a917816156e3d766b898c1f Mon Sep 17 00:00:00 2001 From: yxh Date: Wed, 21 Jul 2021 15:18:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=9D=83=E9=99=90=E6=8E=A7?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/system/service/sys_auth_rule.go | 22 +++++++++++++++++++--- app/system/service/sys_user.go | 4 ++-- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/app/system/service/sys_auth_rule.go b/app/system/service/sys_auth_rule.go index 7fe06e1..02f9d5b 100644 --- a/app/system/service/sys_auth_rule.go +++ b/app/system/service/sys_auth_rule.go @@ -14,8 +14,8 @@ type rule struct { var Rule = new(rule) -//获取status==1的菜单列表 -func (s *rule) GetMenuIsStatusList() ([]*model.SysAuthRuleInfoRes, error) { +// GetIsMenuStatusList 获取isMenu=0|1且status=1的菜单列表 +func (s *rule) GetIsMenuStatusList() ([]*model.SysAuthRuleInfoRes, error) { list, err := s.GetMenuList() if err != nil { return nil, err @@ -99,12 +99,13 @@ func (s *rule) GetIsButtonStatusList() ([]*model.SysAuthRuleInfoRes, error) { return gList, nil } +// GetIsMenuList 获取MenuType==0,1菜单列表 func (s *rule) GetIsMenuList() ([]*model.SysAuthRuleInfoRes, error) { list, err := s.GetMenuList() if err != nil { return nil, err } - var gList = make([]*model.SysAuthRuleInfoRes, 0) + var gList = make([]*model.SysAuthRuleInfoRes, 0, len(list)) for _, v := range list { if v.MenuType == 0 || v.MenuType == 1 { gList = append(gList, v) @@ -113,6 +114,21 @@ func (s *rule) GetIsMenuList() ([]*model.SysAuthRuleInfoRes, error) { return gList, nil } +// GetMenuIsStatusList 获取status==1的菜单列表 +func (s *rule) GetMenuIsStatusList() ([]*model.SysAuthRuleInfoRes, error) { + list, err := s.GetMenuList() + if err != nil { + return nil, err + } + var gList = make([]*model.SysAuthRuleInfoRes, 0, len(list)) + for _, v := range list { + if v.Status == 1 { + gList = append(gList, v) + } + } + return gList, nil +} + //检查菜单规则是否存在 func (s *rule) CheckMenuNameUnique(name string, id int) bool { return dao.SysAuthRule.CheckMenuNameUnique(name, id) diff --git a/app/system/service/sys_user.go b/app/system/service/sys_user.go index c2a6d1f..0742fab 100644 --- a/app/system/service/sys_user.go +++ b/app/system/service/sys_user.go @@ -200,7 +200,7 @@ func (s *sysUser) GetPermissions(roleIds []uint) ([]string, error) { func (s *sysUser) GetAllMenus() (menus []UserMenus, err error) { //获取所有开启的菜单 var allMenus []*model.SysAuthRuleInfoRes - allMenus, err = Rule.GetMenuIsStatusList() + allMenus, err = Rule.GetIsMenuStatusList() if err != nil { return } @@ -231,7 +231,7 @@ func (s *sysUser) GetAdminMenusByRoleIds(roleIds []uint) (menus []UserMenus, err } } //获取所有开启的菜单 - allMenus, err := Rule.GetMenuIsStatusList() + allMenus, err := Rule.GetIsMenuStatusList() if err != nil { return }