Add accessories endpoint to user API (#6775)

This commit is contained in:
snipe 2019-03-01 17:21:03 -08:00 committed by GitHub
parent cf086b711e
commit 9575cd2651
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 25 additions and 0 deletions

View file

@ -12,6 +12,7 @@ use App\Http\Requests\SaveUserRequest;
use App\Models\Asset;
use App\Http\Transformers\AssetsTransformer;
use App\Http\Transformers\SelectlistTransformer;
use App\Http\Transformers\AccessoriesTransformer;
class UsersController extends Controller
{
@ -302,6 +303,23 @@ class UsersController extends Controller
return (new AssetsTransformer)->transformAssets($assets, $assets->count());
}
/**
* Return JSON containing a list of accessories assigned to a user.
*
* @author [A. Gianotto] [<snipe@snipe.net>]
* @since [v4.6.14]
* @param $userId
* @return string JSON
*/
public function accessories($id)
{
$this->authorize('view', User::class);
$user = User::findOrFail($id);
$this->authorize('view', Accessory::class);
$accessories = $user->accessories;
return (new AccessoriesTransformer)->transformAccessories($accessories, $accessories->count());
}
/**
* Reset the user's two-factor status
*

View file

@ -715,6 +715,13 @@ Route::group(['prefix' => 'v1','namespace' => 'Api'], function () {
]
);
Route::get('{user}/accessories',
[
'as' => 'api.users.accessorieslist',
'uses' => 'UsersController@accessories'
]
);
Route::post('{user}/upload',
[
'as' => 'api.users.uploads',