Beispiel #1
0
// Provide controller methods with object instead of ID
Route::model('campionati', 'Campionato');
Route::model('giornate', 'Giornata');
Route::model('squadre', 'Squadra');
Route::model('partite', 'Partita');
Route::bind('campionati', function ($value) {
    return Campionato::where('id', $value)->first();
});
Route::bind('squadre', function ($value) {
    return Squadra::whereId($value)->first();
});
Route::bind('giornate', function ($value) {
    return Giornata::whereId($value)->first();
});
Route::bind('partite', function ($value) {
    return Partita::whereId($value)->first();
});
Route::resource('campionati', 'CampionatiController');
Route::resource('giornate', 'GiornateController');
Route::resource('squadre', 'SquadreController');
Route::resource('partite', 'PartiteController');
Route::get('/importCalendar', function () {
    $importCalendar = new ImportCalendar();
    $result = $importCalendar->importCalendarFromFile();
    echo 'Result ->' . $result, '<br>';
});
Route::get('/updateResults', function () {
    $updateResults = new UpdateResults();
    $result = $updateResults->updateDBFromCSV();
    echo 'Result ->' . $result, '<br>';
});
Beispiel #2
0
 protected function updateDB($array_results)
 {
     $cont_partite_aggiornate = 0;
     //ricava idcampionato
     $campionato = Campionato::where('div', $this->div_campionato)->where('stagione', $this->stagione_full)->first();
     $idcampionato = $campionato->id;
     foreach ($array_results as $value) {
         //ricava id_squadracasa
         $squadra_casa = $value['HomeTeam'];
         $id_squadracasa = Squadra::where('campionato_id', $idcampionato)->where('nomecsv', $squadra_casa)->first()->id;
         //ricava id_squadratrasferta
         $squadra_trasferta = $value['AwayTeam'];
         $id_squadratrasferta = Squadra::where('campionato_id', $idcampionato)->where('nomecsv', $squadra_trasferta)->first()->id;
         //ricava id_partita
         $id_partita = Partita::where('campionato_id', $idcampionato)->where('id_squadracasa', $id_squadracasa)->where('id_squadratrasferta', $id_squadratrasferta)->first()->id;
         //verifica se la partita è già stata aggiornata, e in caso positivo va a quella successiva
         $giocata = Partita::where('id', $id_partita)->first()->giocata;
         if ($giocata) {
             continue;
         }
         //ricava la data in formato per mysql
         $data_csv = $value['Date'];
         //attuale formato dd/mm/yy
         $data_ok = date_create_from_format('d/m/y', $data_csv);
         $data_mysql = date_format($data_ok, 'Y-m-d');
         //crea il record da scrivere
         $record_partita = array('giocata' => TRUE, 'data' => $data_mysql, 'fthg' => $value['FTHG'], 'ftag' => $value['FTAG'], 'ftr' => $value['FTR'], 'hthg' => $value['HTHG'], 'htag' => $value['HTAG'], 'htr' => $value['HTR']);
         //Match Statistics (Opzionali)
         if (isset($value['Attendance'])) {
             $record_partita['attendance'] = $value['Attendance'];
         }
         if (isset($value['Referee'])) {
             $record_partita['referee'] = $value['Referee'];
         }
         if (isset($value['HS'])) {
             $record_partita['hs'] = $value['HS'];
         }
         if (isset($value['AS'])) {
             $record_partita['as'] = $value['AS'];
         }
         if (isset($value['HST'])) {
             $record_partita['hst'] = $value['HST'];
         }
         if (isset($value['AST'])) {
             $record_partita['ast'] = $value['AST'];
         }
         if (isset($value['HHW'])) {
             $record_partita['hhw'] = $value['HHW'];
         }
         if (isset($value['AHW'])) {
             $record_partita['ahw'] = $value['AHW'];
         }
         if (isset($value['HC'])) {
             $record_partita['hc'] = $value['HC'];
         }
         if (isset($value['AC'])) {
             $record_partita['ac'] = $value['AC'];
         }
         if (isset($value['HF'])) {
             $record_partita['hf'] = $value['HF'];
         }
         if (isset($value['AF'])) {
             $record_partita['af'] = $value['AF'];
         }
         if (isset($value['HO'])) {
             $record_partita['ho'] = $value['HO'];
         }
         if (isset($value['AO'])) {
             $record_partita['ao'] = $value['AO'];
         }
         if (isset($value['HY'])) {
             $record_partita['hy'] = $value['HY'];
         }
         if (isset($value['AY'])) {
             $record_partita['ay'] = $value['AY'];
         }
         if (isset($value['HR'])) {
             $record_partita['hr'] = $value['HR'];
         }
         if (isset($value['AR'])) {
             $record_partita['ar'] = $value['AR'];
         }
         if (isset($value['HBP'])) {
             $record_partita['hbp'] = $value['HBP'];
         }
         if (isset($value['ABP'])) {
             $record_partita['abp'] = $value['ABP'];
         }
         //Quote medie Bookmakers Betbrain
         $record_partita['bbavh'] = $value['BbAvH'];
         $record_partita['bbavd'] = $value['BbAvD'];
         $record_partita['bbava'] = $value['BbAvA'];
         $record_partita['bbavover25'] = $value['BbAv>2.5'];
         $record_partita['bbavunder25'] = $value['BbAv<2.5'];
         //aggiorna la partita sul DB
         Partita::where('id', $id_partita)->update($record_partita);
         $cont_partite_aggiornate++;
     }
     return $cont_partite_aggiornate;
 }
 protected function ricavaPartiteSquadra($id_squadracasa, $campionato_id)
 {
     $array_analisi_squadra = array();
     $array_partite_casa = Partita::where('campionato_id', $campionato_id)->where('id_squadracasa', $id_squadracasa)->get();
     foreach ($array_partite_casa as $partita) {
         $nomesquadra = Squadra::where('id', $partita->id_squadratrasferta)->first()->nomesquadra;
         $giornata = Giornata::where('id', $partita->giornata_id)->first()->giornata;
         if ($partita->giocata) {
             switch ($partita->ftr) {
                 case 'H':
                     $esito = 'V';
                     break;
                 case 'D':
                     $esito = 'N';
                     break;
                 case 'A':
                     $esito = 'P';
                     break;
             }
             $risultato = $partita->fthg . '-' . $partita->ftag;
         } else {
             $esito = null;
             $risultato = ' - ';
         }
         $array_analisi_squadra[$giornata] = array('squadra' => $nomesquadra, 'tipo' => 'Casa', 'esito' => $esito, 'risultato' => $risultato);
     }
     $array_partite_trasferta = Partita::where('campionato_id', $campionato_id)->where('id_squadratrasferta', $id_squadracasa)->get();
     foreach ($array_partite_trasferta as $partita) {
         $nomesquadra = Squadra::where('id', $partita->id_squadracasa)->first()->nomesquadra;
         $giornata = Giornata::where('id', $partita->giornata_id)->first()->giornata;
         if ($partita->giocata) {
             switch ($partita->ftr) {
                 case 'H':
                     $esito = 'P';
                     break;
                 case 'D':
                     $esito = 'N';
                     break;
                 case 'A':
                     $esito = 'V';
                     break;
             }
             $risultato = $partita->ftag . '-' . $partita->fthg;
         } else {
             $esito = null;
             $risultato = ' - ';
         }
         $array_analisi_squadra[$giornata] = array('squadra' => $nomesquadra, 'tipo' => 'Trasferta', 'esito' => $esito, 'risultato' => $risultato);
     }
     ksort($array_analisi_squadra);
     return $this->formattaAnalisiPerTabella($array_analisi_squadra);
 }
 protected function ricavaDatiPartiteInTrasferta($squadra, $giornata)
 {
     $campionato_id = $giornata->campionato_id;
     $idsquadra = $squadra->id;
     $idgiornata = $giornata->id;
     //imposta variabili
     $vinte = 0;
     $nulle = 0;
     $perse = 0;
     $gol_fatti = 0;
     $gol_subiti = 0;
     //-----------------
     $array_partite = Partita::where('campionato_id', $campionato_id)->where('giornata_id', '<=', $idgiornata)->where('giocata', TRUE)->where('id_squadratrasferta', $idsquadra)->get();
     foreach ($array_partite as $partita) {
         switch ($partita->ftr) {
             case 'H':
                 $perse++;
                 break;
             case 'D':
                 $nulle++;
                 break;
             case 'A':
                 $vinte++;
                 break;
         }
         $gol_fatti = $gol_fatti + $partita->ftag;
         $gol_subiti = $gol_subiti + $partita->fthg;
     }
     $dati_casa = array('vinte' => $vinte, 'nulle' => $nulle, 'perse' => $perse, 'gol_fatti' => $gol_fatti, 'gol_subiti' => $gol_subiti);
     return $dati_casa;
 }
