File: /var/www/html/laravel/database/migrations/2025_02_04_132437_add_missed_field_check_needed.php
<?php
use App\Models\Notam;
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
{
$notams = Notam::query()
->select('notams.*')
->where('output', 'not like', 'checkNeeded')
->orWhereNull('correct_response', 'not like', 'checkNeeded')
->get();
$countNotams = 0;
foreach ($notams as $notam) {
$output = $notam->output;
if ($output) {
$data = json_decode($output);
if (is_object($data) && !property_exists($data, 'CheckNeeded')) {
$data->CheckNeeded = true;
$notam->output = json_encode($data);
echo 'Updated output for notam id: ' . $notam->id . PHP_EOL;
}
}
$correctResponse = $notam->correct_response;
if ($correctResponse) {
$data = json_decode($correctResponse);
if (is_object($data) && !property_exists($data, 'CheckNeeded')) {
$data->CheckNeeded = true;
$notam->correct_response = json_encode($data);
echo 'Updated correct_response for notam id: ' . $notam->id . PHP_EOL;
}
}
$notam->save();
}
}
/**
* Reverse the migrations.
*/
public function down(): void
{
//
}
};