From ada5c4a00456f4cf0e6e9e321a7d23323dea82cd Mon Sep 17 00:00:00 2001 From: Gael Yvert <Gael.Yvert@ens-lyon.fr> Date: Fri, 11 Jun 2021 16:06:11 +0200 Subject: [PATCH] create relationships between projects and strains, oligos, celllines, plasmids, wellplates, antibodies (issue #66) --- ...11_123443_create_project_strains_table.php | 36 +++++++ ..._11_132320_create_project_oligos_table.php | 35 +++++++ ..._132331_create_project_celllines_table.php | 35 +++++++ ...1_132340_create_project_plasmids_table.php | 35 +++++++ ...132354_create_project_wellplates_table.php | 35 +++++++ ...132407_create_project_antibodies_table.php | 35 +++++++ ...lityTrackingByIseedDataRowsTableSeeder.php | 96 +++++++++++++++++++ ...ityTrackingByIseedDataTypesTableSeeder.php | 12 +-- 8 files changed, 313 insertions(+), 6 deletions(-) create mode 100644 database/migrations/2021_06_11_123443_create_project_strains_table.php create mode 100644 database/migrations/2021_06_11_132320_create_project_oligos_table.php create mode 100644 database/migrations/2021_06_11_132331_create_project_celllines_table.php create mode 100644 database/migrations/2021_06_11_132340_create_project_plasmids_table.php create mode 100644 database/migrations/2021_06_11_132354_create_project_wellplates_table.php create mode 100644 database/migrations/2021_06_11_132407_create_project_antibodies_table.php diff --git a/database/migrations/2021_06_11_123443_create_project_strains_table.php b/database/migrations/2021_06_11_123443_create_project_strains_table.php new file mode 100644 index 0000000..6dc9405 --- /dev/null +++ b/database/migrations/2021_06_11_123443_create_project_strains_table.php @@ -0,0 +1,36 @@ +<?php + +use Illuminate\Database\Migrations\Migration; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Support\Facades\Schema; + +class CreateProjectStrainsTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('project_strains', function (Blueprint $table) { + $table->id(); + + $table->bigInteger('project_id'); + $table->bigInteger('strain_id'); + + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('project_strains'); + } +} diff --git a/database/migrations/2021_06_11_132320_create_project_oligos_table.php b/database/migrations/2021_06_11_132320_create_project_oligos_table.php new file mode 100644 index 0000000..da4d72e --- /dev/null +++ b/database/migrations/2021_06_11_132320_create_project_oligos_table.php @@ -0,0 +1,35 @@ +<?php + +use Illuminate\Database\Migrations\Migration; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Support\Facades\Schema; + +class CreateProjectOligosTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('project_oligos', function (Blueprint $table) { + $table->id(); + + $table->bigInteger('project_id'); + $table->bigInteger('oligo_id'); + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('project_oligos'); + } +} diff --git a/database/migrations/2021_06_11_132331_create_project_celllines_table.php b/database/migrations/2021_06_11_132331_create_project_celllines_table.php new file mode 100644 index 0000000..8e2cabe --- /dev/null +++ b/database/migrations/2021_06_11_132331_create_project_celllines_table.php @@ -0,0 +1,35 @@ +<?php + +use Illuminate\Database\Migrations\Migration; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Support\Facades\Schema; + +class CreateProjectCelllinesTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('project_celllines', function (Blueprint $table) { + $table->id(); + + $table->bigInteger('project_id'); + $table->bigInteger('cellline_id'); + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('project_celllines'); + } +} diff --git a/database/migrations/2021_06_11_132340_create_project_plasmids_table.php b/database/migrations/2021_06_11_132340_create_project_plasmids_table.php new file mode 100644 index 0000000..4f4e688 --- /dev/null +++ b/database/migrations/2021_06_11_132340_create_project_plasmids_table.php @@ -0,0 +1,35 @@ +<?php + +use Illuminate\Database\Migrations\Migration; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Support\Facades\Schema; + +class CreateProjectPlasmidsTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('project_plasmids', function (Blueprint $table) { + $table->id(); + + $table->bigInteger('project_id'); + $table->bigInteger('plasmid_id'); + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('project_plasmids'); + } +} diff --git a/database/migrations/2021_06_11_132354_create_project_wellplates_table.php b/database/migrations/2021_06_11_132354_create_project_wellplates_table.php new file mode 100644 index 0000000..e44acd4 --- /dev/null +++ b/database/migrations/2021_06_11_132354_create_project_wellplates_table.php @@ -0,0 +1,35 @@ +<?php + +use Illuminate\Database\Migrations\Migration; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Support\Facades\Schema; + +class CreateProjectWellplatesTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('project_wellplates', function (Blueprint $table) { + $table->id(); + + $table->bigInteger('project_id'); + $table->bigInteger('wellplate_id'); + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('project_wellplates'); + } +} diff --git a/database/migrations/2021_06_11_132407_create_project_antibodies_table.php b/database/migrations/2021_06_11_132407_create_project_antibodies_table.php new file mode 100644 index 0000000..2435123 --- /dev/null +++ b/database/migrations/2021_06_11_132407_create_project_antibodies_table.php @@ -0,0 +1,35 @@ +<?php + +use Illuminate\Database\Migrations\Migration; +use Illuminate\Database\Schema\Blueprint; +use Illuminate\Support\Facades\Schema; + +class CreateProjectAntibodiesTable extends Migration +{ + /** + * Run the migrations. + * + * @return void + */ + public function up() + { + Schema::create('project_antibodies', function (Blueprint $table) { + $table->id(); + + $table->bigInteger('project_id'); + $table->bigInteger('antibody_id'); + + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('project_antibodies'); + } +} diff --git a/database/seeders/FunctionalityTrackingByIseedDataRowsTableSeeder.php b/database/seeders/FunctionalityTrackingByIseedDataRowsTableSeeder.php index 47e5e5d..281eb47 100755 --- a/database/seeders/FunctionalityTrackingByIseedDataRowsTableSeeder.php +++ b/database/seeders/FunctionalityTrackingByIseedDataRowsTableSeeder.php @@ -3587,6 +3587,102 @@ class FunctionalityTrackingByIseedDataRowsTableSeeder extends Seeder 'required' => 0, 'type' => 'relationship', ), + 223 => + array ( + 'add' => 1, + 'browse' => 1, + 'data_type_id' => 29, + 'delete' => 1, + 'details' => '{"foreign_pivot_key":"strain_id","related_pivot_key":"project_id","parent_key":"id","model":"App\\\\Project","table":"projects","type":"belongsToMany","column":"id","key":"id","label":"name","pivot_table":"project_strains","pivot":"1","taggable":"on"}', + 'display_name' => 'projects', + 'edit' => 1, + 'field' => 'strain_belongstomany_project_relationship', + 'id' => 311, + 'order' => 35, + 'read' => 1, + 'required' => 0, + 'type' => 'relationship', + ), + 224 => + array ( + 'add' => 1, + 'browse' => 1, + 'data_type_id' => 15, + 'delete' => 1, + 'details' => '{"foreign_pivot_key":"oligo_id","related_pivot_key":"project_id","parent_key":"id","model":"App\\\\Project","table":"projects","type":"belongsToMany","column":"id","key":"id","label":"name","pivot_table":"project_oligos","pivot":"1","taggable":"on"}', + 'display_name' => 'projects', + 'edit' => 1, + 'field' => 'oligo_belongstomany_project_relationship', + 'id' => 312, + 'order' => 13, + 'read' => 1, + 'required' => 0, + 'type' => 'relationship', + ), + 225 => + array ( + 'add' => 1, + 'browse' => 1, + 'data_type_id' => 24, + 'delete' => 1, + 'details' => '{"foreign_pivot_key":"cellline_id","related_pivot_key":"project_id","parent_key":"id","model":"App\\\\Project","table":"projects","type":"belongsToMany","column":"id","key":"id","label":"name","pivot_table":"project_celllines","pivot":"1","taggable":"on"}', + 'display_name' => 'projects', + 'edit' => 1, + 'field' => 'cell_line_belongstomany_project_relationship', + 'id' => 313, + 'order' => 10, + 'read' => 1, + 'required' => 0, + 'type' => 'relationship', + ), + 226 => + array ( + 'add' => 1, + 'browse' => 1, + 'data_type_id' => 20, + 'delete' => 1, + 'details' => '{"foreign_pivot_key":"plasmid_id","related_pivot_key":"project_id","parent_key":"id","model":"App\\\\Project","table":"projects","type":"belongsToMany","column":"id","key":"id","label":"name","pivot_table":"project_plasmids","pivot":"1","taggable":"on"}', + 'display_name' => 'projects', + 'edit' => 1, + 'field' => 'plasmid_belongstomany_project_relationship', + 'id' => 314, + 'order' => 25, + 'read' => 1, + 'required' => 0, + 'type' => 'relationship', + ), + 227 => + array ( + 'add' => 1, + 'browse' => 1, + 'data_type_id' => 45, + 'delete' => 1, + 'details' => '{"foreign_pivot_key":"wellplate_id","related_pivot_key":"project_id","parent_key":"id","model":"App\\\\Project","table":"projects","type":"belongsToMany","column":"id","key":"id","label":"name","pivot_table":"project_wellplates","pivot":"1","taggable":"on"}', + 'display_name' => 'projects', + 'edit' => 1, + 'field' => 'wellplate_belongstomany_project_relationship', + 'id' => 315, + 'order' => 16, + 'read' => 1, + 'required' => 0, + 'type' => 'relationship', + ), + 228 => + array ( + 'add' => 1, + 'browse' => 1, + 'data_type_id' => 13, + 'delete' => 1, + 'details' => '{"foreign_pivot_key":"antibody_id","related_pivot_key":"project_id","parent_key":"id","model":"App\\\\Project","table":"projects","type":"belongsToMany","column":"id","key":"id","label":"name","pivot_table":"project_antibodies","pivot":"1","taggable":"on"}', + 'display_name' => 'projects', + 'edit' => 1, + 'field' => 'antibody_belongstomany_project_relationship', + 'id' => 316, + 'order' => 15, + 'read' => 1, + 'required' => 0, + 'type' => 'relationship', + ), )); diff --git a/database/seeders/FunctionalityTrackingByIseedDataTypesTableSeeder.php b/database/seeders/FunctionalityTrackingByIseedDataTypesTableSeeder.php index 39cfcb5..d15184c 100755 --- a/database/seeders/FunctionalityTrackingByIseedDataTypesTableSeeder.php +++ b/database/seeders/FunctionalityTrackingByIseedDataTypesTableSeeder.php @@ -89,7 +89,7 @@ class FunctionalityTrackingByIseedDataTypesTableSeeder extends Seeder 'policy_name' => NULL, 'server_side' => 0, 'slug' => 'antibodies', - 'updated_at' => '2021-06-08 13:33:18', + 'updated_at' => '2021-06-11 14:03:45', ), 4 => array ( @@ -125,7 +125,7 @@ class FunctionalityTrackingByIseedDataTypesTableSeeder extends Seeder 'policy_name' => NULL, 'server_side' => 0, 'slug' => 'oligos', - 'updated_at' => '2021-06-08 13:33:58', + 'updated_at' => '2021-06-11 14:00:45', ), 6 => array ( @@ -143,7 +143,7 @@ class FunctionalityTrackingByIseedDataTypesTableSeeder extends Seeder 'policy_name' => NULL, 'server_side' => 0, 'slug' => 'plasmids', - 'updated_at' => '2021-06-08 13:32:59', + 'updated_at' => '2021-06-11 14:02:23', ), 7 => array ( @@ -179,7 +179,7 @@ class FunctionalityTrackingByIseedDataTypesTableSeeder extends Seeder 'policy_name' => NULL, 'server_side' => 0, 'slug' => 'cell-lines', - 'updated_at' => '2021-06-08 13:33:39', + 'updated_at' => '2021-06-11 14:01:21', ), 9 => array ( @@ -251,7 +251,7 @@ class FunctionalityTrackingByIseedDataTypesTableSeeder extends Seeder 'policy_name' => NULL, 'server_side' => 1, 'slug' => 'strains', - 'updated_at' => '2021-06-08 13:34:42', + 'updated_at' => '2021-06-11 13:58:07', ), 13 => array ( @@ -413,7 +413,7 @@ class FunctionalityTrackingByIseedDataTypesTableSeeder extends Seeder 'policy_name' => NULL, 'server_side' => 0, 'slug' => 'wellplates', - 'updated_at' => '2021-06-11 08:17:04', + 'updated_at' => '2021-06-11 14:03:07', ), 22 => array ( -- GitLab