where('id_giocatore', $this->data['id_giocatore']) ->first(); if ($res) { return StatistikoPlayer::find($res->id); } else { return new StatistikoPlayer; } } public static function getColumns(): array { return [ ImportColumn::make('id_giocatore') ->label('ID GIOCATORE'), ImportColumn::make('giocatore') ->label('GIOCATORE') ->castStateUsing(function (string $state): ?string { if (blank($state)) { return null; } return (string) trim($state); }), ImportColumn::make('data_di_nascita') ->label('DATA DI NASCITA') ->castStateUsing(function ($state) { if (blank($state)) { return null; } return Carbon::parse($state); }), ImportColumn::make('altezza') ->label('ALTEZZA') ->numeric(), ImportColumn::make('nazionalita') ->label('NAZIONALITA') ->castStateUsing(function (string $state): ?string { return (string) trim($state); }), ImportColumn::make('posizione') ->label('POSIZIONE') ->castStateUsing(function (string $state): ?string { if (blank($state)) { return null; } return (string) trim($state); }), ImportColumn::make('sport_radar_id') ->label('SPORT RADAR ID'), ImportColumn::make('id_squadra_tm') ->label('ID SQUADRA TM'), ImportColumn::make('nome_completo') ->label('NOME COMPLETO') ->castStateUsing(function (?string $state): ?string { if (blank($state)) { return null; } return (string) trim($state); }), ImportColumn::make('rigorista') ->label('RIGORISTA') ->castStateUsing(function (?string $state): ?string { if (blank($state)) { return null; } return (string) trim($state); }), ImportColumn::make('national_team_id') ->label('NATIONAL TEAM ID'), ImportColumn::make('data_aggiornamento') ->label('DATA AGGIORNAMENTO') ->castStateUsing(function ($state) { return Carbon::parse($state); }), ImportColumn::make('league_code') ->label('LEAGUE CODE') ->castStateUsing(function (string $state): ?string { return (string) trim($state); }), ImportColumn::make('team_code') ->label('TEAM CODE') ->castStateUsing(function (string $state): ?string { return (string) trim($state); }), ImportColumn::make('team_name') ->label('TEAM NAME') ->castStateUsing(function (string $state): ?string { return (string) trim($state); }), ]; } public static function getCompletedNotificationBody(Import $import): string { $body = 'Your player import has completed and '.Number::format($import->successful_rows).' '.str('row')->plural($import->successful_rows).' imported.'; if ($failedRowsCount = $import->getFailedRowsCount()) { $body .= ' '.Number::format($failedRowsCount).' '.str('row')->plural($failedRowsCount).' failed to import.'; } return $body; } }