From 9f983486004ee39068116e54750a760fa018d5d3 Mon Sep 17 00:00:00 2001 From: dhanabalan Date: Mon, 29 Sep 2025 17:17:03 +0530 Subject: [PATCH] added item code in an array for getting serial number --- app/Http/Controllers/PdfController.php | 29 +++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/PdfController.php b/app/Http/Controllers/PdfController.php index 8dead71..d53e0a2 100644 --- a/app/Http/Controllers/PdfController.php +++ b/app/Http/Controllers/PdfController.php @@ -466,16 +466,31 @@ class PdfController extends Controller // return response()->json([ // 'serial_numbers' => $serialNumbers // ], 200); - $itemId = $grRecords->first()->item_id; + // $itemId = $grRecords->first()->item_id; - $itemCode = $itemId ? optional(Item::find($itemId))->code : null; + // $itemCode = $itemId ? optional(Item::find($itemId))->code : null; - $serialNumbers = $grRecords->pluck('serial_number')->toArray(); + // $serialNumbers = $grRecords->pluck('serial_number')->toArray(); - return response()->json([ - 'item_code' => $itemCode, - 'serial_numbers' => $serialNumbers - ], 200); + // return response()->json([ + // 'item_code' => $itemCode, + // 'serial_numbers' => $serialNumbers + // ], 200); + $itemIds = $grRecords->pluck('item_id')->unique()->filter(); + + // Fetch item_codes in one query + $items = Item::whereIn('id', $itemIds)->pluck('code', 'id'); + // ['id' => 'item_code'] + + // Group serial numbers by item_id + $result = $grRecords->groupBy('item_id')->map(function ($group, $itemId) use ($items) { + return [ + 'item_code' => $items[$itemId] ?? null, + 'serial_numbers' => $group->pluck('serial_number')->toArray() + ]; + })->values(); // remove keys + + return response()->json($result, 200); }