From ca47520a74ae32106b6a18ab2ef756c51ccc9b3e Mon Sep 17 00:00:00 2001 From: Noah Lancien Date: Mon, 2 Oct 2023 12:34:49 +0200 Subject: [PATCH] Displayed specified claims in pdf and fixed specified claims update --- app/Http/Resources/ProductResource.php | 2 ++ app/Models/Product.php | 4 +++- .../views/documents/product-body.blade.php | 18 +++++++++++++++++- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/app/Http/Resources/ProductResource.php b/app/Http/Resources/ProductResource.php index 278510d..0cf6f77 100644 --- a/app/Http/Resources/ProductResource.php +++ b/app/Http/Resources/ProductResource.php @@ -34,6 +34,7 @@ class ProductResource extends JsonResource 'certification' => null, 'origins' => null, 'claims' => null, + 'specified_claim' => null, 'distribution_network' => null, 'ray' => null, 'product_range' => null, @@ -83,6 +84,7 @@ class ProductResource extends JsonResource 'certification' => \optional($this->product->certification)->label, 'origins' => $this->product->origins_enum->map(fn (OriginEnum $enum) => $enum->label())->implode(', '), 'claims' => $this->product->claims_enum->map(fn (ClaimEnum $enum) => $enum->label())->implode(', '), + 'specified_claim' => $this->product->specified_claim, 'distribution_network' => $this->product->distribution_network->label(), 'ray' => $this->product->ray->label(), 'product_range' => $this->product->product_range->label(), diff --git a/app/Models/Product.php b/app/Models/Product.php index 6b52924..b339122 100644 --- a/app/Models/Product.php +++ b/app/Models/Product.php @@ -185,7 +185,9 @@ class Product extends Model { $check = false; foreach ($model->claims as $claimValue) { - $check = (intval($claimValue) === \App\Enums\Products\ClaimEnum::others->value) ? true : false; + if (!$check) { + $check = (intval($claimValue) === \App\Enums\Products\ClaimEnum::others->value) ? true : false; + } } $model->specified_claim = ($check) ? $model->specified_claim : null; } diff --git a/resources/views/documents/product-body.blade.php b/resources/views/documents/product-body.blade.php index 6fb7e5c..e2ce5df 100644 --- a/resources/views/documents/product-body.blade.php +++ b/resources/views/documents/product-body.blade.php @@ -19,7 +19,23 @@

{{ __('Certification : ') }}{{ $product->certification }}

@endif

{{ __('Origines : ') }}{{ $product->origins }}

-

{{ __('Allégations : ') }}{{ $product->claims }}

+

{{ __('Allégations : ') }} + @php + $claims = Str::of($product->claims)->explode(', '); + $claimOthers = \App\Enums\Products\ClaimEnum::others->label(); + @endphp + @if ($claims->contains($claimOthers)) + @php + $product->claims = $claims->except(array_search('Autres', $claims->toArray()))->implode(', '); + @endphp + {{ $product->claims }}, {{ $claimOthers}} + @if ($product->specified_claim) + : {{ $product->specified_claim }} + @endif + @else + {{ $product->claims }} + @endif +

@if (isset($product->gencod))