Subversion Repositories Applications.gtt

Rev

Rev 10 | Rev 48 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 10 Rev 15
Line 44... Line 44...
44
* class Absence : est à la fois le DAO et le conteneur de la table gestion_utilisateur.
44
* class Absence : est à la fois le DAO et le conteneur de la table gestion_utilisateur.
45
* classe métier
45
* classe métier
46
*/
46
*/
47
class Absence extends aGttSql {
47
class Absence extends aGttSql {
48
	/*** Constantes : */
48
	/*** Constantes : */
49
	const GA_ID = 'ABSENCE_ID';
49
	const GA_ID = 'ABSENCE_ID';
-
 
50
	const GA_ID_UTILISATEUR_DATE_DEB_FIN = 'ABSENCE_ID_UTILISATEUR_DATE_DEB_FIN';
50
	const GA_ID_MAX = 'ABSENCE_ID_MAX';
51
	const GA_ID_MAX_UTILISATEUR = 'ABSENCE_ID_MAX_UTILISATEUR';
-
 
52
	const GA_ID_MAX_ABSENCE_MOTIF = 'ABSENCE_ID_MAX_ABSENCE_MOTIF';
-
 
53
	const GA_ID_MAX_DATE_ABSENCE = 'ABSENCE_ID_MAX_DATE_ABSENCE';
51
	
54
 
52
	/*** Attributs : */
55
	/*** Attributs : */
53
	private $id_abscence;
56
	private $id_utilisateur;
54
	private $ce_absence_motif;
57
	private $id_absence_motif;
55
	private $ce_utilisateur;
-
 
56
	private $date_debut;
58
	private $id_date_absence;
57
	private $date_fin;
59
	private $duree;
58
	private $date_envoi_lettre;
-
 
59
	
60
 
60
	/*** Aggregations : */
61
	/*** Aggregations : */
Line 61... Line 62...
61
 
62
 
62
	/*** Constructeur : */
63
	/*** Constructeur : */
63
	public function __construct($cmd = null, $parametres = null)
64
	public function __construct($cmd = null, $parametres = null)
64
	{
65
	{
65
		$this->dao_table_nom = 'gestion_absence';
66
		$this->dao_table_nom = 'gestion_absence';
66
		$this->dao_correspondance = array(
67
		$this->dao_correspondance = array(
67
			'ga_id_abscence'	=> 'id_abscence',
68
			'ga_id_utilisateur'	=> 'id_utilisateur',
68
			'ga_ce_absence_motif'	=> 'ce_absence_motif',
-
 
69
			'ga_ce_utilisateur'	=> 'ce_utilisateur',
69
			'ga_id_absence_motif'	=> 'id_absence_motif',
70
			'ga_date_debut'	=> 'date_debut',
70
			'ga_id_date_absence'	=> 'id_date_absence',
71
			'ga_date_fin'	=> 'date_fin',
-
 
72
			'ga_date_envoi_lettre'	=> 'date_envoi_lettre');
71
			'ga_duree'	=> 'duree');
73
		
72
 
74
		// Si l'on veut remplir l'objet à la création on lance la requete correspondante
73
		// Si l'on veut remplir l'objet à la création on lance la requete correspondante
75
		if (!is_null($cmd)) {
74
		if (!is_null($cmd)) {
76
			$this->consulter($cmd, $parametres, true);
75
			$this->consulter($cmd, $parametres, true);
77
		}
76
		}
78
	}
77
	}
79
	
78
 
80
	/*** Accesseurs : */
-
 
81
	// Id Abscence
-
 
82
	public function getIdAbscence()
-
 
83
	{
-
 
84
		return $this->id_abscence;
-
 
85
	}
-
 
86
	public function setIdAbscence( $ia )
-
 
87
	{
-
 
88
		$this->id_abscence = $ia;
-
 
89
	}
-
 
90
	
-
 
91
	// Ce Absence Motif
-
 
92
	public function getCeAbsenceMotif()
-
 
93
	{
-
 
94
		return $this->ce_absence_motif;
-
 
95
	}
-
 
96
	public function setCeAbsenceMotif( $cam )
-
 
97
	{
-
 
98
		$this->ce_absence_motif = $cam;
-
 
99
	}
-
 
100
	
79
	/*** Accesseurs : */
101
	// Ce Utilisateur
80
	// Id Utilisateur
102
	public function getCeUtilisateur()
81
	public function getIdUtilisateur()
103
	{
82
	{
104
		return $this->ce_utilisateur;
83
		return $this->id_utilisateur;
105
	}
84
	}
106
	public function setCeUtilisateur( $cu )
85
	public function setIdUtilisateur( $iu )
107
	{
86
	{
108
		$this->ce_utilisateur = $cu;
87
		$this->id_utilisateur = $iu;
109
	}
88
	}
110
	
89
 
111
	// Date Debut
90
	// Id Absence Motif
112
	public function getDateDebut()
91
	public function getIdAbsenceMotif()
113
	{
92
	{
114
		return $this->date_debut;
93
		return $this->id_absence_motif;
115
	}
94
	}
116
	public function setDateDebut( $dd )
95
	public function setIdAbsenceMotif( $iam )
117
	{
96
	{
118
		$this->date_debut = $dd;
97
		$this->id_absence_motif = $iam;
119
	}
98
	}
120
	
99
 
121
	// Date Fin
100
	// Id Date Absence
122
	public function getDateFin()
101
	public function getIdDateAbsence()
123
	{
102
	{
124
		return $this->date_fin;
103
		return $this->id_date_absence;
125
	}
104
	}
126
	public function setDateFin( $df )
105
	public function setIdDateAbsence( $ida )
127
	{
106
	{
128
		$this->date_fin = $df;
107
		$this->id_date_absence = $ida;
129
	}
108
	}
130
	
109
 
131
	// Date Envoi Lettre
110
	// Duree
132
	public function getDateEnvoiLettre()
111
	public function getDuree()
133
	{
112
	{
134
		return $this->date_envoi_lettre;
113
		return $this->duree;
135
	}
114
	}
136
	public function setDateEnvoiLettre( $del )
115
	public function setDuree( $d )
137
	{
116
	{
138
		$this->date_envoi_lettre = $del;
117
		$this->duree = $d;
139
	}
118
	}
140
	
119
 
Line 141... Line 120...
141
	/*** Méthodes : */
120
	/*** Méthodes : */
142
 
121
 
143
	/**
122
	/**
Line 148... Line 127...
148
	{
127
	{
149
		switch ($cmd) {
128
		switch ($cmd) {
150
			case Absence::GA_ID:
129
			case Absence::GA_ID:
151
				$requete = 	'SELECT * '.
130
				$requete = 	'SELECT * '.
152
							'FROM gestion_absence '.
131
							'FROM gestion_absence '.
-
 
132
							'WHERE ga_id_utilisateur = '.$parametres[0].' AND ga_id_absence_motif = '.$parametres[1].' AND ga_id_date_absence = '.$parametres[2].' ';
-
 
133
				break;
-
 
134
			case Absence::GA_ID_UTILISATEUR_DATE_DEB_FIN:
-
 
135
				$requete = 	'SELECT * '.
153
							'WHERE ga_id_abscence = '.$parametres[0].' ';
136
							'FROM gestion_absence '.
-
 
137
							'WHERE ga_id_utilisateur = '.$parametres[0].' AND ga_id_date_absence >= "'.$parametres[1].'" '.' AND ga_id_date_absence <= "'.$parametres[2].'" ';
-
 
138
				break;
-
 
139
			case Absence::GA_ID_MAX_UTILISATEUR:
-
 
140
				$requete =	'SELECT MAX(ga_id_utilisateur) '.
-
 
141
							'FROM gestion_absence ';
154
				break;
142
				break;
-
 
143
			case Absence::GA_ID_MAX_ABSENCE_MOTIF:
-
 
144
				$requete =	'SELECT MAX(ga_id_absence_motif) '.
-
 
145
							'FROM gestion_absence ';
-
 
146
				break;
155
			case Absence::GA_ID_MAX:
147
			case Absence::GA_ID_MAX_DATE_ABSENCE:
156
				$requete =	'SELECT MAX(ga_id_abscence) '.
148
				$requete =	'SELECT MAX(ga_id_date_absence) '.
157
							'FROM gestion_absence ';
149
							'FROM gestion_absence ';
158
				break;
150
				break;
159
			default :
151
			default :
160
				$message = 'Commande '.$cmd.'inconnue!';
152
				$message = 'Commande '.$cmd.'inconnue!';
161
				$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message);
153
				$e = GestionnaireErreur::formaterMessageErreur(__FILE__, __LINE__, $message);
162
    			trigger_error($e, E_USER_ERROR);
154
    			trigger_error($e, E_USER_ERROR);
163
		}
155
		}
164
		
156
 
165
		$resultat = $GLOBALS['db']->query($requete);
157
		$resultat = $GLOBALS['db']->query($requete);
166
		(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ;
158
		(DB::isError($resultat)) ? die (GestionnaireErreur::retournerErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '' ;
167
		$tab_resultat = array();
159
		$tab_resultat = array();
168
		while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
160
		while ($donnees =& $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
169
			$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier);
161
			$tab_resultat[] = $this->basculerEnregistrementObjet($donnees, $instancier);
170
		}
162
		}
171
				
163
 
172
		$resultat_nbre = count($tab_resultat); 
164
		$resultat_nbre = count($tab_resultat);
173
		if ($resultat_nbre > 1) {
165
		if ($resultat_nbre > 1) {
174
			return $tab_resultat;
166
			return $tab_resultat;
175
		} else if ($resultat_nbre == 1) {
167
		} else if ($resultat_nbre == 1) {
176
			return $tab_resultat[0];
168
			return $tab_resultat[0];
177
		} else if ($resultat_nbre == 0) {
169
		} else if ($resultat_nbre == 0) {
178
			return false;
170
			return false;
179
		}
171
		}
180
	}
172
	}
181
      
173
 
182
	/** Afficher l'objet Absence */
174
	/** Afficher l'objet Absence */
183
	function afficherAbsence()
175
	function afficherAbsence()
184
	{
176
	{
185
		echo '<pre>'.print_r($this, true).'</pre>';
177
		echo '<pre>'.print_r($this, true).'</pre>';
186
	}
178
	}