dashboard-admin/database/seeders/DatabaseSeeder.php

62 lines
2.1 KiB
PHP

<?php
namespace Database\Seeders;
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use App\Models\User;
use Carbon\Carbon;
use App\Models\Setting;
use Illuminate\Support\Str;
use Faker\Factory as FakerFactory;
use Faker\Provider\id_ID\Person as Person;
use Laravolt\Indonesia\Seeds\CitiesSeeder;
use Laravolt\Indonesia\Seeds\VillagesSeeder;
use Laravolt\Indonesia\Seeds\DistrictsSeeder;
use Laravolt\Indonesia\Seeds\ProvincesSeeder;
class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*/
public function run(): void
{
$faker = FakerFactory::create();
$faker->addProvider(new Person($faker));
User::factory()->create([
'id' => Str::uuid(),
'nama_depan' => $faker->firstName,
'nama_belakang' => $faker->lastName,
'tanggal_lahir' => $faker->date($format = 'Y-m-d', $max = 'now'),
'email' => 'admin@example.net',
'email_verified_at' => now(),
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
'remember_token' => Str::random(10),
'role' => 'Admin',
'nik' => $faker->nik($faker->randomElement(['male', 'female']), $faker->dateTimeBetween('-65 years', '-18 years')),
'alamat' => $faker->address,
'nohp' => $faker->phoneNumber(),
'status' => 'Finished',
'persentase_kemiripan' => 100,
'gender' => $faker->randomElement(['Laki-laki', 'Perempuan']),
'kode_kelurahan' => '1101012002',
]);
User::factory(20)->create();
$now = Carbon::now()->tz('Asia/Jakarta');
$bulan = $now->format('n');
$tahun = $now->year;
Setting::create([
'id' => Str::uuid(),
'bulan' => $bulan,
'tahun' => $tahun,
'persentase' => 5,
'status' => 'Active'
]);
$this->call([ProvincesSeeder::class, CitiesSeeder::class, DistrictsSeeder::class, VillagesSeeder::class]);
}
}