fix: 修复权限加入问题

This commit is contained in:
lixiangwuxian 2024-10-20 03:56:35 +08:00
parent 9cbcc3227f
commit 67cff69184
3 changed files with 12 additions and 3 deletions

View File

@ -21,7 +21,11 @@ func init() {
func HasPermission(qqID int64, level constants.PermissionLevel) bool {
auth, err := getAuth(qqID)
if err != nil {
maxRetry := 50
for i := 0; i < maxRetry && (err != nil); i++ {
auth, err = getAuth(qqID)
}
if err != nil || auth.Qqid == "" {
return false
}
return auth.Role <= level
@ -40,7 +44,7 @@ func TryExecHandler(msg model.Message, level constants.PermissionLevel, handler
return handler(msg)
}
return model.Reply{
ReplyMsg: "权限验证失败",
ReplyMsg: "权限不足,有需要请联系管理员",
ReferOriginMsg: true,
FromMsg: msg,
}

View File

@ -16,10 +16,15 @@ func getAuth(qqID int64) (auth Auth, err error) {
err = tx.Get(&auth, "SELECT * FROM auth WHERE qqid = ?", qqID)
if err == sql.ErrNoRows {
_, err = tx.Exec("INSERT INTO auth(qqid, role) VALUES(?, ?)", qqID, constants.LEVEL_USER)
tx.Get(&auth, "SELECT * FROM auth WHERE qqid = ?", qqID)
}
if err != nil {
return Auth{}, err
}
err = tx.Commit()
if err != nil {
return Auth{}, err
}
return auth, nil
}

View File

@ -12,7 +12,7 @@ import (
)
func init() {
handler.RegisterFrontMatchHandler("用户权限", setUserLevel, constants.LEVEL_ROOT)
handler.RegisterFrontMatchHandler("用户权限", setUserLevel, constants.LEVEL_USER)
handler.RegisterHelpInform("用户权限", "用户权限 [用户] [权限] 设置用户权限。允许的权限有:根用户、管理员、信任、用户、拉黑")
}