This commit is contained in:
salam committed 2026-06-15 18:09:26 +02:00
1 parent b2183980fb
commit 4363509a6b
2 files changed
+108 -3

No files matched your search

+107 -3
View File
@@ -2,6 +2,7 @@
namespace App\Filament\Widgets\Data;
use App\Models\CompetitionGroup;
use App\Models\StatisticFixtures;
use App\Models\StatistikoDetail;
use App\Models\StatistikoEvent;
@@ -48,9 +49,6 @@ class LoadEvents
if (! $match_id) {
return [];
}
// if (! $team_id && $similar_past_matches == 'none') {
// return [];
// }
if ($statistic_type == 'none') {
$statistic_type = 'gls';
@@ -495,6 +493,112 @@ class LoadEvents
];
}
/**
* LEAGUE AVERAGES
*/
if ($similar_past_matches == 'none') {
$res = CompetitionGroup::with('country')->where('id', $league_id)->first();
$season_mode = $res->country->season_mode;
if ($season_mode == 'fullyear') {
$season = date('Y');
} else {
$season = date('y') - 1 . '/' . date('Y');
}
$res = StatistikoEvent::where('league_id', $league_id)
->where('season', $season)
->orderBy('starttime', 'ASC')
->get();
$media_team = [];
$media_league = [];
// 1) la media dei falli di tutte le partite giocate dal Flamengo
// (esempio, giocate 6 partite con falli 17-11-15-14-15-12, la media è 14)
// 2) la media dei falli di tutte le partite giocate nel campionato Brasiliano
// (esempio 6 giornate giocate = 60 partite quindi 120 squadre, quindi 120 dati tipo 17-12-12-15-8-15-13-21-...,
// quindi la media di questi 120 dati)
foreach ($res as $value) {
if ($team_id == $value['home_id'] or $team_id == $value['away_id']) {
switch ($statistic_type) {
case 'gls':
$media_team[] = (int) $value['gls_h'];
$media_team[] = (int) $value['gls_a'];
break;
case 'crn':
$media_team[] = (int) $value['crn_h'];
$media_team[] = (int) $value['crn_a'];
break;
case 'fls':
$media_team[] = (int) $value['fls_h'];
$media_team[] = (int) $value['fls_a'];
break;
case 'ofs':
$media_team[] = (int) $value['ofs_h'];
$media_team[] = (int) $value['ofs_a'];
break;
case 'crd':
$media_team[] = (int) $value['crd_h'];
$media_team[] = (int) $value['crd_a'];
break;
case 'snt':
$media_team[] = (int) $value['snt_h'];
$media_team[] = (int) $value['snt_a'];
break;
case 'tsh':
$media_team[] = (int) $value['tsh_h'];
$media_team[] = (int) $value['tsh_a'];
break;
}
}
switch ($statistic_type) {
case 'gls':
$media_league[] = (int) $value['gls_h'];
$media_league[] = (int) $value['gls_a'];
break;
case 'crn':
$media_league[] = (int) $value['crn_h'];
$media_league[] = (int) $value['crn_a'];
break;
case 'fls':
$media_league[] = (int) $value['fls_h'];
$media_league[] = (int) $value['fls_a'];
break;
case 'ofs':
$media_league[] = (int) $value['ofs_h'];
$media_league[] = (int) $value['ofs_a'];
break;
case 'crd':
$media_league[] = (int) $value['crd_h'];
$media_league[] = (int) $value['crd_a'];
break;
case 'snt':
$media_league[] = (int) $value['snt_h'];
$media_league[] = (int) $value['snt_a'];
break;
case 'tsh':
$media_league[] = (int) $value['tsh_h'];
$media_league[] = (int) $value['tsh_a'];
break;
}
}
// dd($media_team, $media_league);
$average_team = round(array_sum($media_team) / \count($media_team), 2);
$average_league = round(array_sum($media_league) / \count($media_league), 2);
$data_team = array_fill(5, 6, 'banana');
$labels
dd($average_team, $average_league);
}
self::$last_query = $data;
// dd($data);
@@ -20,6 +20,7 @@ return new class extends Migration
$collection->index('home_id');
$collection->index('away_id');
$collection->index('starttime');
$collection->index('season');
});
}