removed precalculation

This commit is contained in:
salam committed 2026-10-12 23:43:23 +02:00
1 parent f6f5dd0c7c
commit 838d6419f4
11 files changed
+214 -680

No files matched your search

@@ -3,8 +3,7 @@
namespace App\Filament\Pages\Selections;
use App\Filament\Pages\Selections\Helper\GetSeason;
use App\Models\SofaScorePlayerPerSeason;
use App\Models\StatistikoDetail;
use App\Filament\Widgets\Boxes\LoadPlayerAverages;
use App\Models\StatistikoEvent;
class LoadPlayerSelection
@@ -12,13 +11,6 @@ class LoadPlayerSelection
public static function load(?int $team_id, ?string $team_position, ?int $sofascore_category_id, ?array $season, ?string $seasonmode)
{
$season = GetSeason::load($season, $seasonmode);
// $hash = hash('crc32', $team_id.$team_position.$sofascore_category_id.serialize($season));
// $cached_players = SofaScorePlayerCache::where('hash', $hash)->value('players');
// if ($cached_players) {
// return $cached_players;
// }
$matches = StatistikoEvent::whereIn('season', $season)
->where(function ($query) use ($team_id, $team_position) {
switch ($team_position) {
@@ -36,29 +28,24 @@ class LoadPlayerSelection
$positions_map = LoadPositions::load();
$team_player_ids = StatistikoDetail::where('ss_team_id', $team_id)->pluck('ss_player_id')->toArray();
$players = SofaScorePlayerPerSeason::with('details')->where('season', $season)->whereIn('ss_player_id', $team_player_ids)->get();
$players = LoadPlayerAverages::load($team_id, $season);
$arr = [];
foreach ($players as $val) {
if ($val->details) {
$player_id = $val->ss_player_id;
if (! isset($arr[$player_id])) {
$arr[$player_id]['player_name'] = $val->details->player_name;
$arr[$player_id]['events_played_home'] = $val->events_played_home;
$arr[$player_id]['events_played_away'] = $val->events_played_away;
$arr[$player_id]['minutes_played_home'] = $val->minutes_played_home;
$arr[$player_id]['minutes_played_away'] = $val->minutes_played_away;
$arr[$player_id]['preferred_foot'] = $val->details->preferred_foot ?? '';
$arr[$player_id]['player_position'] = $val->details->position ?? '';
$arr[$player_id]['color_level'] = round($matches_count / 3);
} else {
$arr[$player_id]['events_played_home'] += $val->events_played_home;
$arr[$player_id]['events_played_away'] += $val->events_played_away;
$arr[$player_id]['minutes_played_home'] += $val->minutes_played_home;
$arr[$player_id]['minutes_played_away'] += $val->minutes_played_away;
}
foreach ($players as $ss_player_id => $val) {
if (! isset($arr[$ss_player_id])) {
$arr[$ss_player_id]['player_name'] = $val['player_name'];
$arr[$ss_player_id]['events_played_home'] = $val['events_played_home'];
$arr[$ss_player_id]['events_played_away'] = $val['events_played_away'];
$arr[$ss_player_id]['minutes_played_home'] = $val['minutes_played_home'];
$arr[$ss_player_id]['minutes_played_away'] = $val['minutes_played_away'];
$arr[$ss_player_id]['preferred_foot'] = $val['preferred_foot'] ?? '';
$arr[$ss_player_id]['player_position'] = $val['position'] ?? '';
$arr[$ss_player_id]['color_level'] = round($matches_count / 3);
} else {
$arr[$ss_player_id]['events_played_home'] += $val['events_played_home'];
$arr[$ss_player_id]['events_played_away'] += $val['events_played_away'];
$arr[$ss_player_id]['minutes_played_home'] += $val['minutes_played_home'];
$arr[$ss_player_id]['minutes_played_away'] += $val['minutes_played_away'];
}
}
-1
View File
@@ -146,7 +146,6 @@ class Statistic extends BaseDashboard
Actions::make([
Action::make('esc')
->hiddenLabel()
->hidden(fn (Get $get) => $get('similar_past_matches') != 'none')
->tooltip('Clear All (esc)')
->icon('phosphor-x')
->color('gray')