private String sprawdzDaneOsobowe()
        {
            KontrolaDanych kontrola = new KontrolaDanych();
            String         uwagi    = "";

            if (typKlienta.Equals("firma"))
            {
                if (String.IsNullOrWhiteSpace(tbNazwaFirmy.Text) || String.IsNullOrWhiteSpace(tbNIP.Text))
                {
                    uwagi += "Nazwa firmy lub NIP są puste\n";
                }
                if (tbNazwaFirmy.Text.Length > 50)
                {
                    uwagi += "Nazwa firmy nie może być dłuższa niż 50 znaków\n";
                }
                if (!kontrola.CheckOnlyNumber(tbNIP.Text) || tbNIP.Text.Length != 10)
                {
                    uwagi += "NIP musi składać się z 10 cyfr\n";
                }
            }
            else if (typKlienta.Equals("indywidualny"))
            {
                String[] imieNazwisko = tbImieNazwisko.Text.Split(' ');

                if (String.IsNullOrWhiteSpace(tbImieNazwisko.Text))
                {
                    uwagi += "Proszę podać imię i nazwisko\n";
                }
                else if (imieNazwisko.Length != 2 || tbImieNazwisko.Text.StartsWith(" ") || tbImieNazwisko.Text.EndsWith(" "))
                {
                    uwagi += "W polu \"Imię i nazwisko\" należy podać dwa ciągi znaków oddzielone spacją, np. 'Jan Kowalski'\n";
                }
                else if (imieNazwisko.Length == 2 && (imieNazwisko[0].Length > 50 || imieNazwisko[1].Length > 50))
                {
                    uwagi += "Imię i nazwisko nie mogą mieć więcej niż po 50 znaków każde\n";
                }
            }
            if (String.IsNullOrWhiteSpace(tbUlicaNr.Text) || String.IsNullOrWhiteSpace(tbMiasto.Text) || String.IsNullOrWhiteSpace(tbKodPocztowy.Text))
            {
                uwagi += "Pola Adres, Miasto i Kod nie mogą być puste\n";
            }
            if (tbUlicaNr.Text.Length > 50 || tbMiasto.Text.Length > 50)
            {
                uwagi += "Pola Adres oraz Miasto nie mogą być dłuższe niż 50 znaków\n";
            }
            if (!kontrola.CheckPostCode(tbKodPocztowy.Text) || tbKodPocztowy.Text.Length > 10)
            {
                uwagi += "Kod pocztowy może składać się z maksymalnie 10 znaków (cyfr i opcjonalnie jednego myślnika).\n";
            }
            return(uwagi);
        }
