コード例 #1
0
        /// <summary>
        /// Load the srid of the selected data table
        /// </summary>
        private void LoadSRID()
        {
            if (cn == null || cn.State != ConnectionState.Open)
            {
                InitConnection();
            }

            if (cn.Database != comboBoxDatabases.Text)
            {
                cn.ChangeDatabase(comboBoxDatabases.Text);
            }

            string[] tableName = comboBoxDataTable.Text.Trim().Split(new char[] { '.' });
            string   geomCol   = comboBoxGeomCol.Text.ToLower().Replace("(geometry)", "").Replace("(geography)", "").Trim();

            if (geomCol.Length == 0)
            {
                return;
            }

            System.Data.SqlClient.SqlCommand SqlCom = new System.Data.SqlClient.SqlCommand();
            SqlCom.Connection  = cn;
            SqlCom.CommandType = CommandType.Text;
            if (tableName.Length > 1)
            {
                SqlCom.CommandText = "select top 1 [" + geomCol + "].STSrid, [" + geomCol + "].STGeometryType() from [" + tableName[0] + "].[" + tableName[1] + "] where [" + geomCol + "] is not null";
            }
            else
            {
                return;
            }

            this.Cursor = Cursors.WaitCursor;

            System.Data.SqlClient.SqlDataReader SqlDR;
            using (SqlDR = SqlCom.ExecuteReader())
            {
                while (SqlDR.Read())
                {
                    if (!SqlDR.IsDBNull(0))
                    {
                        textBoxSRID.Text = SqlDR.GetInt32(0).ToString();
                    }
                    else
                    {
                        textBoxSRID.Text = "";
                    }

                    geometryType = SqlDR.GetString(1);
                    break;
                }
            }
            this.Cursor = Cursors.Default;
        }
コード例 #2
0
        // On rend static la fonction pour être en mesure de l'utiliser partout
        public static List <Citoyen> GetCitoyens()
        {
            // On crée une liste de citoyen venant de la BD
            List <Citoyen> lstCitoyen = new List <Citoyen>();

            // On vérifie si la BD est connecté
            if (ConnexionBD.Instance().EstConnecte())
            {
                // Ça plante, puisque des éléments sont null comme le lit, la chambre et le département...

                // 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 c.nom nomCit, c.prenom prenomCit, c.numAssuranceMaladie AssMal, g.Nom GenreCit, c.dateNaissance DNaiss, c.telephone Tel, c.adresse AdresseCit, d.nom nomDep, ch.nom nomCh, l.numero numeroLit, el.nom EtLitNom " +
                    "FROM citoyens c " +
                    "INNER JOIN genres g ON g.idGenre = c.idGenre " +
                    "LEFT JOIN lits l ON l.idCitoyen = c.idCitoyen " +
                    "LEFT JOIN etatslits el ON el.idEtatLit = l.idEtatLit " +
                    "LEFT JOIN chambres ch ON ch.idChambre = l.idChambre " +
                    "LEFT JOIN departements d ON d.idDepartement = ch.idDepartement "
                    , SqlDR => {
                    lstCitoyen.Add(new Citoyen
                    {
                        Nom           = SqlDR.GetString("nomCit"),
                        Prenom        = SqlDR.GetString("prenomCit"),
                        AssMaladie    = SqlDR.GetString("AssMal"),
                        Genre         = (Genre)Enum.Parse(typeof(Genre), SqlDR.GetString("GenreCit")),
                        DateNaissance = (DateTime)SqlDR.GetMySqlDateTime("DNaiss"),
                        NumTelephone  = SqlDR.GetString("Tel"),
                        Adresse       = SqlDR.GetString("AdresseCit"),
                        Lit           = SqlDR.IsDBNull(SqlDR.GetOrdinal("numeroLit")) ? new Lit() : new Lit
                        {
                            Numero  = SqlDR.GetString("numeroLit"),
                            EtatLit = (EtatLit)Enum.Parse(typeof(EtatLit), SqlDR.GetString("EtLitNom")),
                            Chambre = new Chambre
                            {
                                Numero        = SqlDR.GetString("nomCh"),
                                UnDepartement = new Departement
                                {
                                    Nom = SqlDR.GetString("nomDep"),
                                }
                            }
                        }
                    });
                }
                    );
            }

            return(lstCitoyen);
        }