Beispiel #5
0
 protected function scriviCalendarioSuDatabase($div_campionato)
 {
     //ricava idcampionato
     $campionato = Campionato::where('div', $div_campionato)->where('stagione', $this->stagione)->first();
     $idcampionato = $campionato->id;
     //scrive tabella Squadre
     foreach ($this->arraySquadre as $value) {
         $record_squadra = array('campionato_id' => $idcampionato, 'nomesquadra' => $value, 'nomecsv' => $this->getCsvNameFromCalendarName($value));
         Squadra::create($record_squadra);
     }
     //scrive tabella Giornate
     foreach ($this->arrayGiornate as $value) {
         $record_giornata = array('campionato_id' => $idcampionato, 'giornata' => $value['num'], 'data' => $value['data']);
         Giornata::create($record_giornata);
     }
     //scrive tabella Partite
     foreach ($this->arrayPartite as $value) {
         //ricava id_giornata
         $id_giornata = Giornata::where('campionato_id', $idcampionato)->where('giornata', $value['giornata'])->first()->id;
         //ricava id_squadracasa
         $id_squadracasa = Squadra::where('campionato_id', $idcampionato)->where('nomesquadra', $value['casa'])->first()->id;
         //ricava id_squadratrasferta
         $id_squadratrasferta = Squadra::where('campionato_id', $idcampionato)->where('nomesquadra', $value['trasferta'])->first()->id;
         $record_partita = array('campionato_id' => $idcampionato, 'giornata_id' => $id_giornata, 'id_squadracasa' => $id_squadracasa, 'id_squadratrasferta' => $id_squadratrasferta);
         Partita::create($record_partita);
     }
 }