lip 3 tygodni temu
rodzic
commit
d086349b50

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

@@ -119,7 +119,8 @@ class SportOdds extends Command
                     'is_send' => 0,
                     'is_roll' => 1,
                     'is_locked' => 0,
-                    'odds' => $odds
+                    'odds' => $odds,
+                    'error' => 0, //异常类型:0正常;1直播赔率的赛事时异常
                 ];
                 $odd_fixture_status = null;//直播赔率中的赛事时间和状态(与直播赛事信息中的赛事时间和状态存在较大差异)
                 if (isset($item['fixture']['status']['long']) ) {
@@ -140,9 +141,11 @@ class SportOdds extends Command
                                 foreach($odds as $odd) {
                                     $odds_ids[] = $odd['id'];
                                 }
+                                $update_data['error'] = 1;
                                 $update_data['odd_ids_locked'] = json_encode($odds_ids);
                                 unset($update_data['odds']);//不更新赔率
                             } else {
+                                $update_data['error'] = 0;
                                 $update_data['odd_ids_locked'] = null;
                             }
                         }

+ 11 - 1
app/Http/Controllers/admin/Sport.php

@@ -31,6 +31,7 @@ class Sport extends Controller
                 'is_locked' => ['nullable', 'integer'],
                 'start_time' => ['nullable', 'string'],
                 'end_time' => ['nullable', 'string'],
+                'error' => ['nullable', 'integer'],
             ]);
             $page = request()->input('page', 1);
             $limit = request()->input('limit', 15);
@@ -50,6 +51,11 @@ class Sport extends Controller
             }
             if (isset($params['state']) && $params['state'] !== null) {
                 $query = $query->where('state', $params['state']);
+                if ($params['state'] >= 2) {
+                    $order = ['game_time' => 'desc'];
+                } else {
+                    $order = ['game_time' => 'asc', 'is_roll' => 'desc'];
+                }
             }
             if (isset($params['status']) && $params['status'] !== null) {
                 $query = $query->where('status', $params['status']);
@@ -63,10 +69,14 @@ class Sport extends Controller
             if (!empty($params['end_time'])) {
                 $query = $query->where('game_time', '<', strtotime($params['end_time'].' 23:59:59'));
             }
+            if (isset($params['error']) && $params['error'] !== null) {
+                $query = $query->where('error', $params['error']);
+            }
+
             $count = $query->count();
             $list = $query
                 ->forPage($page, $limit)
-                ->orderBy('game_time','asc')
+                ->orderBy($order)
                 ->get();
             foreach($list as $item) {
                 $item['game_time'] = date('Y-m-d H:i:s', $item['game_time']);