예제 #1
0
        public ActualizeazaAngajat(int id_angajat)
        {
            InitializeComponent();

            using (var context = new HramulEntities())
            {
                Angajati angajat = (from a in context.Angajatis
                                    where a.ID_ANGAJAT == id_angajat
                                    select a).First();

                tbNume.Text    = angajat.Nume;
                tbPrenume.Text = angajat.Prenume;
                tbFunctie.Text = angajat.Functie;
                tbAdresa.Text  = angajat.Adresa;
                cbRating.Text  = angajat.Rating.ToString();

                cbDepartament.Text = (from d in context.Departamentes
                                      where d.ID_DEPARTAMENT == angajat.ID_DEPARTAMENT
                                      select d.Denumire).First();

                tbSalariu.Text = (from s in context.State_de_platas
                                  where s.TIP_PLATA.Equals("SALARIU")
                                  where s.ID_ANGAJAT == 12
                                  select s.Suma).First().ToString();

                btSalveaza.Name   = "Actualizeaza";
                btSalveaza.Text   = "Actualizeaza";
                btSalveaza.Click -= btSalveaza_Click;
                btSalveaza.Click += (sender, e) => btActualizeaza_Click(id_angajat);

                FormBorderStyle = FormBorderStyle.FixedToolWindow;
            }
        }
예제 #2
0
        private void btActualizeaza_Click(int id_angajat)
        {
            string  nume = null, prenume = null, adresa = null, functie = null, denumire = null;
            decimal salariu = 0;
            double  rating  = 1;

            try
            {
                if (Regex.IsMatch(tbNume.Text, "^[A-Z][a-z]*"))
                {
                    nume = tbNume.Text;
                }
                else
                {
                    throw new Exception("Numele trebuie sa contina doar litere si sa inceapa cu litera mare");
                }

                if (Regex.IsMatch(tbPrenume.Text, "[A-Z][a-z]*"))
                {
                    prenume = tbPrenume.Text;
                }
                else
                {
                    throw new Exception("Prenumele trebuie sa contina doar litere si sa inceapa cu litera mare");
                }

                if (!tbAdresa.Text.Equals(""))
                {
                    adresa = tbAdresa.Text;
                }
                else
                {
                    throw new Exception("Adresa trebuie sa nu fie nula");
                }

                rating = double.Parse(cbRating.SelectedValue.ToString());

                if (Regex.IsMatch(tbFunctie.Text, "[A-Z][a-z]*"))
                {
                    functie = tbFunctie.Text;
                }
                else
                {
                    throw new Exception("Functia trebuie sa contina doar litere si sa inceapa cu litera mare");
                }

                salariu  = decimal.Parse(tbSalariu.Text);
                denumire = cbDepartament.SelectedValue.ToString();
            }
            catch (FormatException exception)
            {
                MessageBox.Show("Salariul trebuie sa fie de tip float", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            using (var context = new HramulEntities())
            {
                Angajati angajat = (from a in context.Angajatis
                                    where a.ID_ANGAJAT == id_angajat
                                    select a).First();

                State_de_plata stat = (from s in context.State_de_platas
                                       where s.ID_ANGAJAT == id_angajat
                                       where s.Data.Value.Year == DateTime.Today.Year
                                       where s.Data.Value.Month == DateTime.Today.Month
                                       select s).First();

                int departament_id = (from d in context.Departamentes
                                      where d.Denumire.Equals(denumire)
                                      select d.ID_DEPARTAMENT).First();

                angajat.Nume           = nume;
                angajat.Prenume        = prenume;
                angajat.Functie        = functie;
                angajat.Rating         = rating;
                angajat.Adresa         = adresa;
                angajat.ID_DEPARTAMENT = departament_id;

                stat.Suma = salariu;

                context.SaveChanges();
            }

            MessageBox.Show("Angajatul a fost actualizat!");

            Hide();
        }
예제 #3
0
        protected void btSalveaza_Click(object sender, EventArgs e)
        {
            string  nume = null, prenume = null, adresa = null, functie = null, denumire = null;
            decimal salariu = 0;
            double  rating  = 1;

            try
            {
                if (Regex.IsMatch(tbNume.Text, "^[A-Z][a-z]*"))
                {
                    nume = tbNume.Text;
                }
                else
                {
                    throw new Exception("Numele trebuie sa contina doar litere si sa inceapa cu litera mare");
                }

                if (Regex.IsMatch(tbPrenume.Text, "[A-Z][a-z]*"))
                {
                    prenume = tbPrenume.Text;
                }
                else
                {
                    throw new Exception("Prenumele trebuie sa contina doar litere si sa inceapa cu litera mare");
                }

                if (!tbAdresa.Text.Equals(""))
                {
                    adresa = tbAdresa.Text;
                }
                else
                {
                    throw new Exception("Adresa trebuie sa nu fie nula");
                }

                rating = double.Parse(cbRating.SelectedValue.ToString());

                if (Regex.IsMatch(tbFunctie.Text, "[A-Z][a-z]*"))
                {
                    functie = tbFunctie.Text;
                }
                else
                {
                    throw new Exception("Functia trebuie sa contina doar litere si sa inceapa cu litera mare");
                }

                salariu  = decimal.Parse(tbSalariu.Text);
                denumire = cbDepartament.SelectedValue.ToString();
            }
            catch (FormatException exception)
            {
                MessageBox.Show("Salariul trebuie sa fie de tip float", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            using (var context = new HramulEntities())
            {
                Departamente departament = (from d in context.Departamentes
                                            where d.Denumire.Equals(denumire)
                                            select d).First();

                Angajati angajat = new Angajati
                {
                    Nume         = nume,
                    Prenume      = prenume,
                    Adresa       = adresa,
                    Rating       = rating,
                    Functie      = functie,
                    Activ        = true,
                    Departamente = departament
                };

                State_de_plata stat = new State_de_plata
                {
                    Suma      = salariu,
                    TIP_PLATA = "SALARIU",
                    Data      = DateTime.Today,
                    Angajati  = angajat
                };


                context.Angajatis.Add(angajat);
                context.State_de_platas.Add(stat);

                context.SaveChanges();

                MessageBox.Show("Angajatul a fost adaugat!");

                Hide();
            }
        }