235 lines
12 KiB
PHP
235 lines
12 KiB
PHP
<?php
|
|
require_once 'Framework/Modele.php';
|
|
class Tachesante extends Modele {
|
|
|
|
public function ajouterTache($codeTypTache, $codeDestinataire, $objet, $dateEcheance, $notes, $emailtache)
|
|
{
|
|
$numeroAdherent = $_SESSION['numeroAdherent_C'];
|
|
$codeUtilisateur = $_SESSION['login'];
|
|
$codeInitiateur =$_SESSION['codeInitiateurTache'];
|
|
$dateSysteme = date('Y-m-d');
|
|
$heureSysteme = date('H:i:s', time());
|
|
|
|
$sql = 'INSERT INTO tachesante (codeTypTache, codeInitiateur, codeDestinataire, objet, dateEcheance, notes,
|
|
codeUtilisateur, dateSysteme, heureSysteme, emailtache, numeroAdherent)
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
|
|
|
|
$this->executerRequete($sql, array($codeTypTache, $codeInitiateur,
|
|
$codeDestinataire, $objet, $dateEcheance, $notes, $codeUtilisateur, $dateSysteme, $heureSysteme, $emailtache, $numeroAdherent));
|
|
|
|
return $this->dernierId();
|
|
}
|
|
|
|
public function ajouterTacheAdherent($codeTypTache, $objet, $dateEcheance, $notes, $emailtache)
|
|
{
|
|
$numeroAdherent = $_SESSION['numeroAdherent_C'];
|
|
$codeDestinataire = "AS";
|
|
$codeUtilisateur = $_SESSION['login'];
|
|
$codeInitiateur =$_SESSION['codeInitiateurTache'];
|
|
$dateSysteme = date('Y-m-d');
|
|
$heureSysteme = date('H:i:s', time());
|
|
|
|
$sql = 'INSERT INTO tachesante (codeTypTache, codeInitiateur, codeDestinataire, objet, dateEcheance, notes,
|
|
codeUtilisateur, dateSysteme, heureSysteme, numeroAdherent, emailtache)
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
|
|
|
|
$this->executerRequete($sql, array($codeTypTache, $codeInitiateur,
|
|
$codeDestinataire, $objet, $dateEcheance, $notes, $codeUtilisateur, $dateSysteme, $heureSysteme, $numeroAdherent, $emailtache));
|
|
|
|
return $this->dernierId();
|
|
}
|
|
|
|
public function ajouterTacheAssure($codeTypTache, $codeDestinataire, $objet, $dateEcheance, $notes, $emailtache)
|
|
{
|
|
$numeroAdherent = $_SESSION['numeroAdherent_C'];
|
|
$codeUtilisateur = $_SESSION['login_tache'];
|
|
$codeInitiateur =$_SESSION['codeInitiateurTache'];
|
|
$dateSysteme = date('Y-m-d');
|
|
$heureSysteme = date('H:i:s', time());
|
|
|
|
$sql = 'INSERT INTO tachesante (codeTypTache, codeInitiateur, codeDestinataire, objet, dateEcheance, notes,
|
|
codeUtilisateur, dateSysteme, heureSysteme, numeroAdherent, emailtache)
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
|
|
|
|
$this->executerRequete($sql, array($codeTypTache, $codeInitiateur,
|
|
$codeDestinataire, $objet, $dateEcheance, $notes, $codeUtilisateur, $dateSysteme, $heureSysteme, $numeroAdherent, $emailtache));
|
|
|
|
return $this->dernierId();
|
|
}
|
|
|
|
public function afficherTaches($codeInitiateur, $codeDestinataire, $codeTypTache, $codeEtatTache) {
|
|
$codeDestinataire_C = $_SESSION['codeInitiateurTache'];
|
|
$codeInitiateur = contruireParamLike($codeInitiateur);
|
|
$codeDestinataire = contruireParamLike($codeDestinataire);
|
|
$codeTypTache = contruireParamLike($codeTypTache);
|
|
$codeEtatTache = contruireParamLike($codeEtatTache);
|
|
|
|
$sql = 'SELECT A.*, D.libelle AS typtachesante, E.libelle AS etattachesante,
|
|
B.acteur AS initiateur, C.acteur AS destinataire,
|
|
CONCAT(U1.nom, " ", U1.prenoms) AS saisie_par,
|
|
CONCAT(U2.nom, " ", U2.prenoms) AS pointe_par,
|
|
IFNULL(CONCAT(AD.nom, " ", AD.prenoms),"") AS assure
|
|
FROM tachesante A
|
|
LEFT JOIN vw_acteurtache B ON (B.codeSociete=A.codeSociete) AND (B.codeActeurTache=A.codeInitiateur)
|
|
LEFT JOIN vw_acteurtache C ON (C.codeSociete=A.codeSociete) AND (C.codeActeurTache=A.codeDestinataire)
|
|
LEFT JOIN typtachesante D ON (D.codeTypTache=A.codeTypTache)
|
|
LEFT JOIN etattachesante E ON (E.codeEtatTache=A.codeEtatTache)
|
|
LEFT JOIN utilisateur U1 ON (U1.codeSociete=A.codeSociete) AND (U1.codeUtilisateur=A.codeUtilisateur)
|
|
LEFT JOIN utilisateur U2 ON (U2.codeSociete=A.codeSociete) AND (U2.codeUtilisateur=A.codeUtilisateurPointage)
|
|
LEFT JOIN adherent AD ON (AD.codeSociete=A.codeSociete) AND (AD.numeroAdherent=A.numeroAdherent)
|
|
WHERE (A.codeSociete=?) AND (A.codeInitiateur LIKE ?) AND (A.codeDestinataire LIKE ?)
|
|
AND (A.codeTypTache LIKE ?) AND (A.codeEtatTache LIKE ?)
|
|
AND (A.codeInitiateur=? OR A.codeDestinataire=?)
|
|
ORDER BY A.id DESC';
|
|
|
|
$taches = $this->executerRequete($sql, array($_SESSION['codeSociete'], $codeInitiateur, $codeDestinataire, $codeTypTache,
|
|
$codeEtatTache, $codeDestinataire_C, $codeDestinataire_C));
|
|
|
|
return $taches;
|
|
}
|
|
|
|
public function pointerTache($idTache) {
|
|
$codeUtilisateurPointage = $_SESSION['login'];
|
|
$datePointage = date('Y-m-d');
|
|
$heurePointage = date('H:i:s', time());
|
|
|
|
$sql = 'UPDATE tachesante SET pointe="1", codeEtatTache="1",
|
|
codeUtilisateurPointage=?, datePointage=?, heurePointage=? WHERE (id=?)';
|
|
|
|
$this->executerRequete($sql, array($codeUtilisateurPointage, $datePointage, $heurePointage, $idTache));
|
|
}
|
|
|
|
public function getTache($idTache) {
|
|
$sql = 'SELECT A.*, D.libelle AS typtachesante, E.libelle AS etattachesante,
|
|
B.acteur AS initiateur, C.acteur AS destinataire,
|
|
CONCAT(U1.nom, " ", U1.prenoms) AS saisie_par,
|
|
CONCAT(U2.nom, " ", U2.prenoms) AS pointe_par,
|
|
IFNULL(CONCAT(AD.nom, " ", AD.prenoms),"") AS assure
|
|
FROM tachesante A
|
|
LEFT JOIN vw_acteurtache B ON (B.codeSociete=A.codeSociete) AND (B.codeActeurTache=A.codeInitiateur)
|
|
LEFT JOIN vw_acteurtache C ON (C.codeSociete=A.codeSociete) AND (C.codeActeurTache=A.codeDestinataire)
|
|
LEFT JOIN typtachesante D ON (D.codeTypTache=A.codeTypTache)
|
|
LEFT JOIN etattachesante E ON (E.codeEtatTache=A.codeEtatTache)
|
|
LEFT JOIN utilisateur U1 ON (U1.codeSociete=A.codeSociete) AND (U1.codeUtilisateur=A.codeUtilisateur)
|
|
LEFT JOIN utilisateur U2 ON (U2.codeSociete=A.codeSociete) AND (U2.codeUtilisateur=A.codeUtilisateurPointage)
|
|
LEFT JOIN adherent AD ON (AD.codeSociete=A.codeSociete) AND (AD.numeroAdherent=A.numeroAdherent)
|
|
WHERE (A.id=?)';
|
|
|
|
$tache = $this->executerRequete($sql, array($idTache));
|
|
|
|
return $tache->fetch(PDO::FETCH_ASSOC);
|
|
}
|
|
|
|
|
|
public function afficherTachesadherent($codeDestinataire, $codeTypTache, $codeEtatTache) {
|
|
$numeroAdherent = $_SESSION['numeroAdherent_C'];
|
|
$codeDestinataire_C = $_SESSION['codeInitiateurTache'];
|
|
$codeDestinataire = contruireParamLike($codeDestinataire);
|
|
$codeTypTache = contruireParamLike($codeTypTache);
|
|
$codeEtatTache = contruireParamLike($codeEtatTache);
|
|
|
|
$sql = 'SELECT A.*, D.libelle AS typtachesante, E.libelle AS etattachesante,
|
|
B.acteur AS initiateur, C.acteur AS destinataire,
|
|
CONCAT(U1.nom, " ", U1.prenoms) AS saisie_par,
|
|
CONCAT(U2.nom, " ", U2.prenoms) AS pointe_par,
|
|
IFNULL(CONCAT(AD.nom, " ", AD.prenoms),"") AS assure
|
|
FROM tachesante A
|
|
LEFT JOIN vw_acteurtache B ON (B.codeSociete=A.codeSociete) AND (B.codeActeurTache=A.codeInitiateur)
|
|
LEFT JOIN vw_acteurtache C ON (C.codeSociete=A.codeSociete) AND (C.codeActeurTache=A.codeDestinataire)
|
|
LEFT JOIN typtachesante D ON (D.codeTypTache=A.codeTypTache)
|
|
LEFT JOIN etattachesante E ON (E.codeEtatTache=A.codeEtatTache)
|
|
LEFT JOIN utilisateur U1 ON (U1.codeSociete=A.codeSociete) AND (U1.codeUtilisateur=A.codeUtilisateur)
|
|
LEFT JOIN utilisateur U2 ON (U2.codeSociete=A.codeSociete) AND (U2.codeUtilisateur=A.codeUtilisateurPointage)
|
|
WHERE (A.codeSociete=?) AND (A.numeroAdherent=?) AND (A.codeDestinataire LIKE ?)
|
|
AND (A.codeTypTache LIKE ?) AND (A.codeEtatTache LIKE ?)
|
|
AND (A.codeInitiateur=? OR A.codeDestinataire=?)
|
|
ORDER BY A.id DESC';
|
|
|
|
$taches = $this->executerRequete($sql, array($_SESSION['codeSociete'], $numeroAdherent, $codeDestinataire, $codeTypTache,
|
|
$codeEtatTache, $codeDestinataire_C, $codeDestinataire_C));
|
|
|
|
return $taches;
|
|
}
|
|
|
|
public function afficherTachesassure($codeInitiateur, $codeDestinataire, $codeTypTache, $codeEtatTache) {
|
|
$numeroAdherent = $_SESSION['numeroAdherent_C'];
|
|
$codeDestinataire_C = $_SESSION['codeInitiateurTache'];
|
|
$codeInitiateur = contruireParamLike($codeInitiateur);
|
|
$codeDestinataire = contruireParamLike($codeDestinataire);
|
|
$codeTypTache = contruireParamLike($codeTypTache);
|
|
$codeEtatTache = contruireParamLike($codeEtatTache);
|
|
|
|
$sql = 'SELECT A.*, D.libelle AS typtachesante, E.libelle AS etattachesante,
|
|
B.acteur AS initiateur, C.acteur AS destinataire,
|
|
CONCAT(U1.nom, " ", U1.prenoms) AS saisie_par,
|
|
CONCAT(U2.nom, " ", U2.prenoms) AS pointe_par,
|
|
IFNULL(CONCAT(AD.nom, " ", AD.prenoms),"") AS assure
|
|
FROM tachesante A
|
|
LEFT JOIN vw_acteurtache B ON (B.codeSociete=A.codeSociete) AND (B.codeActeurTache=A.codeInitiateur)
|
|
LEFT JOIN vw_acteurtache C ON (C.codeSociete=A.codeSociete) AND (C.codeActeurTache=A.codeDestinataire)
|
|
LEFT JOIN typtachesante D ON (D.codeTypTache=A.codeTypTache)
|
|
LEFT JOIN etattachesante E ON (E.codeEtatTache=A.codeEtatTache)
|
|
LEFT JOIN utilisateur U1 ON (U1.codeSociete=A.codeSociete) AND (U1.codeUtilisateur=A.codeUtilisateur)
|
|
LEFT JOIN utilisateur U2 ON (U2.codeSociete=A.codeSociete) AND (U2.codeUtilisateur=A.codeUtilisateurPointage)
|
|
WHERE (A.codeSociete=?) AND (A.numeroAdherent=?) AND (A.codeInitiateur LIKE ?)
|
|
AND (A.codeDestinataire LIKE ?) AND (A.codeTypTache LIKE ?) AND (A.codeEtatTache LIKE ?)
|
|
AND (A.codeInitiateur=? OR A.codeDestinataire=?)
|
|
ORDER BY A.id DESC';
|
|
|
|
$taches = $this->executerRequete($sql, array($_SESSION['codeSociete'], $numeroAdherent, $codeInitiateur, $codeDestinataire, $codeTypTache,
|
|
$codeEtatTache, $codeDestinataire_C, $codeDestinataire_C));
|
|
|
|
return $taches;
|
|
}
|
|
|
|
public function Rqtache($codeInitiateur, $codeDestinataire, $codeTypTache, $codeEtatTache,
|
|
$numeroAdherent1, $numeroAdherent2, $date1, $date2, $objet)
|
|
{
|
|
$codeDestinataire_C = $_SESSION['codeInitiateurTache'];
|
|
|
|
$codeInitiateur = contruireParamLike($codeInitiateur);
|
|
$codeDestinataire = contruireParamLike($codeDestinataire);
|
|
$codeTypTache = contruireParamLike($codeTypTache);
|
|
$codeEtatTache = contruireParamLike($codeEtatTache);
|
|
$objet = contruireParamLike($objet);
|
|
|
|
If($numeroAdherent1=="0")
|
|
{
|
|
$numeroAdherent1="";
|
|
}
|
|
|
|
$sql = 'SELECT LOWER(C.acteur) AS destinataire, DATE_FORMAT(A.dateEcheance, "%d/%m/%Y") AS dateEcheance,
|
|
LOWER(A.objet) AS objet, LOWER(B.acteur) AS initiateur, LOWER(D.libelle) AS typtachesante,
|
|
IFNULL(CONCAT(A.numeroAdherent, " : ",LOWER(AD.nomAdherent), " ", LOWER(AD.prenomsAdherent)),"") AS assure,
|
|
LOWER(TRIM(E.libelle)) AS etattachesante
|
|
FROM tachesante A
|
|
LEFT JOIN vw_acteurtache B ON (B.codeActeurTache=A.codeInitiateur)
|
|
LEFT JOIN vw_acteurtache C ON (C.codeActeurTache=A.codeDestinataire)
|
|
LEFT JOIN typtachesante D ON (D.codeTypTache=A.codeTypTache)
|
|
LEFT JOIN etattachesante E ON (E.codeEtatTache=A.codeEtatTache)
|
|
LEFT JOIN adherent AD ON (AD.numeroAdherent=A.numeroAdherent)
|
|
WHERE (A.codeInitiateur LIKE ?) AND (A.codeDestinataire LIKE ?)
|
|
AND (A.codeTypTache LIKE ?) AND (A.codeEtatTache LIKE ?)
|
|
AND (A.numeroAdherent BETWEEN ? AND ?)
|
|
AND (A.dateEcheance BETWEEN ? AND ?)
|
|
AND (A.codeInitiateur=? OR A.codeDestinataire=?)
|
|
AND (A.objet LIKE ?) ';
|
|
// ORDER BY C.acteur, A.dateEcheance DESC, A.objet';
|
|
|
|
$typeuseur = $_SESSION['codeTypeUtilisateur'];
|
|
if($typeuseur=="AS")
|
|
{
|
|
$sql .= ' AND (A.numeroAdherent=?) ORDER BY C.acteur, A.dateEcheance DESC, A.objet';
|
|
$liste = $this->executerRequete($sql, array($codeInitiateur, $codeDestinataire, $codeTypTache,
|
|
$codeEtatTache, $numeroAdherent1, $numeroAdherent2, $date1, $date2, $codeDestinataire_C,
|
|
$codeDestinataire_C, $objet, $_SESSION["numeroAdherent_C"]));
|
|
} else
|
|
{
|
|
$sql .= ' ORDER BY C.acteur, A.dateEcheance DESC, A.objet';
|
|
$liste = $this->executerRequete($sql, array($codeInitiateur, $codeDestinataire, $codeTypTache,
|
|
$codeEtatTache, $numeroAdherent1, $numeroAdherent2, $date1, $date2, $codeDestinataire_C,
|
|
$codeDestinataire_C, $objet));
|
|
}
|
|
return $liste->fetchAll(PDO::FETCH_ASSOC);
|
|
}
|
|
} |