Changes to import and notifications

This commit is contained in:
Simon Pocrnjič
2025-10-13 21:14:10 +02:00
parent 0bbed64542
commit 79b3e20b02
28 changed files with 2173 additions and 438 deletions
@@ -0,0 +1,26 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
public function up(): void
{
Schema::table('imports', function (Blueprint $table) {
if (! Schema::hasColumn('imports', 'show_missing')) {
$table->boolean('show_missing')->default(false)->after('reactivate');
}
});
}
public function down(): void
{
Schema::table('imports', function (Blueprint $table) {
if (Schema::hasColumn('imports', 'show_missing')) {
$table->dropColumn('show_missing');
}
});
}
};
@@ -0,0 +1,33 @@
<?php
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('activity_notification_reads', function (Blueprint $table) {
$table->id();
$table->foreignId('user_id')->constrained()->cascadeOnDelete();
$table->foreignId('activity_id')->constrained()->cascadeOnDelete();
$table->date('due_date');
$table->timestamp('read_at')->nullable();
$table->timestamps();
$table->unique(['user_id', 'activity_id', 'due_date'], 'uniq_user_activity_due');
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('activity_notification_reads');
}
};
@@ -0,0 +1,34 @@
<?php
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
{
if (Schema::hasTable('activity_notification_reads')) {
return; // Table created by earlier migration
}
Schema::create('activity_notification_reads', function (Blueprint $table) {
$table->id();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
// Intentionally keep as-is to avoid dropping a table created by the primary migration
if (Schema::hasTable('activity_notification_reads')) {
Schema::dropIfExists('activity_notification_reads');
}
}
};