Merge pull request #12328 from snipe/fixes/revert_to_old_behavior_on_byserial

Fixed bySerial endpoint to always return a list
This commit is contained in:
snipe 2023-01-09 21:09:25 -08:00 committed by GitHub
commit 005d6d3b62
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -416,22 +416,9 @@ class AssetsController extends Controller
if ($request->input('deleted', 'false') == 'true') {
$assets = $assets->withTrashed();
}
$assets = $assets->get();
if (($assets = $assets->get()) && ($assets->count()) > 0) {
// If there is exactly one result and the deleted parameter is not passed, we should pull the first (and only)
// asset from the returned collection, since transformAsset() expects an Asset object, NOT a collection
if (($assets->count() == 1) && ($request->input('deleted') != 'true')) {
return (new AssetsTransformer)->transformAsset($assets->first());
// If there is more than one result OR if the endpoint is requesting deleted items (even if there is only one
// match, return the normal collection transformed.
} else {
return (new AssetsTransformer)->transformAssets($assets, $assets->count());
}
return (new AssetsTransformer)->transformAssets($assets, $assets->count());
}
// If there are 0 results, return the "no such asset" response