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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
| package gsb.classes;
import gsb.beans.Medicament;
import gsb.beans.Motif;
import gsb.beans.Praticien;
import gsb.beans.RapportVisite;
import gsb.beans.Visiteur;
import java.sql.* ;
import java.util.ArrayList;
/**
*
* @author matjo
*/
public class CompteRenduDAO {
Connection connection = null;
static PreparedStatement requete = null;
static ResultSet rs = null;
// Fonction qui récupère tous les rapports de visite en fonction du visiteur connecté
public static ArrayList<RapportVisite> listerCrDB(Connection connexion, String matriculeVisiteur) {
ArrayList<RapportVisite> lesRapportVisites = new ArrayList();
try {
// Préparation de la requête
requete = connexion.prepareStatement("SELECT * FROM RAPPORT_VISITE "
+ "WHERE VIS_MATRICULE LIKE ?") ;
requete.setString(1, matriculeVisiteur) ;
// Exécution de la requête
rs = requete.executeQuery() ;
// Récupération des données
while ( rs.next() ) {
RapportVisite unRapportVisite = new RapportVisite() ;
unRapportVisite.setNum(rs.getInt("RAP_NUM")) ;
// Récupération de l'objet Visiteur
Visiteur leVisiteur = VisiteurDAO.getVisiteurById(connexion, rs.getString("VIS_MATRICULE")) ;
unRapportVisite.setUnVisiteur(leVisiteur) ;
// Récuparation de l'objet Praticien
Praticien lePraticien = PraticienDAO.getPraticienByCode(connexion, rs.getString("PRA_CODE")) ;
unRapportVisite.setUnPraticien(lePraticien) ;
// Récupération de l'objet Motif
Motif leMotif = MotifDAO.getMotifByNum(connexion, rs.getString("RAP_MOTIF")) ;
unRapportVisite.setUnMotif(leMotif) ;
// Récupération du médicament n°1
Medicament produitUn = MedicamentDAO.getMedicamentByDepotLegal(connexion, rs.getString("RAP_PROD1")) ;
unRapportVisite.setProd1(produitUn) ;
// Récupération du médicament n°2
Medicament produitDeux = MedicamentDAO.getMedicamentByDepotLegal(connexion, rs.getString("RAP_PROD2")) ;
unRapportVisite.setProd2(produitDeux) ;
// Récupération des données
unRapportVisite.setDate(rs.getString("RAP_DATE")) ;
unRapportVisite.setBilan(rs.getString("RAP_BILAN")) ;
unRapportVisite.setCoefConfiance(rs.getString("RAP_COEFCONFIANCE")) ;
// Ajout de l'objet unRapportVisite dans la collection lesRapportVisites
lesRapportVisites.add(unRapportVisite) ;
}
} catch (SQLException e) {
e.printStackTrace() ;
}
return lesRapportVisites ;
}
// Fonction d'ajout d'un rapport de visite
public static RapportVisite enregistrerRapportVisiteDB(Connection connection, RapportVisite unCR) {
try {
// Préparation de la requête SQL
requete = connection.prepareStatement("INSERT INTO RAPPORT_VISITE(VIS_MATRICULE, PRA_CODE, RAP_DATE, RAP_BILAN, RAP_MOTIF, RAP_COEFCONFIANCE, RAP_PROD1, RAP_PROD2) "
+ "VALUES(?, ?, ?, ?, ?, ?, ?, ?)") ;
// Récupération des valeurs
requete.setString( 1, unCR.getUnVisiteur().getMatricule() ) ;
requete.setString( 2, unCR.getUnPraticien().getCode() ) ;
requete.setString( 3, unCR.getDate() ) ;
requete.setString( 4, unCR.getBilan() ) ;
requete.setString( 5, unCR.getUnMotif().getNum() ) ;
requete.setString( 6, unCR.getCoefConfiance() ) ;
requete.setString( 7, unCR.getProd1().getDepotLegal() ) ;
requete.setString( 8, unCR.getProd2().getDepotLegal() ) ;
// Exécution de la requête
requete.executeUpdate() ;
} catch (SQLException e) {
e.printStackTrace();
}
return unCR ;
}
} |
Partager