auditionadmin/database/seeders/ScoreAllAuditions.php

43 lines
1.3 KiB
PHP

<?php
namespace Database\Seeders;
use App\Models\ScoreSheet;
use App\Models\User;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
class ScoreAllAuditions extends Seeder
{
/**
* Run the database seeds.
*/
public function run(): void
{
$judges = User::all();
foreach ($judges as $judge) {
foreach( $judge->rooms as $room) {
foreach ($room->auditions as $audition){
$scoringGuide = $audition->scoringGuide;
$subscores = $scoringGuide->subscores;
foreach ($audition->entries as $entry){
$scoreArray = [];
foreach ($subscores as $subscore) {
$scoreArray[$subscore->id] = [
'score' => mt_rand(0,100),
'subscore_id' => $subscore->id,
'subscore_name' => $subscore->name
];
}
ScoreSheet::create([
'user_id' => $judge->id,
'entry_id' => $entry->id,
'subscores' => $scoreArray
]);
}
}
}
}
}
}