diff --git a/paragonik-backend/database/migrations/2019_12_01_183101_create_users_table.php b/paragonik-backend/database/migrations/2019_12_01_183101_create_users_table.php new file mode 100644 index 0000000..a8df315 --- /dev/null +++ b/paragonik-backend/database/migrations/2019_12_01_183101_create_users_table.php @@ -0,0 +1,37 @@ +bigIncrements('id'); + $table->string('name', 15); + $table->string('email', 60)->unique(); + $table->timestamp('email_verified_at')->nullable(); + $table->string('password'); + $table->rememberToken(); + $table->timestamps(); + $table->engine = 'InnoDB'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('users'); + } +} diff --git a/paragonik-backend/database/migrations/2019_12_01_183204_create_receipts_table.php b/paragonik-backend/database/migrations/2019_12_01_183204_create_receipts_table.php new file mode 100644 index 0000000..de968cb --- /dev/null +++ b/paragonik-backend/database/migrations/2019_12_01_183204_create_receipts_table.php @@ -0,0 +1,38 @@ +bigIncrements('id'); + $table->dateTime('payment_date'); + $table->decimal('payment_amount', 8, 2); + $table->bigInteger('user_id')->unsigned(); + $table->bigInteger('store_id')->unsigned(); + $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); + $table->foreign('store_id')->references('id')->on('stores')->onDelete('cascade'); + $table->timestamps(); + $table->engine = 'InnoDB'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('receipts'); + } +} diff --git a/paragonik-backend/database/migrations/2019_12_01_183220_create_stores_table.php b/paragonik-backend/database/migrations/2019_12_01_183220_create_stores_table.php new file mode 100644 index 0000000..2bf1507 --- /dev/null +++ b/paragonik-backend/database/migrations/2019_12_01_183220_create_stores_table.php @@ -0,0 +1,39 @@ +bigIncrements('id'); + $table->string('name'); + $table->string('street'); + $table->string('city'); + $table->string('voivodeship'); + $table->string('latitude'); + $table->string('longitude'); + $table->string('concern'); + $table->timestamps(); + $table->engine = 'InnoDB'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('stores'); + } +} diff --git a/paragonik-backend/database/migrations/2019_12_01_183233_create_categories_table.php b/paragonik-backend/database/migrations/2019_12_01_183233_create_categories_table.php new file mode 100644 index 0000000..391c74b --- /dev/null +++ b/paragonik-backend/database/migrations/2019_12_01_183233_create_categories_table.php @@ -0,0 +1,33 @@ +bigIncrements('id'); + $table->string('name'); + $table->timestamps(); + $table->engine = 'InnoDB'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('categories'); + } +} diff --git a/paragonik-backend/database/migrations/2019_12_01_183246_create_services_table.php b/paragonik-backend/database/migrations/2019_12_01_183246_create_services_table.php new file mode 100644 index 0000000..92e0ce2 --- /dev/null +++ b/paragonik-backend/database/migrations/2019_12_01_183246_create_services_table.php @@ -0,0 +1,38 @@ +bigIncrements('id'); + $table->string('name'); + $table->string('street'); + $table->string('city'); + $table->string('voivodeship'); + $table->string('latitude'); + $table->string('longitude'); + $table->timestamps(); + $table->engine = 'InnoDB'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('services'); + } +} diff --git a/paragonik-backend/database/migrations/2019_12_01_183308_create_receipt_items_table.php b/paragonik-backend/database/migrations/2019_12_01_183308_create_receipt_items_table.php new file mode 100644 index 0000000..25ffd4a --- /dev/null +++ b/paragonik-backend/database/migrations/2019_12_01_183308_create_receipt_items_table.php @@ -0,0 +1,39 @@ +bigIncrements('id'); + $table->string('name'); + $table->decimal('price', 8, 2); + $table->bigInteger('quantity'); + $table->bigInteger('receipt_id')->unsigned(); + $table->bigInteger('category_id')->unsigned(); + $table->timestamps(); + $table->foreign('receipt_id')->references('id')->on('receipts')->onDelete('cascade'); + $table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade'); + $table->engine = 'InnoDB'; + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('receipt_items'); + } +} diff --git a/paragonik-backend/database/migrations/2019_12_01_190021_create_categories_services_table.php b/paragonik-backend/database/migrations/2019_12_01_190021_create_categories_services_table.php new file mode 100644 index 0000000..aa048ad --- /dev/null +++ b/paragonik-backend/database/migrations/2019_12_01_190021_create_categories_services_table.php @@ -0,0 +1,35 @@ +bigIncrements('id'); + $table->bigInteger('category_id')->unsigned(); + $table->bigInteger('service_id')->unsigned(); + $table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade'); + $table->foreign('service_id')->references('id')->on('services')->onDelete('cascade'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('categories_services'); + } +}