verify.blade.php 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444
  1. @extends('base.base')
  2. @section('base')
  3. <!-- 内容区域 -->
  4. <div class="main-panel">
  5. <div class="content-wrapper">
  6. <div class="page-header">
  7. <h3 class="page-title">
  8. <span class="page-title-icon bg-gradient-primary text-white mr-2">
  9. <i class="mdi mdi-settings"></i>
  10. </span>
  11. {{ __('auto.推广奖金审核') }}
  12. </h3>
  13. <nav aria-label="breadcrumb">
  14. <ol class="breadcrumb">
  15. <li class="breadcrumb-item"><a href="#">{{ __('auto.推广奖金审核') }}</a></li>
  16. <li class="breadcrumb-item active" aria-current="page">{{ __('auto.推广赚金') }}</li>
  17. </ol>
  18. </nav>
  19. </div>
  20. <div class="row">
  21. <div class="col-lg-12 grid-margin stretch-card">
  22. <div class="card">
  23. <div class="card-body">
  24. <h4 class="card-title">{{ __('auto.推广奖金审核') }}</h4>
  25. <form class="well form-inline margin-top-20" method="get" action='/admin/extension/verify'>
  26. <spen style="padding-left: 10px">{{ __('auto.会员ID:') }}</spen>
  27. <input class="form-control" type="text" name="GameID" style="width: 10%; "
  28. value="{{$GameID}}">
  29. <spen style="padding-left: 10px">{{ __('auto.手机号:') }}</spen>
  30. <input class="form-control" type="text" name="mobile" style="width: 10%; "
  31. value="{{$mobile}}">
  32. <spen style="padding-left: 10px">{{ __('auto.上级ID:') }}</spen>
  33. <input class="form-control" type="text" name="SpreaderID" style="width: 10%; "
  34. value="{{$SpreaderID}}">
  35. <spen style="padding-left: 10px">{{ __('auto.昵称:') }}</spen>
  36. <input class="form-control" type="text" name="NickName" style="width: 10%; "
  37. value="{{$NickName}}">
  38. <spen style="padding-left: 10px">{{ __('auto.选择注册时间:') }}</spen>
  39. <input type="datetime-local" step="01" name="start_time" class="form-control"
  40. value="{{$start_time}}" id="start_time" onclick="start_times()"/>&nbsp;&nbsp;
  41. <input type="datetime-local" step="01" name="end_time" class="form-control"
  42. value="{{$end_time}}" id="end_time" onclick="end_times()"/>&nbsp;&nbsp;
  43. <input type="hidden" name="Type" value="{{$Type}}">
  44. <input type="hidden" name="FinalScore" value="{{$FinalScoreSort}}">
  45. <input type="hidden" name="Sort" value="{{$Sort}}">
  46. <input type="submit" class="btn btn-sm btn-gradient-dark btn-icon-text" value="{{ __('auto.搜索') }}"/>&nbsp;&nbsp;
  47. <a href="/admin/extension/verify"
  48. class="btn btn-sm btn-gradient-warning btn-icon-text">{{ __('auto.清空') }}</a>&nbsp;&nbsp;
  49. </form>
  50. <br>
  51. <label for="register">
  52. <input type="checkbox" class="form-group" name="Type" value="1" id="register"
  53. onclick="typeFunc()" @if (strpos($Type,'1') !== false)
  54. checked
  55. @endif> {{ __('auto.邀请好友注册奖金') }}
  56. </label>
  57. <label for="game">
  58. <input type="checkbox" class="form-group" name="Type" value="2" id="game"
  59. onclick="typeFunc()" @if (strpos($Type,'2') !== false)
  60. checked
  61. @endif> {{ __('auto.邀请好友游戏奖金') }}
  62. </label>
  63. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  64. <label for="">
  65. {{ __('auto.当前审核可见金额') }} :{{$visibleAmount->StatusValue}}
  66. <button class="btn-sm btn-gradient-dark" onclick="visibleAmountFunc()">{{ __('auto.修改') }}</button>
  67. </label>
  68. <label for="">
  69. {{ __('auto.可领额度档位上限配置修改') }} :{{$UpperLimit->StatusValue}}
  70. <button class="btn-sm btn-gradient-dark" onclick="upperLimitFunc()">{{ __('auto.修改') }}</button>
  71. </label>
  72. {{ __('auto.自动审核:') }}
  73. @if ($AutoVerify == 1)
  74. {{ __('auto.已开启') }} <button class="btn btn-sm btn-gradient-dark" onclick="autoVerify(0)">{{ __('auto.关闭') }}</button>
  75. @else
  76. {{ __('auto.已关闭') }} <button class="btn btn-sm btn-gradient-dark" onclick="autoVerify(1)">{{ __('auto.开启') }}</button>
  77. @endif
  78. <table class="table table-bordered">
  79. <thead>
  80. <tr>
  81. <th>{{ __('auto.会员') }}ID</th>
  82. <th>TA{{ __('auto.的上级') }}ID</th>
  83. <th>{{ __('auto.总奖励') }}</th>
  84. <th>
  85. <div class="FinalScore">
  86. {{ __('auto.历史通过审核金') }}
  87. <svg t="1611284352657" class="icon2" onclick="FinalScoreFunc(this,'asc')"
  88. viewBox="0 0 1024 1024" version="1.1"
  89. xmlns="http://www.w3.org/2000/svg" p-id="4118" width="14">
  90. <path
  91. d="M541.866667 285.866667l345.6 345.6c17.066667 17.066667 17.066667 42.666667 0 59.733333-8.533333 8.533333-19.2 12.8-29.866667 12.8H168.533333c-23.466667 0-42.666667-19.2-42.666666-42.666667 0-10.666667 4.266667-21.333333 12.8-29.866666l343.466666-345.6c17.066667-17.066667 42.666667-17.066667 59.733334 0z"
  92. p-id="4119" fill="#707072">
  93. </path>
  94. </svg>
  95. <svg t="1611283709864" class="icon1" onclick="FinalScoreFunc(this,'desc')"
  96. viewBox="0 0 1024 1024" version="1.1"
  97. xmlns="http://www.w3.org/2000/svg" p-id="3148" width="14">
  98. <path
  99. d="M482.133333 738.133333L136.533333 392.533333c-17.066667-17.066667-17.066667-42.666667 0-59.733333 8.533333-8.533333 19.2-12.8 29.866667-12.8h689.066667c23.466667 0 42.666667 19.2 42.666666 42.666667 0 10.666667-4.266667 21.333333-12.8 29.866666L541.866667 738.133333c-17.066667 17.066667-42.666667 17.066667-59.733334 0z"
  100. p-id="3149" fill="#707071">
  101. </path>
  102. </svg>
  103. </div>
  104. </th>
  105. <th>{{ __('auto.可领金额') }}</th>
  106. <th>{{ __('auto.账号创建时间') }}</th>
  107. <th>
  108. <div class="TotalScore">
  109. {{ __('auto.待审金额') }}
  110. <svg t="1611284352657" class="icon2" onclick="totalScoreFunc(this,'asc')"
  111. viewBox="0 0 1024 1024" version="1.1"
  112. xmlns="http://www.w3.org/2000/svg" p-id="4118" width="14">
  113. <path
  114. d="M541.866667 285.866667l345.6 345.6c17.066667 17.066667 17.066667 42.666667 0 59.733333-8.533333 8.533333-19.2 12.8-29.866667 12.8H168.533333c-23.466667 0-42.666667-19.2-42.666666-42.666667 0-10.666667 4.266667-21.333333 12.8-29.866666l343.466666-345.6c17.066667-17.066667 42.666667-17.066667 59.733334 0z"
  115. p-id="4119" fill="#707072">
  116. </path>
  117. </svg>
  118. <svg t="1611283709864" class="icon1" onclick="totalScoreFunc(this,'desc')"
  119. viewBox="0 0 1024 1024" version="1.1"
  120. xmlns="http://www.w3.org/2000/svg" p-id="3148" width="14">
  121. <path
  122. d="M482.133333 738.133333L136.533333 392.533333c-17.066667-17.066667-17.066667-42.666667 0-59.733333 8.533333-8.533333 19.2-12.8 29.866667-12.8h689.066667c23.466667 0 42.666667 19.2 42.666666 42.666667 0 10.666667-4.266667 21.333333-12.8 29.866666L541.866667 738.133333c-17.066667 17.066667-42.666667 17.066667-59.733334 0z"
  123. p-id="3149" fill="#707071">
  124. </path>
  125. </svg>
  126. </div>
  127. </th>
  128. <th>{{ __('auto.金额类型') }}</th>
  129. <th width="170px">{{ __('auto.来源玩家') }}</th>
  130. <th>{{ __('auto.所有下级人数') }}</th>
  131. <th>{{ __('auto.直属下级') }}</th>
  132. <th>{{ __('auto.下下级') }}</th>
  133. <th>{{ __('auto.操作') }}</th>
  134. <th>{{ __('auto.备注') }}</th>
  135. </tr>
  136. </thead>
  137. <tbody>
  138. @foreach($list as $k=>$v)
  139. <tr>
  140. <td>
  141. <a href="/admin/global/id_find?UserID={{$v->UserID}}">
  142. {{$v->GameID}}
  143. </a>
  144. </td>
  145. <td>{{ $v->SpreaderID }}</td>
  146. <td>{{$v->Total}}</td>
  147. <td>{{ $v->FinalScore }}</td>
  148. <td>{{CollectableScore($v->UserID,$v->Type)}}</td>
  149. <td>{{$v->RegisterDate}}</td>
  150. <td>{{$v->TotalScore}}</td>
  151. <td>
  152. @if ($v->Type == 1)
  153. {{ __('auto.注册') }}
  154. @elseif($v->Type == 2)
  155. {{ __('auto.对局') }}
  156. @endif
  157. </td>
  158. <td>
  159. @if ($v->count > 0)
  160. <a href="javascript:void(0)"
  161. onclick="userSourceFunc({{$v->UserID}},{{$v->Type}},{{$v->GameID}})">{{$v->count}}</a>
  162. ({{$v->rechargeCount}}{{ __('auto.人') }} / {{$v->RechargeSum}})
  163. @else
  164. {{$v->count}}
  165. @endif
  166. </td>
  167. <td>{{$v->downCount1 + $v->downCount2}}</td>
  168. <td>
  169. @if ($v->downCount1 > 0)
  170. <a href="/admin/user/bind_list?Higher1ID={{$v->UserID}}&source=2&start_time={{$start_time}}&end_time={{$end_time}}&GameID={{$GameID}}&SpreaderID={{$SpreaderID}}&NickName={{$NickName}}&Type={{$Type}}&Sort={{$Sort}}&FinalScoreSort={{$FinalScoreSort}}">
  171. {{$v->downCount1}}
  172. </a>
  173. @else
  174. {{$v->downCount1}}
  175. @endif
  176. </td>
  177. <td>
  178. @if ($v->downCount2 > 0)
  179. <a href="/admin/user/bind_list?Higher2ID={{$v->UserID}}&source=2&start_time={{$start_time}}&end_time={{$end_time}}&GameID={{$GameID}}&SpreaderID={{$SpreaderID}}&NickName={{$NickName}}&Type={{$Type}}&Sort={{$Sort}}&FinalScoreSort={{$FinalScoreSort}}">
  180. {{$v->downCount2}}
  181. </a>
  182. @else
  183. {{$v->downCount2}}
  184. @endif
  185. </td>
  186. <td>
  187. <button class="btn btn-sm btn-gradient-dark"
  188. onclick="update({{$v->id}},'Status',1,{{$v->UserID}},{{$v->TotalScore}})">{{ __('auto.通过') }}
  189. </button>
  190. @if ($v->OverLook == 1)
  191. <button class="btn btn-sm btn-gradient-success">{{ __('auto.已忽略') }}
  192. </button>
  193. @else
  194. <button class="btn btn-sm btn-gradient-dark"
  195. onclick="update({{$v->id}},'OverLook',1)">{{ __('auto.忽略') }}
  196. </button>
  197. @endif
  198. </td>
  199. <td contentEditable="true"
  200. onblur="remarks(this,{{$v->UserID}})" style="vertical-align: top">{{$v->Remarks}}
  201. </td>
  202. </tr>
  203. @endforeach
  204. </tbody>
  205. </table>
  206. <div class="box-footer clearfix">
  207. {{ __('auto.总共') }} <b>{{ $list->appends([
  208. 'start_time' => $start_time,
  209. 'end_time' => $end_time,
  210. 'GameID' => $GameID,
  211. 'SpreaderID' => $SpreaderID,
  212. 'NickName' => $NickName,
  213. 'Type' => $Type,
  214. 'Sort' => $Sort
  215. ])->total() }}</b> {{ __('auto.条,分为') }}<b>{{ $list->lastPage() }}</b>{{ __('auto.页') }}
  216. {!! $list->links() !!}
  217. </div>
  218. </div>
  219. </div>
  220. </div>
  221. </div>
  222. </div>
  223. </div>
  224. <script>
  225. var dataObj = {
  226. 'GameID': '{{$GameID}}',
  227. 'mobile': '{{$mobile}}',
  228. 'SpreaderID': '{{$SpreaderID}}',
  229. 'NickName': '{{$NickName}}',
  230. 'start_time': '{{$start_time}}',
  231. 'end_time': '{{$end_time}}',
  232. 'Sort':'{{$Sort}}',
  233. 'FinalScoreSort' : '{{$FinalScoreSort}}',
  234. 'Type':'{{$Type}}'
  235. }
  236. // 自动审核开关
  237. function autoVerify(StatusValue) {
  238. myRequest("/admin/extension/auto_verify", "post", {StatusValue}, function (res) {
  239. layer.msg(res.msg)
  240. setTimeout(function () {
  241. window.location.reload();
  242. }, 1500)
  243. });
  244. }
  245. // 类型搜索
  246. function typeFunc() {
  247. //这样获取的是一个数组
  248. var ci = document.getElementsByName("Type");
  249. var type = ''
  250. // 遍历复选框数组 如果被选中ci[i].checked的值就是true
  251. for (var i = 0; i < ci.length; i++) {
  252. if (ci[i].checked == true) {
  253. type += ci[i].value + ','
  254. }
  255. }
  256. dataObj.Type = type
  257. $.ajax({
  258. type: "get",
  259. url: "/admin/extension/verify",
  260. headers: {
  261. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  262. },
  263. data: dataObj,
  264. success: function (msg) {
  265. if (msg) {
  266. $(".main-panel").html(msg)
  267. }
  268. }
  269. })
  270. console.log(type)
  271. }
  272. // 可见金额
  273. function visibleAmountFunc() {
  274. var page = layer.open({
  275. type: 2,
  276. title: '{{ __('auto.当前审核可见金额') }}',
  277. shadeClose: true,
  278. shade: 0.8,
  279. area: ['60%', '70%'],
  280. content: '/admin/extension/verify_score'
  281. });
  282. }
  283. // 修改审核状态 -- 通过
  284. function update(id, field, value,UserID,TotalScore) {
  285. myConfirm("{{ __('auto.操作不可逆,是否继续') }}?", function () {
  286. myRequest("/admin/extension/verify_update/" + id, "post", {field, value,UserID,TotalScore}, function (res) {
  287. layer.msg(res.msg)
  288. setTimeout(function () {
  289. window.location.reload();
  290. }, 1500)
  291. });
  292. });
  293. }
  294. // 修改上限配置
  295. function upperLimitFunc() {
  296. var page = layer.open({
  297. type: 2,
  298. title: '{{ __('auto.修改配置') }}',
  299. shadeClose: true,
  300. shade: 0.8,
  301. area: ['60%', '70%'],
  302. content: '/admin/extension/upper_limit'
  303. });
  304. }
  305. // 奖励来源
  306. function userSourceFunc(UserID, Type, GameID) {
  307. var page = layer.open({
  308. type: 2,
  309. title: '{{ __('auto.奖金来源') }}',
  310. shadeClose: true,
  311. shade: 0.8,
  312. area: ['90%', '80%'],
  313. content: '/admin/extension/user_source?UserID=' + UserID + '&Type=' + Type + '&GameID=' + GameID
  314. });
  315. }
  316. // 上下排序
  317. function totalScoreFunc(obj, val) {
  318. if (val == 'asc') {
  319. $(".TotalScore svg:eq(1)").children('path').attr('fill', '#707071');
  320. $(obj).children('path').attr('fill', 'red')
  321. } else {
  322. $(obj).children('path').attr('fill', 'red')
  323. $(".TotalScore svg:eq(0)").children('path').attr('fill', '#707071');
  324. }
  325. dataObj.Sort = val
  326. $.ajax({
  327. type: "get",
  328. url: "/admin/extension/verify",
  329. headers: {
  330. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  331. },
  332. data: dataObj,
  333. success: function (msg) {
  334. if (msg) {
  335. $(".main-panel").html(msg)
  336. }
  337. }
  338. })
  339. }
  340. // 审核通过金上下排序
  341. function FinalScoreFunc(obj, val) {
  342. if (val == 'asc') {
  343. $(".FinalScoreFunc svg:eq(1)").children('path').attr('fill', '#707071');
  344. $(obj).children('path').attr('fill', 'red')
  345. } else {
  346. $(obj).children('path').attr('fill', 'red')
  347. $(".FinalScoreFunc svg:eq(0)").children('path').attr('fill', '#707071');
  348. }
  349. dataObj.FinalScoreSort = val
  350. $.ajax({
  351. type: "get",
  352. url: "/admin/extension/verify",
  353. headers: {
  354. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  355. },
  356. data: dataObj,
  357. success: function (msg) {
  358. if (msg) {
  359. $(".main-panel").html(msg)
  360. }
  361. }
  362. })
  363. }
  364. // 添加备注
  365. function remarks(obj, UserID) {
  366. var Remarks = $(obj).html();
  367. myRequest("/admin/extension/verify_remarks/" + UserID, "post", {Remarks}, function (res) {
  368. layer.msg(res.msg)
  369. // setTimeout(function () {
  370. // window.location.reload();
  371. // }, 1500)
  372. });
  373. }
  374. function start_times() {
  375. getFormat('00', '00', '00');
  376. document.getElementById("start_time").value = format
  377. }
  378. function end_times() {
  379. getFormat('23', '59', '59');
  380. document.getElementById("end_time").value = format
  381. }
  382. </script>
  383. @endsection