public ActionResult Create([Bind(Include = "ZamowieniaID,KlientID,WartoscZamowienia,DataZamowienia,DataRealizacji,Znizka")] Zamowienia zamowienia)
        {
            if (ModelState.IsValid)
            {
                db.Zamowienia.Add(zamowienia);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.KlientID = new SelectList(db.Klienci, "KlienciId", "NazwaFirmy", zamowienia.KlientID);
            return(View(zamowienia));
        }
        public ZamowienieResponseDto ZalozZamowienie(CreateZamowienieDto request)
        {
            foreach (var i in request.Wyroby)
            {
                if (!_context.WyrobyCukiernicze.Any(x => x.Nazwa == i.Wyrob))
                {
                    throw new InvalidOperationException("Wyrob juz istieje");
                }
            }

            var wyroby = _context.WyrobyCukiernicze.Where(we => request.Wyroby.Any(r => r.Wyrob == we.Nazwa)).ToList();

            var newOrder = new Zamowienie
            {
                DataPrzyjecia = request.DataPrzyjecia,
                Uwagi         = request.Uwagi,
            };

            var newOrderProduct = request.Wyroby.Select(w => new
            {
                Ilosc      = w.Ilosc,
                Uwagi      = w.Uwagi,
                Zamowienie = newOrder,
                Wyrob      = _context.WyrobyCukiernicze.Where(ww => ww.Nazwa == w.Wyrob).First()
            });

            _context.Zamowienia.Add(newOrder);

            _context.SaveChanges();

            return(null);
        }
Exemple #3
0
        public void AddOrder(int id, AddOrderRequest request)
        {
            if (!_context.Klients.Any(x => x.IdKlient == id))
            {
                throw new ArgumentException($"No client with id: {id} exists...");
            }

            foreach (var item in request.Wyroby)
            {
                var exists = _context.WyrobCukierniczys.Any(x => x.Nazwa.Equals(item.Nazwa));
                if (!exists)
                {
                    throw new FileNotFoundException($"There was now item named: {item.Nazwa}");
                }
            }

            int orderId = _context.Zamowienies.Max(x => x.IdZamowienia) + 1;

            _context.Zamowienies.Add(
                new Zamowienie
            {
                IdZamowienia  = orderId,
                DataPrzyjecia = request.DataPrzyjecia,
                Uwagi         = request.Uwagi,
                IdKlient      = id
            }
                );

            foreach (var item in request.Wyroby)
            {
                _context.ZamowienieWyrobCukierniczies.Add(
                    new Zamowienie_WyrobCukierniczy
                {
                    IdWyrobCukierniczy = _context.WyrobCukierniczys
                                         .Single(x => x.Nazwa.Equals(item.Nazwa))
                                         .IdWyrobCukierniczy,
                    IdZamowienia = orderId,
                    Ilosc        = item.Ilosc,
                    Uwagi        = item.Uwagi
                }
                    );
            }

            _context.SaveChanges();
        }
        public string AddNewOrder(int id, AddNewOrderRequest request)
        {
            var client = _context.Klient.FirstOrDefault(e => e.IdKlient == id);

            if (client == null)
            {
                throw new Exception("Nie ma takiego klienta!");
            }

            foreach (var wyrobRequest in request.wyroby)
            {
                var res = _context.WyrobCukierniczy.FirstOrDefault(e => e.Nazwa.Equals(wyrobRequest.wyrob));
                if (res == null)
                {
                    throw new Exception(wyrobRequest.wyrob + "- Nie ma takiego wyrobu!");
                }
            }

            Zamowienie zamowienie = new Zamowienie()
            {
                DataPrzyjecia = request.dataPrzyjecia,
                Uwagi         = request.uwagi,
                IdKlient      = id,
                IdPracownik   = 1,
                Zamowienie_WyrobCukierniczy = new List <Zamowienie_WyrobCukierniczy>()
            };

            foreach (var wyrobRequest in request.wyroby)
            {
                Zamowienie_WyrobCukierniczy zam_wyr = new Zamowienie_WyrobCukierniczy()
                {
                    IdWyrobuCukierniczego = _context.WyrobCukierniczy.First(e => e.Nazwa == wyrobRequest.wyrob).IdWyrobuCukierniczego,
                    Ilosc = wyrobRequest.ilosc,
                    Uwagi = wyrobRequest.uwagi
                };
                zamowienie.Zamowienie_WyrobCukierniczy.Add(zam_wyr);
            }

            _context.Zamowienie.Add(zamowienie);
            _context.SaveChanges();

            return("Złożono nowe zamówienie");
        }
        public void AddZamowienie(int id, AddZamowienieRequest request)
        {
            if (_context.Klienci.Any(x => x.IdKlient == id))
            {
                throw new NotFoundClientException($"Nie znaleziono klienta o id={id} ");
            }
            foreach (var wyrob in request.Wyroby)
            {
                var wyroby = _context.WyrobyCukiernicze.Any(x => x.Nazwa.Equals(wyrob.nazwa));
                if (!wyroby)
                {
                    throw new NotFoundWyrobException($"Nie znaleziono wyrobu o nazwie={wyrob.nazwa}");
                }
            }

            int orderId = _context.Zamowienia.Max(x => x.IdZamowienia) + 1;

            _context.Zamowienia.Add(
                new Zamowienie
            {
                IdZamowienia  = orderId,
                DataPrzyjecia = request.dataPrzyjecia,
                Uwagi         = request.Uwagi,
                IdKlient      = id
            }
                );
            foreach (var wyrob in request.Wyroby)
            {
                _context.Zamowienia_WyrobyCukiernicze.Add(
                    new Zamowienie_WyrobCukierniczy
                {
                    IdWyrobuCukierniczego = _context.WyrobyCukiernicze
                                            .Single(x => x.Nazwa.Equals(wyrob.nazwa))
                                            .IdWyrobuCukierniczego,
                    IdZamowienia = orderId,
                    Ilosc        = wyrob.ilosc,
                    Uwagi        = wyrob.uwagi
                }
                    );
            }

            _context.SaveChanges();
        }