QuickAppGetPackage.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. namespace App\Http\Middleware;
  3. use App\Modules\User\Services\QappPackageService;
  4. use Closure;
  5. use Tymon\JWTAuth\Middleware\BaseMiddleware;
  6. class QuickAppGetPackage extends BaseMiddleware
  7. {
  8. /**
  9. * Handle an incoming request.
  10. *
  11. * @param \Illuminate\Http\Request $request
  12. * @param \Closure $next
  13. * @return mixed
  14. */
  15. public function handle($request, Closure $next)
  16. {
  17. // 获取头部信息
  18. $package = $request->header('x-package', '');
  19. if(empty($package)){
  20. $package = $request->input('package',"");
  21. }
  22. $origin_package = $package;
  23. //FIXME 海天包传成浩瀚了,特殊处理下,这个名字就给海天用
  24. // if($package =='com.beidao.kuaiying.haohan'){
  25. // $package = 'com.beidao.kuaiying.haitian';
  26. // }
  27. // //FIXME 浩瀚包传的是haohannew,但是打开要跟官方包名保持一致,所以这样特殊处理
  28. // if($package =='com.beidao.kuaiying.haohannew'){
  29. // $package = 'com.beidao.kuaiying.haohan';
  30. // }
  31. $package = get_real_package($package);
  32. $channel_id = QappPackageService::getChannelId($package);
  33. $sendOrderId = $request->header('send-order-id',0);
  34. if($request->input('send_order_id',0)){
  35. $sendOrderId = $request->input('send_order_id',0);
  36. }
  37. $sendOrderId = check_qapp_send_order_id($channel_id,$sendOrderId) ? $sendOrderId : 0;
  38. $request->headers->set('send-order-id',$sendOrderId);
  39. $request->headers->set('x-package',$package);
  40. $request->merge(['send_order_id' => $sendOrderId,'distribution_channel_id' => $channel_id,'package' => $package]);
  41. if($channel_id > 0){
  42. return $next($request);
  43. }else{
  44. \Log::info('not_exists_package:'.$package. 'channel_id:'. $channel_id);
  45. return response()->error('QAPP_SYS_ERROR');
  46. }
  47. }
  48. }