PaymentEntryController.php 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. <?php
  2. namespace App\Http\Controllers\Game;
  3. use App\Facade\TableName;
  4. use App\Http\Controllers\Api\BroQrController;
  5. use App\Services\PayMentService;
  6. use Illuminate\Http\Request;
  7. use Illuminate\Support\Facades\DB;
  8. use Illuminate\Support\Facades\Log;
  9. use Illuminate\Support\Facades\Redis;
  10. class PaymentEntryController {
  11. // 新支付总入口---区分签名
  12. public function pay(Request $request) {
  13. // return apiReturnFail(['web.payment.paytype_error','PayType ERROR']);
  14. // 获取数据
  15. $userId = (int)$request->globalUser->UserID;//(int)$request->input('userID');
  16. $payAmt = (int)$request->input('payAmt');
  17. $userName = $request->input('userName');
  18. $userEmail = $request->input('userEmail');
  19. $userPhone = $request->input('userPhone');
  20. $pay_type = (int)$request->input('pay_type');
  21. $GiftsID = (int)$request->input('GiftsID');
  22. $AdId = $request->input('AdId');
  23. $eventType = $request->input('eventType');
  24. $buyIP = $request->ip();
  25. if ($GiftsID == 'undefined') $GiftsID = '';
  26. $where[] = ['type', 'pay_method'];
  27. $where[] = ['status', 1];
  28. $where[] = ['id', $pay_type];
  29. if(env('CONFIG_24680_NFTD_99',0)==0)if($request->globalUser->Channel==99&&$GiftsID>0)return apiReturnFail(['web.payment.paytype_error','PayType ERROR']);
  30. $query = DB::table('agent.dbo.admin_configs')->where($where)->value('config_key');
  31. if ($query === null || $query === false) {
  32. return apiReturnFail(['web.payment.paytype_error','PayType ERROR']);
  33. }
  34. $channel = $request->globalUser->Channel;
  35. $payServiceString = PayMentService::getServiceByPayMethod($query, $channel);
  36. if(env('CONFIG_24680_CURRENCY','')=='BRL') {
  37. //探测cpf是否存在
  38. $info = DB::table(TableName::QPAccountsDB() . 'AccountWithDrawInfo')
  39. ->where('UserID', $userId)
  40. ->select('PixNum')
  41. ->first();
  42. $cpf = $info->PixNum ?? "";
  43. if (empty($cpf)) {
  44. $paychannel = DB::table('agent.dbo.admin_configs')->where('status', 1)->where('sort', '>', 0)->where('cpf_first', 0)->where('type', 'pay')->select('config_key')->first();
  45. if ($paychannel) {
  46. $payServiceString = $paychannel->config_key;
  47. }
  48. // select * from admin_configs where status=1 and sort>0 and cpf_first=0 and type='pay'
  49. }
  50. }
  51. Log::info('channel', [
  52. 'string' => $payServiceString
  53. ]);
  54. $service = PayMentService::pay_order($payServiceString);
  55. if(isset($AdId)&&!empty($AdId))Redis::set('user_ad_'.$userId,$AdId);
  56. $result = $service->pay_order($userId, $payAmt, $userName, $userEmail, $userPhone, $GiftsID, $buyIP, $AdId, $eventType);
  57. return $result;
  58. }
  59. // 新支付总入口---区分签名
  60. public function payQR(Request $request) {
  61. // 获取数据
  62. $userId = (int)$request->globalUser->UserID;//(int)$request->input('userID');
  63. $payAmt = (int)$request->input('payAmt');
  64. $userName = $request->input('userName');
  65. $userEmail = $request->input('userEmail');
  66. $userPhone = $request->input('userPhone');
  67. $pay_type = (int)$request->input('pay_type');
  68. $GiftsID = (int)$request->input('GiftsID');
  69. $AdId = $request->input('AdId');
  70. $eventType = $request->input('eventType');
  71. $buyIP = $request->ip();
  72. $pay_method = (int)$request->input('pay_method','clabe');
  73. if ($GiftsID == 'undefined') $GiftsID = '';
  74. Log::info('channel', [
  75. 'string' => 'BroQrController'
  76. ]);
  77. $service =new BroQrController();
  78. if(isset($AdId)&&!empty($AdId))Redis::set('user_ad_'.$userId,$AdId);
  79. $result = $service->pay_order($userId, $payAmt, $userName, $userEmail, $userPhone, $GiftsID, $buyIP, $AdId, $eventType);
  80. return $result;
  81. }
  82. // 新支付总入口---区分签名
  83. public function iospay(Request $request) {
  84. // 获取数据
  85. $userId =(int)$request->globalUser->UserID;// (int)$request->input('userID');
  86. $payAmt = (int)$request->input('payAmt');
  87. $userName = $request->input('userName');
  88. $userEmail = $request->input('userEmail');
  89. $userPhone = $request->input('userPhone');
  90. $pay_type = (int)$request->input('pay_type');
  91. $GiftsID = (int)$request->input('GiftsID');
  92. $AdId = $request->input('AdId');
  93. $eventType = $request->input('eventType');
  94. $buyIP = $request->ip();
  95. if ($GiftsID == 'undefined') $GiftsID = '';
  96. $service = PayMentService::pay_order('apple');
  97. $result = $service->pay_order($userId, $payAmt, $userName, $userEmail, $userPhone, $GiftsID, $buyIP, $AdId, $eventType);
  98. return $result;
  99. }
  100. // 新支付总入口---区分签名
  101. public function googlepay(Request $request) {
  102. // 获取数据
  103. $userId = (int)$request->globalUser->UserID;//(int)$request->input('userID');
  104. $payAmt = (int)$request->input('payAmt');
  105. $userName = $request->input('userName');
  106. $userEmail = $request->input('userEmail');
  107. $userPhone = $request->input('userPhone');
  108. $pay_type = (int)$request->input('pay_type');
  109. $GiftsID = (int)$request->input('GiftsID');
  110. $AdId = $request->input('AdId');
  111. $eventType = $request->input('eventType');
  112. $buyIP = $request->ip();
  113. if ($GiftsID == 'undefined') $GiftsID = '';
  114. $service = PayMentService::pay_order('google');
  115. $result = $service->pay_order($userId, $payAmt, $userName, $userEmail, $userPhone, $GiftsID, $buyIP, $AdId, $eventType);
  116. return $result;
  117. }
  118. }