diff --git a/app/Http/Controllers/Api/MeasuresController.php b/app/Http/Controllers/Api/MeasuresController.php index 7361cde60eb8e787bc47224ccca92a6e4dae5c15..0fb8c2955488a2a912d054a58a8c895a5205314b 100644 --- a/app/Http/Controllers/Api/MeasuresController.php +++ b/app/Http/Controllers/Api/MeasuresController.php @@ -42,22 +42,25 @@ public function save(MeasureRequest $request, $id = null) $measure->name = $data['name']; $measure->short_name = $data['short_name']; - $measure->efficiency = $data['efficiency'] ?? null; for ($i = 1; $i < 4; ++$i) { - $title = 'level' . $i . '_title'; - $measure->$title = $data[$title]; + $actual_label = 'level' . $i . '_actual_label'; + $measure->actual_label = $data[$actual_label]; + $preconized_label = 'level' . $i . '_preconized_label'; + $measure->preconized_label = $data[$preconized_label]; + $file = 'level' . $i . '_file'; + $measure->file = $data[$file]; $description = 'level' . $i . '_description'; - $measure->$description = $data[$description] ?? null; - $info = 'level' . $i . '_info'; - $measure->$info = $data[$info] ?? null; + $measure->description = $data[$description] ?? null; $difficulty = 'level' . $i . '_difficulty'; - $measure->$difficulty = $data[$difficulty] ?? null; + $measure->difficulty = $data[$difficulty] ?? null; $cost = 'level' . $i . '_cost'; - $measure->$cost = $data[$cost] ?? null; + $measure->cost = $data[$cost] ?? null; $duration = 'level' . $i . '_duration'; - $measure->$duration = $data[$duration] ?? null; + $measure->duration = $data[$duration] ?? null; $assistance = 'level' . $i . '_assistance'; - $measure->$assistance = $data[$assistance] ?? null; + $measure->assistance = $data[$assistance] ?? null; + $info = 'level' . $i . '_info'; + $measure->info = $data[$info] ?? null; } $measure->save(); diff --git a/app/Http/Requests/MeasureRequest.php b/app/Http/Requests/MeasureRequest.php index b300669bc007fdc0c553697aac907168ec9b8b3e..89b796942353b4e7766f552608ed32e4222d7089 100644 --- a/app/Http/Requests/MeasureRequest.php +++ b/app/Http/Requests/MeasureRequest.php @@ -26,28 +26,33 @@ public function rules() return [ 'name' => 'string|required|max:255', 'short_name' => 'string|required|max:255', - 'efficiency' => 'string|nullable|max:255', - 'level1_title' => 'string|required|max:255', - 'level1_description' => 'string|nullable|max:255', - 'level1_info' => 'string|nullable|max:255', + 'level1_actual_label' => 'string|required|max:255', + 'level1_preconized_label' => 'string|required|max:255', + 'level1_file' => 'string|required|max:255', + 'level1_description' => 'string|nullable', 'level1_difficulty' => 'int', 'level1_cost' => 'int', 'level1_duration' => 'int', 'level1_assistance' => 'int', - 'level2_title' => 'string|required|max:255', - 'level2_description' => 'string|nullable|max:255', - 'level2_info' => 'string|nullable|max:255', + 'level1_info' => 'string|nullable', + 'level2_actual_label' => 'string|required|max:255', + 'level2_preconized_label' => 'string|required|max:255', + 'level2_file' => 'string|required|max:255', + 'level2_description' => 'string|nullable', 'level2_difficulty' => 'int', 'level2_cost' => 'int', 'level2_duration' => 'int', 'level2_assistance' => 'int', - 'level3_title' => 'string|required|max:255', - 'level3_description' => 'string|nullable|max:255', - 'level3_info' => 'string|nullable|max:255', + 'level2_info' => 'string|nullable', + 'level3_actual_label' => 'string|required|max:255', + 'level3_preconized_label' => 'string|required|max:255', + 'level3_file' => 'string|required|max:255', + 'level3_description' => 'string|nullable', 'level3_difficulty' => 'int', 'level3_cost' => 'int', 'level3_duration' => 'int', 'level3_assistance' => 'int', + 'level3_info' => 'string|nullable', ]; } } diff --git a/app/Models/Measure.php b/app/Models/Measure.php index 0f0df3166fb7d326594c1b7431b0148c0b332f5d..958b959c3311567cee5de698472dfc9c094de9ad 100644 --- a/app/Models/Measure.php +++ b/app/Models/Measure.php @@ -10,28 +10,33 @@ * @property int $id * @property string $name * @property string $short_name - * @property string $efficiency - * @property string $level1_title + * @property string $level1_actual_label + * @property string $level1_preconized_label + * @property string $level1_file * @property string $level1_description - * @property string $level1_info * @property int $level1_difficulty * @property int $level1_cost * @property int $level1_duration * @property int $level1_assistance - * @property string $level2_title + * @property string $level1_info + * @property string $level2_actual_label + * @property string $level2_preconized_label + * @property string $level2_file * @property string $level2_description - * @property string $level2_info * @property int $level2_difficulty * @property int $level2_cost * @property int $level2_duration * @property int $level2_assistance - * @property string $level3_title + * @property string $level2_info + * @property string $level3_actual_label + * @property string $level3_preconized_label * @property string $level3_description * @property string $level3_info * @property int $level3_difficulty * @property int $level3_cost * @property int $level3_duration * @property int $level3_assistance + * @property string $level3_file * @property \DateTime $created_at * @property \DateTime $updated_at */ diff --git a/database/factories/MeasureFactory.php b/database/factories/MeasureFactory.php index e8b8a633049c4368e901a39c7d7f7726001ba74d..6c277eea66f09ab849cb746544194bf781742d52 100644 --- a/database/factories/MeasureFactory.php +++ b/database/factories/MeasureFactory.php @@ -22,28 +22,33 @@ public function definition() return [ 'name' => $n, 'short_name' => Str::slug($n), - 'efficiency' => $this->faker->randomElement(['efficacité', 'efficace', 'fonctionne']), - 'level1_title' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level1_actual_label' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level1_preconized_label' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level1_file' => $this->faker->randomElement([$this->faker->text, null]), 'level1_description' => $this->faker->randomElement([$this->faker->text, null]), - 'level1_info' => $this->faker->randomElement([$this->faker->text, null]), 'level1_difficulty' => $this->faker->numberBetween(0, 3), 'level1_cost' => $this->faker->numberBetween(0, 30), 'level1_duration' => $this->faker->numberBetween(0, 30), 'level1_assistance' => $this->faker->numberBetween(0, 3), - 'level2_title' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level1_info' => $this->faker->randomElement([$this->faker->text, null]), + 'level2_actual_label' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level2_preconized_label' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level2_file' => $this->faker->randomElement([$this->faker->text, null]), 'level2_description' => $this->faker->randomElement([$this->faker->text, null]), - 'level2_info' => $this->faker->randomElement([$this->faker->text, null]), 'level2_difficulty' => $this->faker->numberBetween(0, 3), 'level2_cost' => $this->faker->numberBetween(0, 30), 'level2_duration' => $this->faker->numberBetween(0, 30), 'level2_assistance' => $this->faker->numberBetween(0, 3), - 'level3_title' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level2_info' => $this->faker->randomElement([$this->faker->text, null]), + 'level3_actual_label' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level3_preconized_label' => $this->faker->randomElement(['Niveau 1', 'Premier niveau']), + 'level3_file' => $this->faker->randomElement([$this->faker->text, null]), 'level3_description' => $this->faker->randomElement([$this->faker->text, null]), - 'level3_info' => $this->faker->randomElement([$this->faker->text, null]), 'level3_difficulty' => $this->faker->numberBetween(0, 3), 'level3_cost' => $this->faker->numberBetween(0, 30), 'level3_duration' => $this->faker->numberBetween(0, 30), 'level3_assistance' => $this->faker->numberBetween(0, 3), + 'level3_info' => $this->faker->randomElement([$this->faker->text, null]), ]; } } diff --git a/database/migrations/2022_06_14_085757_create_measures_table.php b/database/migrations/2022_06_14_085757_create_measures_table.php index a18ba7c9ca9cbf16933d68c4480647af2eb862f9..7141c60d156d08694922265e4ecc22f8f58b6b28 100644 --- a/database/migrations/2022_06_14_085757_create_measures_table.php +++ b/database/migrations/2022_06_14_085757_create_measures_table.php @@ -17,31 +17,33 @@ public function up() $table->timestamps(); $table->string('name'); $table->string('short_name'); - $table->string('efficiency')->nullable(); - $table->string('level1_title'); + $table->string('level1_actual_label'); + $table->string('level1_preconized_label'); + $table->string('level1_file')->nullable(); $table->text('level1_description')->nullable(); - $table->text('level1_info')->nullable(); $table->integer('level1_difficulty'); $table->integer('level1_cost'); $table->integer('level1_duration'); $table->integer('level1_assistance'); - $table->integer('level1_file')->nullable(); - $table->string('level2_title'); + $table->text('level1_info')->nullable(); + $table->string('level2_actual_label'); + $table->string('level2_preconized_label'); + $table->string('level2_file')->nullable(); $table->text('level2_description')->nullable(); - $table->text('level2_info')->nullable(); $table->integer('level2_difficulty'); $table->integer('level2_cost'); $table->integer('level2_duration'); $table->integer('level2_assistance'); - $table->integer('level2_file')->nullable(); - $table->string('level3_title'); + $table->text('level2_info')->nullable(); + $table->string('level3_actual_label'); + $table->string('level3_preconized_label'); + $table->string('level3_file')->nullable(); $table->text('level3_description')->nullable(); - $table->text('level3_info')->nullable(); $table->integer('level3_difficulty'); $table->integer('level3_cost'); $table->integer('level3_duration'); $table->integer('level3_assistance'); - $table->integer('level3_file')->nullable(); + $table->text('level3_info')->nullable(); }); }