public static bool existQuart(QuartEmploye quart)
        {
            QuartEmploye qe = null;

            if (ConnexionBD.Instance().EstConnecte())
            {
                // Si oui, on execute la requête que l'on veut effectuer
                // SqlDR (MySqlDataReader) emmagasine une liste des citoyens de la BD
                ConnexionBD.Instance().ExecuterRequete(
                    "SELECT date dt, dep.nom nmDep, shift.periode typeQ " +
                    "FROM quarts qe " +
                    "INNER JOIN periodesjournee shift on shift.idPeriodeJournee = qe.idPeriodeJournee " +
                    "INNER JOIN departements dep on dep.idDepartement = qe.idDepartement " +
                    "WHERE qe.date = '" + quart.Date.ToShortDateString() + "' && shift.periode = '" + quart.TypeDeQuart + "' && dep.nom = '" + quart.DepartementAssocie.Nom + "';"

                    , SqlDR =>
                {
                    qe = new QuartEmploye
                    {
                        Date = SqlDR.GetDateTime("dt"),
                        DepartementAssocie = new Departement
                        {
                            Nom = SqlDR.GetString("nmDep")
                        },
                        TypeDeQuart = (TypeQuart)System.Enum.Parse(typeof(TypeQuart), SqlDR.GetString("typeQ"))
                    };
                });
            }

            return(qe != null);
        }
Пример #2
0
        public static List <Hospitalisation> GetHospitalisations(Citoyen citoyen)
        {
            // On crée une liste d'hospitalisation venant de la BD
            List <Hospitalisation> lstHospitalisation = new List <Hospitalisation>();

            // On vérifie si la BD est connecté
            if (ConnexionBD.Instance().EstConnecte())
            {
                // Si oui, on execute la requête que l'on veut effectuer
                // SqlDR (MySqlDataReader) emmagasine une liste des citoyens de la BD
                ConnexionBD.Instance().ExecuterRequete(
                    "SELECT h.dateDebut dDebut, h.dateFin dFin, t.Nom NomTrait " +
                    "FROM hospitalisations h " +
                    "INNER JOIN citoyens c ON c.idCitoyen = h.idCitoyen " +
                    "INNER JOIN hospitalisationstraitements ht ON ht.idHospitalisation = h.idHospitalisation " +
                    "INNER JOIN traitements t ON t.idTraitement = ht.idTraitement " +
                    "INNER JOIN departements d ON d.idDepartement = t.idDepartement " +
                    "WHERE c.numAssuranceMaladie ='" + citoyen.AssMaladie + "' "
                    , SqlDR => {
                    lstHospitalisation.Add(new Hospitalisation
                    {
                        DateDebut = (DateTime)SqlDR.GetMySqlDateTime("dDebut"),
                        //DateFin = SqlDR.IsDBNull(SqlDR.GetOrdinal("dFin")) ? new DateTime() : (DateTime)SqlDR.GetMySqlDateTime("dFin")
                        DateFin = (DateTime)SqlDR.GetMySqlDateTime("dFin")
                    });
                }
                    );
            }


            // Il faut aller chercher dans une autre requête les traitements de l'hospitalisation
            if (ConnexionBD.Instance().EstConnecte() && lstHospitalisation.Count > 0)
            {
                // Si oui, on execute la requête que l'on veut effectuer
                // SqlDR (MySqlDataReader) emmagasine une liste de la BD


                foreach (Hospitalisation hospitalisation in lstHospitalisation)
                {
                    hospitalisation.LstTraitements = new List <Traitement>();


                    ConnexionBD.Instance().ExecuterRequete(
                        "SELECT d.Nom depNom, t.Nom TraitNom " +
                        "FROM traitements t " +
                        "INNER JOIN departements d ON d.idDepartement = t.idDepartement " +
                        "INNER JOIN hospitalisationstraitements ht ON ht.idTraitement = t.idTraitement " +
                        "INNER JOIN hospitalisations h ON h.idHospitalisation = ht.idHospitalisation " +
                        "WHERE h.dateDebut = '" + hospitalisation.DateDebut + "' "
                        , SqlDR => { hospitalisation.LstTraitements.Add(new Traitement {
                            Nom = SqlDR.GetString("TraitNom"),
                            DepartementAssocie = new Departement {
                                Nom = SqlDR.GetString("depNom")
                            }
                        }); }
                        );
                }
            }

            return(lstHospitalisation);
        }
        public static List <QuartEmploye> GetHoraire(Employe employe)
        {
            List <QuartEmploye> horaire = new List <QuartEmploye>();

            // On vérifie si la BD est connecté
            if (ConnexionBD.Instance().EstConnecte())
            {
                // Si oui, on execute la requête que l'on veut effectuer
                // SqlDR (MySqlDataReader) emmagasine une liste des citoyens de la BD
                ConnexionBD.Instance().ExecuterRequete(
                    "SELECT date dt, cit.nom nm, cit.prenom pm, dep.nom nmDep, shift.periode typeQ " +
                    "FROM quartsemployes qe " +
                    "INNER JOIN quarts q on qe.idQuart = q.idQuart " +
                    "INNER JOIN employes em  on em.idEmploye = qe.idEmploye " +
                    "INNER JOIN citoyens cit on cit.idCitoyen = em.idCitoyen " +
                    "INNER JOIN periodesjournee shift on shift.idPeriodeJournee = q.idPeriodeJournee " +
                    "INNER JOIN departements dep on dep.idDepartement = q.idDepartement " +
                    "WHERE em.idEmploye = " + employe.idEmploye + ";"

                    , SqlDR => {
                    horaire.Add(new QuartEmploye
                    {
                        TypeDeQuart        = (TypeQuart)System.Enum.Parse(typeof(TypeQuart), SqlDR.GetString("typeQ")),
                        Date               = SqlDR.GetDateTime("dt"),
                        DepartementAssocie = new Departement
                        {
                            Nom = SqlDR.GetString("nmDep")
                        },
                        Employe = new Employe
                        {
                            Nom    = SqlDR.GetString("nm"),
                            Prenom = SqlDR.GetString("pm")
                        }
                    });
                });
            }

            /*SELECT  date, cit.nom, prenom, dep.nom, periode
             *            FROM quartsEmployes qe
             *                INNER JOIN quarts q on qe.idQuart = q.idQuart
             *                INNER JOIN employes em  on em.idEmploye = qe.idEmploye
             *                INNER JOIN citoyens cit on cit.idCitoyen = em.idCitoyen
             *                INNER JOIN periodesjournee shift on shift.idPeriodeJournee = q.idPeriodeJournee
             *                INNER JOIN departements dep on dep.idDepartement = q.idDepartement
             *                    WHERE qe.idEmploye = 4;*/

            return(horaire);
        }