Example #1
0
        //Methode voor het opslaan / aanmaken van een klant
        private void btnOpslaan_Click(object sender, EventArgs e)
        {
            //Validatie
            if (Validation.hasValidationErrors(this.Controls))
            {
                return;
            }
            //als validatie geslaagd is

            /*Voor de knop opslaan heb je 2 mogelijkheden, of je gaat een bestaande chauffeur updaten
             * (btnOpslaan) en of je gaat een nieuwe aanmaken (btnAanmaken), passende methoden oproepen
             * bij de verschillende namen */
            if (btnOpslaan.Name == "btnOpslaan")
            {
                //nieuwe klant aanmaken
                klant updateKlant = new klant();

                //Oude klant opahlen
                klant oudeKlant = (klant)cbbID.SelectedItem;

                //deze "nieuwe" klant opvullen met gegevens op basis van de te updaten klant
                updateKlant.klant_id = oudeKlant.klant_id;
                updateKlant.naam     = txtNaam.Text;

                //titel mag leeg zijn
                updateKlant.titel             = cbbTitel.Text;
                updateKlant.activiteit        = cbbActiviteit.Text;
                updateKlant.verantwoordelijke = txtVerantwoordelijke.Text;
                updateKlant.telefoon          = txtTelefoon.Text;
                updateKlant.gsm        = txtGsm.Text;
                updateKlant.fax        = txtFax.Text;
                updateKlant.email      = txtEmail.Text;
                updateKlant.btw_nummer = txtBTW.Text;

                int korting;
                if (txtKorting.Text == "")
                {
                    korting = 0;
                }
                else
                {
                    korting = Convert.ToInt32(txtKorting.Text);
                }
                updateKlant.korting             = korting;
                updateKlant.vervaldagen_offerte = txtVervaldagenOfferte.Text;
                updateKlant.vervaldagen_factuur = txtVervalDagenFactuur.Text;
                updateKlant.aantal_facturen     = txtAantalFacturen.Text;
                updateKlant.memo = txtMemo.Text;

                //Adres updaten
                //Eerst oude relatie verwijderen en dan nieuwe maken, gedaan in methode updateAdresVanKlant();
                locatie Adres = (locatie)cbbAdres.SelectedItem;
                KlantManagement.updateAdresVanKlant(oudeKlant.klant_id, Adres.locatie_id, "Adres");

                KlantManagement.updateKlant(updateKlant);

                //Eerste alle opstapplaatsen verwijderen
                OpstapplaatsManagement.deleteOpstapplaatsen(updateKlant.klant_id);

                //Opstapplaatsen updaten
                foreach (ComboBox cbbOpstap in flpOpstapplaats.Controls)
                {
                    //Dan nieuwe toevoegen
                    locatie       opstapLocatie       = (locatie)cbbOpstap.SelectedItem;
                    locatie_klant opstapLocatie_nieuw = new locatie_klant();
                    opstapLocatie_nieuw.klant_id = updateKlant.klant_id;
                    opstapLocatie_nieuw.locatie  = opstapLocatie;
                    opstapLocatie_nieuw.type     = "Opstapplaats";

                    OpstapplaatsManagement.addOpstapplaats(opstapLocatie_nieuw);
                }

                MainForm.updateStatus = "Klant: " + updateKlant.naam + ", is succesvol geupdate.";
            }

            else if (btnOpslaan.Name == "btnAanmaken")
            {
                if (KlantManagement.bestaatKlant(txtNaam.Text, (locatie)cbbAdres.SelectedItem) == true)
                {
                    MainForm.updateStatus = "De klant: " + txtNaam.Text + " bestaat reeds.";
                }
                else
                {
                    //Nieuw klant object aanmaken
                    klant nieuweKlant = new klant();

                    //Algemene gegevens invullen in het nieuweKlant object
                    nieuweKlant.naam = txtNaam.Text;

                    //titel mag leeg zijn
                    nieuweKlant.titel = cbbTitel.Text;
                    //Activiteit mag leg zijn
                    nieuweKlant.activiteit        = cbbActiviteit.Text;
                    nieuweKlant.verantwoordelijke = txtVerantwoordelijke.Text;
                    nieuweKlant.telefoon          = txtTelefoon.Text;
                    nieuweKlant.gsm        = txtGsm.Text;
                    nieuweKlant.fax        = txtFax.Text;
                    nieuweKlant.email      = txtEmail.Text;
                    nieuweKlant.btw_nummer = txtBTW.Text;

                    int korting;
                    if (txtKorting.Text == "")
                    {
                        korting = 0;
                    }
                    else
                    {
                        korting = Convert.ToInt32(txtKorting.Text);
                    }

                    nieuweKlant.korting             = korting;
                    nieuweKlant.vervaldagen_offerte = txtVervaldagenOfferte.Text;
                    nieuweKlant.vervaldagen_factuur = txtVervalDagenFactuur.Text;
                    nieuweKlant.aantal_facturen     = txtAantalFacturen.Text;
                    nieuweKlant.memo = txtMemo.Text;

                    //klant toevoegen aan de database
                    KlantManagement.addKlant(nieuweKlant);

                    //Adres toevoegen aan de klant
                    locatie       adresVanKlant = (locatie)cbbAdres.SelectedItem;
                    locatie_klant adresLink     = new locatie_klant();
                    adresLink.klant   = nieuweKlant;
                    adresLink.locatie = adresVanKlant;
                    adresLink.type    = "Adres";

                    KlantManagement.addAdresBijKlant(adresLink);

                    //Opstapplaatsen toevoegen aan de klant
                    foreach (ComboBox cbbOpstap in flpOpstapplaats.Controls)
                    {
                        locatie opstapLocatie = (locatie)cbbOpstap.SelectedItem;

                        locatie_klant opstapLocatieLink = new locatie_klant();

                        opstapLocatieLink.klant   = nieuweKlant;
                        opstapLocatieLink.locatie = opstapLocatie;
                        opstapLocatieLink.type    = "Opstapplaats";

                        OpstapplaatsManagement.addOpstapplaats(opstapLocatieLink);
                    }

                    MainForm.updateStatus = "Klant: " + nieuweKlant.naam + ", is succesvol aangemaakt.";
                }
            }


            //combobox opnieuw vullen
            cbbID.Items.Clear();
            cbbID.Items.AddRange(KlantManagement.getKlanten().ToArray());
            cbbID.DisplayMember = "naam";
            cbbID.ValueMember   = "klant_id";

            //knoppen goedzetten
            cbbID.Visible        = true;
            btnNieuw.Enabled     = true;
            btnVerwijder.Enabled = true;

            emptyFields();
            disablefields();
        }
