CpManageGate.php 645 B

12345678910111213141516171819202122232425262728293031323334
  1. <?php
  2. /**
  3. * ${CARET}
  4. * @file:${FILE_NAME}
  5. * @Created by gnitif
  6. * @Date: 2023/5/6
  7. * @Time: 16:38
  8. */
  9. namespace Modules\CpManage\Middlewares;
  10. use Illuminate\Http\Request;
  11. use Modules\Permissions\Exceptions\PermissionForbidden;
  12. use Modules\User\Models\User;
  13. class CpManageGate
  14. {
  15. public function handle(Request $request, \Closure $next)
  16. {
  17. if ($request->isMethod('get')) {
  18. return $next($request);
  19. }
  20. /* @var User $user */
  21. $user = $request->user(getGuardName());
  22. if (! $user->can()) {
  23. throw new PermissionForbidden();
  24. }
  25. return $next($request);
  26. }
  27. }