海南旅游SAAS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
753 B

  1. <?php
  2. namespace App\Http\Middleware;
  3. use App\Models\Agent;
  4. use Closure;
  5. use Illuminate\Http\Request;
  6. use Illuminate\Support\Facades\Cache;
  7. class ApiBase
  8. {
  9. public function handle(Request $request, Closure $next)
  10. {
  11. $appid = request()->header('appid');
  12. if (empty($appid)) {
  13. return response()->json([
  14. 'code' => -1,
  15. 'msg' => '商户信息缺失',
  16. 'data' => [],
  17. 'status' => 500,
  18. ]);
  19. }
  20. //检查代理商
  21. $agent_id = Agent::query()->where(['appid' => $appid, 'status' => 1])->value('id');
  22. if (empty($agent_id)) {
  23. return response()->json([
  24. 'code' => -1,
  25. 'msg' => '商户不存在或已被禁用',
  26. 'data' => [],
  27. 'status' => 403,
  28. ]);
  29. }
  30. Cache::put($appid, $agent_id);
  31. return $next($request);
  32. }
  33. }