33 lines
1.1 KiB
PHP
33 lines
1.1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Database\Factories\Engelsystem\Models\User;
|
|
|
|
use Carbon\Carbon;
|
|
use Engelsystem\Models\User\PersonalData;
|
|
use Engelsystem\Models\User\User;
|
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
|
|
|
class PersonalDataFactory extends Factory
|
|
{
|
|
/** @var string */
|
|
protected $model = PersonalData::class; // phpcs:ignore
|
|
|
|
public function definition(): array
|
|
{
|
|
$arrival = $this->faker->optional()->dateTimeThisMonth('2 weeks');
|
|
$departure = $this->faker->optional()->dateTimeThisMonth('2 weeks');
|
|
|
|
return [
|
|
'user_id' => User::factory(),
|
|
'first_name' => $this->faker->optional(.7)->firstName(),
|
|
'last_name' => $this->faker->optional()->lastName(),
|
|
'pronoun' => $this->faker->optional(.3)->pronoun(),
|
|
'shirt_size' => $this->faker->optional(.9)->shirtSize(),
|
|
'planned_arrival_date' => $arrival ? Carbon::instance($arrival) : null,
|
|
'planned_departure_date' => $departure ? Carbon::instance($departure) : null,
|
|
];
|
|
}
|
|
}
|