コード例 #1
0
        public async Task <IActionResult> Edit(int id, [Bind("IdPozycjiZamowienia,Ilosc,Cena,IdTowaru,IdZamowienia")] PozycjaZamowienia pozycjaZamowienia)
        {
            if (id != pozycjaZamowienia.IdPozycjiZamowienia)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(pozycjaZamowienia);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PozycjaZamowieniaExists(pozycjaZamowienia.IdPozycjiZamowienia))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(pozycjaZamowienia));
        }
コード例 #2
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void CzyDobrzeLiczyPodatekZamowienia1()//Dla klasy Zamowienie metoda Wartosc Podatku czy dobrze liczy Przypadek 2
        {
            var zam = new Zamowienie();
            var poz = new PozycjaZamowienia();

            zam.dataRealizacji             = DateTime.Now;
            zam.statusZamowienia           = false;
            zam.identyfikatorZamowienia    = "jeden";
            zam.potwierdzenieElektroniczne = true;
            poz.nazwaTowaru = "nazwa";
            poz.ilosc       = 5;
            poz.stawkaVat   = 23;
            double stawkaVat = poz.stawkaVat;

            poz.cenaJednostkowa = 20000;


            zam.DodajPozycjeZamowienia(poz);


            var poz1 = new PozycjaZamowienia();

            poz1.nazwaTowaru = "nazwa1";
            poz1.ilosc       = 2;
            poz1.stawkaVat   = 18;
            double stawkaVat1 = poz1.stawkaVat;

            poz1.cenaJednostkowa = 120;
            zam.DodajPozycjeZamowienia(poz1);

            //var wynik = 0.23 * (5 * 20000) + 0.18 * (2 * 120);
            var wynik = (stawkaVat / 100 * (poz.ilosc * poz.cenaJednostkowa) + stawkaVat1 / 100 * (poz1.ilosc * poz1.cenaJednostkowa));

            Assert.That(zam.WartoscPodatku(), Is.EqualTo(wynik));//sprawdza wartosc zamówienia czy jest zgodne
        }
コード例 #3
0
ファイル: KoszykB.cs プロジェクト: Mateusyy/Electronic-Store
        public int UtworzZamowienie(Zamowienie zamowienie)
        {
            decimal wartoscZamowienia = 0;
            var     elementyKoszyka   = GetElementyKoszyka();

            db.Zamowienia.Add(zamowienie);
            //db.SaveChanges();
            foreach (var element in elementyKoszyka)
            {
                var pozycjaZamowienia = new PozycjaZamowienia
                {
                    IdTowaru     = element.IdTowaru,
                    IdZamowienia = zamowienie.IdZamowienia,
                    Cena         = element.Towar.Cena,
                    Ilosc        = (int)element.Ilosc
                };
                wartoscZamowienia += (element.Ilosc * element.Towar.Cena);
                db.PozycjeZamowienia.Add(pozycjaZamowienia);
            }

            zamowienie.Total = wartoscZamowienia;
            db.SaveChanges();
            UsunWszystkieZKoszyka();
            return(zamowienie.IdZamowienia);
        }
コード例 #4
0
ファイル: KoszykMenager.cs プロジェクト: MGalusz/Simple-shop
        public Zamowienie UtworzZamowienie(Zamowienie noweZamowienie, string userId)
        {
            var koszyk = PobierzKoszyk();

            noweZamowienie.DataDodania = DateTime.Now;
            noweZamowienie.UserId      = userId;

            db.Zamowienia.Add(noweZamowienie);

            if (noweZamowienie.PozycjeZamowienia == null)
            {
                noweZamowienie.PozycjeZamowienia = new List <PozycjaZamowienia>();
            }

            decimal koszykWartosc = 0;

            foreach (var koszykElement in koszyk)
            {
                var nowaPozycjaZamowniea = new PozycjaZamowienia()
                {
                    KursId     = koszykElement.Kurs.KursId,
                    Ilosc      = koszykElement.Ilosc,
                    CenaZakupu = koszykElement.Kurs.CenaKursu,
                };
                koszykWartosc += (koszykElement.Ilosc * koszykElement.Kurs.CenaKursu);
                noweZamowienie.PozycjeZamowienia.Add(nowaPozycjaZamowniea);
            }


            noweZamowienie.WartoscZamowienia = koszykWartosc;
            db.SaveChanges();

            return(noweZamowienie);
        }
