彭俊 6 роки тому
батько
коміт
54ba3460a8
1 змінених файлів з 62 додано та 14 видалено
  1. 62 14
      app/Http/Controllers/Api/WriteSportsController.php

+ 62 - 14
app/Http/Controllers/Api/WriteSportsController.php

@@ -590,12 +590,65 @@ class WriteSportsController extends BaseController{
 
             //获取当前赛事 在本地的所有赔率
             $l_odds_data = $models['model_odds']::select('odds_only')->where(['match_id'=>$match_id])->get()->toArray();
+            $set_odds = [];
+            if(!empty($oddsData)){
+                //去除本地已有的赔率
+                if(!empty($l_odds_data)){
+                    foreach($oddsData as $k=>$v){
+                        foreach($l_odds_data as $kk=>$vv){
+                            if($v['odds_only'] == $vv['odds_only']){
+                                unset($oddsData[$k]);
+                            }
+                        }
+                    }
+                    sort($oddsData);
+                }
+                //处理待写入 赔率数据
+                foreach($oddsData as $k=>$v){
+                    //组装数据
+                    $set_odds[] = [
+                        'match_id'=> $match_id?: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'=> $lg_id,
+                        'others_lg_id'=> $v['lg_id'],
+                        'ctime'=> date('Y-m-d H:i:s'),
+                        'utime'=> date('Y-m-d H:i:s'),
+                    ];
+                }
+
+                 //写赔率记录数据
+                 $ret = $models['model_odds_record']::insert($set_odds);
+                 if($ret != true) throw new \Exception(Response::generate($gameName.'赔率记录-odds_only:'.$v['odds_only'].';',Response::ADD_ODDS_R_ERROR));
+                 //追加参数
+                 $set_odds['sole'] = $v['sole'];
+                 $set_odds['expire_time'] = date('Y-m-d H:i:s',time()+60);
+                 //写赔率 数据
+                 $ret = $models['model_odds']::insert($set_odds);
+                 if($ret != true) throw new \Exception(Response::generate($gameName.'赔率-odds_only:'.$v['odds_only'].';',Response::ADD_ODDS_ERROR));
+            }
+
+
+
+
+
+            /*
             if(empty($l_odds_data)){
+                
                 if(!empty($oddsData)){
                     //处理待写入 赔率数据
                     foreach($oddsData as $k=>$v){
                         //组装数据
-                        $set_odds = [
+                        $set_odds[] = [
                             'match_id'=> $match_id?:0,
                             'others_match_id'=> $v['match_id']?:0,
                             'odds_code'=> $v['odds_code']?:'',
@@ -613,6 +666,7 @@ class WriteSportsController extends BaseController{
                             'ctime'=> date('Y-m-d H:i:s'),
                             'utime'=> date('Y-m-d H:i:s'),
                         ];
+                        
                         //写赔率记录数据
                         $ret = $models['model_odds_record']::insert($set_odds);
                         if($ret != true) throw new \Exception(Response::generate($gameName.'赔率记录-odds_only:'.$v['odds_only'].';',Response::ADD_ODDS_R_ERROR));
@@ -626,21 +680,15 @@ class WriteSportsController extends BaseController{
                 }
             }else{
                 //区分本地已有的赔率
-                //需更新赔率
-                $up_odds_data = [];
-                //需写入赔率
-                $in_odds_data = [];
-
                 if(!empty($oddsData)){
                     foreach($oddsData as $k=>$v){
                         foreach($l_odds_data as $kk=>$vv){
                             if($v['odds_only'] == $vv['odds_only']){
-                                $up_odds_data[] = $v;
-                            }else{
-                                $in_odds_data[] = $v;
+                                unset($oddsData[$k]);
                             }
                         }
                     }
+                    sort($oddsData);
                     /*
                     //执行 更新赔率
                     if(!empty($up_odds_data)){
@@ -677,12 +725,12 @@ class WriteSportsController extends BaseController{
                             if($ret < 1) throw new \Exception(Response::generate($gameName.'赔率-odds_only:'.$v['odds_only'].';',Response::ADD_ODDS_ERROR));
                         }
                     }
-                    */
+                    
                     //执行 新增赔率
-                    if(!empty($in_odds_data)){
-                        foreach($in_odds_data as $k=>$v){
+                    if(!empty($oddsData)){
+                        foreach($oddsData as $k=>$v){
                             //组装数据
-                            $set_odds = [
+                            $set_odds[] = [
                                 'match_id'=> $match_id?:0,
                                 'others_match_id'=> $v['match_id']?:0,
                                 'odds_code'=> $v['odds_code']?:'',
@@ -712,8 +760,8 @@ class WriteSportsController extends BaseController{
                         }
                     }
                 }
-
             }
+            */
             
             //提交事务
             DB::commit();