mirror of
https://github.com/casdoor/casdoor.git
synced 2025-05-22 18:25:47 +08:00
feat: fix wrong elements in getPermissionsByUser() related functions
This commit is contained in:
parent
687830697e
commit
d145ab780c
@ -265,7 +265,48 @@ func getPermissionsByUser(userId string) ([]*Permission, error) {
|
|||||||
return permissions, err
|
return permissions, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return permissions, nil
|
res := []*Permission{}
|
||||||
|
for _, permission := range permissions {
|
||||||
|
if util.InSlice(permission.Users, userId) {
|
||||||
|
res = append(res, permission)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return res, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetPermissionsByRole(roleId string) ([]*Permission, error) {
|
||||||
|
permissions := []*Permission{}
|
||||||
|
err := ormer.Engine.Where("roles like ?", "%"+roleId+"\"%").Find(&permissions)
|
||||||
|
if err != nil {
|
||||||
|
return permissions, err
|
||||||
|
}
|
||||||
|
|
||||||
|
res := []*Permission{}
|
||||||
|
for _, permission := range permissions {
|
||||||
|
if util.InSlice(permission.Roles, roleId) {
|
||||||
|
res = append(res, permission)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return res, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetPermissionsByResource(resourceId string) ([]*Permission, error) {
|
||||||
|
permissions := []*Permission{}
|
||||||
|
err := ormer.Engine.Where("resources like ?", "%"+resourceId+"\"%").Find(&permissions)
|
||||||
|
if err != nil {
|
||||||
|
return permissions, err
|
||||||
|
}
|
||||||
|
|
||||||
|
res := []*Permission{}
|
||||||
|
for _, permission := range permissions {
|
||||||
|
if util.InSlice(permission.Resources, resourceId) {
|
||||||
|
res = append(res, permission)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func getPermissionsAndRolesByUser(userId string) ([]*Permission, []*Role, error) {
|
func getPermissionsAndRolesByUser(userId string) ([]*Permission, []*Role, error) {
|
||||||
@ -310,26 +351,6 @@ func getPermissionsAndRolesByUser(userId string) ([]*Permission, []*Role, error)
|
|||||||
return permissions, roles, nil
|
return permissions, roles, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetPermissionsByRole(roleId string) ([]*Permission, error) {
|
|
||||||
permissions := []*Permission{}
|
|
||||||
err := ormer.Engine.Where("roles like ?", "%"+roleId+"\"%").Find(&permissions)
|
|
||||||
if err != nil {
|
|
||||||
return permissions, err
|
|
||||||
}
|
|
||||||
|
|
||||||
return permissions, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func GetPermissionsByResource(resourceId string) ([]*Permission, error) {
|
|
||||||
permissions := []*Permission{}
|
|
||||||
err := ormer.Engine.Where("resources like ?", "%"+resourceId+"\"%").Find(&permissions)
|
|
||||||
if err != nil {
|
|
||||||
return permissions, err
|
|
||||||
}
|
|
||||||
|
|
||||||
return permissions, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func GetPermissionsBySubmitter(owner string, submitter string) ([]*Permission, error) {
|
func GetPermissionsBySubmitter(owner string, submitter string) ([]*Permission, error) {
|
||||||
permissions := []*Permission{}
|
permissions := []*Permission{}
|
||||||
err := ormer.Engine.Desc("created_time").Find(&permissions, &Permission{Owner: owner, Submitter: submitter})
|
err := ormer.Engine.Desc("created_time").Find(&permissions, &Permission{Owner: owner, Submitter: submitter})
|
||||||
|
@ -259,7 +259,14 @@ func getRolesByUserInternal(userId string) ([]*Role, error) {
|
|||||||
return roles, err
|
return roles, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return roles, nil
|
res := []*Role{}
|
||||||
|
for _, role := range roles {
|
||||||
|
if util.InSlice(role.Users, userId) {
|
||||||
|
res = append(res, role)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func getRolesByUser(userId string) ([]*Role, error) {
|
func getRolesByUser(userId string) ([]*Role, error) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user