コード例 #5
0
        public Zamowienie UtworzZamowienie(Zamowienie noweZamowienie, string userId)  //userId identyfikator użytkownika, którego dotyczy zamówienie
        {
            var koszyk = PobierzKoszyk();

            noweZamowienie.DataDodania = DateTime.Now;
            // noweZamowienie.UserId = userId;

            db.Zamowienia.Add(noweZamowienie);

            if (noweZamowienie.PozycjeZamowienia == null)
            {
                noweZamowienie.PozycjeZamowienia = new List <PozycjaZamowienia>();
            }

            decimal koszykWartosc = 0;

            foreach (var koszykElement in koszyk)
            {
                var nowaPozycjaZamowienia = new PozycjaZamowienia()
                {
                    SkarpetkiId = koszykElement.Skarpetki.SkarpetkiId,
                    Ilosc       = koszykElement.Ilosc,
                    CenaZakupu  = koszykElement.Skarpetki.Cena
                };

                koszykWartosc += (koszykElement.Ilosc * koszykElement.Skarpetki.Cena);
                noweZamowienie.PozycjeZamowienia.Add(nowaPozycjaZamowienia);
            }

            noweZamowienie.WartoscZamowienia = koszykWartosc;
            db.SaveChanges();

            return(noweZamowienie);
        }
コード例 #6
0
        public Zamowienie UtworzZamowienie(Zamowienie noweZamowienie, string userId)
        {
            var koszyk = PobierzKoszyk();

            noweZamowienie.DataDodania = DateTime.Now;
            noweZamowienie.UserId      = userId;

            db.Zamowienia.Add(noweZamowienie);

            if (noweZamowienie.PozycjeZamowienia == null)
            {
                noweZamowienie.PozycjeZamowienia = new List <PozycjaZamowienia>();
            }

            decimal koszykWartosc = 0;

            //Iteracja po wszystkich elementach w koszyku
            foreach (var koszykElement in koszyk)
            {
                var nowaPozycjaZamowienia = new PozycjaZamowienia()
                {
                    ZwierzeId  = koszykElement.Zwierze.ZwierzeId,
                    Ilosc      = koszykElement.Ilosc,
                    CenaZakupu = koszykElement.Zwierze.CenaZwierza
                };

                koszykWartosc += (koszykElement.Ilosc * koszykElement.Zwierze.CenaZwierza);
                noweZamowienie.PozycjeZamowienia.Add(nowaPozycjaZamowienia);
            }

            noweZamowienie.WartoscZamowienia = koszykWartosc;
            db.SaveChanges();

            return(noweZamowienie);
        }
コード例 #7
0
        public async Task <ActionResult> Kup(int id)
        {
            var zt = await _context.ZamowienieTemp.FirstOrDefaultAsync(z => z.IdZamowienieTemp == id);

            Zamowienie zamowienie = new Zamowienie(zt.Login, zt.Imie, zt.Nazwisko, zt.Ulica, zt.Miasto, zt.NumerDomu, zt.KodPocztowy, zt.NumerTelefonu, zt.Email, zt.Razem, zt.IDKraju, zt.Kraj);

            zamowienie.DataZamowienia = DateTime.Now;
            await _context.AddAsync(zamowienie);

            await _context.SaveChangesAsync();

            List <PozycjaZamowieniaTemp> pozycjaZamowieniaTemp = await _context.PozycjaZamowieniaTemp.Include(pzt => pzt.Produkt).Where(pzt => pzt.IdZamowienieTemp == zt.IdZamowienieTemp).ToListAsync();

            foreach (var element in pozycjaZamowieniaTemp)
            {
                var PozycjaZamowienia = new PozycjaZamowienia
                {
                    idProduktu   = element.idProduktu,
                    IdZamowienia = zamowienie.IdZamowienia,
                    Produkt      = element.Produkt,
                    Cena         = element.Produkt.Cena,
                    Ilosc        = element.Ilosc,
                };
                await _context.PozycjaZamowienia.AddAsync(PozycjaZamowienia);
            }
            await _context.SaveChangesAsync();

            return(View(zamowienie));
        }
