Beispiel #1
0
        public static void PrintProducts()
        {
            var Lista = Produkt.GetProducts();

            foreach (Produkt P in Lista)
            {
                Console.WriteLine($"{P.ProductID}: {P.Namn} - Orginal Pris: {P.Pris}");
            }
            Console.WriteLine("");
        }
Beispiel #2
0
        public static void CampaignPriceChange()
        {
            while (true)
            {
                Console.Clear();
                Menu.PrintProducts();
                Console.WriteLine("Ändra Pris: Ange det produkt ID du vill ändra.");
                bool isFound    = false;
                int  IdInput    = Menu.ReturnMenuInput();
                int  SelectedID = 0;
                var  Products   = Produkt.GetProducts();

                foreach (Produkt P in Products)
                {
                    if (P.ProductID == IdInput)
                    {
                        SelectedID = IdInput;
                        isFound    = true;
                    }
                }
                if (!isFound)
                {
                    Console.WriteLine("Hittade inte produkten. Försök igen.."); continue;
                }

                Console.Clear();
                Console.Write("Ange Kampanj Pris: ");
                Double Price = Menu.ReturnPrice();

                var Campaigns = ReturnCampaignFile();

                foreach (Campaign C in Campaigns)
                {
                    if (C.ProductID == SelectedID)
                    {
                        C.CampaignPrice = Price;
                        if (C.CampaignPrice > 0)
                        {
                            Console.WriteLine($"Produkt ID: {C.ProductID} har nu kampanj från {C.Date1.ToString("yyyy/MM/dd")} till {C.Date2.ToString("yyyy/MM/dd")} för {Price}kr");
                        }
                        else
                        {
                            Console.ReadLine();
                        }
                    }
                }

                Console.ReadLine();
                CampaignWrite(Campaigns);
                break;
            }
        }
Beispiel #3
0
        public static void CampaignDateChange()
        {
            while (true)
            {
                Console.Clear();
                Menu.PrintProducts();
                Console.WriteLine("Ändra Datum: Ange det produkt ID du vill ändra.");
                bool     isFound = false;
                DateTime Date1;
                DateTime Date2;
                int      IdInput    = Menu.ReturnMenuInput();
                int      SelectedID = 0;
                var      Products   = Produkt.GetProducts();

                foreach (Produkt P in Products)
                {
                    if (P.ProductID == IdInput)
                    {
                        SelectedID = IdInput;
                        isFound    = true;
                    }
                }
                if (!isFound)
                {
                    Console.WriteLine("Hittade inte produkten. Försök igen.."); continue;
                }


                while (true)
                {
                    Console.Clear();

                    Console.WriteLine("Ange Start Datum - Format YYYY,MM,DD");
                    Date1 = Menu.ReturnDateTime();

                    Console.WriteLine("Ange S**t Datum - Format YYYY,MM,DD");
                    Date2 = Menu.ReturnDateTime();

                    if (Date2 < Date1)
                    {
                        Console.WriteLine("S**t Datum kan inte vara innan Start Datum! Försök igen!"); Console.ReadLine(); continue;
                    }
                    break;
                }

                var Campaigns = ReturnCampaignFile();

                foreach (Campaign C in Campaigns)
                {
                    if (C.ProductID == SelectedID)
                    {
                        C.Date1 = Date1;
                        C.Date2 = Date2;

                        if (C.CampaignPrice > 0)
                        {
                            Console.WriteLine($"Produkt ID: {C.ProductID} har nu kampanj från {Date1.ToString("yyyy/MM/dd")} till {Date2.ToString("yyyy/MM/dd")} för {C.CampaignPrice}kr");
                        }
                        else
                        {
                            Console.WriteLine($"Produkt ID: {C.ProductID} har nu kampanj från {Date1.ToString("yyyy/MM/dd")} till {Date2.ToString("yyyy/MM/dd")}");
                        }
                    }
                }
                Console.ReadLine();
                CampaignWrite(Campaigns);
                break;
            }
        }
