payment.blade.php 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. @extends('user.layouts')
  2. @section('content')
  3. <div class="page-content container">
  4. <div class="panel panel-bordered">
  5. <div class="panel-heading">
  6. <h1 class="panel-title cyan-600"><i
  7. class="icon wb-payment"></i>{{\App\Components\Helpers::systemConfig()['website_name']}}{{trans('home.online_pay')}}
  8. </h1>
  9. </div>
  10. <div class="panel-body border-primary">
  11. <div class="row">
  12. <div class="col-2"></div>
  13. <div class="alert alert-info col-8 text-center">
  14. 请使用<strong class="red-600"> 支付宝 </strong>扫描二维码进行支付
  15. </div>
  16. <div class="col-2"></div>
  17. <div class="col-2"></div>
  18. <div class="row col-8">
  19. <div class="col-md-6">
  20. <ul class="list-group list-group-dividered">
  21. <li class="list-group-item">服务名称:{{$name}}</li>
  22. <li class="list-group-item">支付金额:{{$payment->amount}}元</li>
  23. @if($days != 0)
  24. <li class="list-group-item">有效期:{{$days}} 天</li>
  25. @endif
  26. <li class="list-group-item"> 请在<code>15分钟</code>内完成支付,否者订单将会自动关闭</li>
  27. </ul>
  28. </div>
  29. <div class="col-md-6 text-center mb-15">
  30. <img class="h-250 w-250" src="{{$payment->qr_code}}" alt="支付二维码">
  31. </div>
  32. </div>
  33. <div class="col-2"></div>
  34. <div class="col-2"></div>
  35. <div class="alert alert-danger col-8 text-center">
  36. <strong>手机用户</strong>:长按二维码 -> 保存图片 ->打开支付软件 -> 扫一扫 -> 选择相册 进行付款
  37. </div>
  38. <div class="col-2"></div>
  39. </div>
  40. </div>
  41. </div>
  42. </div>
  43. @endsection
  44. @section('script')
  45. <script type="text/javascript">
  46. // 检查支付单状态
  47. const r = window.setInterval(function () {
  48. $.ajax({
  49. type: 'GET',
  50. url: '/payment/getStatus',
  51. data: {trade_no: '{{$payment->trade_no}}'},
  52. dataType: 'json',
  53. success: function (ret) {
  54. window.clearInterval();
  55. if (ret.status === 'success') {
  56. swal.fire({title: ret.message, type: 'success', timer: 1500, showConfirmButton: false})
  57. .then(() => {
  58. window.location.href = '/invoices'
  59. });
  60. } else if (ret.status === 'error') {
  61. swal.fire({title: ret.message, type: "error", timer: 1500, showConfirmButton: false})
  62. .then(() => {
  63. window.location.href = '/invoices'
  64. })
  65. }
  66. }
  67. });
  68. }, 3000);
  69. // 还原html脚本 < > & " '
  70. function unescapeHTML(str) {
  71. str = "" + str;
  72. return str.replace(/&lt;/g, "<").replace(/&gt;/g, ">").replace(/&amp;/g, "&").replace(/&quot;/g, '"').replace(/&#039;/g, "'");
  73. }
  74. </script>
  75. @endsection