diff --git a/packages/banner/src/Http/Api/BannerController.php b/packages/banner/src/Http/Api/BannerController.php index 5c35b59..7d04027 100644 --- a/packages/banner/src/Http/Api/BannerController.php +++ b/packages/banner/src/Http/Api/BannerController.php @@ -23,19 +23,13 @@ class BannerController extends Controller }, ])->enable()->whereIn('key', $keys)->get(); - $mapAds = $ads->mapWithKeys(function ($item) use ($request) { - return [ - $item->key => BannerResource::collection($item->banners)->resolve($request), - ]; - }); - + $data = []; foreach ($keys as $key) { - if (! $mapAds->has($key)) { - $mapAds->put($key, []); - } + $ad = $ads->where('key', $key)->first(); + $data[$key] = $ad ? BannerResource::collection($ad->banners) : []; } - return $this->json($mapAds); + return $this->json($data); } }