From 450d28d7e0d16402acaa7f6db95253617297476b Mon Sep 17 00:00:00 2001 From: "daeng.deni@dharma.or.id" Date: Tue, 6 Jun 2023 22:12:16 +0700 Subject: [PATCH] Update Supplier Seeder --- Database/Seeders/SupplierDatabaseSeeder.php | 72 +++++++++++++++++---- 1 file changed, 58 insertions(+), 14 deletions(-) diff --git a/Database/Seeders/SupplierDatabaseSeeder.php b/Database/Seeders/SupplierDatabaseSeeder.php index 2d089dd..712bd15 100644 --- a/Database/Seeders/SupplierDatabaseSeeder.php +++ b/Database/Seeders/SupplierDatabaseSeeder.php @@ -1,21 +1,65 @@ forgetCachedPermissions(); - // $this->call("OthersTableSeeder"); + $data = $this->data(); + foreach ($data as $value) { + $permission = Permission::create([ + 'name' => $value['name'], + 'permission_group_id' => $value['group'], + ]); + + $role = Role::find(1); + $role->givePermissionTo($permission); + } + } + + public function data() + { + $data = []; + // list of model permission + $model = ['supplier']; + + $permissionGroup = PermissionGroup::create([ + 'name' => 'supplier' + ]); + + foreach ($model as $value) { + foreach ($this->crudActions($value) as $action) { + $data[] = ['name' => $action, 'group' => $permissionGroup->id]; + } + } + + return $data; + } + + public function crudActions($name) + { + $actions = []; + // list of permission actions + $crud = ['create', 'read', 'update', 'delete']; + + foreach ($crud as $value) { + $actions[] = $name . '.' . $value; + } + + return $actions; + } } -}