PayTestController.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace App\Http\Controllers\Web\Common;
  3. use Aix\Pay\Data\PayOrder;
  4. use App\Http\Controllers\Web\WebBaseController;
  5. use App\Services\Common\PayService;
  6. use Symfony\Component\HttpFoundation\Request;
  7. class PayTestController extends WebBaseController
  8. {
  9. /**
  10. * @var PayService
  11. */
  12. private $payService;
  13. /**
  14. * PayTestController constructor.
  15. * @param PayService $payService
  16. */
  17. public function __construct(PayService $payService)
  18. {
  19. $this->payService = $payService;
  20. }
  21. public function payBefore($platform, $type)
  22. {
  23. $url=route('test.pay', ['platform'=>$platform, 'type'=>$type]);
  24. return <<<EOT
  25. <a href="{$url}">发起支付</a>
  26. EOT;
  27. }
  28. public function pay($platform, $type)
  29. {
  30. $payOrder=new PayOrder();
  31. $payOrder->trade_no=time();
  32. $payOrder->subject="支付测试";
  33. $payOrder->detail="支付测试详情";
  34. $payOrder->price=0.01;
  35. $payOrder->callback="App\Services\Common\PayService.testhook";
  36. $payOrder->return_url=route('test.pay.success');
  37. return $this->payService->pay($platform, $type, $payOrder);
  38. }
  39. public function paySuccess()
  40. {
  41. return $this->showMessage("支付成功", route('home'));
  42. }
  43. public function testIP()
  44. {
  45. var_dump(request()->ip());
  46. var_dump($_SERVER['REMOTE_ADDR']);
  47. var_dump(Request::createFromGlobals()->getClientIp());
  48. }
  49. }