143 lines
4.9 KiB
PHP
143 lines
4.9 KiB
PHP
<?php
|
|
|
|
namespace Database\Seeders;
|
|
|
|
use Illuminate\Database\Seeder;
|
|
use Spatie\Permission\Models\Permission;
|
|
use Spatie\Permission\Models\Role;
|
|
use Spatie\Permission\PermissionRegistrar;
|
|
|
|
class RolesSeeder extends Seeder
|
|
{
|
|
/**
|
|
* Run the database seeds.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function run()
|
|
{
|
|
// Reset cached roles and permissions
|
|
app()[PermissionRegistrar::class]->forgetCachedPermissions();
|
|
|
|
// create permissions
|
|
//admin
|
|
Permission::create(['name' => 'pengguna']);
|
|
Permission::create(['name' => 'pengurusanlelongan']);
|
|
Permission::create(['name' => 'analisa']);
|
|
//khazanah
|
|
Permission::create(['name' => 'semakanmarhun']);
|
|
Permission::create(['name' => 'kemaskinimarhun']);
|
|
//teller
|
|
Permission::create(['name' => 'pengesahanbayarancash']);
|
|
//pengurus cawangan
|
|
Permission::create(['name' => 'pendaftaranpembida']);
|
|
Permission::create(['name' => 'jananotis']);
|
|
//jurulelong
|
|
Permission::create(['name' => 'pendaftaranbatch']);
|
|
Permission::create(['name' => 'kemaskinihargaasas']);
|
|
Permission::create(['name' => 'import']);
|
|
Permission::create(['name' => 'lelongan']);
|
|
Permission::create(['name' => 'janapemenang']);
|
|
//operasi
|
|
//Permission::create(['name' => 'pendaftaranbatch']); di jurulelong dah ada
|
|
Permission::create(['name' => 'report']);
|
|
Permission::create(['name' => 'tangguhan']);
|
|
//account
|
|
Permission::create(['name' => 'pengesahanbayaran']);
|
|
//pembida
|
|
// Permission::create(['name' => 'pendaftaranpembida']); di pc dah ada
|
|
Permission::create(['name' => 'bidaan']);
|
|
Permission::create(['name' => 'pembayaran']);
|
|
|
|
// create roles and assign existing permissions
|
|
$role1 = Role::create(['name' => 'admin']);
|
|
$role1->givePermissionTo('pengguna');
|
|
$role1->givePermissionTo('pengurusanlelongan');
|
|
$role1->givePermissionTo('analisa');
|
|
|
|
$role2 = Role::create(['name' => 'khazanah']);
|
|
$role2->givePermissionTo('semakanmarhun');
|
|
$role2->givePermissionTo('kemaskinimarhun');
|
|
|
|
$role3 = Role::create(['name' => 'teller']);
|
|
$role3->givePermissionTo('pengesahanbayarancash');
|
|
|
|
$role4 = Role::create(['name' => 'pengurus-cawangan']);
|
|
$role4->givePermissionTo('pendaftaranpembida');
|
|
$role4->givePermissionTo('jananotis');
|
|
|
|
$role5 = Role::create(['name' => 'jurulelong']);
|
|
$role5->givePermissionTo('pendaftaranbatch');
|
|
$role5->givePermissionTo('kemaskinihargaasas');
|
|
$role5->givePermissionTo('import');
|
|
$role5->givePermissionTo('lelongan');
|
|
$role5->givePermissionTo('janapemenang');
|
|
|
|
$role6 = Role::create(['name' => 'operasi']);
|
|
$role5->givePermissionTo('pendaftaranbatch');
|
|
$role6->givePermissionTo('report');
|
|
$role6->givePermissionTo('tangguhan');
|
|
|
|
$role7 = Role::create(['name' => 'account']);
|
|
$role7->givePermissionTo('pengesahanbayaran');
|
|
|
|
$role8 = Role::create(['name' => 'pembida']);
|
|
$role8->givePermissionTo('pendaftaranpembida');
|
|
$role8->givePermissionTo('bidaan');
|
|
$role8->givePermissionTo('pembayaran');
|
|
|
|
|
|
// $role3 = Role::create(['name' => 'Super-Admin']);
|
|
// gets all permissions via Gate::before rule; see AuthServiceProvider
|
|
|
|
// create demo users
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Admin',
|
|
'email' => 'admin@example.com',
|
|
]);
|
|
$user->assignRole($role1);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Khazanah',
|
|
'email' => 'khazanah@example.com',
|
|
]);
|
|
$user->assignRole($role2);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Teller',
|
|
'email' => 'teller@example.com',
|
|
]);
|
|
$user->assignRole($role3);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Pengurus Cawangan',
|
|
'email' => 'penguruscawangan@example.com',
|
|
]);
|
|
$user->assignRole($role4);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Juru Lelong',
|
|
'email' => 'jurulelong@example.com',
|
|
]);
|
|
$user->assignRole($role5);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Operasi',
|
|
'email' => 'operasi@example.com',
|
|
]);
|
|
$user->assignRole($role6);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Account',
|
|
'email' => 'account@example.com',
|
|
]);
|
|
$user->assignRole($role7);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Pembida',
|
|
'email' => 'pembida@example.com',
|
|
]);
|
|
$user->assignRole($role8);
|
|
}
|
|
}
|