input("codes"); $countries = $request->input("countries"); $currency = $request->input("currency"); Log::info("{codes} {countries}", ["codes" => $codes, "countries" => $countries]); $codes = collect($codes); $countries = collect($countries); if ($countries != null && count($countries)) { $hCountry = CountryCode::countryHash(); $countries = $countries->map(function ($country) use ($hCountry) { return $hCountry[$country]; }); } else { $countries = []; } $cHash = CountryCode::code_countryHash(); if (is_array($codes) == false) $aCodes = $codes; else $aCodes = $codes->map(function ($code) { return $code; }); $products = IkeaProducts::whereIn("code", $aCodes); if (count($countries)) $products->whereIn("country",$countries); $products = $products->get(); $currencyRates = CurrencyRates::rates2EUR("Y"); if ($currency == "EUR") { $coef = 1; } else { $coef = floatval(CurrencyRates::where('currency',$currency)->first()->rate); } $products = $products->map(function ($product) use ($currencyRates, $coef) { $product["salesPrice"] = round(floatval(($product["salesPrice"]) / $currencyRates[$product["country"]]) * $coef, 2); return $product; }); Log::info("{products}", ["products" => $products]); return [ 'products' => $products, 'countryHash' => $cHash, ]; } }