diff --git a/Class/class.newFiche.php b/Class/class.newFiche.php index 4f407f7..6693c77 100644 --- a/Class/class.newFiche.php +++ b/Class/class.newFiche.php @@ -12,30 +12,46 @@ class Class_newFiche public function listFraisForfaitaires(): array { - $req = 'SELECT "fLibelle", round("fMontant", 2) AS "fMontant", "fId" FROM forfait'; + $req = 'SELECT "fLibelle", NULL AS "lfQuantite", round("fMontant", 2) AS "fMontant", 0 AS "fTotal", "fId" FROM forfait'; $result = $this->pdo->prepare($req); $result->execute(); return $result->fetchAll(); } - public function listFraisHF():array + public function listFraisForfaitForU(string $idUser, int $month): array { - // + $req = 'SELECT "fLibelle", "lfQuantite", ROUND("fMontant", 2) AS "fMontant", ROUND("lfQuantite" * "fMontant", 2) AS "fTotal", "fId" + FROM remboursement + INNER JOIN "ligne_forfait" ON "rVisiteur" = "lfVisiteur" AND "rMois" = "lfMois" + INNER JOIN "forfait" ON "fId" = "lfForfait" + WHERE "rVisiteur" = :idUser AND "rMois" = :monthF;'; + + $result = $this->pdo->prepare($req); + $result->bindParam('idUser', $idUser); + $result->bindParam('monthF', $month); + $result->execute(); + + return $result->fetchAll(); } - public function endInter(string $id) + public function listFraisHF(string $idVisiteur, int $month): array { - $req = "UPDATE intervention - SET iHeureFin = NOW() - WHERE iCis = :cis AND iId = :idInter AND iHeureFin IS NULL"; + $req = 'SELECT to_char("lhDate", \'YYYY-mm-dd\') AS "lhDate", + "lhLibelle", ROUND("lhMontant",2) as "lhMontant", + "lhJustificatif", "lhRefus" + FROM remboursement + inner join "ligne_hors_forfait" on "rVisiteur" = "lhVisiteur" + AND "rMois" = "lhMois" + + WHERE "rVisiteur" = :idVisiteur AND "rMois" = :mois + ORDER BY "lhDate";'; - $cis = explode('-', $id)[0]; - $idInter = explode('-', $id)[1]; - - $result = PdoBD::$monPdo->prepare($req); - $result->bindParam(':cis', $cis); - $result->bindParam(':idInter', $idInter); + $result = $this->pdo->prepare($req); + $result->bindParam(':idVisiteur', $idVisiteur); + $result->bindParam(':mois', $month); $result->execute(); + + return $result->fetchAll(); } } \ No newline at end of file diff --git a/controleurs/c_nouvelleFiche.php b/controleurs/c_nouvelleFiche.php index d374d15..f28eb2b 100644 --- a/controleurs/c_nouvelleFiche.php +++ b/controleurs/c_nouvelleFiche.php @@ -2,6 +2,21 @@ require_once(__DIR__ . '/../Class/class.newFiche.php'); $newFiche = new Class_newFiche($pdo); -$typesFraisForfaitaires = $newFiche->listFraisForfaitaires(); + +$_SESSION['userId'] = 'b34'; + +/** + * Liste des frais forfaitaires du mois et de l'user :: sinon afficher les libelle + */ +$listeFraisForfaitaire = $newFiche->listFraisForfaitForU($_SESSION['userId'], '202011'); +if (count($listeFraisForfaitaire) == 0) { + $listeFraisForfaitaire = $newFiche->listFraisForfaitaires(); +} + +/** + * Listes des frais HF + */ +$listeFraisHf = $newFiche->listFraisHF($_SESSION['userId'], '202011'); + include(__DIR__ . '/../vues/v_newFiche.php'); diff --git a/include/appelIni.php b/include/appelIni.php index 03b3c5c..633f97b 100644 --- a/include/appelIni.php +++ b/include/appelIni.php @@ -1,10 +1,12 @@ -stocker le nom d'utilisateur et le mot de passe dans la classe n'est pas une très bonne idée pour le code mis en production ... Une bonne solution consiste a stocker les paramètres de connexion à la base de données dans un fichier .ini et à en restreindre l'accès. Par exemple de cette façon: +stocker le nom d'utilisateur et le mot de passe dans la classe n'est pas une très bonne idée pour le code mis en +production ... Une bonne solution consiste a stocker les paramètres de connexion à la base de données dans un fichier +.ini et à en restreindre l'accès. Par exemple de cette façon: private static $serveur='mysql:host=localhost'; - private static $bdd='dbname=gsb2021'; - private static $user='root' ; - private static $mdp='root' ; - +private static $bdd='dbname=gsb2021'; +private static $user='root' ; +private static $mdp='root' ; + gsb.ini: [database] driver = mysql @@ -12,22 +14,23 @@ host = localhost port = 3306 schema = gsb2021 username = root -password = root +password = root + - Database connection: