From 970618f56127d9f40e92d64580c391e643215b5a Mon Sep 17 00:00:00 2001 From: James Collins Date: Mon, 13 Mar 2023 11:25:25 +1000 Subject: [PATCH] fix givePermission relationship --- app/Models/User.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/Models/User.php b/app/Models/User.php index 9457eab..9bc63d1 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -119,9 +119,15 @@ class User extends Authenticatable implements Auditable return ['permission' => $permission]; }); - return $this->permissions()->firstOrCreateMany($permissions->toArray()); + $existingPermissions = $this->permissions()->whereIn('permission', $permissions->pluck('permission'))->get(); + $newPermissions = $permissions->reject(function ($permission) use ($existingPermissions) { + return $existingPermissions->contains('permission', $permission['permission']); + }); + + return $this->permissions()->createMany($newPermissions->toArray()); } + /** * Revoke permissions from the user *