b1d393b1a1
Co-authored-by: nurafrinaalimi16 <nurafrinaalimi16@gmail.com> Reviewed-on: #4
427 lines
14 KiB
PHP
427 lines
14 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',
|
|
'description' => 'Pengurusan Pengguna'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'pengurusanlelongan',
|
|
'description' => 'Pengurusan Lelong'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'analisa',
|
|
'description' => 'Analisa lelong'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'sistem',
|
|
'description' => 'Pengurusan connection database dan environment system'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'pengurusangambar',
|
|
'description' => 'Pengurusan gambar mengikut pilihan parameter pengguna'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'pengurusanuploaddownload',
|
|
'description' => 'Pengurusan upload download'
|
|
]);
|
|
|
|
//khazanah
|
|
Permission::create([
|
|
'name' => 'semakanmarhun',
|
|
'description' => 'Semakan marhun'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'kemaskinimarhun',
|
|
'description' => 'Kemaskini marhun'
|
|
]);
|
|
|
|
//pengurus cawangan
|
|
Permission::create([
|
|
'name' => 'pendaftaranpembida',
|
|
'description' => 'Pendaftaran pembida di cawangan'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'jananotis',
|
|
'description' => 'Jana Notis Lelong'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'pengesahanbayarancash',
|
|
'description' => 'Pengesahan bayaran pembida di cawangan (cash)'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'serahan',
|
|
'description' => 'Penyerahan Marhun Kepada Pembida Yang Menang'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'tangguhlelong',
|
|
'description' => 'Penangguhan Lelong Cawangan'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'WTDcaw',
|
|
'description' => 'Wang Tidak Dituntut Cawangan'
|
|
]);
|
|
|
|
//operasi
|
|
Permission::create([
|
|
'name' => 'pendaftaranbatch',
|
|
'description' => 'Daftar batch lelong'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'kemaskinihargaasas',
|
|
'description' => 'Kemaskini harga asas mengikut harga emas semasa'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'import',
|
|
'description' => 'Import senarai marhun cawangan to LIVE'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'lelongan',
|
|
'description' => '(online/offline) lelong mengikut cawangan'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'janapemenang',
|
|
'description' => 'Pemilihan pemenang bagi bidaan paling tinggi'
|
|
]);
|
|
|
|
//operasi
|
|
Permission::create([
|
|
'name' => 'report',
|
|
'description' => 'Full report lelongan'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'tangguhan',
|
|
'description' => 'Tangguh lelong'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'pengesahanpembida',
|
|
'description' => 'Pengesahan Pembida Baru'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'pengesahan',
|
|
'description' => 'Pengesahan Perubahan Mutu Marhun'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'notistamatkontrak',
|
|
'description' => 'Notis 30 Hari Sebelum Tamat Kontrak'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'importdata',
|
|
'description' => 'Import Data Cawangan Dari LIVE to Master'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'tetapan',
|
|
'description' => 'Tetapan Parameter'
|
|
]);
|
|
|
|
Permission::create([
|
|
'name' => 'backdate',
|
|
'description' => 'Laporan Back Date'
|
|
]);
|
|
|
|
Permission::create([
|
|
'name' => 'reportkali',
|
|
'description' => 'Laporan By Batch Lelong'
|
|
]);
|
|
|
|
Permission::create([
|
|
'name' => 'reportbycaw',
|
|
'description' => 'Report By Cawangan(operasi)'
|
|
]);
|
|
|
|
Permission::create([
|
|
'name' => 'parameter',
|
|
'description' => 'Parameter'
|
|
]);
|
|
|
|
Permission::create([
|
|
'name' => 'WTD',
|
|
'description' => 'Wang Tidak Dituntut'
|
|
]);
|
|
|
|
Permission::create([
|
|
'name' => 'analisaujrah',
|
|
'description' => 'Simulasi Ujrah'
|
|
]);
|
|
|
|
//account
|
|
Permission::create([
|
|
'name' => 'pengesahanbayaran',
|
|
'description' => 'Pengesahan pembayaran pembida dalam akaun yang dibuat melalui (cdm,fpx)'
|
|
]);
|
|
|
|
//pembida
|
|
Permission::create([
|
|
'name' => 'bidaan',
|
|
'description' => 'Pendaftaran bagi yang belum mempunyai akaun di cawangan ataupun kata laluan atas talian'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'pembayaran',
|
|
'description' => 'Pembayaran pemenang'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'sebelumdaftarbatch',
|
|
'description' => 'Janaan Data Outstanding Sebelum Daftar Batch Lelong'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'lelonghargajual',
|
|
'description' => 'Tambah Hargajual Lelong KB1'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'reportcawkhas',
|
|
'description' => 'Laporan Lelong Khas'
|
|
]);
|
|
|
|
//callcenter
|
|
Permission::create([
|
|
'name' => 'notisperingatan',
|
|
'description' => 'Penjanaan Notis Peringatan Oleh Call Center'
|
|
]);
|
|
Permission::create([
|
|
'name' => 'skoptugasan',
|
|
'description' => 'Skop Tugasan Cawangan Kegunaan E-KPI'
|
|
]);
|
|
|
|
//ajklelong
|
|
Permission::create([
|
|
'name' => 'semakanlelong',
|
|
'description' => 'Semakan Lelongan'
|
|
]);
|
|
|
|
// create roles and assign existing permissions
|
|
$role1 = Role::create(['name' => 'admin']);
|
|
$role1->givePermissionTo('pengguna');
|
|
$role1->givePermissionTo('pengurusanlelongan');
|
|
$role1->givePermissionTo('analisa');
|
|
$role1->givePermissionTo('sistem');
|
|
$role1->givePermissionTo('pengurusangambar');
|
|
$role1->givePermissionTo('pengurusanuploaddownload');
|
|
|
|
$role2 = Role::create(['name' => 'khazanah']);
|
|
$role2->givePermissionTo('semakanmarhun');
|
|
$role2->givePermissionTo('kemaskinimarhun');
|
|
$role2->givePermissionTo('pengurusangambar');
|
|
|
|
$role3 = Role::create(['name' => 'penilai']);
|
|
$role3->givePermissionTo('semakanmarhun');
|
|
$role3->givePermissionTo('kemaskinimarhun');
|
|
$role3->givePermissionTo('pengurusangambar');
|
|
|
|
$role4 = Role::create(['name' => 'pengurus-cawangan']);
|
|
$role4->givePermissionTo('pendaftaranpembida');
|
|
$role4->givePermissionTo('jananotis');
|
|
$role4->givePermissionTo('pengesahan');
|
|
$role4->givePermissionTo('pengesahanbayarancash');
|
|
$role4->givePermissionTo('serahan');
|
|
$role4->givePermissionTo('tangguhlelong');
|
|
$role4->givePermissionTo('report');
|
|
$role4->givePermissionTo('pengurusangambar');
|
|
$role4->givePermissionTo('WTDcaw');
|
|
|
|
$role6 = Role::create(['name' => 'operasi']);
|
|
$role6->givePermissionTo('import');
|
|
$role6->givePermissionTo('lelongan');
|
|
$role6->givePermissionTo('janapemenang');
|
|
$role6->givePermissionTo('pengguna');
|
|
$role6->givePermissionTo('pendaftaranbatch');
|
|
$role6->givePermissionTo('report');
|
|
$role6->givePermissionTo('tangguhan');
|
|
$role6->givePermissionTo('analisa');
|
|
$role6->givePermissionTo('pengesahanpembida');
|
|
$role6->givePermissionTo('pengesahan');
|
|
$role6->givePermissionTo('notistamatkontrak');
|
|
$role6->givePermissionTo('kemaskinihargaasas');
|
|
$role6->givePermissionTo('importdata');
|
|
$role6->givePermissionTo('tetapan');
|
|
$role6->givePermissionTo('jananotis');
|
|
$role6->givePermissionTo('backdate');
|
|
$role6->givePermissionTo('reportkali');
|
|
$role6->givePermissionTo('pengurusangambar');
|
|
$role6->givePermissionTo('reportbycaw');
|
|
$role6->givePermissionTo('parameter');
|
|
$role6->givePermissionTo('WTD');
|
|
$role6->givePermissionTo('analisaujrah');
|
|
|
|
|
|
|
|
$role7 = Role::create(['name' => 'account']);
|
|
$role7->givePermissionTo('pengesahanbayaran');
|
|
$role7->givePermissionTo('pengesahanpembida');
|
|
$role7->givePermissionTo('report');
|
|
|
|
$role8 = Role::create(['name' => 'pembida']);
|
|
$role8->givePermissionTo('pendaftaranpembida');
|
|
$role8->givePermissionTo('bidaan');
|
|
$role8->givePermissionTo('pembayaran');
|
|
|
|
$role9 = Role::create(['name' => 'pengurus-cawangan-khas']);
|
|
$role9->givePermissionTo('sebelumdaftarbatch');
|
|
$role9->givePermissionTo('lelonghargajual');
|
|
$role9->givePermissionTo('reportcawkhas');
|
|
|
|
$role10 = Role::create(['name' => 'callcenter']);
|
|
$role10->givePermissionTo('notisperingatan');
|
|
|
|
$role11 = Role::create(['name' => 'pengurus-operasi']);
|
|
$role11->givePermissionTo('pengurusangambar');
|
|
$role11->givePermissionTo('pengesahan');
|
|
$role11->givePermissionTo('report');
|
|
$role11->givePermissionTo('pengesahanpembida');
|
|
$role11->givePermissionTo('pendaftaranbatch');
|
|
|
|
$role12 = Role::create(['name' => 'operasi-kpi']);
|
|
$role12->givePermissionTo('skoptugasan');
|
|
|
|
$role13 = Role::create(['name' => 'hr']);
|
|
$role13->givePermissionTo('skoptugasan');
|
|
|
|
$role14 = Role::create(['name' => 'pemasaran']);
|
|
$role14->givePermissionTo('pengurusangambar');
|
|
$role14->givePermissionTo('pendaftaranbatch');
|
|
|
|
$role15 = Role::create(['name' => 'ajk']);
|
|
$role15->givePermissionTo('semakanlelong');
|
|
|
|
// $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',
|
|
'username' => 'Admin',
|
|
'email' => 'admin@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role1);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Khazanah',
|
|
'username' => 'Khazanah',
|
|
'email' => 'khazanah@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role2);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Penilai',
|
|
'username' => 'Penilai',
|
|
'email' => 'penilai@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role3);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Pengurus Cawangan',
|
|
'username' => 'PC',
|
|
'email' => 'penguruscawangan@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role4);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Operasi',
|
|
'username' => 'Operasi',
|
|
'email' => 'operasi@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role6);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Account',
|
|
'username' => 'Account',
|
|
'email' => 'account@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role7);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Pembida',
|
|
'username' => 'Pembida',
|
|
'email' => 'pembida@example.com',
|
|
'user_type' => 2,
|
|
'nokp' => '980430031111',
|
|
'notelbimbit' => '0198080123'
|
|
]);
|
|
$user->assignRole($role8);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Amir',
|
|
'username' => 'Amir',
|
|
'email' => 'amir@example.com',
|
|
'user_type' => 2,
|
|
'nokp' => '980430032222',
|
|
'notelbimbit' => '0198080000'
|
|
]);
|
|
$user->assignRole($role8);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Pengurus Cawangan Khas',
|
|
'username' => 'PCKB1',
|
|
'kodcaw' => 'KB1',
|
|
'email' => 'penguruscawanganKB1@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role9);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Call Center',
|
|
'username' => 'callcenter',
|
|
'email' => 'callcenter@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role10);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Operasi KPI',
|
|
'username' => 'operasikpi',
|
|
'email' => 'operasikpi@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role12);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'HR',
|
|
'username' => 'hr',
|
|
'email' => 'hr@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role13);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Pemasaran',
|
|
'username' => 'pemasaran',
|
|
'email' => 'pemasaran@example.com',
|
|
'user_type' => 1
|
|
]);
|
|
$user->assignRole($role14);
|
|
|
|
$user = \App\Models\User::factory()->create([
|
|
'name' => 'Ahli Jawatan Kuasa',
|
|
'username' => 'ajk',
|
|
'email' => 'ajk@example.com',
|
|
'user_type' => 3
|
|
]);
|
|
$user->assignRole($role15);
|
|
}
|
|
}
|