St_zq_odds.php 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <?php
  2. namespace App\Sports\Model;
  3. use \System\Model;
  4. /**
  5. * Class Account
  6. * @package App\Sports\Model
  7. * 用户账号
  8. */
  9. class St_zq_odds extends Model
  10. {
  11. protected $table = 'st_zq_odds';
  12. /**
  13. * @param array $where 条件
  14. * @param string $select 字段
  15. * @param string $sort 排序字段
  16. * @param string $orderby 排序方式
  17. * @return mixed
  18. * 获取赔率数据
  19. */
  20. public static function getOddsData($where=[],$select='id',$sort='id',$orderby='asc'){
  21. $oddsData = self::select($select)->where($where)->groupby("lg_id","match_id","type")->get();
  22. return $oddsData;
  23. }
  24. //获取赔率数据 用于pc端
  25. public static function getOddsDataPC($model_odds='',$select=[],$match_ids=[],$whereOr=[],$p_code=[],$game_code=''){
  26. //父级玩法为空,查询所有
  27. if(empty($p_code)){
  28. $oddsData = lm($model_odds,"Sports")
  29. ->select($select)
  30. ->whereIn('match_id',$match_ids)
  31. ->where($whereOr)
  32. ->get()
  33. ->toArray();
  34. return $oddsData;
  35. }
  36. //冠军
  37. if($p_code == 'kemp'){
  38. $oddsData = lm($model_odds,"Sports")
  39. ->select($select)
  40. ->whereIn('lg_id',$match_ids)
  41. ->where($whereOr)
  42. ->get()
  43. ->toArray();
  44. return $oddsData;
  45. }
  46. //波胆,只查询全场
  47. if($p_code[0] == 'B'){
  48. $oddsData = lm($model_odds,"Sports")
  49. ->select($select)
  50. ->whereIn('match_id',$match_ids)
  51. ->whereIn('p_code',$p_code)
  52. ->where($whereOr)
  53. ->get()
  54. ->toArray();
  55. if(!empty($oddsData)){
  56. foreach($oddsData as $k=>$v){
  57. if(strstr($v['odds_code'],'h')){
  58. unset($oddsData[$k]);
  59. }
  60. }
  61. sort($oddsData);
  62. }
  63. return $oddsData;
  64. }
  65. dd(11);
  66. $oddsData = lm($model_odds,"Sports")
  67. ->select($select)
  68. ->whereIn('match_id',$match_ids)
  69. ->whereIn('p_code',$p_code)
  70. ->where($whereOr)
  71. ->get()
  72. ->toArray();
  73. return $oddsData;
  74. }
  75. //获取足球赛事下 滚球盘默认赔率
  76. public static function getMatchOdds($source,$models,$match_ids=[],$DefaultOdds=[]){
  77. //不是串场赔率
  78. $oddsTypeWhere = [
  79. [$models['model_odds'].'.is_stringscene','=',0],
  80. ];
  81. $model_odds = $models['model_odds'];
  82. $oddsData= lm($model_odds,"Sports")
  83. ->select($model_odds.'.match_id',$model_odds.'.id','p_code','odds_code',$model_odds.'.status','odds','condition','odds_only','sort','source')
  84. ->whereIn($model_odds.'.match_id',$match_ids)
  85. ->where([$model_odds.'.type'=>0,$model_odds.'.status'=>0])//查询滚球赔率
  86. ->where($oddsTypeWhere)
  87. ->where(function($query)use ($model_odds,$DefaultOdds){
  88. $query->where($model_odds.'.odds_code',$DefaultOdds['zq_concede_home'])
  89. ->orWhere(function($query)use ($model_odds,$DefaultOdds){
  90. $query->where($model_odds.'.odds_code',$DefaultOdds['zq_concede_guest']);
  91. })
  92. ->orWhere(function($query)use ($model_odds,$DefaultOdds){
  93. $query->where($model_odds.'.odds_code',$DefaultOdds['zq_goal_size_big']);
  94. })
  95. ->orWhere(function($query)use ($model_odds,$DefaultOdds){
  96. $query->where($model_odds.'.odds_code',$DefaultOdds['zq_goal_size_small']);
  97. })
  98. ->orWhere(function($query)use ($model_odds,$DefaultOdds){
  99. $query->where($model_odds.'.odds_code',$DefaultOdds['zq_capot_home']);
  100. })
  101. ->orWhere(function($query)use ($model_odds,$DefaultOdds){
  102. $query->where($model_odds.'.odds_code',$DefaultOdds['zq_capot_dogfall']);
  103. })
  104. ->orWhere(function($query)use ($model_odds,$DefaultOdds){
  105. $query->where($model_odds.'.odds_code',$DefaultOdds['zq_capot_guest']);
  106. });
  107. })
  108. ->get()
  109. ->toarray();
  110. return $oddsData;
  111. }
  112. }