public ActionResult DodajOferte(OfertaViewModel ofertaVM)
        {
            if (ofertaVM.TypZakwaterowaniaViewModel == "HotelPartial" && ofertaVM.Liczba_gwiazdek != 0)
            {
            if (ModelState.IsValid)
            {
                using (var transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        Oferta oferta = new Oferta()
                        {

                            Nazwa_oferty = ofertaVM.Nazwa_oferty,
                            Data_od = ofertaVM.Data_od,
                            Data_do = ofertaVM.Data_do,
                            Cena_za_miejsce = ofertaVM.Cena_za_miejsce,
                            Opis_promocji = ofertaVM.Opis_promocji

                        };
                        db.Oferta.Add(oferta);
                        db.SaveChanges();

                        Transport transport = new Transport()
                        {
                            Transport_z = ofertaVM.Transport_z,
                            Transport_do = ofertaVM.Transport_do,
                            Typ_transportu = ofertaVM.Typ_transportu,
                            Data_od = ofertaVM.Data_do,
                            Data_do = ofertaVM.Data_do,
                            Id_oferty = oferta.Id_oferty

                        };
                        Zakwaterowanie zakwaterowanie = new Zakwaterowanie
                        {
                            Lokalizacja = ofertaVM.Lokalizacja,
                            Adres = ofertaVM.Adres,
                            Rodzaj_wyzywienia = ofertaVM.Rodzaj_wyzywienia,
                            Kraj = ofertaVM.Kraj,
                            Cena_za_dobe = ofertaVM.Cena_za_dobe,
                            Id_regionu = ofertaVM.SelectedRegion,
                            Opis = ofertaVM.Opis,
                            Hotel = new Hotel()
                            {
                                Liczba_gwiazdek = ofertaVM.Liczba_gwiazdek
                            }
                        };

                        oferta.Zakwaterowanie.Add(zakwaterowanie);

                        db.Zakwaterowanie.Add(zakwaterowanie);
                        db.Transport.Add(transport);
                        db.SaveChanges();
                        transaction.Commit();
                        return RedirectToAction("Index", "Pracownik_biurowy");

                    }
                    catch (Exception e)
                    {

                        Console.WriteLine(e);
                        ModelState.AddModelError(string.Empty,e);
                        transaction.Rollback();
                        return View(ofertaVM);
                    }
                }
            }
            else
            {

                string validationErrors = string.Join("\r\n",
                 ModelState.Values.Where(e => e.Errors.Count > 0)
                 .SelectMany(e => e.Errors)
                 .Select(e => e.ErrorMessage)
                 .ToArray());

                return View(ofertaVM);
            }
            }
            if (ofertaVM.TypZakwaterowaniaViewModel == "PensjonatPartial" && !string.IsNullOrEmpty(ofertaVM.Standard))
            {
                if (ModelState.IsValid)
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        try
                        {
                            Oferta oferta = new Oferta()
                            {

                                Nazwa_oferty = ofertaVM.Nazwa_oferty,
                                Data_od = ofertaVM.Data_od,
                                Data_do = ofertaVM.Data_do,
                                Cena_za_miejsce = ofertaVM.Cena_za_miejsce,
                                Opis_promocji = ofertaVM.Opis_promocji

                            };
                            db.Oferta.Add(oferta);
                            db.SaveChanges();

                            Transport transport = new Transport()
                            {
                                Transport_z = ofertaVM.Transport_z,
                                Transport_do = ofertaVM.Transport_do,
                                Typ_transportu = ofertaVM.Typ_transportu,
                                Data_od = ofertaVM.Data_do,
                                Data_do = ofertaVM.Data_do,
                                Id_oferty = oferta.Id_oferty

                            };
                            Zakwaterowanie zakwaterowanie = new Zakwaterowanie
                            {
                                Lokalizacja = ofertaVM.Lokalizacja,
                                Adres = ofertaVM.Adres,
                                Rodzaj_wyzywienia = ofertaVM.Rodzaj_wyzywienia,
                                Kraj = ofertaVM.Kraj,
                                Cena_za_dobe = ofertaVM.Cena_za_dobe,
                                Id_regionu = ofertaVM.SelectedRegion,
                                Opis = ofertaVM.Opis,
                                Pensjonat = new Pensjonat()
                                {
                                    Standard = ofertaVM.Standard
                                }
                            };

                            oferta.Zakwaterowanie.Add(zakwaterowanie);

                            db.Zakwaterowanie.Add(zakwaterowanie);
                            db.Transport.Add(transport);
                            db.SaveChanges();
                            transaction.Commit();
                            return RedirectToAction("Index", "Pracownik_biurowy");
                        }
                        catch (Exception e)
                        {
                            Console.WriteLine(e);
                           transaction.Rollback();
                           return View(ofertaVM);
                        }
                    }
                }
                else
                {

                    string validationErrors = string.Join("\r\n",
                     ModelState.Values.Where(e => e.Errors.Count > 0)
                     .SelectMany(e => e.Errors)
                     .Select(e => e.ErrorMessage)
                     .ToArray());

                    return View(ofertaVM);
                }
            }
            else
            {
                ModelState.AddModelError(string.Empty,"Nie został wprowadzony standard lub liczba gwiazdek");
            }
            return View(ofertaVM);
        }
 public ActionResult DodajPromocje(Oferta ofertaZpromocja)
 {
     if (ModelState.IsValid)
     {
         db.Entry(ofertaZpromocja).State = EntityState.Modified;
         db.SaveChanges();
         return RedirectToAction("Index");
     }
     return View();
 }