QuickAppGetPackage.php 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  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->merge(['send_order_id' => $sendOrderId,'distribution_channel_id' => $channel_id]);
  40. if($channel_id > 0){
  41. return $next($request);
  42. }else{
  43. \Log::info('not_exists_package:'.$package. 'channel_id:'. $channel_id);
  44. return response()->error('QAPP_SYS_ERROR');
  45. }
  46. }
  47. }