Ejemplo n.º 2
0
        private void button1_Click(object sender, EventArgs e)
        {
            String         conS = Properties.Settings.Default.projektCS;
            SqlConnection  sqlC = new SqlConnection(conS);
            SqlCommand     cmd  = new SqlCommand();
            SqlDataReader  rd;
            KontrolaDanych kontrola = new KontrolaDanych();

            if (textBox1.Text.Equals("") || textBox2.Text.Equals("") || textBox3.Text.Equals("") || textBox4.Text.Equals("") || textBox5.Text.Equals("") ||
                textBox6.Text.Equals("") || textBox7.Text.Equals(""))
            {
                MessageBox.Show("Proszę uzupełnić wszystkie pola.", "Uwaga", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if ((textBox3.Text.Length > 50 || textBox4.Text.Length > 50) && radioButton1.Checked)
            {
                MessageBox.Show("Maksymalnie 50 znaków dla pól: Imię, Nazwisko.", "Uwaga", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (textBox3.Text.Length > 50 && radioButton2.Checked)
            {
                MessageBox.Show("Maksymalnie 50 znaków dla pola: Nazwa Firmy.", "Uwaga", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (textBox4.Text.Length != 10 && radioButton2.Checked)
            {
                MessageBox.Show("NIP posiada dokładnie 10 znaków.", "Uwaga", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (radioButton2.Checked && !kontrola.CheckOnlyNumber(textBox4.Text))
            {
                MessageBox.Show("NIP składa się tylko z 10 cyfr.", "Uwaga", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (textBox5.Text.Length > 50 || textBox6.Text.Length > 50)
            {
                MessageBox.Show("Maksymalnie 50 znaków dla pól: Miasto, Adres.", "Uwaga", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else if (!kontrola.CheckPostCode(textBox7.Text) || textBox7.Text.Length > 10)
            {
                MessageBox.Show("Kod pocztowy składa się z maksymalnie 10 znaków (cyfr i opcjonalnie jednego myślnika).", "Uwaga", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                cmd.Connection  = sqlC;
                cmd.CommandText = "select 1 from dbo.DaneLogowania where [login] = @login";
                cmd.CommandType = CommandType.Text;
                cmd.Parameters.Add(new SqlParameter("@login", textBox1.Text));

                sqlC.Open();
                rd = cmd.ExecuteReader();
                if (rd.Read())
                {
                    MessageBox.Show("Wprowadź inną nazwę użytkownika.", "Ten login już istnieje!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    sqlC.Close();
                }
                else
                {
                    sqlC.Close();
                    cmd.CommandText = "SELECT current_value FROM sys.sequences WHERE name = 'Klient_seq'";
                    cmd.CommandType = CommandType.Text;
                    sqlC.Open();
                    rd = cmd.ExecuteReader();
                    string id_klienta = "";
                    if (rd.Read())
                    {
                        id_klienta = (Convert.ToInt32(rd[0].ToString()) + 1).ToString();
                    }
                    sqlC.Close();



                    cmd.CommandText = "insert into dbo.Klient ( [miasto],[kod_pocztowy], [ulica_nr_domu],[imie],[nazwisko],[nazwa_firmy],[NIP]) values " +
                                      "( @miasto, @kod_pocztowy, @ulica, @imie, @nazwisko, @firma, @NIP)";
                    cmd.CommandType = CommandType.Text;
                    cmd.Parameters.Add(new SqlParameter("@miasto", textBox5.Text));
                    cmd.Parameters.Add(new SqlParameter("@kod_pocztowy", textBox7.Text));
                    cmd.Parameters.Add(new SqlParameter("@ulica", textBox6.Text));


                    if (radioButton1.Checked)
                    {
                        cmd.Parameters.Add(new SqlParameter("@imie", textBox3.Text));
                        cmd.Parameters.Add(new SqlParameter("@nazwisko", textBox4.Text));
                        cmd.Parameters.Add(new SqlParameter("@firma", DBNull.Value));
                        cmd.Parameters.Add(new SqlParameter("@NIP", DBNull.Value));
                    }
                    else
                    {
                        cmd.Parameters.Add(new SqlParameter("@firma", textBox3.Text));
                        cmd.Parameters.Add(new SqlParameter("@NIP", textBox4.Text));
                        cmd.Parameters.Add(new SqlParameter("@imie", DBNull.Value));
                        cmd.Parameters.Add(new SqlParameter("@nazwisko", DBNull.Value));
                    }

                    sqlC.Open();
                    cmd.ExecuteNonQuery();
                    sqlC.Close();


                    cmd.CommandText = "insert into dbo.DaneLogowania ([login], [haslo], [przywileje], [id_klienta], [status]) values " +
                                      "(@login2, @haslo, 'user', @id_klienta, 'aktywny')";
                    cmd.CommandType = CommandType.Text;
                    cmd.Parameters.Add(new SqlParameter("@login2", textBox1.Text));
                    cmd.Parameters.Add(new SqlParameter("@haslo", textBox2.Text));
                    cmd.Parameters.Add(new SqlParameter("@id_klienta", id_klienta));

                    sqlC.Open();
                    cmd.ExecuteNonQuery();
                    sqlC.Close();

                    Close();
                }
            }
        }