feat: 添加检查是否为管理员的接口

This commit is contained in:
2026-05-09 10:30:31 +08:00
parent 45db7f75ca
commit 50a89b6fc1
5 changed files with 40 additions and 2 deletions

View File

@@ -10,6 +10,7 @@ package sysUser
import (
"context"
"fmt"
"gitea.com/red-future/common/beans"
"gitea.com/red-future/common/utils"
"github.com/gogf/gf/v2/container/gset"
@@ -782,3 +783,28 @@ func (s *sSysUser) IsSuperAdmin(ctx context.Context, req *system.IsSuperAdminReq
}
return
}
func (s *sSysUser) IsAdmin(ctx context.Context, req *system.IsAdminReq) (isSuperAdmin bool, err error) {
_ = req
isSuperAdmin = false
// 获取用户id
getUserInfo, err := utils.GetUserInfo(ctx)
if err != nil {
return
}
userId := getUserInfo.Id
if !g.IsEmpty(userId) {
var roleIds []uint
roleIds, err = service.SysUser().GetAdminRoleIds(ctx, gconv.Uint64(userId))
liberr.ErrIsNil(ctx, err, "获取用户角色失败")
for _, v := range roleIds {
if v == consts.SuperAdminId || v == consts.SiteAdminId {
isSuperAdmin = true
return
} else {
isSuperAdmin = false
}
}
}
return
}