auditionadmin/database/seeders/AuditionWithScoringGuideAnd...

85 lines
2.4 KiB
PHP

<?php
namespace Database\Seeders;
use App\Models\Audition;
use App\Models\Room;
use App\Models\ScoringGuide;
use App\Models\SubscoreDefinition;
use Illuminate\Database\Seeder;
class AuditionWithScoringGuideAndRoom extends Seeder
{
/**
* Run the database seeds.
*/
// TiebreakOrder: Tone, Sightreading, Etude 1, Etude 2, Scale
// Scale is only for seating, Tone is only for advancement
public function run(): void
{
$room = Room::factory()->create(['id' => 1000]);
$sg = ScoringGuide::factory()->create(['id' => 1000]);
SubscoreDefinition::create([
'id' => 1001,
'scoring_guide_id' => $sg->id,
'name' => 'Scale',
'max_score' => 100,
'weight' => 1,
'display_order' => 1,
'tiebreak_order' => 5,
'for_seating' => 1,
'for_advance' => 0,
]);
SubscoreDefinition::create([
'id' => 1002,
'scoring_guide_id' => $sg->id,
'name' => 'Etude 1',
'max_score' => 100,
'weight' => 2,
'display_order' => 2,
'tiebreak_order' => 3,
'for_seating' => 1,
'for_advance' => 1,
]);
SubscoreDefinition::create([
'id' => 1003,
'scoring_guide_id' => $sg->id,
'name' => 'Etude 2',
'max_score' => 100,
'weight' => 2,
'display_order' => 3,
'tiebreak_order' => 4,
'for_seating' => 1,
'for_advance' => 1,
]);
SubscoreDefinition::create([
'id' => 1004,
'scoring_guide_id' => $sg->id,
'name' => 'Sight Reading',
'max_score' => 100,
'weight' => 3,
'display_order' => 4,
'tiebreak_order' => 2,
'for_seating' => 1,
'for_advance' => 1,
]);
SubscoreDefinition::create([
'id' => 1005,
'scoring_guide_id' => $sg->id,
'name' => 'Tone',
'max_score' => 100,
'weight' => 1,
'display_order' => 5,
'tiebreak_order' => 1,
'for_seating' => 0,
'for_advance' => 1,
]);
Audition::factory()->create([
'id' => 1000,
'room_id' => $room->id,
'scoring_guide_id' => $sg->id,
'name' => 'Test Audition',
]);
}
}