AdminCkeckRole.php 762 B

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. namespace app\adminapi\middleware;
  3. use app\Request;
  4. use crmeb\exceptions\AuthException;
  5. use crmeb\interfaces\MiddlewareInterface;
  6. use app\models\system\SystemMenus;
  7. use app\models\system\SystemRole;
  8. use crmeb\repositories\AuthRepository;
  9. use crmeb\utils\ApiErrorCode;
  10. /**
  11. * 权限规则验证
  12. * Class AdminCkeckRole
  13. * @package app\http\middleware
  14. */
  15. class AdminCkeckRole implements MiddlewareInterface
  16. {
  17. public function handle(Request $request, \Closure $next)
  18. {
  19. if (!$request->adminId() || !$request->adminInfo())
  20. throw new AuthException(ApiErrorCode::ERR_ADMINID_VOID);
  21. if ($request->adminInfo()['level']) {
  22. AuthRepository::verifiAuth($request);
  23. }
  24. return $next($request);
  25. }
  26. }