Beispiel #1
0
        public List <T> ObtenirListe(List <SqlParameter> parametres, string sql)
        {
            List <T>  resultats = new List <T>();
            DataTable dataTable = BaseDeDonnees.Rechercher(parametres, sql);

            foreach (DataRow row in dataTable.Rows)
            {
                resultats.Add(Creer(row));
            }
            return(resultats);
        }
Beispiel #2
0
        /// <summary>
        /// Insère dans la base un emprunt pour l'exemplaire et l'adhérent spécifiés à la date d'aujourd'hui.
        /// </summary>
        /// <param name="adherent"></param>
        /// <param name="exemplaire"></param>
        public static void Inserer(Adherent adherent, Exemplaire exemplaire)
        {
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.AddWithValue("@NumAdherent", adherent.Numero);
            cmd.Parameters.AddWithValue("@NumExemplaire", exemplaire.Numero);
            //cmd.Parameters.AddWithValue("@DatEmprunt", DateTime.Now);
            cmd.Parameters.AddWithValue("@DatRestitutionPrev", DateTime.Now + Emprunt.DUREE_MAXIMALE);
            cmd.CommandText = @"INSERT INTO Emprunt (numAdherent, numExemplaire, datEmprunt, datRestitutionPrev, datRestitutionEff)
                                VALUES(@NumAdherent, @NumExemplaire, GETDATE(), @DatRestitutionPrev, NULL);";
            BaseDeDonnees.Executer(cmd);
            exemplaire.Disponible = false;
            Exemplaire.MettreAJour(exemplaire);
        }
Beispiel #3
0
        public static void MettreAJour(Emprunt emprunt)
        {
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.AddWithValue("@NumAdherent", emprunt.Adherent.Numero);
            cmd.Parameters.AddWithValue("@NumExemplaire", emprunt.Exemplaire.Numero);
            cmd.Parameters.AddWithValue("@DatEmprunt", emprunt.DateEmprunt);
            cmd.Parameters.AddWithValue("@DatRestitutionPrev", DateTime.Now + Emprunt.DUREE_MAXIMALE);
            cmd.CommandText = @"UPDATE Emprunt
                                SET datRestitutionPrev =  @DatRestitutionPrev, datRestitutionEff = GETDATE()
                                WHERE numAdherent = @NumAdherent AND numExemplaire = @NumExemplaire AND datEmprunt = @DatEmprunt;";
            BaseDeDonnees.Executer(cmd);
            emprunt.Exemplaire.Disponible = true;
            Exemplaire.MettreAJour(emprunt.Exemplaire);
        }
Beispiel #4
0
        /// <summary>
        /// Renvoie la liste des années avec au moins un emprunt répertorié.
        /// </summary>
        /// <returns>Liste des années.</returns>
        public static List <int> ListerAnnees()
        {
            List <int> annees = new List <int>();


            string sql = @"SELECT DISTINCT YEAR(datEmprunt)
                                FROM Emprunt;";


            foreach (DataRow row in BaseDeDonnees.Rechercher(sql).Rows)
            {
                annees.Add((int)row[0]);
            }

            return(annees);
        }
Beispiel #5
0
        public static Exemplaire MettreAJour(Exemplaire exemplaire)
        {
            List <SqlParameter> parametres = new List <SqlParameter>();

            Utilitaires.RajouterParametre(parametres, "@NumExemplaire", exemplaire.Numero);
            Utilitaires.RajouterParametre(parametres, "@Disponible", exemplaire.Disponible);
            Utilitaires.RajouterParametre(parametres, "@IsbnLivre", exemplaire.Livre.Isbn);
            Utilitaires.RajouterParametre(parametres, "@CodBibliotheque", exemplaire.Bibliotheque.Code);
            Utilitaires.RajouterParametre(parametres, "@CodEmplacement", exemplaire.Emplacement.Code);
            string sql = @"UPDATE Exemplaire
                               SET Disponible = Disponible, codBibliotheque = @CodBibliotheque, codEmplacement = @CodEmplacement
                               WHERE numExemplaire = @NumExemplaire;";

            BaseDeDonnees.Executer(parametres, sql);

            return(Obtenir(exemplaire));
        }