彭俊 6 vuotta sitten
vanhempi
commit
b45458280f

+ 79 - 8
app/Http/Controllers/Api/WriteSportsController.php

@@ -109,9 +109,8 @@ class WriteSportsController extends BaseController{
             $getData = $this->getAddData($obt);
             //不是 联赛 数据
             if($getData['title'] != 'league') throw new \Exception(Response::generate('不是联赛数据,',Response::ABNORMAL));
-
             //写请求数据 日志记录
-            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt);
+            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt,$getData);
             if($setSportsRecord < 1) throw new \Exception(Response::generate('',Response::SPORTS_RECORD_ERR));
              //获取球类代码
              $game_code = $getData['game_code'];
@@ -126,6 +125,7 @@ class WriteSportsController extends BaseController{
              //获取 联赛 数据
              $leagueData = $getData['data'];
 
+
              //获取 当前请求 所有 联赛 uuid
              $identity = [];
              foreach($leagueData as $k=>$v){
@@ -228,7 +228,7 @@ class WriteSportsController extends BaseController{
             if($getData['title'] != 'match') throw new \Exception(Response::generate('不是赛事数据,',Response::ABNORMAL));
 
             //写请求数据 日志记录
-            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt);
+            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt,$getData);
             if($setSportsRecord < 1) throw new \Exception(Response::generate('',Response::SPORTS_RECORD_ERR));
             //获取球类代码
             $game_code = $getData['game_code'];
@@ -370,6 +370,7 @@ class WriteSportsController extends BaseController{
 
     }
 
+    //测试获取上半场赛事 暂未使用
     public function __setMatch(Req $data){
         //验证token
         $user = new \App\Models\System_user;
@@ -387,7 +388,7 @@ class WriteSportsController extends BaseController{
             if($getData['title'] != 'match') throw new \Exception(Response::generate('不是赛事数据,',Response::ABNORMAL));
 
             //写请求数据 日志记录
-            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt);
+            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt,$getData);
             if($setSportsRecord < 1) throw new \Exception(Response::generate('',Response::SPORTS_RECORD_ERR));
             //获取球类代码
             $game_code = $getData['game_code'];
@@ -518,7 +519,7 @@ class WriteSportsController extends BaseController{
             if($getData['title'] != 'match_result_r') throw new \Exception(Response::generate('不是赛事结果记录数据,',Response::ABNORMAL));
 
             //写请求数据 日志记录
-            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt);
+            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt,$getData);
             if($setSportsRecord < 1) throw new \Exception(Response::generate('',Response::SPORTS_RECORD_ERR));
             //获取球类代码
             $game_code = $getData['game_code'];
