removed precalculation
This commit is contained in:
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'];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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')
|
||||
|
||||
Reference in new issue
Block a user