예제 #1
0
        public static void ChangeForfait(Verification verification)
        {
            Console.WriteLine("Pour changer le forfait, veuillez renseigner les informations suivantes :");
            Console.WriteLine("Nom du lecteur : ");
            string nomLecteur = Console.ReadLine().ToLower();

            Console.WriteLine("Prénom du lecteur : ");
            string prenomLecteur = Console.ReadLine().ToLower();

            Console.WriteLine("Nom du nouveau forfait : ");
            string nomForfait     = Console.ReadLine().ToLower();
            int    readerID       = GetID.GetReaderID(nomLecteur, prenomLecteur);
            int    subscriptionID = GetID.GetSubscriptionID(readerID);
            int    forfaitID      = GetID.GetForfaitID(nomForfait);

            SqlConnection connection = new SqlConnection(DataAccess.SQLCONNECTIONSTRING);

            connection.Open();

            SqlCommand firstUpdate = connection.CreateCommand();

            firstUpdate.CommandText = "UPDATE SubscriptionForfait SET DateOfForfEnd = GETDATE() where IDSubscription = @subscriptionID";
            firstUpdate.Parameters.AddWithValue("@subscriptionID", subscriptionID);
            try
            {
                firstUpdate.ExecuteNonQuery();
            }
            catch (Exception bdExecuteExeption)
            {
                Console.WriteLine("Une erreur s'est produite: ", bdExecuteExeption.Message);
                Console.WriteLine("Pile: ", bdExecuteExeption.StackTrace);
                Console.WriteLine("Veuillez recommencer..");
                connection.Close();
                MainMenu.ShowMainMenu(verification);
            }

            SqlCommand firstInsert = connection.CreateCommand();

            firstInsert.CommandText = "INSERT INTO SubscriptionForfait (IDForfait, IDSubscription, DateOfForfBeginning, DateOfForfEnd) VALUES (@forfaitID, @subscriptionID, GETDATE(), @dateEnd)";
            firstInsert.Parameters.AddWithValue("@forfaitID", forfaitID);
            firstInsert.Parameters.AddWithValue("@subscriptionID", subscriptionID);
            firstInsert.Parameters.AddWithValue("@dateEnd", DateTime.Now.AddDays(365));
            try
            {
                firstInsert.ExecuteNonQuery();
                Console.WriteLine("L'inscription de {0} {1} a été changée!", nomLecteur.ToUpper(), prenomLecteur.ToUpper());
                Console.WriteLine("Le forfait {0} a été choisi!", nomForfait.ToUpper());
            }
            catch (Exception ex)
            {
                Console.WriteLine("Une erreur s'est produite: " + ex.Message);
                Console.WriteLine("Veuillez recommencer..");
                connection.Close();
                MainMenu.ShowMainMenu(verification);
            }
            connection.Close();
            MainMenu.ShowMainMenu(verification);
        }
