diff --git a/database/migrations/2024_03_17_132434_create_book_recommendations_table.php b/database/migrations/2024_03_17_132434_create_book_recommendations_table.php index bbc20a8..147a7d8 100644 --- a/database/migrations/2024_03_17_132434_create_book_recommendations_table.php +++ b/database/migrations/2024_03_17_132434_create_book_recommendations_table.php @@ -21,6 +21,7 @@ return new class extends Migration $table->string('cover_image')->nullable(); $table->unsignedBigInteger('recommended_by'); $table->enum('status', ['PENDING', 'COMPLETED', 'REJECTED','ACTIVE'])->default('PENDING'); + $table->dateTime('published_at')->nullable(); $table->timestamps(); $table->foreign('recommended_by')->references('id')->on('users')->onDelete('cascade'); diff --git a/database/migrations/2024_03_18_193502_create_deadlines_table.php b/database/migrations/2024_03_18_193502_create_deadlines_table.php new file mode 100644 index 0000000..b54da59 --- /dev/null +++ b/database/migrations/2024_03_18_193502_create_deadlines_table.php @@ -0,0 +1,31 @@ +id(); + $table->foreignId('book_recommendation_id')->constrained()->onDelete('cascade'); + $table->date('deadline'); + $table->unsignedInteger('target_page')->nullable(); + $table->string('target_chapter')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('deadlines'); + } +}; diff --git a/database/migrations/2024_03_18_193506_create_user_deadlines_table.php b/database/migrations/2024_03_18_193506_create_user_deadlines_table.php new file mode 100644 index 0000000..9957258 --- /dev/null +++ b/database/migrations/2024_03_18_193506_create_user_deadlines_table.php @@ -0,0 +1,30 @@ +id(); + $table->foreignId('user_id')->constrained()->onDelete('cascade'); + $table->foreignId('deadline_id')->constrained('deadlines')->onDelete('cascade'); + $table->dateTime('completed_at')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('user_deadlines'); + } +};