/ database / seeders / UserSeeder.php
UserSeeder.php
 1  <?php
 2  
 3  namespace Database\Seeders;
 4  
 5  use App\Models\User;
 6  use App\Models\UserType;
 7  use Illuminate\Database\Seeder;
 8  use Illuminate\Support\Facades\Hash;
 9  use Spatie\Permission\Models\Permission;
10  use Spatie\Permission\Models\Role;
11  
12  class UserSeeder extends Seeder
13  {
14      public function admin()
15      {
16          User::create([
17              'username' => 'admin',
18              'alias' => 'cert1',
19              'password' => Hash::make('password'),
20              'user_type_id' => 1,
21              'internal_identification_number' => '11111111A',
22              'email' => 'admin@sgoc.jtsec.dev',
23              'name' => 'Admin',
24              'lastname' => '',
25              'can_access_inbox' => true,
26              'can_access_sgoc' => true,
27          ])->assignRole('root');
28  
29          User::create([
30              'username' => 'worker',
31              'alias' => 'cert2',
32              'password' => Hash::make('password'),
33              'user_type_id' => 1,
34              'internal_identification_number' => '21111111A',
35              'email' => 'worker@sgoc.jtsec.dev',
36              'name' => 'Worker',
37              'lastname' => '',
38              'can_access_inbox' => true,
39              'can_access_sgoc' => true,
40          ])->assignRole('worker');
41  
42          User::create([
43              'username' => 'technical_manager',
44              'alias' => 'cert3',
45              'password' => Hash::make('password'),
46              'user_type_id' => 1,
47              'internal_identification_number' => '31111111A',
48              'email' => 'technical_manager@sgoc.jtsec.dev',
49              'name' => 'Technical',
50              'lastname' => '',
51              'can_access_inbox' => true,
52              'can_access_sgoc' => true,
53          ])->assignRole('technical_manager');
54  
55          User::create([
56              'alias' => 'cert4',
57              'username' => 'area_manager',
58              'password' => Hash::make('password'),
59              'user_type_id' => 1,
60              'internal_identification_number' => '41111111A',
61              'email' => 'area_manager@sgoc.jtsec.dev',
62              'name' => 'Area',
63              'lastname' => '',
64              'can_access_inbox' => true,
65              'can_access_sgoc' => true,
66          ])->assignRole('area_manager');
67  
68          User::create([
69              'alias' => 'cert5',
70              'username' => 'quality_manager',
71              'password' => Hash::make('password'),
72              'user_type_id' => 1,
73              'internal_identification_number' => '51111111A',
74              'email' => 'quality_manager@sgoc.jtsec.dev',
75              'name' => 'Quality',
76              'lastname' => '',
77              'can_access_inbox' => true,
78              'can_access_sgoc' => true,
79          ])->assignRole('quality_manager');
80      }
81  
82      /**
83       * Seed the application's database.
84       *
85       * @return void
86       */
87      public function run()
88      {
89          if (config('app.env') != 'local') {
90              $this->admin();
91          } else {
92              User::withoutEvents(function () {
93                  $this->admin();
94              });
95          }
96      }
97  }