Various fixes for DB seeding

This commit is contained in:
2025-12-04 22:37:16 +01:00
parent 0200c38f30
commit b7a880d66a
12 changed files with 71 additions and 75 deletions
+27 -21
View File
@@ -26,7 +26,31 @@ public function definition()
$hasMatrix = rand(0, 9) >= 7;
$hasGithub = rand(0, 9) >= 7;
$contact = [
$onlineAccounts = [];
if ($hasLinkedIn) {
$onlineAccounts[] = [
'platform' => 'linkedin',
'user_name' => $userName,
'url' => 'https://www.linkedin.com/in/' . $userName
];
}
if ($hasMatrix) {
$onlineAccounts[] = [
'platform' => 'matrix',
'user_name' => $userName,
'url' => '@' . $userName . ':matrix.org'
];
}
if ($hasGithub) {
$onlineAccounts[] = [
'platform' => 'github',
'user_name' => $userName,
'url' => 'https://www.github.com/' . $userName
];
}
return [
'is_primary' => $this->faker->boolean(30),
'salutation' => $this->faker->title($gender),
'first_name' => $this->faker->firstName($gender),
@@ -36,25 +60,7 @@ public function definition()
'phone' => $this->faker->phoneNumber(),
'mobile_phone' => $this->faker->phoneNumber(),
'avatar' => $avatar,
'online_accounts' => []
'online_accounts' => $onlineAccounts
];
if ($hasLinkedIn) $contact[] = [
'platform' => 'linkedin',
'user_name' => $userName,
'url' => 'https://www.linkedin.com/in/' . $userName
];
if ($hasMatrix) $contact[] = [
'platform' => 'matrix',
'user_name' => $userName,
'url' => '@' . $userName . ':matrix.org'
];
if ($hasGithub) $contact[] = [
'platform' => 'github',
'user_name' => $userName,
'url' => 'https://www.github.com/' . $userName
];
return $contact;
}
}
}
+3 -1
View File
@@ -11,13 +11,15 @@ public function definition(): array
{
$isSection = rand(0, 10) > 7;
$unit = Unit::where('name', $this->faker->randomElement(['Stück', 'Stunden', 'Tage', 'pauschal']))->first();
return [
'position' => $this->faker->numberBetween(1, 10) + ($isSection ? 0.5 : 0),
'is_section' => $isSection,
'title' => $this->faker->words(3, true),
'description' => $this->faker->sentence(),
'quantity' => $this->faker->numberBetween(1, 10),
'unit_id' => Unit::factory(),
'unit_id' => $unit ? $unit->id : null,
'price' => $this->faker->randomFloat(2, 10, 500),
];
}