QR_code_generator/database/seeders/Users/UsersTableSeeder.php

39 lines
1010 B
PHP

<?php
namespace Database\Seeders\Users;
use App\Models\User;
use Illuminate\Database\Seeder;
class UsersTableSeeder extends Seeder {
public array $users = [
];
public array $admins = [
['email' => 'admin@test.ru', 'name' => 'Админ Админович Админов', 'password' => 'DybgEs']
];
/**
* Run the database seeders.
*
* @return void
*/
public function run() {
$this->createUsers($this->users);
$this->createUsers($this->admins, 'Administrator');
}
public function createUsers($users, $role = 'User') {
collect($users)->each(function($data) use($role) {
if ($email = $data['email'] ?? null) {
if ($user = User::where(['email' => $email])->first()) $user->update($data);
else $user = User::factory()->create($data);
$user->assignRole($role);
if ($password = $data['password'] ?? null) $user->setPassword($password);
}
});
}
}