Пример #1
0
        public void DeleteUser()
        {
            ShowUsers(false);

            string userInput = ConsoleGUI.PromptRender("Podaj ID użytkownika, którego chcesz usunąć: ");

            if (int.TryParse(userInput, out int input))
            {
                if (currentUser.Id == input)
                {
                    ConsoleGUI.ErrorRender("Nie możesz usunąć sam siebie", true);
                    return;
                }

                User user = GetUser(input);
                if (user != null)
                {
                    users.Remove(user);
                    Flush();
                }
                else
                {
                    ConsoleGUI.ErrorRender("Nie ma takiego użytkownika", true);
                    return;
                }
            }
        }
Пример #2
0
        public void AddUser()
        {
            var    userName    = ConsoleGUI.PromptRender("Imie uzytkownika: ").Replace(",", "").Trim();
            var    userSurname = ConsoleGUI.PromptRender("Nazwisko uzytkownika: ").Replace(",", "").Trim();
            string userNickname;

            while (true)
            {
                userNickname = ConsoleGUI.PromptRender("Nick: ").Replace(",", "").Trim();
                if (users.Any(x => x.UserNickname.Equals(userNickname)))
                {
                    ConsoleGUI.ErrorRender("Ta nazwa użytkownika jest już zajęta, spróbuj inną");
                }
                else
                {
                    break;
                }
                continue;
            }
            var userPassword = ConsoleGUI.PromptRender("Hasło użytkownika: ").Replace(",", "").Trim();

            int id = users.Max(x => x.Id) + 1;

            users.Add(new User(id, userName, userNickname, userSurname, userPassword));

            Flush();
        }
Пример #3
0
        public void SearchMedicine()
        {
            ConsoleGUI.Render("Wyszukiwanie leku");
            var searchString   = ConsoleGUI.PromptRender("Podaj frazę do wyszukania: ").Trim();
            var foundMedicines = medicineDb.Where(x => x.MedicineName.ToLower().Contains(searchString.ToLower()));

            if (foundMedicines.Any())
            {
                List <string> render = new List <string>();
                render.Add("Znaleziono: ");
                foreach (var found in foundMedicines)
                {
                    render.Add($"ID: {found.Id}");
                    render.Add($"Nazwa: {found.MedicineProducer} {found.MedicineName}");
                    render.Add($"Cena: {found.MedicinePrice}");
                    render.Add($"Ilość: {found.MedicineQuantity}{found.MedicineQuantityType}");
                }
                ConsoleGUI.Render(render);
                ConsoleGUI.PromptRender("Dowolny przycisk powróci do MENU");
            }
            else
            {
                ConsoleGUI.ErrorRender("Nie znaleziono produktów o nazwie " + searchString, true);
                ConsoleGUI.PromptRender("Dowolny przycisk powróci do MENU");
            }
        }
Пример #4
0
        public static void Browse(ref MedicineDb mainDb)
        {
            int currentId = 1;

            while (true)
            {
                var medicine = mainDb.GetMedicineById(currentId);
                if (medicine == null)
                {
                    ConsoleGUI.Render("Brak leku o ID " + currentId + " w bazie danych");
                }
                else
                {
                    RenderView(medicine);
                }
                Navigation choice = MenuChoice();
                if (choice != Navigation.Exit)
                {
                    if (choice == Navigation.Next)
                    {
                        currentId++;
                        continue;
                    }

                    if (choice == Navigation.Previous)
                    {
                        if (currentId != 1)
                        {
                            currentId--;
                        }
                        continue;
                    }

                    if (choice == Navigation.ByID)
                    {
                        var z = ConsoleGUI.PromptRender("ID: ");
                        if (int.TryParse(z, out int s))
                        {
                            currentId = s;
                        }
                        else
                        {
                            ConsoleGUI.ErrorRender("ID: " + z + " nie jest poprawne", true);
                        }
                    }

                    if (choice == Navigation.Incorrect)
                    {
                        continue;
                    }
                }
                else
                {
                    break;
                }
            }
        }
Пример #5
0
        public void ShowUsers(bool wait = true)
        {
            List <string> toRender = new List <string>();

            foreach (var user in users)
            {
                toRender.Add("\tID:" + user.Id + "\tImię:" + user.Name + "\tNazwisko: " + user.Subname + "\tNick: " + user.UserNickname);
            }

            ConsoleGUI.Render(toRender);
            if (wait)
            {
                ConsoleGUI.PromptRender("Dowolny przycisk opuści ten widok");
            }
        }
Пример #6
0
        public void RemoveMedicine()
        {
            var z = ConsoleGUI.PromptRender("Podaj ID leku do usunięcia z bazy danych");

            if (int.TryParse(z, out int i))
            {
                if (!DeleteMedicine(i))
                {
                    ConsoleGUI.ErrorRender("Nie udało się usunąć leku o ID " + i + " z bazy", true);
                }
            }
            else
            {
                ConsoleGUI.ErrorRender("Podano niepoprawne ID " + z, true);
            }
        }
Пример #7
0
        private static Navigation MenuChoice()
        {
            var choice = ConsoleGUI.PromptRender("n - Następny, p - Poprzedni, s - Skocz do ID, w - Wyjście").Trim();

            switch (choice)
            {
            case "n":
                return(Navigation.Next);

            case "p":
                return(Navigation.Previous);

            case "s":
                return(Navigation.ByID);

            case "w":
                return(Navigation.Exit);

            default:
                return(Navigation.Incorrect);
            }
        }
Пример #8
0
        public void AddMedicine()
        {
            string  medicineName     = ConsoleGUI.PromptRender("Nazwa leku: ");
            string  medicineProducer = ConsoleGUI.PromptRender("Producent: ");
            int     medicineQuantity = ConsoleGUI.PromptRenderInt("Ilość: ");
            string  quantityType     = ConsoleGUI.PromptRender("Określenie jednostki: ");
            decimal price            = ConsoleGUI.PromptRenderDecimal("Cena: ");

            bool     refundPossible = ConsoleGUI.PromptRender("Czy jest dostępna refundacja? (t/n)").Trim().ToLower().First() == 't';
            Medicine medicine;

            if (refundPossible)
            {
                int refundPercentage = ConsoleGUI.PromptRenderInt("% refundacji: ");
                medicine = new Medicine(GetNextId(), medicineName, medicineQuantity, quantityType, medicineProducer, price, refundPossible, refundPercentage);
            }
            else
            {
                medicine = new Medicine(GetNextId(), medicineName, medicineQuantity, quantityType, medicineProducer, price);
            }

            medicineDb.Add(medicine);
            Flush();
        }