Kaynağa Gözat

ajuste tabela ImprovementTypes

kayo henrique 3 hafta önce
ebeveyn
işleme
82ee7e972d

+ 1 - 1
app/Http/Requests/ImprovementTypeRequest.php

@@ -13,7 +13,7 @@ class ImprovementTypeRequest extends FormRequest
             'description' => 'sometimes|string|max:255',
             'improvement_type' => ['sometimes', Rule::in(['client', 'provider', 'both'])],
             'is_active' => 'sometimes|boolean',
-            'origin' => ['sometimes', Rule::in(['client', 'provider'])] 
+            'origin' => ['sometimes', Rule::in(['client', 'both', 'provider'])] 
         ];
 
         if ($this->isMethod('POST')) {

+ 10 - 6
app/Services/ImprovementTypeService.php

@@ -10,12 +10,16 @@ class ImprovementTypeService
     public function getAll(string $origin): Collection
     {
         $improvement_types = ImprovementType::query()
-          ->orderBy('created_at', 'desc')
-          ->when($origin, function ($query) use ($origin) {
-              $query->where('improvement_type', $origin)
-                ->orWhere('improvement_type', 'both');
-          })
-          ->get();
+            ->orderBy('created_at', 'desc')
+            ->when($origin, function ($query) use ($origin) {
+                $query->when($origin === 'both', function ($query) {
+                    $query->whereIn('improvement_type', ['client', 'provider', 'both']);
+                })
+                    ->when($origin !== 'both', function ($query) use ($origin) {
+                        $query->where('improvement_type', $origin);
+                    });
+            })
+            ->get();
 
         return $improvement_types;
     }