1
|
|
|
<?php |
2
|
|
|
|
3
|
|
|
namespace App\Http\Models; |
4
|
|
|
|
5
|
|
|
use Illuminate\Database\Eloquent\Model; |
6
|
|
|
use Illuminate\Support\Facades\DB; |
7
|
|
|
|
8
|
|
|
/** |
9
|
|
|
* Classe qui va stocker mes requetes autoirs |
10
|
|
|
* de ma table movies |
11
|
|
|
* Hérite de ma super classe Model. |
12
|
|
|
*/ |
13
|
|
|
class Sessions extends Model |
14
|
|
|
{ |
15
|
|
|
/** |
16
|
|
|
* Décrit le nom de la table |
17
|
|
|
* que classe fait référence. |
18
|
|
|
*/ |
19
|
|
|
protected $table = 'sessions'; |
20
|
|
|
|
21
|
|
|
/** |
22
|
|
|
* Retourne la moyenne des heure de sessions. |
23
|
|
|
*/ |
24
|
|
|
public function getAvgHourDate() |
25
|
|
|
{ |
26
|
|
|
$result = DB::table('sessions') |
27
|
|
|
->select(DB::raw('ROUND(AVG(HOUR(date_session))) as avghour')) |
28
|
|
|
->first(); |
29
|
|
|
// first() retour le premiere résultat |
30
|
|
|
// get() retourn un tableau de résultat |
31
|
|
|
return $result; |
32
|
|
|
} |
33
|
|
|
|
34
|
|
|
/** |
35
|
|
|
* Recupérer mes 15 prochaines sessions |
36
|
|
|
* SELECT sessions.date_session AS DATE, movies.title AS mtitle, cinema.title AS ctitle. |
37
|
|
|
*/ |
38
|
|
|
public function getNextSession() |
39
|
|
|
{ |
40
|
|
|
|
41
|
|
|
/* 1ere methode |
|
|
|
|
42
|
|
|
$result = DB::select("SELECT sessions.date_session AS DATE, movies.title AS mtitle, cinema.title AS ctitle |
43
|
|
|
FROM sessions |
44
|
|
|
INNER JOIN movies ON sessions.movies_id = movies.id |
45
|
|
|
INNER JOIN cinema ON sessions.cinema_id = cinema.id |
46
|
|
|
WHERE date_session > NOW( ) |
47
|
|
|
LIMIT 0 , 15"); |
48
|
|
|
*/ |
49
|
|
|
|
50
|
|
|
$result = DB::table('sessions') |
51
|
|
|
|
52
|
|
|
->select('sessions.date_session', 'movies.title AS mtitle', 'cinema.title AS mcinema') |
53
|
|
|
->join('movies', 'sessions.movies_id', '=', 'movies.id') |
54
|
|
|
->join('cinema', 'sessions.cinema_id', '=', 'cinema.id') |
55
|
|
|
|
56
|
|
|
->where('date_session', '>', DB::raw('NOW()')) |
57
|
|
|
->orderBy('date_session', 'ASC') |
58
|
|
|
->take(15) |
59
|
|
|
->get(); |
60
|
|
|
|
61
|
|
|
return $result; |
62
|
|
|
} |
63
|
|
|
|
64
|
|
|
/** |
65
|
|
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo |
66
|
|
|
*/ |
67
|
|
|
public function movies() |
68
|
|
|
{ |
69
|
|
|
return $this->belongsTo('App\Http\Models\Movies'); |
70
|
|
|
} |
71
|
|
|
|
72
|
|
|
/** |
73
|
|
|
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo |
74
|
|
|
*/ |
75
|
|
|
public function cinema() |
76
|
|
|
{ |
77
|
|
|
return $this->belongsTo('App\Http\Models\Cinema'); |
78
|
|
|
} |
79
|
|
|
} |
80
|
|
|
|
Sometimes obsolete code just ends up commented out instead of removed. In this case it is better to remove the code once you have checked you do not need it.
The code might also have been commented out for debugging purposes. In this case it is vital that someone uncomments it again or your project may behave in very unexpected ways in production.
This check looks for comments that seem to be mostly valid code and reports them.