From 02d9b0f3b86dfd4f769139a17358b8137d7f2b8a Mon Sep 17 00:00:00 2001 From: mekaeil Date: Thu, 11 Jul 2019 03:28:35 +0430 Subject: [PATCH 1/2] Seeder and migrations file finalized --- src/Config/laravel_user_management.php | 18 +--- .../2019_01_01_111111_create_users_table.php | 1 - ...333_create_user_department_users_table.php | 2 +- .../MasterPermissionTableSeeder.php | 7 +- .../Permission/PermissionTableSeeder.php | 18 ++-- .../Seeders/Role/MasterRoleTableSeeder.php | 32 +++++--- src/Database/Seeders/Role/RoleTableSeeder.php | 6 +- .../Seeders/User/MasterUserTableSeeder.php | 82 ------------------- src/Database/Seeders/User/UserTableSeeder.php | 17 ---- .../Seeders/UserManagementDatabaseSeeder.php | 11 +-- src/LaravelUserManagementProvider.php | 2 +- .../DepartmentRepositoryInterface.php | 5 +- .../PermissionRepositoryInterface.php | 3 +- .../Contracts/RepositoryInterface.php | 17 ---- .../Contracts/RoleRepositoryInterface.php | 3 +- .../Contracts/UserRepositoryInterface.php | 3 +- 16 files changed, 49 insertions(+), 178 deletions(-) delete mode 100644 src/Database/Seeders/User/MasterUserTableSeeder.php delete mode 100644 src/Database/Seeders/User/UserTableSeeder.php delete mode 100644 src/Repository/Contracts/RepositoryInterface.php diff --git a/src/Config/laravel_user_management.php b/src/Config/laravel_user_management.php index 5bad8af..8d558a9 100644 --- a/src/Config/laravel_user_management.php +++ b/src/Config/laravel_user_management.php @@ -19,21 +19,11 @@ * BETWEEN USERS TABLE & USER DEPARTMENTS TABLE * **/ // laravel_user_management.user_department_user_table - 'user_department_user_table' => 'user_departments', + 'user_department_user_table' => 'user_departments_users', // laravel_user_management.user_model - 'user_model' => \Mekaeil\LaravelUserManagement\Entities\User::class, + 'user_model' => App\Entities\User::class, - // laravel_user_management.fillables_column - 'fillables_column' => [ - 'first_name', - 'last_name', - 'password', - 'email', - 'mobile', - 'status', - 'remember_token', - 'mobile_verified', - 'email_verified', - ], + + ]; \ No newline at end of file diff --git a/src/Database/Migrations/2019_01_01_111111_create_users_table.php b/src/Database/Migrations/2019_01_01_111111_create_users_table.php index 5572fad..8d4749b 100644 --- a/src/Database/Migrations/2019_01_01_111111_create_users_table.php +++ b/src/Database/Migrations/2019_01_01_111111_create_users_table.php @@ -16,7 +16,6 @@ public function up() $table = config("laravel_user_management.users_table"); Schema::create($table, function (Blueprint $table) { $table->increments('id'); - $this->createTable(config("laravel_user_management.migrations_columns")); $table->string('first_name'); $table->string('last_name'); $table->string('email')->nullable()->unique(); diff --git a/src/Database/Migrations/2019_01_01_333333_create_user_department_users_table.php b/src/Database/Migrations/2019_01_01_333333_create_user_department_users_table.php index 883a00a..350d921 100644 --- a/src/Database/Migrations/2019_01_01_333333_create_user_department_users_table.php +++ b/src/Database/Migrations/2019_01_01_333333_create_user_department_users_table.php @@ -17,7 +17,7 @@ public function up() $users_table = config("laravel_user_management.users_table"); $table = config("laravel_user_management.user_department_user_table"); - Schema::create($table, function (Blueprint $table) + Schema::create($table, function (Blueprint $table) use($departments_table,$users_table) { $table->unsignedInteger('user_id'); $table->unsignedInteger('department_id'); diff --git a/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php b/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php index 60599d2..7ddda4f 100644 --- a/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php +++ b/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php @@ -172,7 +172,12 @@ private function getRolesID(array $roles, $guard) $roleIDs = array(); foreach ($roles as $role) { - $roleIDs[] = optional(Role::where('name', $role)->where('guard_name', $guard)->first())->id; + // $roleIDs[] = optional(Role::where('name', $role)->where('guard_name', $guard)->first())->id; + $findRole = $this->roleRepository->findBy([ + 'name' => $role, + 'guard_name' => $guard + ]); + $roleIDs[] = $findRole ? $findRole->id : null; } return array_values($roleIDs); } diff --git a/src/Database/Seeders/Permission/PermissionTableSeeder.php b/src/Database/Seeders/Permission/PermissionTableSeeder.php index 6c35615..b74277c 100644 --- a/src/Database/Seeders/Permission/PermissionTableSeeder.php +++ b/src/Database/Seeders/Permission/PermissionTableSeeder.php @@ -7,17 +7,15 @@ class PermissionTableSeeder extends MasterPermissionTableSeeder { protected $permissions = [ [ - [ - 'name' => 'admin.manager', - 'display_name' => 'مدیریت بخش‌های ادمین', - 'guard_name' => 'api', - 'description' => 'این دسترسی جهت مشاهده بخش‌های عمومی ادمین ایجاد شده است.', - 'module' => 'User', - 'roles' => [ - 'Admin', - ], + 'name' => 'admin.manager', + 'display_name' => 'پنل مدیریت', + 'guard_name' => 'web', + 'description' => 'این مجوز برای دسترسی کاربر به ادمین می‌باشد.', + 'module' => 'User', + 'roles' => [ + 'Admin', ], - ] + ], ]; diff --git a/src/Database/Seeders/Role/MasterRoleTableSeeder.php b/src/Database/Seeders/Role/MasterRoleTableSeeder.php index 9fc7baa..bbbef78 100644 --- a/src/Database/Seeders/Role/MasterRoleTableSeeder.php +++ b/src/Database/Seeders/Role/MasterRoleTableSeeder.php @@ -37,41 +37,51 @@ public function run() foreach ($this->getRoles() as $role) { - $findRole = Role::where('name',$role['name']) - ->where('guard_name',$role['guard_name']) - ->first(); + // $findRole = Role::where('name',$role['name']) + // ->where('guard_name',$role['guard_name']) + // ->first(); + $findRole = $this->roleRepository->findBy([ + 'name' => $role['name'], + 'guard_name' => $role['guard_name'] + ]); if ($findRole) { $this->command->info('THIS ROLE << ' . $role['name'] .'['. $role['guard_name'] . '] >> EXISTED! UPDATING DATA ...'); - - $findRole->update([ + $this->roleRepository->update($findRole->id,[ 'name' => $role['name'], 'display_name' => $role['display_name'], 'guard_name' => $role['guard_name'], 'description' => isset($role['description']) ? $role['description'] : null, ]); + // $findRole->update([ + // 'name' => $role['name'], + // 'display_name' => $role['display_name'], + // 'guard_name' => $role['guard_name'], + // 'description' => isset($role['description']) ? $role['description'] : null, + // ]); continue; } $this->command->info('CREATING THIS ROLE <<' . $role['name'] .'['. $role['guard_name'] . '] >> ...'); - Role::create([ + $this->roleRepository->store([ 'name' => $role['name'], 'display_name' => $role['display_name'], 'guard_name' => $role['guard_name'], 'description' => isset($role['description']) ? $role['description'] : null, ]); + // Role::create([ + // 'name' => $role['name'], + // 'display_name' => $role['display_name'], + // 'guard_name' => $role['guard_name'], + // 'description' => isset($role['description']) ? $role['description'] : null, + // ]); } - Cache::forget('roles'); - Cache::rememberForever('roles', function () { - return \DB::table('roles')->get()->pluck('id', 'name')->toArray(); - }); - $this->command->info("\n"); $this->command->info('============================================================='); $this->command->info(' INSERTING ROLES FINALIZED!'); diff --git a/src/Database/Seeders/Role/RoleTableSeeder.php b/src/Database/Seeders/Role/RoleTableSeeder.php index ed61ba8..c2c0305 100644 --- a/src/Database/Seeders/Role/RoleTableSeeder.php +++ b/src/Database/Seeders/Role/RoleTableSeeder.php @@ -9,13 +9,13 @@ class RoleTableSeeder extends MasterRoleTableSeeder 'name' => "Admin", 'title' => "Administrator", 'guard_name' => "web", - 'description' => "This role will assign to project owner", + 'description' => "This role will assign to Administrator", ], [ 'name' => "User", - 'title' => "Client", + 'title' => "User", 'guard_name' => "web", - 'description' => "This role will assign to usual users or clients", + 'description' => "This role will assign to user.", ], ]; diff --git a/src/Database/Seeders/User/MasterUserTableSeeder.php b/src/Database/Seeders/User/MasterUserTableSeeder.php deleted file mode 100644 index 729f05b..0000000 --- a/src/Database/Seeders/User/MasterUserTableSeeder.php +++ /dev/null @@ -1,82 +0,0 @@ -roles; - } - - /** - * Run the database seeds. - * - * @return void - */ - public function run() - { - Model::unguard(); - - $this->command->info('============================================================='); - $this->command->info(' USER MODULE: INSERT ROLES DATA'); - $this->command->info('============================================================='); - $this->command->info("\n"); - - foreach ($this->getRoles() as $role) - { - $findRole = Role::where('name',$role['name']) - ->where('guard_name',$role['guard_name']) - ->first(); - - if ($findRole) - { - $this->command->info('THIS ROLE << ' . $role['name'] .'['. $role['guard_name'] . '] >> EXISTED! UPDATING DATA ...'); - - - $findRole->update([ - 'name' => $role['name'], - 'display_name' => $role['display_name'], - 'guard_name' => $role['guard_name'], - 'description' => isset($role['description']) ? $role['description'] : null, - ]); - - continue; - } - - $this->command->info('CREATING THIS ROLE <<' . $role['name'] .'['. $role['guard_name'] . '] >> ...'); - - Role::create([ - 'name' => $role['name'], - 'display_name' => $role['display_name'], - 'guard_name' => $role['guard_name'], - 'description' => isset($role['description']) ? $role['description'] : null, - ]); - - } - - Cache::forget('roles'); - Cache::rememberForever('roles', function () { - return \DB::table('roles')->get()->pluck('id', 'name')->toArray(); - }); - - $this->command->info("\n"); - $this->command->info('============================================================='); - $this->command->info(' INSERTING ROLES FINALIZED!'); - $this->command->info('============================================================='); - $this->command->info("\n"); - - } - -} diff --git a/src/Database/Seeders/User/UserTableSeeder.php b/src/Database/Seeders/User/UserTableSeeder.php deleted file mode 100644 index 884f3da..0000000 --- a/src/Database/Seeders/User/UserTableSeeder.php +++ /dev/null @@ -1,17 +0,0 @@ - '', - - ], - - ]; - - -} diff --git a/src/Database/Seeders/UserManagementDatabaseSeeder.php b/src/Database/Seeders/UserManagementDatabaseSeeder.php index 2ffbe4e..718fa9d 100644 --- a/src/Database/Seeders/UserManagementDatabaseSeeder.php +++ b/src/Database/Seeders/UserManagementDatabaseSeeder.php @@ -14,16 +14,7 @@ class UserManagementDatabaseSeeder extends Seeder */ public function run() { - Model::unguard(); - - /* - |-------------------------------------------------------------------------- - | PERMISSIONS USER MANAGEMENT - |-------------------------------------------------------------------------- - | - */ - - + Model::unguard(); } } diff --git a/src/LaravelUserManagementProvider.php b/src/LaravelUserManagementProvider.php index 13333a2..775644c 100644 --- a/src/LaravelUserManagementProvider.php +++ b/src/LaravelUserManagementProvider.php @@ -36,7 +36,7 @@ public function boot() //// SET MIGRATION'S ROUTE $this->loadMigrationsFrom(__DIR__ . '/database/migrations'); - + /// PUBLISH SECTION //////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/src/Repository/Contracts/DepartmentRepositoryInterface.php b/src/Repository/Contracts/DepartmentRepositoryInterface.php index 2f6c2e9..79ceefa 100644 --- a/src/Repository/Contracts/DepartmentRepositoryInterface.php +++ b/src/Repository/Contracts/DepartmentRepositoryInterface.php @@ -2,10 +2,7 @@ namespace Mekaeil\LaravelUserManagement\Repository\Contracts; -use Modules\User\Entities\Department; -use Modules\User\Http\Requests\Admin\StoreDepartment; - -interface DepartmentRepositoryInterface +interface DepartmentRepositoryInterface extends BaseRepositoryInterface { } \ No newline at end of file diff --git a/src/Repository/Contracts/PermissionRepositoryInterface.php b/src/Repository/Contracts/PermissionRepositoryInterface.php index 1dfe8a4..801ae09 100644 --- a/src/Repository/Contracts/PermissionRepositoryInterface.php +++ b/src/Repository/Contracts/PermissionRepositoryInterface.php @@ -2,8 +2,7 @@ namespace Mekaeil\LaravelUserManagement\Repository\Contracts; - -interface PermissionRepositoryInterface extends RepositoryInterface +interface PermissionRepositoryInterface extends BaseRepositoryInterface { } \ No newline at end of file diff --git a/src/Repository/Contracts/RepositoryInterface.php b/src/Repository/Contracts/RepositoryInterface.php deleted file mode 100644 index 87158fe..0000000 --- a/src/Repository/Contracts/RepositoryInterface.php +++ /dev/null @@ -1,17 +0,0 @@ - Date: Thu, 11 Jul 2019 03:33:06 +0430 Subject: [PATCH 2/2] Bug fixed --- .../MasterPermissionTableSeeder.php | 22 ------------------- .../Seeders/Role/MasterRoleTableSeeder.php | 19 ++-------------- src/Database/Seeders/Role/RoleTableSeeder.php | 2 +- 3 files changed, 3 insertions(+), 40 deletions(-) diff --git a/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php b/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php index 7ddda4f..5c1739b 100644 --- a/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php +++ b/src/Database/Seeders/Permission/MasterPermissionTableSeeder.php @@ -59,9 +59,6 @@ public function run() 'name' => array_keys($rolePermissions)[0], 'guard_name' => $guard ]); - // $permObject = Permission::where('name', array_keys($rolePermissions)[0] ) - // ->where('guard_name',$guard) - // ->first(); $permObject->syncRoles( $this->getRolesID($rolePermissions[array_keys($rolePermissions)[0]],$guard) ); } @@ -90,7 +87,6 @@ public function run() { $this->command->info(' THIS PERMISSION <<' . $perm . ' >> ASSIGNED TO THESE ROLES <<<< '. implode(' - ', $roles) . ' >>> GUARD NAME = ' . $this->guardName); $permObject = $this->permissionRepository->findBy(['name' => $perm]); - // $permObject = Permission::where('name',$perm)->first(); $permObject->syncRoles( $this->getRolesID($roles,$this->guardName) ); } @@ -116,8 +112,6 @@ private function setPermissions(array $permission , $guard = null) 'name' => $permission['name'], 'guard_name'=> $getGuard ]); - // $getPermission = Permission::where('name',$permission['name']) - // ->where('guard_name',$getGuard)->first(); if (! is_null($getPermission)) { @@ -130,13 +124,6 @@ private function setPermissions(array $permission , $guard = null) 'module' => isset($permission['module']) ? $permission['module'] : null , 'description' => isset($permission['description']) ? $permission['description'] : null , ]); - // $getPermission->update([ - // 'name' => $permission['name'], - // 'guard_name' => $guard ?? $permission['guard_name'], - // 'title' => isset($permission['title']) ? $permission['title'] : null , - // 'module' => isset($permission['module']) ? $permission['module'] : null , - // 'description' => isset($permission['description']) ? $permission['description'] : null , - // ]); $rolePermissions[$permission['name']] = array_values($permission['roles']) ?? null ; @@ -153,14 +140,6 @@ private function setPermissions(array $permission , $guard = null) 'description' => isset($permission['description']) ? $permission['description'] : null , ]); - // Permission::create([ - // 'name' => $permission['name'], - // 'guard_name' => $getGuard, - // 'title' => isset($permission['title']) ? $permission['title'] : null , - // 'module' => isset($permission['module']) ? $permission['module'] : null , - // 'description' => isset($permission['description']) ? $permission['description'] : null , - // ]); - $rolePermissions[$permission['name']] = array_values($permission['roles']) ?? null ; return $rolePermissions; @@ -172,7 +151,6 @@ private function getRolesID(array $roles, $guard) $roleIDs = array(); foreach ($roles as $role) { - // $roleIDs[] = optional(Role::where('name', $role)->where('guard_name', $guard)->first())->id; $findRole = $this->roleRepository->findBy([ 'name' => $role, 'guard_name' => $guard diff --git a/src/Database/Seeders/Role/MasterRoleTableSeeder.php b/src/Database/Seeders/Role/MasterRoleTableSeeder.php index bbbef78..9113e7a 100644 --- a/src/Database/Seeders/Role/MasterRoleTableSeeder.php +++ b/src/Database/Seeders/Role/MasterRoleTableSeeder.php @@ -37,9 +37,6 @@ public function run() foreach ($this->getRoles() as $role) { - // $findRole = Role::where('name',$role['name']) - // ->where('guard_name',$role['guard_name']) - // ->first(); $findRole = $this->roleRepository->findBy([ 'name' => $role['name'], 'guard_name' => $role['guard_name'] @@ -51,16 +48,10 @@ public function run() $this->roleRepository->update($findRole->id,[ 'name' => $role['name'], - 'display_name' => $role['display_name'], + 'title' => $role['title'], 'guard_name' => $role['guard_name'], 'description' => isset($role['description']) ? $role['description'] : null, ]); - // $findRole->update([ - // 'name' => $role['name'], - // 'display_name' => $role['display_name'], - // 'guard_name' => $role['guard_name'], - // 'description' => isset($role['description']) ? $role['description'] : null, - // ]); continue; } @@ -69,16 +60,10 @@ public function run() $this->roleRepository->store([ 'name' => $role['name'], - 'display_name' => $role['display_name'], + 'title' => $role['title'], 'guard_name' => $role['guard_name'], 'description' => isset($role['description']) ? $role['description'] : null, ]); - // Role::create([ - // 'name' => $role['name'], - // 'display_name' => $role['display_name'], - // 'guard_name' => $role['guard_name'], - // 'description' => isset($role['description']) ? $role['description'] : null, - // ]); } diff --git a/src/Database/Seeders/Role/RoleTableSeeder.php b/src/Database/Seeders/Role/RoleTableSeeder.php index c2c0305..bcbb31b 100644 --- a/src/Database/Seeders/Role/RoleTableSeeder.php +++ b/src/Database/Seeders/Role/RoleTableSeeder.php @@ -4,7 +4,7 @@ use Mekaeil\LaravelUserManagement\seeders\Permission\MasterRoleTableSeeder; class RoleTableSeeder extends MasterRoleTableSeeder { - protected $permissions = [ + protected $roles = [ [ 'name' => "Admin", 'title' => "Administrator",