TaskController.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Services\Api\MemberService;
  4. use App\Services\ConfigService;
  5. use App\Services\EmailService;
  6. use App\Services\RedisService;
  7. use App\Services\UsdtWalletService;
  8. use Illuminate\Http\Request;
  9. /**
  10. * 任务
  11. * Class TaskController
  12. * @package App\Http\Controllers\Api
  13. */
  14. class TaskController extends webApp
  15. {
  16. /**
  17. * 监听处理转账
  18. * @return array|mixed
  19. */
  20. public function catchTransfer()
  21. {
  22. $key = md5('OTC');
  23. echo $key;
  24. $checkKey = request()->get('key');
  25. if($checkKey != $key){
  26. return message(1003, false);
  27. }
  28. $page = RedisService::get("caches:wallet:catchPage");
  29. $page = $page? $page : 1;
  30. $members = MemberService::make()->getCatchMember($page, 500);
  31. if(empty($members)){
  32. RedisService::set("caches:wallet:catchPage", 1, 600);
  33. return message(1019, false);
  34. }
  35. $count = 0;
  36. foreach ($members as $v){
  37. $result = UsdtWalletService::make()->getTransferInLog($v['id'], $v['trc_address']);
  38. if($result){
  39. $count++;
  40. RedisService::set("caches:wallet:catchTransfer:{$v['id']}_result", $result, 600);
  41. }
  42. }
  43. RedisService::set("caches:wallet:catchPage", $page+1, 600);
  44. if($count>0){
  45. return message(1020, true);
  46. }else{
  47. return message(1021, false);
  48. }
  49. }
  50. }