@@ -613,6 +614,76 @@ class WriteSportsController extends BaseController{
      * 每个请求 只包含 一场赛事下 N条赔率
      */
     public function setOdds(Req $data){
+        try {
+        
+            //开启事务
+            DB::beginTransaction();
+            $obt = $data->data;
+
+            //请求 数据 为空
+            if(empty($obt)) throw new \Exception(Response::generate('请求数据为空,',Response::ABNORMAL));
+            $getData = $this->getAddData($obt);
+
+            //不是 赔率 数据
+            if($getData['title'] != 'odds') throw new \Exception(Response::generate('不是赔率数据,',Response::ABNORMAL));
+
+            //获取球类代码
+            $game_code = $getData['game_code'];
+            //获取数据源
+            $source = $getData['source'];
+            //获取源数据联赛ID
+            $uuid = $getData['uuid'];
+            //获取源数据赛事ID
+            $s_match_id = $getData['match_id'];
+            //获取赔率所属赛事 tag 值 玩法数量
+            $tag = $getData['tag']?:99;
+
+            //获取球类名称
+            $gameName = '足球';
+            $models = commonFunction::getModels($game_code, 1);
+        
+            $oddsData = $getData['data'];
+
+            foreach($oddsData as $k=>$v){
+                //组装数据
+                $set_odds = [
+                    'match_id'=> 123?:0,
+                    'others_match_id'=> $v['match_id']?:0,
+                    'odds_code'=> $v['odds_code']?:'',
+                    'status'=> $v['status']?:0,
+                    'sort'=> $v['sort']?:0,
+                    'p_code'=> $v['p_code']?:'',
+                    'odds'=> $v['odds']?:0,
+                    'condition'=> $v['condition'],
+                    'odds_only'=> $v['odds_only']?:'',
+                    'source'=> $v['source']?:'',
+                    'type'=> $v['type']?:0,
+                    'team'=> $v['team']?:'',
+                    'lg_id'=> 11,
+                    'others_lg_id'=> $v['lg_id'],
+                    'ctime'=> date('Y-m-d H:i:s'),
+                    'utime'=> date('Y-m-d H:i:s'),
+                ];
+                //追加参数
+                $set_odds['sole'] = $v['sole'];
+                $set_odds['expire_time'] = date('Y-m-d H:i:s',time()+60);
+                //写赔率 数据
+                $ret = $models['model_odds']->updateOrCreate(
+                    ['odds_only'=>$v['odds_only']],$set_odds
+                );
+                if($ret != true) throw new \Exception(Response::generate($gameName.'赔率-odds_only:'.$v['odds_only'].';',Response::ADD_ODDS_ERROR));
+            }
+         //提交事务
+         DB::commit();
+         return Response::success();
+     } catch (\Exception $e) {
+         //回滚事务
+         DB::rollBack();
+         return $e->getMessage();
+     }
+    
+    }
+    public function __setOdds(Req $data){
         //验证token
         $user = new \App\Models\System_user;
         if(empty($data->token)) return Response::generate('未获取到token',Response::TOKEN_ERR);
@@ -632,7 +703,7 @@ class WriteSportsController extends BaseController{
             if($getData['title'] != 'odds') throw new \Exception(Response::generate('不是赔率数据,',Response::ABNORMAL));
 
             //写请求数据 日志记录
-            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt);
+            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt,$getData);
             if($setSportsRecord < 1) throw new \Exception(Response::generate('',Response::SPORTS_RECORD_ERR));
 
             //获取球类代码
@@ -763,7 +834,7 @@ class WriteSportsController extends BaseController{
             if($getData['title'] != 'odds_ch') throw new \Exception(Response::generate('不是冠军赔率数据,',Response::ABNORMAL));
 
             //写请求数据 日志记录
-            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt);
+            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt,$getData);
             if($setSportsRecord < 1) throw new \Exception(Response::generate('',Response::SPORTS_RECORD_ERR));
             //获取球类代码
             $game_code = $getData['game_code'];
@@ -877,7 +948,7 @@ class WriteSportsController extends BaseController{
             if($getData['title'] != 'broad_cast') throw new \Exception(Response::generate('不是直播数据,',Response::ABNORMAL));
 
             //写请求数据 日志记录
-            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt);
+            $setSportsRecord = St_set_sports_recordModel::setSportsRecord($getData['title'],$obt,$getData);
             if($setSportsRecord < 1) throw new \Exception(Response::generate('',Response::SPORTS_RECORD_ERR));
             //获取 球类
             $game_code = $getData['game_code'];

+ 3 - 2
app/Http/Model/St_set_sports_record.php

@@ -16,13 +16,14 @@ class St_set_sports_record extends Model
 
 
    //写 请求 数据 日志记录
-   public static function setSportsRecord($title,$obt){
+   public static function setSportsRecord($title,$obt='',$getData=[]){
+
         $set = 0;
         if(!empty($title) and !empty($obt)){
            $setData = [
             'title'=>$title,
             'data'=>$obt,
-            'num'=>count($obt['data']),
+            'num'=>count($getData['data']),
             'add_time'=>date('Y-m-d H:i:s'),
            ];
            $set = self::insertGetId($setData);