From a73be119904019f75080e59d022ff6f084036aad Mon Sep 17 00:00:00 2001 From: June <55494127+notdu@users.noreply.github.com> Date: Tue, 17 Jan 2023 16:04:58 +0700 Subject: [PATCH] feat: update permission when role deleted (#1480) --- object/role.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/object/role.go b/object/role.go index 50aa5dfe..f56cabac 100644 --- a/object/role.go +++ b/object/role.go @@ -133,6 +133,13 @@ func AddRole(role *Role) bool { } func DeleteRole(role *Role) bool { + roleId := role.GetId() + permissions := GetPermissionsByRole(roleId) + for _, permission := range permissions { + permission.Roles = util.DeleteVal(permission.Roles, roleId) + UpdatePermission(permission.GetId(), permission) + } + affected, err := adapter.Engine.ID(core.PK{role.Owner, role.Name}).Delete(&Role{}) if err != nil { panic(err)