예제 #2
0
        public static int GetPublisherID(string publisher, Verification verification)
        {
            SqlConnection connection = new SqlConnection(DataAccess.SQLCONNECTIONSTRING);

            connection.Open();

            int        publisherId     = 0;
            SqlCommand takePublisherId = connection.CreateCommand();

            takePublisherId.CommandText = "SELECT IDPublisher FROM Publisher WHERE NamePublisher LIKE @editeur";
            takePublisherId.Parameters.AddWithValue("@editeur", "%" + publisher);

            try
            {
                if (takePublisherId.ExecuteScalar() == null)
                {
                    Console.WriteLine("Cet éditeur n'existe pas");
                    Console.WriteLine();
                    Console.WriteLine("Vous voulez creer un nouvel éditeur?");
                    bool a = false;
                    while (!a)
                    {
                        Console.WriteLine("O/N");
                        ConsoleKeyInfo resultat = Console.ReadKey();
                        Console.Clear();
                        switch (resultat.Key)
                        {
                        case ConsoleKey.O:
                            Publisher.MakeNewPublisher(verification);
                            break;

                        case ConsoleKey.N:
                            MainMenu.ShowMainMenu(verification);
                            break;
                        }
                        a = true;
                    }
                }
                else
                {
                    publisherId = (int)takePublisherId.ExecuteScalar();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Erreur : " + ex.Message);
                Console.WriteLine("Type d'erreur: " + ex.GetType());
                Console.WriteLine("Pile : " + ex.StackTrace);
                MainMenu.ShowMainMenu(verification);
            }

            connection.Close();
            return(publisherId);
        }
예제 #3
0
        public static int GetWriterID(string writer, Verification verification)
        {
            SqlConnection connection = new SqlConnection(DataAccess.SQLCONNECTIONSTRING);

            connection.Open();

Again:
            int writerId = 0;
            SqlCommand takeWriterId = connection.CreateCommand();

            takeWriterId.CommandText = "SELECT IDWriter FROM Writer WHERE LastNameWriter = @writer";
            takeWriterId.Parameters.AddWithValue("@writer", writer);

            try
            {
                if (takeWriterId.ExecuteScalar() == null)
                {
                    Console.WriteLine("Cet auteur n'existe pas");
                    Console.WriteLine();
                    Console.WriteLine("Vous voulez creer un nouvel auteur?");
                    bool a = false;
                    while (!a)
                    {
                        Console.WriteLine("O/N");
                        ConsoleKeyInfo resultat = Console.ReadKey();
                        Console.Clear();
                        switch (resultat.Key)
                        {
                        case ConsoleKey.O:
                            Writer.makeNewWriter(verification);
                            goto Again;

                        case ConsoleKey.N:
                            MainMenu.ShowMainMenu(verification);
                            break;
                        }
                        a = true;
                    }
                }
                else
                {
                    writerId = (int)takeWriterId.ExecuteScalar();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Erreur : " + ex.Message);
                MainMenu.ShowMainMenu(verification);
            }

            connection.Close();
            return(writerId);
        }
예제 #4
0
        public static void NotOurReaderAnymore(Verification verification)
        {
            Console.WriteLine("Pour résilier l'inscription, veuillez renseigner les informations suivantes :");
            Console.WriteLine("Nom du lecteur : ");
            string nomLecteur = Console.ReadLine().ToLower();

            Console.WriteLine("Prénom du lecteur : ");
            string prenomLecteur  = Console.ReadLine().ToLower();
            int    readerID       = GetID.GetReaderID(nomLecteur, prenomLecteur);
            int    subscriptionID = GetID.GetSubscriptionID(readerID);

            using (SqlConnection connection = new SqlConnection(DataAccess.SQLCONNECTIONSTRING))
            {
                connection.Open();
                SqlCommand firstUpdate = connection.CreateCommand();

                firstUpdate.CommandText = "UPDATE Subscription SET DateOfSubEnd = GETDATE() where IDSubscription = @subscriptionID";
                firstUpdate.Parameters.AddWithValue("@subscriptionID", subscriptionID);
                try
                {
                    firstUpdate.ExecuteNonQuery();
                }
                catch (Exception bdExecuteExeption)
                {
                    Console.WriteLine("Une erreur s'est produite: ", bdExecuteExeption.Message);
                    Console.WriteLine("Pile: ", bdExecuteExeption.StackTrace);
                    Console.WriteLine("Veuillez recommencer..");
                    connection.Close();
                    MainMenu.ShowMainMenu(verification);
                }

                SqlCommand secondUpdate = connection.CreateCommand();

                secondUpdate.CommandText = "UPDATE SubscriptionForfait SET DateOfForfEnd = GETDATE() where IDSubscription = @subscriptionID";
                secondUpdate.Parameters.AddWithValue("@subscriptionID", subscriptionID);
                try
                {
                    secondUpdate.ExecuteNonQuery();
                    Console.WriteLine("L'inscription de {0} {1} a été résiliée!", nomLecteur.ToUpper(), prenomLecteur.ToUpper());
                }
                catch (Exception bdExecuteExeption)
                {
                    Console.WriteLine("Une erreur s'est produite: ", bdExecuteExeption.Message);
                    Console.WriteLine("Pile: ", bdExecuteExeption.StackTrace);
                    Console.WriteLine("Veuillez recommencer..");
                    connection.Close();
                    MainMenu.ShowMainMenu(verification);
                }
            }
            MainMenu.ShowMainMenu(verification);
        }
예제 #5
0
        private static void ShowMenuReader(Verification verification)
        {
            Console.WriteLine(
                "Que souhaitez-vous effectuer ? " +
                "\n Recherche catalogue [L]ivres; " +
                "\n Consulter details d'[I]nscriptions" +
                "\n Voir mes [E]mprunts" +
                "\n [Q]uitter le programme ?");
            ConsoleKeyInfo resultMenuPrincipal = Console.ReadKey();

            Console.Clear();
            switch (resultMenuPrincipal.Key)
            {
            case ConsoleKey.L:
                Book.SearchBook(verification);
                break;

            case ConsoleKey.I:
                Console.WriteLine("Sorry, we haven't developed this function yet.");
                Console.WriteLine("Coming soon...");
                Console.ReadKey(true);
                Console.Clear();
                MainMenu.ShowMainMenu(verification);
                break;

            case ConsoleKey.E:
                Console.WriteLine(
                    "Mes emprunts" +
                    "\n Que souhaitez-vous voir ? " +
                    "\n Les livres [R]estitués; " +
                    "\n Les livres [E]mpruntés; " +
                    "\n Revenir au [M]enu principal" +
                    "\n [Q]uitter le programme ?");
                ConsoleKeyInfo result = Console.ReadKey();
                Console.Clear();
                switch (result.Key)
                {
                case ConsoleKey.R:
                    Borrow.ShowBorrowsForThisUserPast(verification);
                    break;

                case ConsoleKey.E:
                    Borrow.ShowBorrowsForThisUserPresent(verification);
                    break;

                case ConsoleKey.M:
                    MainMenu.ShowMainMenu(verification);
                    break;

                case ConsoleKey.Q:
                    Console.WriteLine("Merci et à bientôt !");
                    Console.ReadKey();
                    return;
                }
                break;

            case ConsoleKey.Q:
                Console.WriteLine("Merci et à bientôt !");
                Console.ReadKey();
                return;
            }
        }
예제 #6
0
        private static void ShowMenuAdmin(Verification verification)
        {
            Console.WriteLine(
                "Que souhaitez-vous effectuer ? " +
                "\n Gérer les [L]ivres; " +
                "\n Gérer les [A]uteurs; " +
                "\n Gérer les É[d]iteurs; " +
                "\n Gérer les [U]tilisateurs" +
                "\n Gérer les [E]mprunts" +
                "\n Gérer les [I]nscriptions" +
                "\n [Q]uitter le programme ?");
            ConsoleKeyInfo resultMenuPrincipal = Console.ReadKey();

            Console.Clear();
            switch (resultMenuPrincipal.Key)
            {
            case ConsoleKey.L:
                Console.WriteLine(
                    "Gestion des livres" +
                    "\n Que souhaitez-vous effectuer ? " +
                    "\n [A]jouter un livre; " +
                    "\n Ajouter un [G]enre; " +
                    "\n [C]hercher un livre; " +
                    "\n [S]upprimer un livre; " +
                    "\n [R]evenir au menu principal" +
                    "\n [Q]uitter le programme ?");
                ConsoleKeyInfo resultL = Console.ReadKey();
                Console.Clear();
                switch (resultL.Key)
                {
                case ConsoleKey.A:
                    Book.MakeNewBook(verification);
                    break;

                case ConsoleKey.G:
                    Book.MakeNewSubject(verification);
                    break;

                case ConsoleKey.C:
                    Book.SearchBook(verification);
                    break;

                case ConsoleKey.S:
                    Console.WriteLine("Build in progress");
                    Console.WriteLine("Coming soon...");
                    break;

                case ConsoleKey.R:
                    MainMenu.ShowMainMenu(verification);
                    break;

                case ConsoleKey.Q:
                    Console.WriteLine("Merci, et à bientôt !");
                    Console.ReadKey();
                    break;
                }
                break;

            case ConsoleKey.A:
                Console.WriteLine(
                    "Gestion des auteurs" +
                    "\n Que souhaitez-vous effectuer ? " +
                    "\n [A]jouter un auteur; " +
                    "\n [C]hercher un auteur; " +
                    "\n [R]evenir au menu principal" +
                    "\n [Q]uitter le programme ?");
                ConsoleKeyInfo resultA = Console.ReadKey();
                Console.Clear();
                switch (resultA.Key)
                {
                case ConsoleKey.A:
                    Writer.makeNewWriter(verification);
                    break;

                case ConsoleKey.C:
                    Writer.SearchWriter(verification);
                    break;

                case ConsoleKey.R:
                    MainMenu.ShowMainMenu(verification);
                    break;

                case ConsoleKey.Q:
                    Console.WriteLine("Merci, et à bientôt !");
                    Console.ReadKey();
                    break;
                }
                break;

            case ConsoleKey.D:

                Console.WriteLine(
                    "Gestion des éditeurs" +
                    "\n Que souhaitez-vous effectuer ? " +
                    "\n [A]jouter un éditeur; " +
                    "\n [C]hercher un éditeur; " +
                    "\n [R]evenir au menu principal" +
                    "\n [Q]uitter le programme ?");
                ConsoleKeyInfo resultD = Console.ReadKey();
                Console.Clear();
                switch (resultD.Key)
                {
                case ConsoleKey.A:
                    Publisher.MakeNewPublisher(verification);
                    break;

                case ConsoleKey.C:
                    Publisher.SearchPublisher(verification);
                    break;

                case ConsoleKey.R:
                    MainMenu.ShowMainMenu(verification);
                    break;

                case ConsoleKey.Q:
                    Console.WriteLine("Merci, et à bientôt !");
                    Console.ReadKey();
                    break;
                }
                break;

            case ConsoleKey.U:
                Console.WriteLine(
                    "Gestion des utilisateurs" +
                    "\n Que souhaitez-vous effectuer ? " +
                    "\n [A]jouter un utilisateur; " +
                    "\n [C]hercher un utilisateur; " +
                    "\n [S]upprimer un utilisateur; " +
                    "\n [R]evenir au menu principal" +
                    "\n [Q]uitter le programme ?");
                ConsoleKeyInfo resultU = Console.ReadKey();
                Console.Clear();
                switch (resultU.Key)
                {
                case ConsoleKey.A:
                    User.MakeNewUser(verification);
                    break;

                case ConsoleKey.C:
                    User.SearchUser(verification);
                    break;

                case ConsoleKey.S:
                    User.DeleteUser(verification);
                    break;

                case ConsoleKey.R:
                    MainMenu.ShowMainMenu(verification);
                    break;

                case ConsoleKey.Q:
                    Console.WriteLine("Merci, et à bientôt !");
                    Console.ReadKey();
                    break;
                }
                break;

            case ConsoleKey.E:
                Console.WriteLine(
                    "Gestion des emprunts" +
                    "\n Que souhaitez-vous effectuer ? " +
                    "\n [A]fficher le menu des emprunts; " +
                    "\n [R]evenir au menu principal" +
                    "\n [Q]uitter le programme ?");
                ConsoleKeyInfo resultE = Console.ReadKey();
                Console.Clear();
                switch (resultE.Key)
                {
                case ConsoleKey.A:
                    Borrow.ManageBorrowing(verification);
                    break;

                case ConsoleKey.R:
                    MainMenu.ShowMainMenu(verification);
                    break;

                case ConsoleKey.Q:
                    Console.WriteLine("Merci, et à bientôt !");
                    Console.ReadKey();
                    break;
                }
                break;

            case ConsoleKey.I:
                Console.WriteLine(
                    "Gestion des inscriptions" +
                    "\n Que souhaitez-vous effectuer ? " +
                    "\n Résilier une [I]nscription; " +
                    "\n [C]hercher une inscription; " +
                    "\n [M]odifier une inscription; " +
                    "\n [R]evenir au menu principal" +
                    "\n [Q]uitter le programme ?");
                ConsoleKeyInfo resultI = Console.ReadKey();
                Console.Clear();
                switch (resultI.Key)
                {
                case ConsoleKey.I:
                    Subscription.NotOurReaderAnymore(verification);
                    break;

                case ConsoleKey.C:
                    Subscription.ShowOurExReaders(verification);
                    break;

                case ConsoleKey.M:
                    Subscription.ChangeForfait(verification);
                    break;

                case ConsoleKey.R:
                    MainMenu.ShowMainMenu(verification);
                    break;

                case ConsoleKey.Q:
                    Console.WriteLine("Merci, et à bientôt !");
                    Console.ReadKey();
                    return;
                }
                break;

            case ConsoleKey.Q:
                Console.WriteLine("Merci, et à bientôt !");
                Console.ReadKey();
                return;
            }
        }
예제 #7
0
        public static int GetSubjectID(string subject, Verification verification)
        {
            SqlConnection connection = new SqlConnection(DataAccess.SQLCONNECTIONSTRING);

            connection.Open();

            int        subjectId     = 0;
            SqlCommand takeSubjectId = connection.CreateCommand();

            takeSubjectId.CommandText = "SELECT IDSubject FROM Subject WHERE NameSubject = @sujet";
            takeSubjectId.Parameters.AddWithValue("@sujet", subject);

            try
            {
                if (takeSubjectId.ExecuteScalar() == null)
                {
                    Console.WriteLine("Ce sujet n'existe pas");
                    Console.WriteLine();
                    Console.WriteLine("Vous voulez ajouter un nouveau sujet ?");
                    bool a = false;
                    while (!a)
                    {
                        Console.WriteLine("O/N");
                        ConsoleKeyInfo resultat = Console.ReadKey();
                        Console.Clear();
                        switch (resultat.Key)
                        {
                        case ConsoleKey.O:
                            Console.Write("Sujet : ");
                            string sujet = Console.ReadLine();
                            sujet = TestException.CheckTextInfo(sujet);

                            SqlCommand firstInsert = connection.CreateCommand();
                            firstInsert.CommandText = "INSERT INTO Subject (NameSubject) VALUES (@sujet)";
                            firstInsert.Parameters.AddWithValue("@sujet", sujet);

                            try
                            {
                                firstInsert.ExecuteNonQuery();
                                Console.WriteLine("Le sujet {0} a été ajouté! \n", sujet);
                            }
                            catch (Exception ex)
                            {
                                Console.WriteLine("Une erreur s'est produite: " + ex.Message);
                                Console.WriteLine("Type d'erreur: " + ex.GetType());
                                Console.WriteLine("Veuillez recommencer..");
                                MainMenu.ShowMainMenu(verification);
                                connection.Close();
                            }
                            break;

                        case ConsoleKey.N:
                            MainMenu.ShowMainMenu(verification);
                            break;
                        }
                        a = true;
                    }
                }
                else
                {
                    subjectId = (int)takeSubjectId.ExecuteScalar();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Erreur : " + ex.Message);
                Console.WriteLine("Type d'erreur: " + ex.GetType());
                Console.WriteLine("Pile : " + ex.StackTrace);
                MainMenu.ShowMainMenu(verification);
            }

            connection.Close();
            return(subjectId);
        }