コード例 #3
0
        public static List <Citoyen> GetCitoyenDemandeTraitement(Departement departement)
        {
            List <Citoyen> lstCitoyen = new List <Citoyen>();

            // 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 c.nom nomCit, c.prenom prenomCit, c.numAssuranceMaladie AssMal, g.nom nomGenre, c.dateNaissance dtNaiss, c.adresse uneAdresse, c.telephone numTel, l.idCitoyen litCit, l.numero litNum, ch.nom chNum " +
                    "FROM citoyens c " +
                    "INNER JOIN genres g ON g.idGenre = c.idGenre " +
                    "LEFT JOIN lits l ON l.idCitoyen = c.idCitoyen " +
                    "LEFT JOIN chambres ch ON ch.idChambre = l.idChambre " +
                    "INNER JOIN hospitalisations h ON h.idCitoyen = c.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 d.nom = '" + departement.Nom + "' " +
                    "AND ht.estEnCours = true "
                    , SqlDR => {
                    lstCitoyen.Add(new Citoyen
                    {
                        Nom           = SqlDR.GetString("nomCit"),
                        Prenom        = SqlDR.GetString("prenomCit"),
                        AssMaladie    = SqlDR.GetString("AssMal"),
                        Genre         = (Genre)Enum.Parse(typeof(Genre), SqlDR.GetString("nomGenre")),
                        DateNaissance = (DateTime)SqlDR.GetMySqlDateTime("dtNaiss"),
                        Adresse       = SqlDR.GetString("uneAdresse"),
                        NumTelephone  = SqlDR.GetString("numTel"),
                        Lit           = SqlDR.IsDBNull(SqlDR.GetOrdinal("litCit")) ? new Lit() : new Lit
                        {
                            Numero  = SqlDR.GetString("litNum"),
                            Chambre = new Chambre
                            {
                                Numero = SqlDR.GetString("chNum")
                            }
                        }
                    });
                }

                    );
            }

            lstCitoyen.RemoveAll(citoyen => citoyen.Lit.Numero != null);

            return(lstCitoyen);
        }
コード例 #4
0
        public static List <Departement> GetDepartements()
        {
            List <Departement> lstDepartement = new List <Departement>();

            // On vérifie si la BD est connecté
            if (ConnexionBD.Instance().EstConnecte())
            {
                List <int> idEmployesChefs = new List <int>();

                // 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 * " +
                    "FROM departements"
                    , SqlDR => {
                    lstDepartement.Add(new Departement
                    {
                        _identifiant = int.Parse(SqlDR.GetString("idDepartement")),
                        Nom          = SqlDR.GetString("nom"),
                        Abreviation  = SqlDR.GetString("abreviation")
                    });
                    idEmployesChefs.Add(SqlDR.IsDBNull(SqlDR.GetOrdinal("idEmploye")) ? -1 : int.Parse(SqlDR.GetString("idEmploye")));
                }
                    );

                for (int i = 0; i < lstDepartement.Count; i++)
                {
                    lstDepartement[i].PersonnelMedicalEnChef = (idEmployesChefs[i] == -1 ? null : DataModelEmploye.GetEmploye(idEmployesChefs[i]));
                }

                for (int i = 0; i < lstDepartement.Count; i++)
                {
                    lstDepartement[i].Chambres = new ObservableCollection <Chambre>(DataModelChambre.GetChambres(lstDepartement[i]._identifiant.ToString(), "lits, equipements"));
                }
            }

            return(lstDepartement);
        }