Bonjour à tous !
Voilà mon pb, j'ai une requête dans laquelle j'ai une condition.
Mais je ne sais pas comment la gérer .
Voilà mon code
Je dois compter le nombre de traitement qu'a fait une équipe pour tel ou tel jour. Ca marche pour l'équipe de matin et celle de journée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 if($poste=='Matin'){ $horaire_deb = '04:00'; $horaire_fin = '12:00'; } else if($poste=='Journee'){ $horaire_deb = '12:00'; $horaire_fin = '20:00'; } else if($poste=='Nuit'){ $horaire_deb = '20:00'; $horaire_fin = '23:59'; // ex: $date = '2010-02-03' $an_mois = substr($date, 0, 7); // ex: 2010-02 $jr = substr($date, -2); // ex: 03 $jr_lendemain = $jr+'01'; // ex: 4 $lendemain = $an_mois."0".$jr_lendemain; // ex: 2010-02-04 $horaire_deb_2 = '00:00'; $horaire_fin_2 = '04:00'; } $req = $this->createQuery('s') ->select('NumTraitement') ->from('TTraitement') ->where('TType2traitement_NumType = 1') ->andWhere('DateTraitement = ?', $date) ->andWhere('HeureTraitement > ?', $horaire_deb) ->andWhere('HeureTraitement < ?', $horaire_fin); if($poste == 'Nuit'){ $req = $req.->orWhere('DateTraitement = ?', $lendemain) ->andWhere('HeureTraitement > ?', $horaire_deb_2) ->andWhere('HeureTraitement < ?', $horaire_fin_2); } return $req->count();
Le problème c'est que l'équipe de nuit est à cheval sur deux jours. Donc il faut que je rajoute à ma requête le lendemain de 00:00 à 04:00 pour compter cb elle en a fait au total.
Et je ne vois pas comment ajouter ceci à ma requête...
Qqun peut m'éclairer svp?
Merci d'avance
Partager