Response.php 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <?php
  2. namespace App\Http\Response;
  3. class Response
  4. {
  5. const SUCCESS = 1;
  6. const FAILED = 0;
  7. //体育数据入库操作
  8. const HANDLE_ERRORS = 10010;
  9. const ABNORMAL = 10011;
  10. const UPDATE_ERROR = 10012;
  11. const INSERT_ERROR = 10013;
  12. const COUNTRY_ERROR = 10014;
  13. const AREA_ERROR = 10015;
  14. const LEAGUE_ERROR = 10016;
  15. const MATCH_ERROR = 10017;
  16. const LOCAL_LEAGUE_ERROR = 10018;
  17. const ADD_ODDS_ERROR = 10019;
  18. const ADD_ODDS_R_ERROR = 10020;
  19. const ADD_LG_R_ERROR = 10021;
  20. const ADD_MATCH_R_ERROR = 10022;
  21. const ADD_MATCH_R_R_ERROR = 10023;
  22. const LG_LASTTIME_ERROR = 10024;
  23. const HALF_MATCH_ERROR = 10025;
  24. const AUTH_ERROR = 10026;
  25. const LOCAL_MATCH_ERROR = 10027;
  26. const BROADCAST_ERROR = 10028;
  27. //===更新赛事状态===
  28. const MATCHID_NULL = 10029;
  29. const UPSTATUS_ERROR = 10030;
  30. //===更新赔率 状态===
  31. const ODDS_SOLE_ERR = 10031;
  32. //===获取 用户token ==
  33. const TOKEN_ERR = 10032;
  34. //联赛uuid 为空
  35. const LG__UUID_NULL = 10033;
  36. //更新赛事tag
  37. const UPMATCHTAG_ERROR = 10034;
  38. //未获取到数据源lg_id
  39. const S_LG_ID_NULL = 10035;
  40. //未获取到本地lg_id
  41. const L_LG_ID_NULL = 10036;
  42. //请求数据写日志记录失败
  43. const SPORTS_RECORD_ERR = 10037;
  44. private static $errorMsgs = [
  45. self::SUCCESS => '成功',
  46. self::FAILED => '失败',
  47. //===体育数据写入===
  48. self::HANDLE_ERRORS => '数据处理失败',
  49. self::ABNORMAL => '提交数据异常',
  50. self::UPDATE_ERROR => '数据更新失败',
  51. self::INSERT_ERROR => '数据插入失败',
  52. self::COUNTRY_ERROR => '国家不存在',
  53. self::AREA_ERROR => '地区不存在',
  54. self::LEAGUE_ERROR => '联赛不存在',
  55. self::MATCH_ERROR => '赛事不存在',
  56. self::LOCAL_LEAGUE_ERROR => '写入联赛关联记录失败',
  57. self::ADD_ODDS_ERROR => '赛事赔率写入失败',
  58. self::ADD_ODDS_R_ERROR => '赛事赔率记录写入失败',
  59. self::ADD_LG_R_ERROR => '联赛结果写入失败',
  60. self::ADD_MATCH_R_ERROR => '赛事结果写入失败',
  61. self::ADD_MATCH_R_R_ERROR => '赛事结果记录写入失败',
  62. self::LG_LASTTIME_ERROR => '联赛赛季结束时间不存在',
  63. self::HALF_MATCH_ERROR => '所属上半场赛事不存在',
  64. self::AUTH_ERROR => '无权操作',
  65. self::LOCAL_MATCH_ERROR => '写入赛事关联记录失败',
  66. self::BROADCAST_ERROR => '写入直播数据失败',
  67. //===更新赛事状态===
  68. self::MATCHID_NULL => '未获取到相关赛事',
  69. self::UPSTATUS_ERROR => '赛事状态更新失败',
  70. self::UPMATCHTAG_ERROR => '赛事tag更新失败',
  71. //===更新赔率状态===
  72. self::ODDS_SOLE_ERR => '更新赔率状态失败',
  73. //===获取用户 token===
  74. self::TOKEN_ERR => '用户token异常,请重新获取',
  75. //===联赛uuid 为空====
  76. self::LG__UUID_NULL => '联赛uuid为空',
  77. //===未获取到数据源lg_id===
  78. self::S_LG_ID_NULL => '未获取到数据源lg_id',
  79. //===未获取到本地lg_id===
  80. self::L_LG_ID_NULL => '未获取到本地lg_id',
  81. //===写请求数据日志记录失败===
  82. self::SPORTS_RECORD_ERR => '写请求数据日志记录失败',
  83. ];
  84. public static function getMsg($code)
  85. {
  86. return isset(static::$errorMsgs[$code]) ? static::$errorMsgs[$code] : '';
  87. }
  88. public static function generate($front = '', $errCode, $data = [], $errMsg = '')
  89. {
  90. $rs['status'] = $errCode;
  91. $rs['msg'] = $errMsg;
  92. $rs['msg'] OR $rs['msg'] = static::getMsg($errCode) ?: static::$errorMsgs[static::FAILED];
  93. $rs['msg'] = $front . $rs['msg'];
  94. $rs['data'] = $data;
  95. // return response()->json($rs, 200, ['Content-Type' => 'application/json; charset=UTF-8'], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES);
  96. return json_encode($rs, JSON_UNESCAPED_UNICODE);
  97. exit();
  98. }
  99. public static function success($data = [])
  100. {
  101. return static::generate('', Response::SUCCESS, $data);
  102. exit();
  103. }
  104. public static function throwError($errCode, $errMsg = '', $data = [])
  105. {
  106. $errMsg OR $errMsg = static::getMsg($errCode);
  107. throw new BusinessException($errMsg, $errCode, $data);
  108. }
  109. }