index.blade.php 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. @extends('admin.table_layouts')
  2. @section('content')
  3. <div class="page-content container-fluid">
  4. <x-admin.table-panel :title="trans('admin.menu.promotion.withdraw')" :theads="[
  5. '#',
  6. trans('model.referral.created_at'),
  7. trans('model.referral.user'),
  8. trans('model.referral.amount'),
  9. trans('common.status.attribute'),
  10. trans('model.aff.updated_at'),
  11. trans('common.action'),
  12. ]" :count="trans('admin.aff.apply_counts', ['num' => $applyList->total()])" :pagination="$applyList->links()">
  13. <x-slot:filters>
  14. <x-admin.filter.input class="col-lg-2 col-sm-4" name="username" :placeholder="trans('model.user.username')" />
  15. <x-admin.filter.selectpicker class="col-lg-2 col-sm-4" name="status" :title="trans('common.status.attribute')" :options="[
  16. -1 => trans('common.status.rejected'),
  17. 0 => trans('common.status.review'),
  18. 1 => trans('common.status.reviewed'),
  19. 2 => trans('common.status.paid'),
  20. ]" />
  21. </x-slot:filters>
  22. <x-slot:tbody>
  23. @foreach ($applyList as $apply)
  24. <tr>
  25. <td> {{ $apply->id }} </td>
  26. <td> {{ $apply->created_at }} </td>
  27. <td>
  28. @if (empty($apply->user))
  29. 【{{ trans('common.deleted_item', ['attribute' => trans('common.account')]) }}】
  30. @else
  31. @can('admin.user.index')
  32. <a href="{{ route('admin.user.index', ['id' => $apply->user_id]) }}" target="_blank">
  33. {{ $apply->user->username }}
  34. </a>
  35. @else
  36. {{ $apply->user->username }}
  37. @endcan
  38. @endif
  39. </td>
  40. <td> {{ $apply->amount_tag }} </td>
  41. <td>
  42. @if ($apply->status === -1)
  43. <span class="badge badge-lg badge-danger"> {{ trans('common.status.rejected') }} </span>
  44. @elseif($apply->status === 0)
  45. <span class="badge badge-lg badge-info"> {{ trans('common.status.review') }} </span>
  46. @elseif($apply->status === 2)
  47. <span class="badge badge-lg badge-success"> {{ trans('common.status.paid') }} </span>
  48. @else
  49. <span class="badge badge-lg badge-default"> {{ trans('common.status.payment_pending') }} </span>
  50. @endif
  51. </td>
  52. <td> {{ $apply->created_at === $apply->updated_at ? '' : $apply->updated_at }} </td>
  53. <td>
  54. @canany(['admin.aff.setStatus', 'admin.aff.detail'])
  55. <div class="btn-group">
  56. @can('admin.aff.setStatus')
  57. @if ($apply->status === 0)
  58. <a class="btn btn-sm btn-success" href="javascript:setStatus('{{ $apply->id }}','1')">
  59. <i class="icon wb-check" aria-hidden="true"></i>{{ trans('common.status.pass') }}
  60. </a>
  61. <a class="btn btn-sm btn-danger" href="javascript:setStatus('{{ $apply->id }}','-1')">
  62. <i class="icon wb-close" aria-hidden="true"></i>{{ trans('common.status.reject') }}
  63. </a>
  64. @elseif($apply->status === 1)
  65. @can('admin.user.updateCredit')
  66. <a class="btn btn-sm btn-success"
  67. href="javascript:handleUserCredit('{{ $apply->user->id }}','{{ $apply->amount }}', '{{ $apply->id }}','2')">
  68. <i class="icon wb-payment" id="makePayment_{{ $apply->id }}" aria-hidden="true"></i>
  69. {{ trans('common.status.send_to_credit') }}
  70. </a>
  71. @endcan
  72. <a class="btn btn-sm btn-primary" href="javascript:setStatus('{{ $apply->id }}', '2')">
  73. <i class="icon wb-check-circle" aria-hidden="true"></i> {{ trans('common.status.paid') }}
  74. </a>
  75. @endif
  76. @endcan
  77. @can('admin.aff.detail')
  78. <a class="btn btn-sm btn-default" href="{{ route('admin.aff.detail', $apply->id) }}">
  79. <i class="icon wb-search"></i></a>
  80. @endcan
  81. </div>
  82. @endcanany
  83. </td>
  84. </tr>
  85. @endforeach
  86. </x-slot:tbody>
  87. </x-admin.table-panel>
  88. </div>
  89. @endsection
  90. @push('javascript')
  91. <script>
  92. @can('admin.aff.setStatus')
  93. // 更改状态
  94. function setStatus(aff, status) {
  95. ajaxPut(jsRoute('{{ route('admin.aff.setStatus', 'PLACEHOLDER') }}', aff), {
  96. status: status
  97. }, {
  98. error: function(xhr) {
  99. handleErrors(xhr)
  100. }
  101. });
  102. }
  103. @endcan
  104. @can('admin.user.updateCredit')
  105. // 余额充值
  106. function handleUserCredit(uid, amount, aid, status) {
  107. ajaxPost(jsRoute('{{ route('admin.user.updateCredit', 'PLACEHOLDER') }}', uid), {
  108. amount: amount,
  109. description: '{{ trans('admin.aff.referral') }}'
  110. }, {
  111. success: function(response) {
  112. if (response.status === "success") {
  113. showMessage({
  114. title: response.message,
  115. icon: "success",
  116. callback: function() {
  117. setStatus(aid, status);
  118. }
  119. });
  120. } else {
  121. showMessage({
  122. title: response.message,
  123. icon: "error",
  124. callback: function() {
  125. window.location.reload();
  126. }
  127. });
  128. }
  129. },
  130. beforeSend: function() {
  131. $("#makePayment_" + aid).removeClass("wb-payment").addClass("wb-loop icon-spin");
  132. }
  133. });
  134. }
  135. @endcan
  136. </script>
  137. @endpush