From d82f198199df9ef3120cfc826f4a17bfe11a7d7e Mon Sep 17 00:00:00 2001 From: weichien Date: Tue, 8 Jun 2021 13:40:10 +0800 Subject: [PATCH] feat: add announcement and pivot table with segment. --- ...5_26_094333_create_announcements_table.php | 40 +++++++++++++++++++ ...3501_create_announcement_segment_table.php | 40 +++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 database/migrations/2021_05_26_094333_create_announcements_table.php create mode 100644 database/migrations/2021_06_02_233501_create_announcement_segment_table.php diff --git a/database/migrations/2021_05_26_094333_create_announcements_table.php b/database/migrations/2021_05_26_094333_create_announcements_table.php new file mode 100644 index 00000000..35508479 --- /dev/null +++ b/database/migrations/2021_05_26_094333_create_announcements_table.php @@ -0,0 +1,40 @@ +id(); + $table->string('title', 50); + $table->longText('description'); + $table->timestamp('starting_on')->nullable(); + $table->timestamp('ending_on')->nullable(); + $table->boolean('is_all_day')->default(false); + $table->integer('duration')->default(0); + $table->boolean('is_recurring')->default(false); + $table->string('recurrence_pattern')->nullable(); + $table->softDeletes(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('announcements'); + } +} diff --git a/database/migrations/2021_06_02_233501_create_announcement_segment_table.php b/database/migrations/2021_06_02_233501_create_announcement_segment_table.php new file mode 100644 index 00000000..c2777abf --- /dev/null +++ b/database/migrations/2021_06_02_233501_create_announcement_segment_table.php @@ -0,0 +1,40 @@ +primary(['announcement_id', 'segment_id']); + $table->bigInteger('announcement_id')->unsigned(); + $table->bigInteger('segment_id')->unsigned(); + $table->timestamps(); + $table->foreign('announcement_id') + ->references('id') + ->on('announcements')->onDelete('cascade'); + $table->foreign('segment_id') + ->references('id') + ->on('segments')->onDelete('cascade'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('announcement_segment'); + } +}