diff --git a/database/migrations/2026_04_01_074209_create_course_requests_tables.php b/database/migrations/2026_04_01_074209_create_course_requests_tables.php index 5047f8b..fc62f1b 100755 --- a/database/migrations/2026_04_01_074209_create_course_requests_tables.php +++ b/database/migrations/2026_04_01_074209_create_course_requests_tables.php @@ -6,22 +6,39 @@ use Illuminate\Support\Facades\Schema; return new class extends Migration { - /** - * Run the migrations. - */ public function up(): void { - Schema::create('course_requests_tables', function (Blueprint $table) { + Schema::create('course_requests', function (Blueprint $table) { $table->id(); + $table->foreignId('organization_id')->nullable()->constrained()->onDelete('cascade'); + $table->foreignId('requested_by_user_id')->constrained('users')->onDelete('cascade'); + $table->enum('status', ['pending', 'approved', 'rejected'])->default('pending'); + $table->foreignId('approved_by')->nullable()->constrained('users')->onDelete('set null'); + $table->timestamp('approved_at')->nullable(); + $table->text('note')->nullable(); $table->timestamps(); + + $table->index(['status', 'created_at']); + }); + + Schema::create('course_request_items', function (Blueprint $table) { + $table->id(); + $table->foreignId('course_request_id')->constrained()->onDelete('cascade'); + $table->foreignId('course_id')->constrained()->onDelete('cascade'); + $table->foreignId('organization_id')->nullable()->constrained()->onDelete('cascade'); + $table->foreignId('user_id')->nullable()->constrained()->onDelete('cascade'); + $table->foreignId('group_id')->nullable()->constrained()->onDelete('cascade'); + $table->date('start_date'); + $table->date('end_date')->nullable(); + $table->timestamps(); + + $table->index('course_request_id'); }); } - /** - * Reverse the migrations. - */ public function down(): void { - Schema::dropIfExists('course_requests_tables'); + Schema::dropIfExists('course_request_items'); + Schema::dropIfExists('course_requests'); } }; diff --git a/database/migrations/2026_04_01_082026_add_organization_id_to_course_request_items_table.php b/database/migrations/2026_04_01_082026_add_organization_id_to_course_request_items_table.php deleted file mode 100755 index 0ac86a5..0000000 --- a/database/migrations/2026_04_01_082026_add_organization_id_to_course_request_items_table.php +++ /dev/null @@ -1,28 +0,0 @@ -