From 67da9545d3d766ad67f411ca3ea8089979353d46 Mon Sep 17 00:00:00 2001 From: Persson-dev Date: Sat, 7 Jun 2025 15:04:57 +0200 Subject: [PATCH] Etape 4 --- .../app/Http/Controllers/GenresController.php | 66 +++++++++++++++++++ .../app/Http/Controllers/MangasController.php | 66 +++++++++++++++++++ .../app/Http/Requests/StoreGenresRequest.php | 28 ++++++++ .../app/Http/Requests/StoreMangasRequest.php | 28 ++++++++ .../app/Http/Requests/UpdateGenresRequest.php | 28 ++++++++ .../app/Http/Requests/UpdateMangasRequest.php | 28 ++++++++ laravel/app/Models/Genres.php | 12 ++++ laravel/app/Models/Mangas.php | 12 ++++ laravel/app/Policies/GenresPolicy.php | 66 +++++++++++++++++++ laravel/app/Policies/MangasPolicy.php | 66 +++++++++++++++++++ laravel/database/factories/GenresFactory.php | 23 +++++++ laravel/database/factories/MangasFactory.php | 23 +++++++ .../2025_06_07_130223_create_genres_table.php | 28 ++++++++ .../2025_06_07_130231_create_mangas_table.php | 36 ++++++++++ laravel/database/seeders/GenresSeeder.php | 17 +++++ laravel/database/seeders/MangasSeeder.php | 17 +++++ 16 files changed, 544 insertions(+) create mode 100644 laravel/app/Http/Controllers/GenresController.php create mode 100644 laravel/app/Http/Controllers/MangasController.php create mode 100644 laravel/app/Http/Requests/StoreGenresRequest.php create mode 100644 laravel/app/Http/Requests/StoreMangasRequest.php create mode 100644 laravel/app/Http/Requests/UpdateGenresRequest.php create mode 100644 laravel/app/Http/Requests/UpdateMangasRequest.php create mode 100644 laravel/app/Models/Genres.php create mode 100644 laravel/app/Models/Mangas.php create mode 100644 laravel/app/Policies/GenresPolicy.php create mode 100644 laravel/app/Policies/MangasPolicy.php create mode 100644 laravel/database/factories/GenresFactory.php create mode 100644 laravel/database/factories/MangasFactory.php create mode 100644 laravel/database/migrations/2025_06_07_130223_create_genres_table.php create mode 100644 laravel/database/migrations/2025_06_07_130231_create_mangas_table.php create mode 100644 laravel/database/seeders/GenresSeeder.php create mode 100644 laravel/database/seeders/MangasSeeder.php diff --git a/laravel/app/Http/Controllers/GenresController.php b/laravel/app/Http/Controllers/GenresController.php new file mode 100644 index 0000000..e5c4d02 --- /dev/null +++ b/laravel/app/Http/Controllers/GenresController.php @@ -0,0 +1,66 @@ +|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/laravel/app/Http/Requests/StoreMangasRequest.php b/laravel/app/Http/Requests/StoreMangasRequest.php new file mode 100644 index 0000000..efcccca --- /dev/null +++ b/laravel/app/Http/Requests/StoreMangasRequest.php @@ -0,0 +1,28 @@ +|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/laravel/app/Http/Requests/UpdateGenresRequest.php b/laravel/app/Http/Requests/UpdateGenresRequest.php new file mode 100644 index 0000000..228124c --- /dev/null +++ b/laravel/app/Http/Requests/UpdateGenresRequest.php @@ -0,0 +1,28 @@ +|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/laravel/app/Http/Requests/UpdateMangasRequest.php b/laravel/app/Http/Requests/UpdateMangasRequest.php new file mode 100644 index 0000000..63a7d9f --- /dev/null +++ b/laravel/app/Http/Requests/UpdateMangasRequest.php @@ -0,0 +1,28 @@ +|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/laravel/app/Models/Genres.php b/laravel/app/Models/Genres.php new file mode 100644 index 0000000..3f362a7 --- /dev/null +++ b/laravel/app/Models/Genres.php @@ -0,0 +1,12 @@ + */ + use HasFactory; +} diff --git a/laravel/app/Models/Mangas.php b/laravel/app/Models/Mangas.php new file mode 100644 index 0000000..3f3ac4a --- /dev/null +++ b/laravel/app/Models/Mangas.php @@ -0,0 +1,12 @@ + */ + use HasFactory; +} diff --git a/laravel/app/Policies/GenresPolicy.php b/laravel/app/Policies/GenresPolicy.php new file mode 100644 index 0000000..548e3f6 --- /dev/null +++ b/laravel/app/Policies/GenresPolicy.php @@ -0,0 +1,66 @@ + + */ +class GenresFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + // + ]; + } +} diff --git a/laravel/database/factories/MangasFactory.php b/laravel/database/factories/MangasFactory.php new file mode 100644 index 0000000..a67a43f --- /dev/null +++ b/laravel/database/factories/MangasFactory.php @@ -0,0 +1,23 @@ + + */ +class MangasFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + // + ]; + } +} diff --git a/laravel/database/migrations/2025_06_07_130223_create_genres_table.php b/laravel/database/migrations/2025_06_07_130223_create_genres_table.php new file mode 100644 index 0000000..23e6995 --- /dev/null +++ b/laravel/database/migrations/2025_06_07_130223_create_genres_table.php @@ -0,0 +1,28 @@ +id(); + $table->text("lib_genre"); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('genres'); + } +}; \ No newline at end of file diff --git a/laravel/database/migrations/2025_06_07_130231_create_mangas_table.php b/laravel/database/migrations/2025_06_07_130231_create_mangas_table.php new file mode 100644 index 0000000..761bbb6 --- /dev/null +++ b/laravel/database/migrations/2025_06_07_130231_create_mangas_table.php @@ -0,0 +1,36 @@ +id(); + $table->double("prix"); + $table->text("titre"); + $table->text("couverture"); + $table->unsignedBigInteger("genre_id"); + $table->foreign("genre_id") + ->references("id") + ->on("genres") + ->onDelete("cascade") + ->onUpdate("cascade"); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('mangas'); + } +}; \ No newline at end of file diff --git a/laravel/database/seeders/GenresSeeder.php b/laravel/database/seeders/GenresSeeder.php new file mode 100644 index 0000000..c82dfe9 --- /dev/null +++ b/laravel/database/seeders/GenresSeeder.php @@ -0,0 +1,17 @@ +