SettlementAutoController.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use Illuminate\Routing\Controller as Controller;
  4. use App\Lib\Settlement\SettlementAuto;
  5. use Illuminate\Support\Facades\DB;
  6. use App\Lib\Biz\Sport\Common;
  7. class SettlementAutoController extends Controller
  8. {
  9. public function doAddNotie()
  10. {
  11. if (!$this->safecheck()) {
  12. Common::SET_NOMAM_RECORD('自动结算验证失败(doaddnotice) ', array_merge($_REQUEST, ['ip' => $_SERVER['REMOTE_ADDR']]));
  13. exit();
  14. }
  15. $obj = new SettlementAuto();
  16. $obj->doAddNotie();
  17. return 'ok';
  18. }
  19. public function doAutoSett()
  20. {
  21. if (!$this->safecheck()) {
  22. Common::SET_NOMAM_RECORD('自动结算验证失败(doAutoSett) ', array_merge($_REQUEST, ['ip' => $_SERVER['REMOTE_ADDR']]));
  23. exit();
  24. }
  25. $obj = new SettlementAuto();
  26. $obj->doAutoSett($_REQUEST['token']);
  27. return 'ok';
  28. }
  29. private function safecheck()
  30. {
  31. $ip = $_SERVER['REMOTE_ADDR'];
  32. $ipreg = "/(^127\.0\.0\.1$)|(^172\.18\.0\.\d{1,3}$)|(^172\.17\.0\.\d{1,3}$)|(^103\.108\.41\.11\d$)/";
  33. $token = $_REQUEST['token'];
  34. $ret = preg_match($ipreg, $ip);
  35. if (!$ret) {
  36. return false;
  37. }
  38. $us = DB::table('system_user')->where(['token' => $token])->first();
  39. if (!$us) {
  40. return false;
  41. }
  42. return true;
  43. }
  44. }