コード例 #8
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void CzyDobrzeLiczyWartoscZamowienia()//Dla klasy Zamowienie metoda Wartosc Zamowienia czy dobrze liczy
        {
            var zam = new Zamowienie();
            var poz = new PozycjaZamowienia();

            zam.dataRealizacji             = DateTime.Now;
            zam.statusZamowienia           = false;
            zam.identyfikatorZamowienia    = "jeden";
            zam.potwierdzenieElektroniczne = true;
            poz.nazwaTowaru = "nazwa";
            poz.ilosc       = 5;
            poz.stawkaVat   = 23;
            double stawkaVat = poz.stawkaVat;

            poz.cenaJednostkowa = 20000;

            zam.DodajPozycjeZamowienia(poz);

            var poz1 = new PozycjaZamowienia();

            poz1.nazwaTowaru = "nazwa1";
            poz1.ilosc       = 3;
            poz1.stawkaVat   = 7;
            double stawkaVat1 = poz1.stawkaVat;

            poz1.cenaJednostkowa = 150;
            zam.DodajPozycjeZamowienia(poz1);

            //var wynik = 1.23 * (5 * 20000) + 1.07 * (3 * 150);
            var wynik = (1 + stawkaVat / 100) * (poz.ilosc * poz.cenaJednostkowa) + (1 + stawkaVat1 / 100) * (poz1.ilosc * poz1.cenaJednostkowa);

            Assert.That(zam.WartoscZamowienia(), Is.EqualTo(wynik));//dokładne podstawienie czy liczy jak powinno
        }
コード例 #9
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void CzyDobrzeLiczyWartoscZamowienia1()//Dla klasy Zamowienie metoda Wartosc Zamowienia czy dobrze liczy zamowienie przypadek 2
        {
            var zam = new Zamowienie();
            var poz = new PozycjaZamowienia();

            zam.dataRealizacji             = DateTime.Now;
            zam.statusZamowienia           = false;
            zam.identyfikatorZamowienia    = "jeden";
            zam.potwierdzenieElektroniczne = true;
            poz.nazwaTowaru = "nazwa";
            poz.ilosc       = 5;
            poz.stawkaVat   = 23;
            double stawkaVat = poz.stawkaVat;

            poz.cenaJednostkowa = 20000;

            zam.DodajPozycjeZamowienia(poz);

            var poz1 = new PozycjaZamowienia();

            poz1.nazwaTowaru = "nazwa1";
            poz1.ilosc       = 4;
            poz1.stawkaVat   = 15;
            double stawkaVat1 = poz1.stawkaVat;

            poz1.cenaJednostkowa = 15000;
            zam.DodajPozycjeZamowienia(poz1);

            //var wynik = 1.23 * (5 * 20000) + 1.15 * (4 * 15000);
            var wynik = (1 + stawkaVat / 100) * (poz.ilosc * poz.cenaJednostkowa) + (1 + stawkaVat1 / 100) * (poz1.ilosc * poz1.cenaJednostkowa);

            Assert.That(zam.WartoscZamowienia(), Is.EqualTo(wynik));// zmiana danych do sprawdzenia wyniku
        }
コード例 #10
0
        public Zamowienie UtworzZamowienie(Zamowienie Nowe, string userId)
        {
            var koszyk = PobierzKoszyk();

            Nowe.DataDowania = DateTime.Now;
            Nowe.UserId      = userId;

            db.Zamowienia.Add(Nowe);

            if (Nowe.PozycjaZamowienia == null)
            {
                Nowe.PozycjaZamowienia = new List <PozycjaZamowienia>();
            }

            decimal koszykWartosc = 0;

            foreach (var koszykElement in koszyk)
            {
                var nowaPozycjaZamowienia = new PozycjaZamowienia()
                {
                    JedzenieId = koszykElement.PozJedzenie.JedzenieID,
                    Ilosc      = koszykElement.Ilosc,
                    CenaZakupu = koszykElement.Wartosc
                };

                koszykWartosc += (koszykElement.Ilosc * koszykElement.Wartosc);
                Nowe.PozycjaZamowienia.Add(nowaPozycjaZamowienia);
            }

            Nowe.WartoscZamówienia = koszykWartosc;     //Wywalic polskie znaki
            db.SaveChanges();

            return(Nowe);
        }
コード例 #11
0
ファイル: ZakupController.cs プロジェクト: MaciejLacky/Firma
        public async Task <IActionResult> Dane([Bind("Login,Imie,Nazwisko,Ulica,Miasto,Wojewodztwo,KodPocztowy,Panstwo,NumerTelefonu,Email")] Zamowienie zamowienie)
        {
            if (ModelState.IsValid)
            {
                zamowienie.DataZamowienia = DateTime.Now;
                await _context.AddAsync(zamowienie);

                KoszykB koszykB         = new KoszykB(this._context, this.HttpContext);
                var     elementyKoszyka = await koszykB.GetElementyKoszyka();

                foreach (var element in elementyKoszyka)
                {
                    var pozycjaZamowienia = new PozycjaZamowienia
                    {
                        IdTowaru     = element.IdTowaru,
                        IdZamowienia = zamowienie.IdZamowienia,
                        Cena         = element.Towar.Cena,
                        Ilosc        = element.Ilosc
                    };
                    await _context.PozycjaZamowienia.AddAsync(pozycjaZamowienia);
                }

                zamowienie.Razem = await koszykB.GetRazem();

                await _context.SaveChangesAsync();

                return(RedirectToAction("Podsumowanie", new { id = zamowienie.IdZamowienia }));
            }
            return(View());
        }
