fix: cache admin permissions in redis

This commit is contained in:
richjohnrambo
2026-09-23 00:30:40 +08:00
parent 4fbc896d75
commit dd12dbfe07
3 changed files with 129 additions and 26 deletions
+10 -5
View File
@@ -53,8 +53,10 @@ func (s *sAdminMenu) Delete(ctx context.Context, in *adminin.MenuDeleteInp) (err
if !exist.IsEmpty() {
return gerror.New("请先删除该菜单下的所有菜单!")
}
_, err = dao.AdminMenu.Ctx(ctx).Where(dao.AdminMenu.Columns().Id, in.Id).Delete()
return
if _, err = dao.AdminMenu.Ctx(ctx).Where(dao.AdminMenu.Columns().Id, in.Id).Delete(); err != nil {
return
}
return casbin.Refresh(ctx)
}
// VerifyUnique 验证菜单唯一属性
@@ -104,7 +106,7 @@ func (s *sAdminMenu) Edit(ctx context.Context, in *adminin.MenuEditInp) (err err
return
}
return g.DB().Transaction(ctx, func(ctx context.Context, tx gdb.TX) error {
if err = g.DB().Transaction(ctx, func(ctx context.Context, tx gdb.TX) error {
in.Pid, in.Level, in.Tree, err = hgorm.AutoUpdateTree(ctx, &dao.AdminMenu, in.Id, in.Pid)
if err != nil {
return err
@@ -121,8 +123,11 @@ func (s *sAdminMenu) Edit(ctx context.Context, in *adminin.MenuEditInp) (err err
return err
}
}
return casbin.Refresh(ctx)
})
return nil
}); err != nil {
return
}
return casbin.Refresh(ctx)
}
// List 获取菜单列表