Jelajahi Sumber

fixed search

Alexander Musikhin 1 bulan lalu
induk
melakukan
cde950b100

+ 1 - 1
app/Http/Controllers/OrderController.php

@@ -454,7 +454,7 @@ class OrderController extends Controller
         $ret = [];
         $s = $request->get('s');
         $searchFields = $this->data['searchFields'];
-        $result = Order::query();
+        $result = OrderView::query();
         if($s) {
             $result->where(function ($query) use ($searchFields, $s) {
                 foreach ($searchFields as $searchField) {

+ 24 - 0
tests/Feature/OrderControllerTest.php

@@ -252,6 +252,30 @@ class OrderControllerTest extends TestCase
         $response->assertDontSee($otherOrder->object_address);
     }
 
+    public function test_order_search_route_can_search_by_manager_name(): void
+    {
+        $manager = User::factory()->create([
+            'role' => Role::MANAGER,
+            'name' => 'Менеджер Поиска',
+        ]);
+
+        $matchedOrder = Order::factory()->create([
+            'user_id' => $manager->id,
+            'object_address' => 'ул. Найденная, д. 7',
+        ]);
+
+        $otherOrder = Order::factory()->create([
+            'object_address' => 'ул. Не должна попасть, д. 8',
+        ]);
+
+        $response = $this->actingAs($this->adminUser)
+            ->getJson(route('order.search', ['s' => 'Менеджер Поиска']));
+
+        $response->assertOk();
+        $response->assertJsonPath((string) $matchedOrder->id, $matchedOrder->common_name);
+        $response->assertJsonMissing([$otherOrder->id => $otherOrder->common_name]);
+    }
+
     // ==================== MAF Operations ====================
 
     public function test_get_maf_to_order_assigns_available_maf(): void