game_code){ //用于后台 将所有进行中的赛事写入结果 $this->match_result($data->game_code); } //写赛事数据 $obt = $data->data; if($obt){ $getData = $this->getAddData($obt); $league = []; $competition = []; $odds = []; $league_result = []; $match_result = []; $match_result_record = []; $odds_record = []; $broadcast = []; //指定排序 foreach ($getData as $k=>$v){ if($v['title'] == 'league') $league[] = $v; if($v['title'] == 'competition') $competition[] = $v; if($v['title'] == 'odds') $odds[] = $v; if($v['title'] == 'league_result') $league_result[] = $v; if($v['title'] == 'match_result') $match_result[] = $v; if($v['title'] == 'match_result_record') $match_result_record[] = $v; if($v['title'] == 'odds_record') $odds_record[] = $v; if($v['title'] == 'broadcast') $broadcast[] = $v; } $matchData = [$league,$competition,$odds,$league_result,$match_result,$match_result_record,$odds_record,$broadcast]; //排空处理 foreach ($matchData as $k=>$v){ if($v == []) unset($matchData[$k]); } sort($matchData); //根据顺序写入数据 //降维数据 $mentData = []; foreach ($matchData as $k=>$v){ foreach ($v as $kk=>$vv){ $mentData[] = $vv; } } foreach ($mentData as $kk =>$vv){ switch ($vv['title']){ case 'area'://地区 throw new \Exception(Response::generate('地区数据-area:',Response::AUTH_ERROR)) ; break; case 'country'://国家 throw new \Exception(Response::generate('国家数据-country:',Response::AUTH_ERROR)); break; case 'league'://联赛 $this->league($vv); break; case 'competition'://赛事 $this->competition($vv); break; case 'odds'://赔率 $this->odds($vv); break; case 'league_result'://联赛结果 $this->league_result($vv); break; case 'match_result'://赛事结果 throw new \Exception(Response::generate('赛事结果数据-match_result:',Response::AUTH_ERROR)); $this->match_result($vv); break; case 'match_result_record'://赛事结果记录 $this->com_result_record($vv); break; case 'odds_record'://赔率记录 throw new \Exception(Response::generate('赔率记录数据-odds_record:',Response::AUTH_ERROR)); $this->odds_record($vv); break; case 'broadcast'://直播数据 $this->broadcast($vv); break; default: throw new \Exception(Response::generate('',Response::ABNORMAL)) ; } } } //提交事务 DB::commit(); return Response::success(); } catch (\Exception $e) { //回滚事务 DB::rollBack(); return $e->getMessage(); } } /** * @param Req $data * @return string * @throws \App\Lib\Biz\Sport\Exception * 更新赛事状态 */ public function upMatch(Req $data){ try { //开启事务 DB::beginTransaction(); //获取待更新赛事 $obt = $data->data; if($obt){ //json转数组 $data = $this->getAddData($obt); //获取所有数据源赛事 match_id $others_match_ids = []; foreach ($data as $k=>$v){ $game_code = $v['game_code']; $source = $v['source']; $others_match_ids[] = $v['match_id']; } //根据球类代码 获取model $model =commonFunction::getModels($game_code,1); //获取所有赛事 match_id $local_match = $model['model_local_match']::SELECT('others_match_id','match_id') ->where(['source'=>$source]) ->whereIn('others_match_id',$others_match_ids) ->get()->toArray(); if(empty($local_match)) throw new \Exception(Response::generate('',Response::MATCHID_NULL)); //更新状态字段 $set_status = ['status'=>2]; foreach ($local_match as $k=>$v){ $ret = $model['model_match']::where(['id'=>$v['match_id']]) -> update($set_status); if($ret<1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$v['others_match_id'],Response::UPSTATUS_ERROR)); } } //提交事务 DB::commit(); return Response::success(); } catch (\Exception $e) { //回滚事务 DB::rollBack(); return $e->getMessage(); } } //写入直播 数据 public function broadcast($opt = []){ $data = $opt['data']; $set_broadcast = [ "doing" => $data['doing'], "game_type" => $data['game_type'], "guest_team" => $data['guest_team'], "host_team" => $data['host_team'], "league_name" => $data['league_name'], "shower" => $data['shower'], "showid" => (int)$data['showid'], "start_time" => $data['start_time'], "ctime" =>date('Y-m-d H:m:i'), "utime" =>date('Y-m-d H:m:i'), ]; $ret = broadcastModel::insert($set_broadcast); if($ret == false) throw new \Exception(Response::generate('',Response::BROADCAST_ERROR)); } //将进行中赛事写入 赛事结果 public function match_result($game_code = ''){ $model =commonFunction::getModels($game_code,1); if($game_code == 'zq') ZqResultModel::ZQresult($model); if($game_code == 'lq') LqResultModel::LQresult($model); if($game_code == 'wq') WqResultModel::WQresult($model); if($game_code == 'bq') BqResultModel::BQresult($model); } //写入地区数据 弃用 public function area($opt = []){ $ret = lm('st_area','Sports')->insert($opt); return $ret; } //写入国家数据 弃用 public function country($opt = []){ $ret = lm('st_country','Sports')->insert($opt); return $ret; } //写入联赛数据 public function league($opt = []){ $game_code = $opt['game_code']; //根据球类代码获取相关model $model =commonFunction::getModels($game_code,1); $data = $opt['data']; // if(empty($data['belong'])) throw new \Exception(Response::generate(Response::COUNTRY_ERROR)) ;//Render([], '10013', lang('Tips','Sports')->get('country_error')); // //获取联赛所属 国家/地区id // $belong = St_area_countryModel::getID($data['belong']); $set_lg['area_id'] = 0;//$belong['area_id']; $set_lg['country_id'] = 0;// $belong['country_id']; //查询中间表 是否已记录 $lg_id = $model['model_local_league']::where(['others_lg_id'=>$data['lg_id'],'source'=>$data['source']]) ->value('lg_id'); //如果没有记录 if(empty($lg_id)){ //查询联赛是否已存在 $id = $model['model_league']::where('name_chinese','=',$data['name_chinese']) ->value('id'); //默认获取本年最后一天 $last_time = date('Y-12-31 23:59:59'); //决赛时间 if($data['last_time']){ $last_time = $data['last_time']; } $set_lg['name_chinese'] = $data['name_chinese']; $set_lg['kind'] = $data['kind']; $set_lg['match_mode'] = $data['match_mode']; $set_lg['if_stop'] = $data['if_stop']; $set_lg['last_time'] = $last_time; $set_lg['utime'] = date('Y-m-d H:m:i'); if(empty($id)){ //写入联赛 $id = $model['model_league']::insertGetId($set_lg); $m_lg_id = $id; if($m_lg_id < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::INSERT_ERROR)); } //更新联赛 $ret = $model['model_league']::where(['id'=>$id]) -> update($set_lg); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::UPDATE_ERROR)); $set_local = [ 'lg_id'=>$id, 'others_lg_id'=>$data['lg_id'], 'source'=>$data['source'], ]; $ret = $model['model_local_league']::insertGetId($set_local); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LOCAL_LEAGUE_ERROR)) ;//Render([], '10017', lang('Tips','Sports')->get('local_league_error')); } } //写入赛事数据 public function competition($opt = []){ $game_code = $opt['game_code']; //根据球类代码获取相关model $model = commonFunction::getModels($game_code,1); $data = $opt['data']; if(empty($data['lg_id'])) throw new \Exception(Response::generate('',Response::LEAGUE_ERROR)) ;//Render([], '10015', lang('Tips','Sports')->get('league_error')); //根据源联赛ID 获取本地关联id $lg_id = $model['model_local_league']::where(['others_lg_id'=>$data['lg_id'],'source'=>$data['source']]) ->value('lg_id'); if(empty($lg_id)) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LEAGUE_ERROR)) ;//Render([], '10015', lang('Tips','Sports')->get('league_error')); //查询关联记录是否存在 $match_id = $model['model_local_match']::where(['others_match_id'=>$data['match_id'],'source'=>$data['source']]) ->value('match_id'); if(empty($match_id)){ //查询赛事是否存在 $id = $model['model_match']::where(['home_team'=>$data['home_team'],'guest_team'=>$data['guest_team'],'match_date'=>$data['match_date'],'match_time'=>$data['match_time']]) ->value('id'); $half_match_id = 0; //如果有上半场赛事id 获取上半场赛事是否存在 if(!empty($data['half_match_id'])){ $half_match_id = $match_id = $model['model_local_match']::where(['others_match_id'=>$data['half_match_id'],'source'=>$data['source']]) ->value('match_id'); if(empty($half_match_id)) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::HALF_MATCH_ERROR)) ;//Render([], '10024', lang('Tips','Sports')->get('half_match_error')); } //如果赛事没有开始日期,则为冠军盘口赛事 if(empty($data['match_date'])){ //冠军盘口赛事获取所属联赛结束时间 $last_time = $model['model_league']::where(['id'=>$lg_id]) ->value('last_time'); if(empty($last_time)) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LG_LASTTIME_ERROR)) ;//Render([], '10023', lang('Tips','Sports')->get('lg_lastTime_error')); //给冠军盘口赛事 赋值时间 $time = strtotime($last_time); $data['match_date'] = date('Y-m-d',$time); $data['match_time'] = date('H:m:i',$time); } $set_match = [ 'ctime'=>date('Y-m-d H:m:i'), 'utime'=>date('Y-m-d H:m:i'), 'expire_time'=>date('Y-m-d H:m:i',time()+60), 'home_team'=>$data['home_team']?:'', 'guest_team'=>$data['guest_team']?:'no_team', 'lg_id'=>$lg_id, 'status'=>$data['status'], 'match_date'=>$data['match_date']?:date('Y-m-d'), 'match_time'=>$data['match_time']?:date('H:m:i'), 'tag'=>$data['tag']?:0, 'is_rollball'=>$data['is_rollball']?:0, 'is_today'=>$data['is_today']?:0, 'is_morningplate'=>$data['is_morningplate']?:0, 'is_stringscene'=>$data['is_stringscene']?:0, 'us_time'=>$data['us_time']?:commonFunction::qgmdate('Y-m-d H:i:s', '', -4), 'half_match_id'=>$half_match_id?:0, ]; //写入赛事 if(empty($id)){ //写入赛事 返回id $id = $model['model_match']::insertGetId($set_match); if($id < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::INSERT_ERROR)) ;//Render([], '10012', lang('Tips','Sports')->get('insert_error')); } //更新赛事 $ret = $model['model_match']::where(['id'=>$id])->update($set_match); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::UPDATE_ERROR)) ;//Render([], '10012', lang('Tips','Sports')->get('insert_error')); //写关联记录 $set_local = [ 'match_id'=>$id, 'others_match_id'=>$data['match_id'], 'source'=>$data['source'], ]; $ret = $model['model_local_match']::insertGetId($set_local); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::LOCAL_MATCH_ERROR)) ;//Render([], '10018', lang('Tips','Sports')->get('local_match_error')); } // return Response::success(); } //写入赔率数据 public function odds($opt){ $game_code = $opt['game_code']; //根据球类代码获取相关model $model = commonFunction::getModels($game_code,1); $data = $opt['data']; $match = $model['model_local_match']::select('match_id','others_match_id') ->where(['others_match_id'=>$data['match_id'],'source'=>$data['source']]) ->first(); if(count($match) < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::MATCH_ERROR)) ;//Render([], '10016', lang('Tips','Sports')->get('match_error')); //获取赛事 本地/源ID $others_match_id = $match->others_match_id; $match_id = $match->match_id; $lg = $model['model_local_league']::select('lg_id','others_lg_id') ->where(['others_lg_id'=>$data['lg_id'],'source'=>$data['source']]) ->first(); if(count($lg) < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LEAGUE_ERROR)); //获取联赛 本地/源ID $others_lg_id = $lg->others_lg_id; $lg_id = $lg->lg_id; //===写赔率记录=== //查询赔率记录是否存在 $oddsRecordID = $model['model_odds_record']::where(['odds_only'=>$data['odds_only']]) ->value('id'); $set_odds_r = [ 'match_id'=> $match_id, 'others_match_id'=> $others_match_id, 'odds_code'=> $data['odds_code']?:'', 'status'=> $data['status']?:0, 'sort'=> $data['sort']?:0, 'p_code'=> $data['p_code']?:'', 'odds'=> $data['odds']?:0, 'condition'=> $data['condition'], 'odds_only'=> $data['odds_only']?:'', 'source'=> $data['source']?:'', 'type'=> $data['type']?:0, 'team'=> $data['team']?:'', 'lg_id'=> $lg_id, 'others_lg_id'=> $others_lg_id, 'ctime'=> date('Y-m-d H:m:i'), ]; //更新或写入赔率记录 if(!empty($oddsRecordID)){ $ret = $model['model_odds_record']::where(['id'=>$oddsRecordID]) -> update($set_odds_r); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赔率记录-odds_only:'.$data['odds_only'].';',Response::ADD_ODDS_R_ERROR)) ;//Render([], '10020', lang('Tips','Sports')->get('add_odds_r_error')); }else{ $ret = $model['model_odds_record']::insert($set_odds_r); if($ret != true) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赔率记录-odds_only:'.$data['odds_only'].';',Response::ADD_ODDS_R_ERROR));//Render([], '10020', lang('Tips','Sports')->get('add_odds_r_error')); } //===写赔率=== //查询 赔率数据是否存在 $oddsID = $model['model_odds']::where(['sole'=>$data['sole']]) ->value('id'); $set_odds = [ 'match_id'=> $match_id, 'others_match_id'=> $others_match_id, 'odds_code'=> $data['odds_code']?:'', 'status'=> $data['status']?:0, 'sort'=> $data['sort']?:0, 'p_code'=> $data['p_code']?:'', 'odds'=> $data['odds']?:0, 'condition'=> $data['condition'], 'odds_only'=> $data['odds_only']?:'', 'sole'=> $data['sole']?:'', 'source'=> $data['source']?:'', 'type'=> $data['type']?:0, 'team'=> $data['team']?:'', 'lg_id'=> $lg_id, 'others_lg_id'=> $others_lg_id, 'ctime'=> date('Y-m-d H:m:i'), 'utime'=> date('Y-m-d H:m:i'), 'expire_time'=>date('Y-m-d H:m:i',time()+60), ]; //更新或写入赔率数据 if(!empty($oddsID)){ $ret = $model['model_odds']::where(['sole'=>$data['sole']]) -> update($set_odds); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赔率-odds_only:'.$data['odds_only'].';',Response::ADD_ODDS_ERROR));//Render([], '10019', lang('Tips','Sports')->get('add_odds_error')); }else{ $ret = $model['model_odds']::insert($set_odds); if($ret != true) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赔率-odds_only:'.$data['odds_only'].';',Response::ADD_ODDS_ERROR));//Render([], '10019', lang('Tips','Sports')->get('add_odds_error')); } //===end=== } //写入联赛结果 public function league_result($opt){ $game_code = $opt['game_code']; //根据球类代码获取相关model $model = commonFunction::getModels($game_code,1); $data = $opt['data']; //验证结果所属联赛 $lg_id = $model['model_local_league']::where(['others_lg_id'=>$data['lg_id'],'source'=>$data['source']]) ->value('lg_id'); if($lg_id < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LEAGUE_ERROR));//Render([], '10015', lang('Tips','Sports')->get('league_error')); $lg_result_id = $model['model_league_result']::where(['lg_id'=>$lg_id,'game_name'=>$data['game_name']]) ->value('id'); $set_lg_result = [ 'lg_id'=>$lg_id, 'game_name'=>$data['game_name'], 'result'=>json_encode($data['result'],JSON_UNESCAPED_UNICODE), 'status'=>$data['status'], 'ctime'=> date('Y-m-d H:m:i'), 'utime'=> date('Y-m-d H:m:i'), ]; //联赛结果数据处理 if(!empty($lg_result_id)){ $ret = $model['model_league_result']::where(['id'=>$lg_result_id]) -> update($set_lg_result); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::ADD_LG_R_ERROR)) ;//Render([], '10021', lang('Tips','Sports')->get('add_lg_r_error')); }else{ $ret = $model['model_league_result']::insert($set_lg_result); if($ret != true) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::ADD_LG_R_ERROR));//Render([], '10021', lang('Tips','Sports')->get('add_lg_r_error')); } // return Response::success(); } //写入赛事结果 public function com_result($opt){ $game_code = $opt['game_code']; //根据球类代码获取相关model $model = commonFunction::getModels($game_code,1); $data = $opt['data']; //验证结果所属联赛 $lg_id = $model['model_local_league']::where(['others_lg_id'=>$data['lg_id'],'source'=>$data['source']]) ->value('lg_id'); if($lg_id < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LEAGUE_ERROR)) ;//Render([], '10015', lang('Tips','Sports')->get('league_error')); //验证结果所属赛事 $match_id = $model['model_local_match']::where(['others_match_id'=>$data['match_id'],'source'=>$data['source']]) ->value('match_id'); if($match_id < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::MATCH_ERROR));//Render([], '10016', lang('Tips','Sports')->get('match_error')); //查询结果是否存在 $match_r_id = $model['model_result']::where(['match_id'=>$match_id]) ->value('id'); $set_match_r = [ "home_team"=>$data['home_team'], "guest_team"=>$data['guest_team'], "lg_id"=>$lg_id, "home_rate"=> $data['home_rate'], "guest_rate"=> $data['guest_rate'], "home_score"=> $data['home_score'], "guest_score"=> $data['guest_score'], "all_goal"=> $data['all_goal'], "status"=>$data['status'], "first_score"=>$data['first_score'], "last_score"=> $data['last_score'], "match_score"=> $data['match_score'], "match_winer"=> $data['match_winer'], "match_time"=> $data['match_time'], "match_process"=> $data['match_process'], "tag"=> $data['tag'], "match_id"=> $match_id, "u_home_score"=> $data['u_home_score'], "u_guest_score"=> $data['u_guest_score'], "p_code"=> $data['p_code'], "update_time"=>date('Y-m-d H:m:i') ]; //赛事结果数据处理 if(!empty($match_r_id)){ $ret = $model['model_result']::where(['id'=>$match_r_id]) -> update($set_match_r); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::ADD_MATCH_R_ERROR)) ;//Render([], '10022', lang('Tips','Sports')->get('add_match_r_error')); }else{ $ret = $model['model_result']::insert($set_match_r); if($ret != true) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::ADD_MATCH_R_ERROR)) ;//Render([], '10022', lang('Tips','Sports')->get('add_match_r_error')); } // return Response::success(); } //写入赛事结果记录 public function com_result_record($opt){ $game_code = $opt['game_code']; //根据球类代码获取相关model $model = commonFunction::getModels($game_code,1); $data = $opt['data']; //验证结果所属联赛 $lg_id = $model['model_local_league']::where(['others_lg_id'=>$data['lg_id'],'source'=>$data['source']]) ->value('lg_id'); if($lg_id < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LEAGUE_ERROR)) ;//Render([], '10015', lang('Tips','Sports')->get('league_error')); //验证结果所属赛事 $match_id = $model['model_local_match']::where(['others_match_id'=>$data['match_id'],'source'=>$data['source']]) ->value('match_id'); if($match_id < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::MATCH_ERROR));//Render([], '10016', lang('Tips','Sports')->get('match_error')); $match_r_id = $model['model_result_record']::where(['match_id'=>$match_id,'match_time'=>$data['match_time']]) ->value('id'); //根据球类 获取 赛事结果记录字段 $set_match_r = $this->get_match_r($game_code,$lg_id,$match_id,$data); //赛事结果记录处理 if($match_r_id > 0){ $ret = $model['model_result_record']::where(['id'=>$match_r_id]) ->update($set_match_r); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::ADD_MATCH_R_R_ERROR));//Render([], '10022', lang('Tips','Sports')->get('add_match_r_r_error')); }else{ $ret = $model['model_result_record']::insert($set_match_r); if($ret != true) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::ADD_MATCH_R_R_ERROR));//Render([], '10022', lang('Tips','Sports')->get('add_match_r_r_error')); } // return Response::success(); } //写入赔率记录 public function odds_record($opt){ $game_code = $opt['game_code']; //根据球类代码获取相关model $model = commonFunction::getModels($game_code,1); $data = $opt['data']; $match = $model['model_local_match']::select('match_id','others_match_id') ->where(['others_match_id'=>$data['match_id'],'source'=>$data['source']]) ->first(); if(count($match) < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赛事-match_id:'.$data['match_id'].';',Response::MATCH_ERROR)) ;//Render([], '10016', lang('Tips','Sports')->get('match_error')); //获取赛事 本地/源ID $others_match_id = $match->others_match_id; $match_id = $match->match_id; $lg = $model['model_local_league']::select('lg_id','others_lg_id') ->where(['others_lg_id'=>$data['lg_id'],'source'=>$data['source']]) ->first(); if(count($lg) < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'联赛-lg_id:'.$data['lg_id'].';',Response::LEAGUE_ERROR)) ;//Render([], '10015', lang('Tips','Sports')->get('league_error')); //获取联赛 本地/源ID $others_lg_id = $lg->others_lg_id; $lg_id = $lg->lg_id; //查询 赔率数据是否存在 $oddsID = $model['model_odds_record']::where(['odds_only'=>$data['odds_only']]) ->value('id'); $set_odds = [ 'match_id'=> $match_id, 'others_match_id'=> $others_match_id, 'odds_code'=> $data['odds_code'], 'status'=> $data['status'], 'sort'=> $data['sort'], 'p_code'=> $data['p_code'], 'odds'=> $data['odds'], 'condition'=> $data['condition'], 'odds_only'=> $data['odds_only'], 'source'=> $data['source'], 'type'=> $data['type'], 'team'=> $data['team'], 'lg_id'=> $lg_id, 'others_lg_id'=> $others_lg_id, 'ctime'=> date('Y-m-d H:m:i'), 'utime'=> date('Y-m-d H:m:i'), ]; //更新或写入赔率记录 if(!empty($oddsID)){ $ret = $model['model_odds_record']::where(['id'=>$oddsID]) -> update($set_odds); if($ret < 1) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赔率记录-odds_only:'.$data['odds_only'].';',Response::ADD_ODDS_R_ERROR)) ;//Render([], '10020', lang('Tips','Sports')->get('add_odds_r_error')); }else{ $ret = $model['model_odds_record']::insert($set_odds); if($ret != true) throw new \Exception(Response::generate(gameModel::getGameName($game_code).'赔率记录-odds_only:'.$data['odds_only'].';',Response::ADD_ODDS_R_ERROR));//Render([], '10020', lang('Tips','Sports')->get('add_odds_r_error')); } // return Response::success(); } /** * @param $data * @return mixed * json转数组 */ public function getAddData($data){ $data = json_decode($data,true); return $data; } //根据球类获取 赛事结果记录字段 public function get_match_r($game_code,$lg_id,$match_id,$data){ $set_match_r = []; if($game_code == 'zq'){ $set_match_r = [ "home_team"=>$data['home_team']?:'', "guest_team"=>$data['guest_team']?:'', "lg_id"=>$lg_id, "all_goal"=>$data['all_goal']?:0, "home_rate"=> $data['home_rate']?:0, "guest_rate"=> $data['guest_rate']?:0, "home_score"=> $data['home_score']?:0, "guest_score"=> $data['guest_score']?:0, "status"=>$data['status']?:0, "first_score"=>$data['first_score']?:0, "last_score"=> $data['last_score']?:0, "match_score"=> $data['match_score']?:0, "match_winer"=> $data['match_winer']?:'', "match_time"=> $data['match_time']?:0, "match_process"=> $data['match_process']?:'', "tag"=> $data['tag']?:0, "match_id"=> $match_id, "update_time"=>date('Y-m-d H:m:i') ]; }; if($game_code == 'lq'){ $set_match_r = [ "home_team"=>$data['home_team']?:'', "guest_team"=>$data['guest_team']?:'', "lg_id"=>$lg_id, "home_rate"=> $data['home_rate']?:0, "guest_rate"=> $data['guest_rate']?:0, "home_score"=> $data['home_score']?:0, "guest_score"=> $data['guest_score']?:0, "status"=>$data['status']?:0, "first_score"=>$data['first_score']?:0, "last_score"=> $data['last_score']?:0, "match_score"=> $data['match_score']?:0, "match_winer"=> $data['match_winer']?:'', "match_time"=> $data['match_time']?:0, "match_process"=> $data['match_process']?:'', "tag"=> $data['tag']?:0, "match_id"=> $match_id, "update_time"=>date('Y-m-d H:m:i') ]; } if($game_code == 'wq'){ $set_match_r = [ "home_player_name"=>$data['home_player_name']?:'', "guest_player_name"=>$data['guest_player_name']?:'', "lg_id"=>$lg_id, "home_player_let_plate"=>$data['home_player_let_plate']?:0, "guest_player_let_plate"=>$data['guest_player_let_plate']?:0, "home_player_let_inning"=>$data['home_player_let_inning']?:0, "guest_player_let_inning"=>$data['guest_player_let_inning']?:0, "all_inning"=>$data['all_inning']?:0, "home_player_score"=>$data['home_player_score']?:0, "guest_player_score"=>$data['guest_player_score']?:0, "status"=>$data['status']?:0, "first_score_player"=>$data['first_score_player']?:'', "last_score_player"=>$data['last_score_player']?:'', "first_inning_score"=>$data['first_inning_score']?:0, "second_inning_score"=>$data['second_inning_score']?:0, "third_inning_score"=>$data['third_inning_score']?:0, "match_winer_player"=>$data['match_winer_player']?:'', "update_time"=>date('Y-m-d H:m:i'), "match_time"=>$data['match_time']?:0, "match_process"=>$data['match_process']?:'', "tag"=>$data['tag']?:0, "match_id"=>$match_id, "result_mark" =>$data['result_mark']?:'', ]; } if($game_code == 'bq'){ $set_match_r = [ "home_team"=>$data['home_team']?:'', "guest_team"=>$data['guest_team']?:'', "lg_id"=>$lg_id, "home_rate"=> $data['home_rate']?:0, "guest_rate"=> $data['guest_rate']?:0, "home_score"=> $data['home_score']?:0, "guest_score"=> $data['guest_score']?:0, "status"=>$data['status']?:0, "first_score"=>$data['first_score']?:0, "last_score"=> $data['last_score']?:0, "match_score"=> $data['match_score']?:0, "match_winer"=> $data['match_winer']?:'', "match_time"=> $data['match_time']?:0, "match_process"=> $data['match_process']?:'', "tag"=> $data['tag']?:0, "match_id"=> $match_id, "all_inning"=>$data['all_inning']?:0, "update_time"=>date('Y-m-d H:m:i'), "result_mark" =>$data['result_mark']?:'', ]; } return $set_match_r; } }