40 lines
1.2 KiB
PHP
40 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api\V1;
|
|
|
|
use Illuminate\Http\Request;
|
|
use App\Http\Controllers\Controller;
|
|
use App\Services\Authz\RolePermissionService;
|
|
use App\Helpers\ApiResponse;
|
|
|
|
class RolePermissionController extends Controller
|
|
{
|
|
public function index($id, Request $request)
|
|
{
|
|
return ApiResponse::handle(function () use ($id) {
|
|
return RolePermissionService::list((int)$id);
|
|
}, '역할 퍼미션 목록 조회');
|
|
}
|
|
|
|
public function grant($id, Request $request)
|
|
{
|
|
return ApiResponse::handle(function () use ($id, $request) {
|
|
return RolePermissionService::grant((int)$id, $request->all());
|
|
}, '역할 퍼미션 부여');
|
|
}
|
|
|
|
public function revoke($id, Request $request)
|
|
{
|
|
return ApiResponse::handle(function () use ($id, $request) {
|
|
return RolePermissionService::revoke((int)$id, $request->all());
|
|
}, '역할 퍼미션 회수');
|
|
}
|
|
|
|
public function sync($id, Request $request)
|
|
{
|
|
return ApiResponse::handle(function () use ($id, $request) {
|
|
return RolePermissionService::sync((int)$id, $request->all());
|
|
}, '역할 퍼미션 동기화');
|
|
}
|
|
}
|