public ActionResult Edit([Bind(Include = "id,grupa_robocza,obslugiwana_maszyna,wynagrodzenie,dane_personalne")] pracownicy pracownicy)
        {
            if (ModelState.IsValid)
            {
                var machine = TempData["lastMachine"] != null?db.maszyny.Find(TempData["lastMachine"]) : null;

                if (pracownicy.obslugiwana_maszyna == 0 && machine != null)
                {
                    machine.zajeta = false;
                    pracownicy.obslugiwana_maszyna = null;
                }
                else if (pracownicy.obslugiwana_maszyna != 0)
                {
                    db.maszyny.Find(pracownicy.obslugiwana_maszyna).zajeta = true;
                }
                else
                {
                    pracownicy.obslugiwana_maszyna = null;
                }

                db.Entry(pracownicy).State = EntityState.Modified;

                if (machine != null)
                {
                    db.Entry(machine).State = EntityState.Modified;
                }

                db.Entry(pracownicy.dane_personalne).State = EntityState.Modified;
                db.SaveChanges();

                return(RedirectToAction("Index"));
            }

            return(View(pracownicy));
        }
        private void K_Button_Zatwierdź_Numer_Pracownika_Click(object sender, RoutedEventArgs e)
        {
            if (TextBox_Haslo.Text == "programowanie")
            {
                Pracownicy        = Pracownicy.Odczytaj_Pracowników_XML("pracownicy.xml") as pracownicy;
                lista_pracowników = new ObservableCollection <pracownik>(Pracownicy.Pracownicy);
                bool numer = false;
                pracownik_Window.Identyfikator = TextBox_Numer_Pracownika.Text;

                numer = Pracownicy.sprawdzenie(pracownik_Window);
                Pracownik_Menu_Window pracownik_menu = new Pracownik_Menu_Window();
                if (numer)
                {
                    pracownik_Window = Pracownicy.Pobierz(pracownik_Window.Identyfikator) as pracownik;

                    string        nazwa      = "pracownik.xml";
                    XmlSerializer serializer = new XmlSerializer(typeof(pracownik));
                    StreamWriter  writer     = new StreamWriter(nazwa);
                    serializer.Serialize(writer, pracownik_Window);
                    writer.Close();
                    pracownik_menu.Show();
                }
                else
                {
                    MessageBox.Show("Podano zły identyfikator");
                }
            }
            else
            {
                MessageBox.Show("Złe hasło");
            }
        }
 public lista_pracownikow_Window()
 {
     MoveBottomRightEdgeOfWindow();
     InitializeComponent();
     Pracownicy                  = Pracownicy.Odczytaj_Pracowników_XML("pracownicy.xml") as pracownicy;
     lista_pracownikow           = new ObservableCollection <pracownik>(Pracownicy.Pracownicy);
     pracownicy_list.ItemsSource = lista_pracownikow;
 }
        public ActionResult DeleteConfirmed(int id)
        {
            pracownicy pracownicy = db.pracownicy.Find(id);

            db.pracownicy.Remove(pracownicy);
            db.dane_personalne.Remove(db.dane_personalne.Find(id));
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        // GET: Workers/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            pracownicy pracownicy = db.pracownicy.Find(id);

            if (pracownicy == null)
            {
                return(HttpNotFound());
            }
            return(View(pracownicy));
        }
        public ActionResult Create([Bind(Include = "id,grupa_robocza,obslugiwana_maszyna,wynagrodzenie,dane_personalne")] pracownicy pracownicy)
        {
            if (ModelState.IsValid)
            {
                db.pracownicy.Add(pracownicy);

                var machine = pracownicy.obslugiwana_maszyna != 0 ? db.maszyny.Find(pracownicy.obslugiwana_maszyna) : null;

                if (machine != null)
                {
                    machine.zajeta          = true;
                    db.Entry(machine).State = EntityState.Modified;
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(pracownicy));
        }
        // GET: Workers/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            pracownicy pracownicy = db.pracownicy.Find(id);

            if (pracownicy == null)
            {
                return(HttpNotFound());
            }

            ViewBag.id            = new SelectList(db.dane_personalne, "id", "imie", pracownicy.id);
            ViewBag.grupa_robocza = new SelectList(db.grupy_robocze, "id", "specjalizacja", pracownicy.grupa_robocza);

            TempData["lastMachine"] = pracownicy.obslugiwana_maszyna;

            ViewBag.obslugiwana_maszyna = new List <SelectListItem>()
            {
                new SelectListItem()
                {
                    Value    = "0",
                    Text     = "BRAK MASZYNY",
                    Selected = pracownicy.obslugiwana_maszyna == 0 ? true : false
                }
            }.Concat(db.maszyny.Select(x => new SelectListItem()
            {
                Value    = x.id.ToString(),
                Text     = x.nazwa,
                Selected = x.id == pracownicy.obslugiwana_maszyna,
                Disabled = !x.sprawna || (x.zajeta && x.id != pracownicy.obslugiwana_maszyna)
            }));

            TempData["pesel"] = pracownicy.dane_personalne.pesel;

            return(View(pracownicy));
        }