lip 2 zile în urmă
părinte
comite
c660078e96

+ 5 - 2
app/Console/Commands/Sport.php

@@ -314,6 +314,11 @@ class Sport extends Command
                     } else {
                         SportModel::where('data_id', $item['fixture']['id'])->update($sport_data);
                     }
+
+                    //更新或创建球队和联赛信息
+                    SportModel::addSportTeam($sport_data);
+                    SportModel::addSportLeague($item['league']);
+
                     //比赛结束,插入比赛事件
                     if ($sport_data['state'] == 2 && !empty($item['events'])) {
                         foreach($item['events'] as $event) {
@@ -359,7 +364,6 @@ class Sport extends Command
                         DB::table('sport_odds')->where('id', $info->id)->update([
                             'odd_name_en' => $odd_name,
                         ]);
-                        echo '更新数据:'.$odd_id.'-'.$odd_name.PHP_EOL;
                     } elseif (!$info) {
                         DB::table('sport_odds')->insert([
                             'odd_id' => $odd_id,
@@ -367,7 +371,6 @@ class Sport extends Command
                             'created_at' => date('Y-m-d H:i:s'),
                             'updated_at' => date('Y-m-d H:i:s'),
                         ]);
-                        echo '插入数据:'.$odd_id.'-'.$odd_name.PHP_EOL;
                     }
                 }
             }

+ 4 - 4
app/Console/Commands/SportOdds.php

@@ -158,20 +158,20 @@ class SportOdds extends Command
 
                 $update_data['odds'] = $odds;
                 SportModel::where('data_id',$data_id)->update($update_data);
-                echo $data_id.": 更新成功\r\n";
+                // echo $data_id.": 更新成功\r\n";
             }
         } 
     }
 
     public function updateOdds($data_id,$data)
     {
-        echo $data_id;
+        // echo $data_id;
         if (!empty($data['response'][0]['bookmakers'][0]['bets'])) {
             $odds = $data['response'][0]['bookmakers'][0]['bets'];
-            echo "更新成功\r\n";
+            // echo "更新成功\r\n";
             SportModel::where('data_id',$data_id)->update(['odds' => json_encode($odds), 'is_send' => 0]);
         } else {
-            echo "更新失败\r\n";
+            // echo "更新失败\r\n";
         }
     }
 

+ 40 - 0
app/Models/Sport.php

@@ -1,6 +1,9 @@
 <?php
 
 namespace App\Models;
+use App\Models\SportLeague;
+use App\Models\SportTeam;
+
 
 class Sport extends BaseModel
 {
@@ -33,4 +36,41 @@ class Sport extends BaseModel
         ];
         return $long_status[$status] ?? $status;
     }
+
+    public static function addSportTeam($sport_data){
+        if (!empty($sport_data['home_team_id'])) {
+            $team = SportTeam::where('team_id', $sport_data['home_team_id'])->first();
+            if (!$team) { 
+                SportTeam::create([
+                    'team_id' => $sport_data['home_team_id'],
+                    'team_name_en' => $sport_data['home_team'],
+                    'logo' => $sport_data['home_team_logo'],
+                ]);
+            }
+        } 
+        if (!empty($sport_data['guest_team_id'])) {
+            $team = SportTeam::where('team_id', $sport_data['guest_team_id'])->first();
+            if (!$team) { 
+                SportTeam::create([
+                    'team_id' => $sport_data['guest_team_id'],
+                    'team_name_en' => $sport_data['guest_team'],
+                    'logo' => $sport_data['guest_team_logo'],
+                ]);
+            }
+        }
+        return true;
+    }
+
+    public static function addSportLeague($league){
+        if (!empty($league['name'])) {
+            $league = SportLeague::where('league_name_en', $league['name'])->first();
+            if (!$league) { 
+                SportLeague::create([
+                    'league_name_en' => $league['name'],
+                    'logo' => $league['logo'] ?? '',
+                ]);
+            }
+        } 
+        return true;
+    }
 }

+ 9 - 0
app/Models/SportLeague.php

@@ -0,0 +1,9 @@
+<?php
+
+namespace App\Models;
+
+class SportLeague extends BaseModel
+{
+    protected $table = 'sport_league';
+    protected $fillable = ['league_name_en', 'league_name', 'logo', 'status'];
+}

+ 9 - 0
app/Models/SportTeam.php

@@ -0,0 +1,9 @@
+<?php
+
+namespace App\Models;
+
+class SportTeam extends BaseModel
+{
+    protected $table = 'sport_team';
+    protected $fillable = ['team_id', 'team_name_en', 'team_name', 'logo', 'status'];
+}