Subversion Repositories Applications.referentiel

Compare Revisions

Ignore whitespace Rev 44 → Rev 45

/trunk/services/modules/Traitement.php
76,20 → 76,19
* Retourne les infos sur la dernière demande de traitement pour un projet donné.
*/
public function getElementDerniereDemande($params_url) {
$p = $this->traiterParametresUrl(array('projet'), $params_url);
$p = $this->traiterParametresUrl(array('projet', 'script'), $params_url);
extract($p);
$donnees = false;
if (!is_null($projet)) {
if (isset($projet) && isset($script)) {
$requete = ($this->distinct ? 'SELECT DISTINCT' : 'SELECT').' * '.
'FROM ref_traitement '.
"WHERE referentiel_code = $projet ".
" AND script = $script ".
' AND date_fin IS NULL '.
'ORDER BY '.((!is_null($this->orderby)) ? $this->orderby : 'meta_date_creation DESC').' '.
'LIMIT 0,1 ';
$this->debug[] = $requete;
// Récupération des résultats
try {
$donnees = $this->bdd->query($requete)->fetch(PDO::FETCH_ASSOC);
102,7 → 101,8
$this->messages[] = sprintf($this->getTxt('sql_erreur'), $e->getFile(), $e->getLine(), $e->getMessage());
}
} else {
$this->messages[] = "Veuillez préciser le nom de code du projet comme premier paramêtre (ex. : bdnff).";
$this->messages[] = "Veuillez préciser le nom de code du projet comme premier paramêtre (ex. : bdnff) ".
"et le code du script à lancer comme second paramêtre (ex. : tests ou versionnage).";
}
return $donnees;
184,15 → 184,16
* Retourne les id des demandes de traitements obsolètes.
*/
public function getElementObsolete($params_url) {
$p = $this->traiterParametresUrl(array('projet'), $params_url);
$p = $this->traiterParametresUrl(array('projet', 'script'), $params_url);
extract($p);
$sortie = false;
if (!is_null($projet)) {
$sortie = null;
if (isset($projet) && isset($script)) {
try {
$requete = 'SELECT MAX(date_debut) '.
'FROM ref_traitement '.
"WHERE referentiel_code = $projet ".
" AND script = $script ".
' AND date_debut IS NOT NULL '.
'GROUP BY referentiel_code ';
204,6 → 205,7
$requete = 'SELECT id_traitement '.
'FROM ref_traitement '.
"WHERE referentiel_code = $projet ".
" AND script = $script ".
' AND date_debut IS NULL '.
' AND date_fin IS NULL '.
" AND meta_date_creation < $date_max ";
216,7 → 218,7
$this->messages[] = sprintf($this->getTxt('sql_erreur'), $e->getFile(), $e->getLine(), $e->getMessage());
}
// Pos-traitement
$sortie = array();
 
if ($donnees != false) {
foreach ($donnees as $donnee) {
$sortie[] = $donnee['id_traitement'];
223,7 → 225,8
}
}
} else {
$this->messages[] = "Veuillez préciser le nom de code du projet comme premier paramêtre (ex. : bdnff).";
$this->messages[] = "Veuillez préciser le nom de code du projet comme premier paramêtre (ex. : bdnff) ".
"et le code du script à lancer comme second paramêtre (ex. : tests ou versionnage).";
}
return $sortie;