Beispiel #4
0
        public static void Kassa()
        {
            var ItemList = new List <KassaItem>();


            DateTime KvittoTime  = DateTime.Now;
            var      ProductList = Produkt.GetProducts();


            int    Number = 1000;
            double TotalSumma;
            double Rabatt      = 0;
            double TotalRabatt = 0;
            int    ProductID;
            int    ProductAmount;
            bool   isNotAdded;

            while (true)
            {
                while (true)
                {
                    Console.Clear();
                    Console.WriteLine("KASSA");
                    Console.WriteLine("KVITTO    {0}", KvittoTime);
                    TotalSumma = 0;
                    isNotAdded = true;

                    if (ItemList.Count > 0)
                    {
                        foreach (KassaItem K in ItemList)
                        {
                            Console.WriteLine("{0} {1}{2} * {3} = {4}", K.Namn, K.Amount, K.Typ, K.Pris.ToString("0.00"), K.Total.ToString("0.00"));
                            TotalSumma += K.Total;
                        }

                        Console.WriteLine("Items Total: {0}", TotalSumma.ToString("0.00"));

                        if (TotalSumma >= 1000 && TotalSumma < 2000)
                        {
                            Rabatt      = (TotalSumma * 0.01) * -1;
                            TotalRabatt = TotalSumma * 0.99;
                            Console.WriteLine("Rabatt: {0}", Rabatt.ToString("0.00"));
                            Console.WriteLine("Total: {0}", TotalRabatt.ToString("0.00"));
                        }

                        else if (TotalSumma >= 2000)
                        {
                            Rabatt      = (TotalSumma * 0.02) * -1;
                            TotalRabatt = TotalSumma * 0.98;
                            Console.WriteLine("Rabatt: {0}", Rabatt.ToString("0.00"));
                            Console.WriteLine("Total: {0}", TotalRabatt.ToString("0.00"));
                        }
                    }



                    Console.WriteLine("\nKommandon:\n<ProductID> <Antal>\nRETURN <ProductID>\nPAY - Confirm the Order\nEXIT - Return to Main Menu");
                    Console.Write("Kommando:");

                    string UserInput = Console.ReadLine().ToUpper();
                    if (UserInput == "PAY")
                    {
                        foreach (KassaItem K in ItemList)
                        {
                            K.Rabatt      = Rabatt;
                            K.TotalRabatt = TotalRabatt;
                            K.Pris        = Campaign.CampaignRead(K.ProductID, K.Pris);
                        }
                        Kvitto.CreateKvitto(KvittoTime, ItemList); Console.Clear(); return;
                    }

                    if (UserInput == "EXIT")
                    {
                        Console.Clear(); return;
                    }

                    if (UserInput.Contains(" "))
                    {
                        String[] KommandoInfo = UserInput.Split(' ');
                        if (KommandoInfo[0] == "RETURN")
                        {
                            ProductID = int.Parse(KommandoInfo[1]);
                            foreach (KassaItem P in ItemList)
                            {
                                if (ProductID == P.ProductID && P.Amount <= 1)
                                {
                                    ItemList.Remove(P);
                                    break;
                                }
                                else if (ProductID == P.ProductID && P.Amount > 1)
                                {
                                    P.Amount = P.Amount - 1;
                                    P.Total  = P.Total - P.Pris;
                                }
                            }
                            continue;
                        }
                        try
                        {
                            ProductID     = int.Parse(KommandoInfo[0]);
                            ProductAmount = int.Parse(KommandoInfo[1]);
                            if (ProductAmount <= 0)
                            {
                                continue;
                            }
                            break;
                        }
                        catch (Exception E)
                        { Console.WriteLine(E); Console.ReadLine(); }
                    }
                }

                bool failed  = false;
                int  tempMax = 0;

                foreach (Produkt P in ProductList)
                {
                    if (P.ProductID == ProductID)
                    {
                        tempMax = P.MaxItems;
                    }
                }

                foreach (KassaItem T in ItemList)
                {
                    if (T.ProductID == ProductID && T.Amount > 0)
                    {
                        double TempTotal = T.Amount + ProductAmount;
                        if (TempTotal <= tempMax || tempMax == 0)
                        {
                            T.Amount  += ProductAmount;
                            T.Total    = T.Amount * T.Pris;
                            isNotAdded = false;
                        }
                        else
                        {
                            Console.WriteLine($"Endast {tempMax} tillåtet, med dessa blir det {T.Amount + ProductAmount}. Försök igen..."); Console.ReadLine(); failed = true; break;
                        }
                    }
                }

                if (!failed)
                {
                    foreach (Produkt P in ProductList)
                    {
                        if (ProductID == P.ProductID && isNotAdded)
                        {
                            if (P.MaxItems >= ProductAmount || P.MaxItems == 0)
                            {
                                P.Pris = Campaign.CampaignRead(ProductID, P.Pris);
                                var Item = new KassaItem(P.Namn, P.Pris, P.Typ, ProductAmount, P.ProductID, TotalRabatt, Rabatt, Number);
                                ItemList.Add(Item);
                            }
                            else
                            {
                                Console.WriteLine($"Endast {tempMax} tillåtet, med dessa blir det {ProductAmount}. Försök igen..."); Console.ReadLine(); break;
                            }
                        }
                    }
                }
            }
        }