diff --git a/app/Http/Controllers/EvidenceSubmissionController.php b/app/Http/Controllers/EvidenceSubmissionController.php index 5c4ce37..6761794 100644 --- a/app/Http/Controllers/EvidenceSubmissionController.php +++ b/app/Http/Controllers/EvidenceSubmissionController.php @@ -1,19 +1,27 @@ validate([ - 'name'=>'nullable|string|max:120','email'=>'nullable|email|max:255','park_name'=>'nullable|string|max:180', - 'operator'=>'nullable|string|max:180','purchase_price'=>'nullable|numeric|min:0|max:10000000','valuation'=>'nullable|numeric|min:0|max:10000000', - 'finance_balance'=>'nullable|numeric|min:0|max:10000000','story'=>'required|string|min:20|max:10000','consent_to_contact'=>'nullable|boolean', + 'name' => 'nullable|string|max:120', 'email' => 'nullable|email|max:255', 'park_name' => 'nullable|string|max:180', + 'operator' => 'nullable|string|max:180', 'purchase_price' => 'nullable|numeric|min:0|max:10000000', 'valuation' => 'nullable|numeric|min:0|max:10000000', + 'finance_balance' => 'nullable|numeric|min:0|max:10000000', 'story' => 'required|string|min:20|max:10000', 'consent_to_contact' => 'nullable|boolean', ]); $data['consent_to_contact'] = $request->boolean('consent_to_contact'); EvidenceSubmission::create($data); + return redirect()->route('evidence.create')->with('status', 'Thank you. Your evidence has been submitted for review.'); } } diff --git a/app/Models/EvidenceSubmission.php b/app/Models/EvidenceSubmission.php index beb69b5..df426da 100644 --- a/app/Models/EvidenceSubmission.php +++ b/app/Models/EvidenceSubmission.php @@ -1,8 +1,12 @@ 'boolean','purchase_price'=>'decimal:2','valuation'=>'decimal:2','finance_balance'=>'decimal:2']; + protected $fillable = ['name', 'email', 'park_name', 'operator', 'purchase_price', 'valuation', 'finance_balance', 'story', 'consent_to_contact']; + + protected $casts = ['consent_to_contact' => 'boolean', 'purchase_price' => 'decimal:2', 'valuation' => 'decimal:2', 'finance_balance' => 'decimal:2']; } diff --git a/database/migrations/2026_09_29_190000_create_evidence_submissions_table.php b/database/migrations/2026_09_29_190000_create_evidence_submissions_table.php index 151b406..df0eef9 100644 --- a/database/migrations/2026_09_29_190000_create_evidence_submissions_table.php +++ b/database/migrations/2026_09_29_190000_create_evidence_submissions_table.php @@ -1,5 +1,30 @@ id(); $table->string('name')->nullable(); $table->string('email')->nullable(); $table->string('park_name')->nullable(); $table->string('operator')->nullable(); $table->decimal('purchase_price',12,2)->nullable(); $table->decimal('valuation',12,2)->nullable(); $table->decimal('finance_balance',12,2)->nullable(); $table->text('story'); $table->boolean('consent_to_contact')->default(false); $table->timestamps(); }); } public function down(): void { Schema::dropIfExists('evidence_submissions'); } }; + +return new class extends Migration +{ + public function up(): void + { + Schema::create('evidence_submissions', function (Blueprint $table) { + $table->id(); + $table->string('name')->nullable(); + $table->string('email')->nullable(); + $table->string('park_name')->nullable(); + $table->string('operator')->nullable(); + $table->decimal('purchase_price', 12, 2)->nullable(); + $table->decimal('valuation', 12, 2)->nullable(); + $table->decimal('finance_balance', 12, 2)->nullable(); + $table->text('story'); + $table->boolean('consent_to_contact')->default(false); + $table->timestamps(); + }); + } + + public function down(): void + { + Schema::dropIfExists('evidence_submissions'); + } +};