Exemple #1
0
        public ZamowieniaResponse AddNewOrder(int?Id, ZamowienieRequest zamowienieRequest)
        {
            if (Id == null)
            {
                return(null);
            }

            //foreach (var item in zamowienieRequest.Zawartosc)
            //{
            //    if (string.IsNullOrWhiteSpace(item.Nazwa))
            //    {
            //        return null;
            //    }
            //};

            var zamowienie = new Zamowienie()
            {
                DataPrzyjecia  = zamowienieRequest.DataPrzyjecia,
                DataRealizacji = zamowienieRequest.DataRealizacji,
                IdPracownik    = zamowienieRequest.IdPracownik,
                Uwagi          = zamowienieRequest.Uwagi,
                IdKlient       = (int)Id
            };

            context.Zamowienia.Add(zamowienie);
            context.SaveChanges();

            List <string> list = new List <string>();

            foreach (var item in zamowienieRequest.Zawartosc)
            {
                var szukaneIdWyrobu = context.WyrobyCukiernicze.FirstOrDefault(e => e.Nazwa == item.Nazwa);

                var zamowienieWyrob = new Zamowienie_WyrobCukierniczy()
                {
                    IdWyrobu     = szukaneIdWyrobu.IdWyrobu,
                    Uwagi        = item.Uwagi,
                    Ilosc        = item.Ilosc,
                    IdZamowienia = zamowienie.IdZamowienia
                };
                context.Zamówienia_WyrobyCukiernicze.Add(zamowienieWyrob);
                list.Add(item.Nazwa);
            }
            context.SaveChanges();

            var result = new ZamowieniaResponse()
            {
                DataPrzyjecia  = zamowienieRequest.DataPrzyjecia,
                DataRealizacji = zamowienieRequest.DataRealizacji,
                IdPracownik    = zamowienieRequest.IdPracownik,
                Uwagi          = zamowienieRequest.Uwagi,
                IdKlient       = (int)Id,
                IdZamowienia   = 10, // dla tstu wpisana randomowa liczba
                Zawartosc      = list
            };


            return(result);
        }
        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");
        }
Exemple #3
0
        public IActionResult AddOrder(NoweZamowienie NoweZamowienie, int idKlient)
        {
            NoweZamowienie nowe = new NoweZamowienie {
                DataPrzyjecia     = NoweZamowienie.DataPrzyjecia,
                Ilosc             = NoweZamowienie.Ilosc,
                UwagiDoWypieku    = NoweZamowienie.UwagiDoWypieku,
                UwagiDoZamowienia = NoweZamowienie.UwagiDoZamowienia,
                ListaWyrobow      = NoweZamowienie.ListaWyrobow
            };

            var listOfProducts = _dbcontext.BakeryProduct.Any(e => e.Equals(nowe.ListaWyrobow.Select(e => e.typ)));

            if (!listOfProducts)
            {
                BadRequest("Baza nie dysponuje produktami tego typu");
            }

            Zamowienie zamowienie = new Zamowienie
            {
                DataPrzyjecia = nowe.DataPrzyjecia,
                Uwagi         = nowe.UwagiDoZamowienia,
                IdKlient      = idKlient,
            };

            _dbcontext.BakeryOrders.Add(zamowienie);
            _dbcontext.SaveChanges();

            Zamowienie_WyrobCukierniczy zam_wyrob = new Zamowienie_WyrobCukierniczy
            {
                IdZamowienie = zamowienie.IdZamowienie,
                Ilosc        = nowe.Ilosc,
                Uwagi        = nowe.UwagiDoWypieku,
            };

            _dbcontext.BakeryProduct_Order.Add(zam_wyrob);
            _dbcontext.SaveChanges();

            List <NoweZamowienie> listaRes = null;

            listaRes.Add(nowe);
            return(Ok(listaRes));
        }
        public GetZamowienieResponse AddZamowienie(AddOrderRequest request, int id)
        {
            int idPrac = 1;
            var klient = _context.Klienci.Where(k => k.IdKlient == id).FirstOrDefault();

            if (klient == null)
            {
                throw new Exception("nie znaleziono klienta o takim id");
            }
            GetZamowienieResponse response = new GetZamowienieResponse();

            response.IdKlienta    = klient.IdKlient;
            response.IdPracownika = idPrac;
            response.Uwagi        = request.Uwagi;

            List <GetWyrobResponse> list = new List <GetWyrobResponse>();

            string   pattern = "dd.MM.yyyy";
            DateTime parsedDate;

            if (!DateTime.TryParseExact(request.DataPrzyjecia, pattern, null, DateTimeStyles.None, out parsedDate))
            {
                throw new Exception("niepoprawna data");
            }

            Zamowienie order = new Zamowienie
            {
                IdKlienta      = id,
                IdPracownika   = idPrac,
                DataPrzyjecia  = parsedDate,
                DataRealizacji = DateTime.Now,
                Uwagi          = request.Uwagi
            };

            _context.Add(order);
            _context.SaveChanges();

            int newId = order.IdZamowienia;

            response.IdZamowienia = newId;



            foreach (var wyrob in request.Wyroby)
            {
                //var resp = new GetWyrobResponse();
                var w = _context.WyrobyCukiernicze.Where(w => w.Nazwa == wyrob.Nazwa).FirstOrDefault();
                if (w == null)
                {
                    _context.Remove(order);
                    _context.SaveChanges();
                    throw new Exception("nie ma wyrobu o nazwie: " + wyrob.Nazwa);
                }

                Zamowienie_WyrobCukierniczy zamowienie_wyrob = new Zamowienie_WyrobCukierniczy
                {
                    IdZamowienia          = newId,
                    IdWyrobuCukierniczego = w.IdWyrobuCukierniczego,
                    Ilosc = wyrob.Ilosc,
                    Uwagi = wyrob.Uwagi
                };
                _context.Zamowienia_WyrobyCukiernicze.Add(zamowienie_wyrob);


                list.Add(new GetWyrobResponse {
                    IdWyrobu = w.IdWyrobuCukierniczego, Ilosc = wyrob.Ilosc, Nazwa = wyrob.Nazwa, Uwagi = wyrob.Uwagi
                });
            }
            response.Wyrob = list;

            _context.SaveChanges();
            return(response);
        }