コード例 #12
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void CzyDobrzeLiczyPodatekUjemne()// Dla klasy Pozycje Zamowienia metoda Oblicz Podatek ujemne wartości
        {
            var poz = new PozycjaZamowienia();

            poz.nazwaTowaru     = "nazwa";
            poz.ilosc           = 15;
            poz.stawkaVat       = 23;
            poz.cenaJednostkowa = -20000;

            Assert.Greater(poz.ObliczPodatek(), 0); // Brak obsłużonego wyjątku dla ujemej wartości, wynik powinien być większy od 0.
        }
コード例 #13
0
        public async Task <IActionResult> Create([Bind("IdPozycjiZamowienia,Ilosc,Cena,IdTowaru,IdZamowienia")] PozycjaZamowienia pozycjaZamowienia)
        {
            if (ModelState.IsValid)
            {
                _context.Add(pozycjaZamowienia);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(pozycjaZamowienia));
        }
コード例 #14
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void CzyDobrzeLiczyPodatek()// Dla klasy Pozycje Zamowienia metoda Oblicz Podatek
        {
            var poz   = new PozycjaZamowienia();
            var wynik = 0.23 * (15 * 20000);

            poz.nazwaTowaru     = "nazwa";
            poz.ilosc           = 15;
            poz.stawkaVat       = 23;
            poz.cenaJednostkowa = 20000;

            Assert.That(poz.ObliczPodatek(), Is.EqualTo(wynik));// podatek jesty równy dokładnie zmiennej wynik
        }
コード例 #15
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void CzyDobrzeLiczyBrutto()// Dla klasy Pozycje Zamowienia metoda Oblicz Brutto
        {
            var poz   = new PozycjaZamowienia();
            var wynik = 1.23 * (15 * 20000);

            poz.nazwaTowaru     = "nazwa";
            poz.ilosc           = 15;
            poz.stawkaVat       = 23;
            poz.cenaJednostkowa = 20000;

            Assert.That(poz.ObliczBrutto(), Is.EqualTo(wynik));
        }
コード例 #16
0
ファイル: KoszykManager.cs プロジェクト: dagmlec/TITS_proj
        public Zamowienie UtworzZamowienie(Zamowienie noweZamowienie, string userId)
        {
            var koszyk = PobierzKoszyk();

            noweZamowienie.DataDodania = DateTime.Now;
            noweZamowienie.UserId      = userId;

            db1.Zamowienia.Add(noweZamowienie);

            if (noweZamowienie.PozycjaZamowienia == null)
            {
                noweZamowienie.PozycjaZamowienia = new List <PozycjaZamowienia>();
            }

            decimal koszykWartosc = 0;

            foreach (var koszykElement in koszyk)
            {
                var produkt = db1.Produkt.FirstOrDefault(k => k.ProduktId == koszykElement.Produkty.ProduktId);

                //if (produkt.Ilosc <= 0)
                //{
                //    return;
                //}
                //else
                //{
                produkt.Ilosc -= koszykElement.Ilosc;

                db1.Entry(produkt).State = System.Data.Entity.EntityState.Modified;
                db1.SaveChanges();
                //}

                var nowaPozycjaZamowienia = new PozycjaZamowienia()
                {
                    ProduktId  = koszykElement.Produkty.ProduktId,
                    Ilosc      = koszykElement.Ilosc,
                    CenaZakupu = koszykElement.Produkty.CenaProduktu
                };

                koszykWartosc += (koszykElement.Ilosc * koszykElement.Produkty.CenaProduktu);
                noweZamowienie.PozycjaZamowienia.Add(nowaPozycjaZamowienia);
            }

            noweZamowienie.WartoscZamowienia = koszykWartosc;
            db1.SaveChanges();

            return(noweZamowienie);
        }