Example #2
0
        //Juiste klant selecteren en het formulier invullen met de juiste gegevens
        private void cbbID_SelectedIndexChanged(object sender, EventArgs e)
        {
            btnOpslaan.Enabled = true;

            btnNieuw.Enabled     = true;
            btnVerwijder.Enabled = true;

            klant klant = new klant();

            klant = (klant)cbbID.SelectedItem;

            emptyFields();
            enableFields();
            btnOpslaan.Name = "btnOpslaan";

            txtNaam.Text  = klant.naam;
            cbbTitel.Text = klant.titel;
            cbbActiviteit.SelectedText = klant.activiteit.ToString();
            txtVerantwoordelijke.Text  = klant.verantwoordelijke;


            cbbAdres.DataSource    = LocatieManagement.getLocaties();
            cbbAdres.SelectedItem  = KlantManagement.getAdresVanKlant(klant.klant_id);
            cbbAdres.DisplayMember = "FullAdress";
            cbbAdres.ValueMember   = "locatie_id";

            txtTelefoon.Text = klant.telefoon;
            txtGsm.Text      = klant.gsm;
            txtFax.Text      = klant.fax;
            txtEmail.Text    = klant.email;

            txtBTW.Text                = klant.btw_nummer;
            txtKorting.Text            = klant.korting.ToString();
            txtVervaldagenOfferte.Text = klant.vervaldagen_offerte;
            txtVervalDagenFactuur.Text = klant.vervaldagen_factuur;
            txtAantalFacturen.Text     = klant.aantal_facturen.ToString();
            txtMemo.Text               = klant.memo;

            flpOpstapplaats.Controls.Clear();

            IEnumerable <locatie> opstapPlaatsen = OpstapplaatsManagement.getOpstapplaatsen(klant.klant_id);

            foreach (locatie opstapplaats in opstapPlaatsen)
            {
                if (opstapPlaatsen.Count() <= 0)
                {
                }
                else
                {
                    ComboBox cbbOpstap = new ComboBox();

                    cbbOpstap.Width  = 200;
                    cbbOpstap.Height = 20;

                    flpOpstapplaats.Controls.Add(cbbOpstap);

                    cbbOpstap.ValueMember   = "locatie_id";
                    cbbOpstap.DisplayMember = "FullAdress";
                    cbbOpstap.DataSource    = LocatieManagement.getLocaties();

                    cbbOpstap.SelectedValue = opstapplaats.locatie_id;
                    cbbOpstap.SelectedItem  = opstapplaats;
                }
            }

            MainForm.updateStatus = "Klant: " + klant.naam + ", is succesvol geladen";
        }