На самом деле из вашего кода я могу понять, что у вас есть красноречивый объект, и вы хотите загрузить изображение и сохранить данные изображения в красноречивом объекте,
но внутри вашей if (request()->hasFile('imagePath')){ }
вы перезаписали переменную $image
:)
В этом случае измените свой код внутри if
с условием на
if (request()->hasFile('imagePath')){
$uploadedImage = $request->file('imagePath');
$imageName = time() . '.' . $image->getClientOriginalExtension();
$destinationPath = public_path('/images/productImages/');
$uploadedImage->move($destinationPath, $imageName);
$image->imagePath = $destinationPath . $imageName;
}