コード例 #17
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void CzyDodajePozycjeZamowienia()//Dla klasy Zamowienie metoda Dodaj Pozycje Zamowienia
        {
            var zam = new Zamowienie();
            var poz = new PozycjaZamowienia();

            zam.dataRealizacji             = DateTime.Now;
            zam.statusZamowienia           = false;
            zam.identyfikatorZamowienia    = "jeden";
            zam.potwierdzenieElektroniczne = true;
            poz.nazwaTowaru     = "nazwa";
            poz.ilosc           = 5;
            poz.stawkaVat       = 23;
            poz.cenaJednostkowa = 20000;

            var LiczbaPozycji = zam.pozycjeZamowienia.Count;

            zam.DodajPozycjeZamowienia(poz);

            Assert.That(zam.pozycjeZamowienia.Count, Is.EqualTo(LiczbaPozycji + 1));// Ilośc zamówień powinna być taka jak liczba pozycji +1.
        }
コード例 #18
0
ファイル: UnitTest1.cs プロジェクト: Qvein/Testy-jednostkowe
        public void TestZaplac()// Dla klasy Zamowienie metoda Oplac Zamowienie sprawdza czy zaplacone
        {
            var zam = new Zamowienie();
            var poz = new PozycjaZamowienia();

            zam.dataRealizacji             = DateTime.Now;
            zam.statusZamowienia           = false;
            zam.identyfikatorZamowienia    = "jeden";
            zam.potwierdzenieElektroniczne = true;
            poz.nazwaTowaru     = "nazwa";
            poz.ilosc           = 5;
            poz.stawkaVat       = 23;
            poz.cenaJednostkowa = 20000;

            zam.DodajPozycjeZamowienia(poz);

            byte   raty           = Convert.ToByte(20);
            string bank           = "ING";
            float  oprocentowanie = (float)Convert.ToDouble(20);
            var    platnosc       = new Kredyt(raty, bank, oprocentowanie);

            Assert.IsTrue(zam.OplacZamowienie(platnosc));// wartośc boolowska czy zaplacone zamówiebnie
        }
コード例 #19
0
        private void KupnoDyskuTwardego(int ja)
        {
            rozpoznawanieMowy.czyscSlownik();//przed rozpoznawaniem czyscimy slownik
            rozpoznawanieMowy.dodajSlowa(new string[] { "Wyjdź", "Powtórz" });

            ListaSprzetu = new CzytajZBazy().pobierzDyskiTwarde();

            for (int i = 0; i < ListaSprzetu.Count; i++)
            {
                ListaSprzetu[i].text = new CzytajZBazy().pobierzDyskTwardy(ListaSprzetu[i].idSprzetu).PobierzOpis();
            }

            SprzetVisible = Visibility.Visible;

            for (int i = 1; i <= ListaSprzetu.Count; i++)
            {
                rozpoznawanieMowy.dodajSlowa(i + ""); //czyta jedno zamiast 1, lel
            }
            for (int i = 1; i <= ListaSprzetu.Count; i++)
            {
                ListaSprzetu[i - 1].numerNaLiscie = i;
            }

            OnPropertyChanged("ListaSprzetu");

            //dodanie obsługi udanego rozpoznania
            rozpoznawanieMowy.SRE.SpeechRecognized += (object sender, SpeechRecognizedEventArgs e) => {
                if (string.Compare(e.Result.Text, "Wyjdź") == 0)
                {
                    stanRozmowy = StanyRozmowy.Pozegnanie;
                }
                else if (string.Compare(e.Result.Text, "Powtórz") == 0)
                {
                    stanRozmowy = (StanyRozmowy)ja;
                }
                else
                {
                    for (int i = 1; i <= ListaSprzetu.Count; i++)
                    {
                        if (string.Compare(i.ToString(), e.Result.Text) == 0)
                        {
                            Powiedz("Wybrałeś dysk numer " + i);
                            //Dispatcher
                            PozycjaZamowienia poz = new PozycjaZamowienia
                            {
                                sprzet = ListaSprzetu[i - 1],
                                liczba = 1
                            };

                            wybranySprzet = poz;
                            SprzetVisible = Visibility.Hidden;


                            stanRozmowy = StanyRozmowy.LiczbaSztuk;
                        }
                    }
                }
            };

            //dodanie obsługi jak się nie udało rozpoznać usera
            rozpoznawanieMowy.SRE.SpeechRecognitionRejected += (object sender, SpeechRecognitionRejectedEventArgs e) => {
                odpowiedzSystemu = parserXML.parsuj("NieRozpoznano.vxml");
                Powiedz(odpowiedzSystemu.Prompt);
                stanRozmowy = (StanyRozmowy)ja;
            };

            Powiedz("Który dysk cię interesuje, podaj numer");

            rozpoznawanieMowy.rozpoznajSlowoZeSlownika();//rozpoznaj slowo
        }