prelim score sheet model and migration

This commit is contained in:
Matt Young 2025-09-22 21:15:32 -05:00
parent 2b39ea9a88
commit 23442ad740
2 changed files with 53 additions and 0 deletions

View File

@ -0,0 +1,19 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasOne;
class PrelimScoreSheet extends Model
{
public function user(): HasOne
{
return $this->hasOne(User::class);
}
public function entry(): HasOne
{
return $this->hasOne(Entry::class);
}
}

View File

@ -0,0 +1,34 @@
<?php
use App\Models\Entry;
use App\Models\User;
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('prelim_score_sheets', function (Blueprint $table) {
$table->id();
$table->foreignIdFor(User::class)->constrained()->cascadeOnDelete()->cascadeOnUpdate();
$table->foreignIdFor(Entry::class)->constrained()->cascadeOnDelete()->cascadeOnUpdate();
$table->json('subscores');
$table->decimal('total', 9, 6);
$table->timestamps();
$table->unique(['user_id', 'entry_id']);
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('prelim_score_sheets');
}
};