コード例 #1
0
        private void btnWijzig_Click(object sender, EventArgs e)
        {
            if (lvStage.SelectedItems.Count != 0)
            {
                Stageopdracht opdracht    = new Stageopdracht();
                int           bedrijfcode = Convert.ToInt32(lvStage.SelectedItems[0].SubItems[6].Text); // bedrijfcode
                int           contactcode = Convert.ToInt32(lvStage.SelectedItems[0].SubItems[7].Text); // contactcode
                opdracht.Code         = Convert.ToInt32(lvStage.SelectedItems[0].SubItems[0].Text);
                opdracht.Naam         = lvStage.SelectedItems[0].SubItems[1].Text;
                opdracht.Omschrijving = lvStage.SelectedItems[0].SubItems[2].Text;
                opdracht.Status       = lvStage.SelectedItems[0].SubItems[3].Text;

                // Haal bedrijfinfo op
                BedrijfController bc      = new BedrijfController();
                Bedrijfcontact    bedrijf = bc.SelecteerBedrijf(bedrijfcode);
                opdracht.Bedrijf = bedrijf;

                //Haal contactinfo op
                ContactenController cc      = new ContactenController();
                Persooncontact      contact = cc.HaalInfoOp(contactcode.ToString());
                opdracht.Contact = contact;

                opdrachtEditForm OEF = new opdrachtEditForm();
                OEF.Editopdracht(opdracht);
                OEF.ShowDialog();
                if (OEF.DialogResult == DialogResult.OK)
                {
                    setListBox();
                }
            }
        }
コード例 #2
0
        public List <Persooncontact> zoekMetFilter(string zoekquery, string zoekcriteria)
        {
            List <Persooncontact> resultatenLijst = new List <Persooncontact>();

            try
            {
                conn.Open();
                string         query     = bepaalFilterQuery(zoekquery);
                MySqlCommand   command   = new MySqlCommand(query, conn);
                MySqlParameter zoekParam = new MySqlParameter("@zoekParam", MySqlDbType.VarChar);
                zoekParam.Value = zoekcriteria;
                command.Parameters.Add(zoekParam);
                MySqlDataReader lezer = command.ExecuteReader();
                while (lezer.Read())
                {
                    Persooncontact contact = new Persooncontact();
                    resultatenLijst.Add(new Persooncontact {
                        Voornaam = lezer.GetString("voornaam"), Achternaam = lezer.GetString("achternaam"), Locatie = lezer.GetString("locatie"), Email = lezer.GetString("email"), Functie = lezer["functie"] as string, Afdeling = lezer["afdeling"] as string
                    });
                }
            }
            catch (MySqlException e)
            {
                Console.WriteLine("ERROR! EXCEPTION! ARGHHH! : " + e);
            }
            finally
            {
                conn.Close();
            }
            return(resultatenLijst);
        }
コード例 #3
0
        public void controleerOfContactBestaat(Gebruiker gebruiker, Persooncontact contact)
        {
            // Query de database en kijk of contact bestaat
            MySqlTransaction trans = null;

            try
            {
                conn.Open();
                trans = conn.BeginTransaction();
                string query = @"SELECT contactcode FROM contactpersoon 
                                 WHERE voornaam = @voornaam AND achternaam = @achternaam OR email = @email";

                MySqlCommand   command         = new MySqlCommand(query, conn);
                MySqlParameter voornaamParam   = new MySqlParameter("voornaam", MySqlDbType.VarChar);
                MySqlParameter achternaamParam = new MySqlParameter("achternaam", MySqlDbType.VarChar);
                MySqlParameter emailParam      = new MySqlParameter("email", MySqlDbType.VarChar);


                voornaamParam.Value   = contact.Voornaam;
                achternaamParam.Value = contact.Achternaam;
                emailParam.Value      = contact.Email;

                command.Parameters.Add(voornaamParam);
                command.Parameters.Add(achternaamParam);
                command.Parameters.Add(emailParam);


                MySqlDataReader dataReader = command.ExecuteReader();
                int?            klantcode  = null;
                while (dataReader.Read())
                {
                    klantcode = dataReader.GetInt32("contactcode");
                }

                // Bepaal of contactpersoon bestaat
                conn.Close();
                if (klantcode == null)
                {
                    // Maakt een nieuwe contactpersoon aan
                    voegPersoonToe(gebruiker, contact);
                }
                else
                {
                    // Voert de contactpersoon in db in
                    voegContactPersoonKoppeltabel(gebruiker.Gebruikersnaam, Convert.ToInt64(klantcode));
                }
            }
            catch (MySqlException e)
            {
                if (trans != null)
                {
                    trans.Rollback();
                }
                Console.WriteLine("Error in contactencontroller - voegpersoontoe: " + e);
            }
            finally
            {
                conn.Close();
            }
        }
コード例 #4
0
        public void setListBox()
        {
            lvStage.Items.Clear();
            List <Stageopdracht> opdrachten = soc.getOpdrachten();

            foreach (Stageopdracht opdracht in opdrachten)
            {
                ListViewItem lvi = new ListViewItem(opdracht.Code.ToString());
                lvi.SubItems.Add(opdracht.Naam);
                lvi.SubItems.Add(opdracht.Omschrijving);
                lvi.SubItems.Add(opdracht.Status);
                Bedrijfcontact bcontact = opdracht.Bedrijf;
                if (opdracht.Bedrijf != null)
                {
                    lvi.SubItems.Add(bcontact.Bedrijfnaam);
                }
                Persooncontact pcontact = opdracht.Contact;
                if (opdracht.Contact != null)
                {
                    pcontact.volnaam = pcontact.Voornaam + " " + pcontact.Achternaam;
                    lvi.SubItems.Add(pcontact.volnaam);
                }
                if (opdracht.Bedrijf != null)
                {
                    lvi.SubItems.Add(Convert.ToString(bcontact.Bedrijfscode));
                }
                if (opdracht.Contact != null)
                {
                    lvi.SubItems.Add(Convert.ToString(pcontact.Contactcode));
                }
                lvStage.Items.Add(lvi);
            }
        }
コード例 #5
0
        private void lvContacten_ItemActivate(object sender, EventArgs e)
        {
            string contactcode = lvContacten.SelectedItems[0].SubItems[1].Text;
            ContactenController _controller = new ContactenController();

            Persooncontact contact  = _controller.HaalInfoOp(contactcode);
            ContactDetails _details = new ContactDetails(contact);

            _details.ShowDialog();
        }
コード例 #6
0
        public Persooncontact HaalInfoOp(string contactcode)
        {
            Console.WriteLine("T" + contactcode);
            MySqlTransaction trans   = null;
            Persooncontact   contact = new Persooncontact();

            try
            {
                conn.Open();
                trans = conn.BeginTransaction();
                string query = @"SELECT c.contactcode, c.voornaam, c.achternaam, c.locatie, c.email, c.functie, c.afdeling, c.isgastdocent, c.isstagebegeleider, b.bedrijfcode, b.bedrijfnaam FROM contactpersoon c 
                                 INNER JOIN bedrijf b ON c.bedrijfcode = b.bedrijfcode 
                                 WHERE contactcode = @contactcode";

                MySqlCommand   command          = new MySqlCommand(query, conn);
                MySqlParameter contactcodeParam = new MySqlParameter("contactcode", MySqlDbType.Int32);

                contactcodeParam.Value = contactcode;
                command.Parameters.Add(contactcodeParam);

                command.Prepare();
                MySqlDataReader datalezer = command.ExecuteReader();
                while (datalezer.Read())
                {
                    contact.Contactcode = Int32.Parse(contactcode);
                    contact.Voornaam    = ((string)datalezer["voornaam"]);
                    contact.Achternaam  = ((string)datalezer["achternaam"]);
                    contact.Locatie     = ((string)datalezer["locatie"]);
                    contact.Email       = ((string)datalezer["email"]);
                    contact.Functie     = datalezer["functie"] as string;
                    //contact.Kwaliteiten = datalezer.Get["kwaliteiten"]);
                    contact.Afdeling             = datalezer["afdeling"] as string;
                    contact.Isgastdocent         = datalezer.GetBoolean("Isgastdocent");
                    contact.Isstagebegeleider    = datalezer.GetBoolean("isstagebegeleider");
                    contact.Bedrijf              = new Bedrijfcontact();
                    contact.Bedrijf.Bedrijfscode = ((Int32)datalezer["bedrijfcode"]);
                    contact.Bedrijf.Bedrijfnaam  = ((string)datalezer["bedrijfnaam"]);
                }
            }
            catch (MySqlException e)
            {
                if (trans != null)
                {
                    trans.Rollback();
                }
                Console.WriteLine("Error in contactencontroller - haalcontactenop: " + e);
            }
            finally
            {
                conn.Close();
            }

            return(contact);
        }
コード例 #7
0
        public List <Persooncontact> ContactenBijBedrijf(Bedrijfcontact bedrijf)
        {
            List <Persooncontact> contactenlijst = new List <Persooncontact>();
            MySqlTransaction      trans          = null;

            try
            {
                conn.Open();
                trans = conn.BeginTransaction();
                string query = @"SELECT *
                                 FROM contactpersoon c JOIN bedrijf b
                                 ON c.bedrijfcode = b.bedrijfcode
                                 WHERE b.bedrijfcode = @bedrijfcode";

                MySqlCommand   command      = new MySqlCommand(query, conn);
                MySqlParameter bedrijfParam = new MySqlParameter("bedrijfcode", MySqlDbType.VarChar);

                bedrijfParam.Value = bedrijf.Bedrijfscode;

                command.Parameters.Add(bedrijfParam);
                command.Prepare();
                MySqlDataReader datalezer = command.ExecuteReader();

                while (datalezer.Read())
                {
                    Persooncontact contact = new Persooncontact();
                    contact.Contactcode       = datalezer.GetInt32("contactcode");
                    contact.Voornaam          = datalezer.GetString("voornaam");
                    contact.Achternaam        = datalezer.GetString("achternaam");
                    contact.Locatie           = datalezer.GetString("locatie");
                    contact.Email             = datalezer.GetString("email");
                    contact.Functie           = datalezer["functie"] as string;
                    contact.Afdeling          = datalezer["afdeling"] as string;
                    contact.Isgastdocent      = datalezer.GetBoolean("isgastdocent");
                    contact.Isstagebegeleider = datalezer.GetBoolean("isstagebegeleider");
                    contact.volnaam           = contact.Voornaam + " " + contact.Achternaam;
                    contactenlijst.Add(contact);
                }
            }
            catch (MySqlException e)
            {
                if (trans != null)
                {
                    trans.Rollback();
                }
                Console.WriteLine("Error in contactencontroller - ContactenBijBedrijf: " + e);
            }
            finally
            {
                conn.Close();
            }
            return(contactenlijst);
        }
コード例 #8
0
        public List <Persooncontact> HaalContactenOp(Gebruiker _gebruiker)
        {
            List <Persooncontact> contactenlijst = new List <Persooncontact>();
            MySqlTransaction      trans          = null;

            try
            {
                conn.Open();
                trans = conn.BeginTransaction();
                string query = @"SELECT * FROM gebruikercontactpersoon g
                                 INNER JOIN contactpersoon c on g.contactcode = c.contactcode
                                 INNER JOIN bedrijf b ON c.bedrijfcode = b.bedrijfcode 
                                 WHERE g.gebruikersnaam = @gebruikersnaam";

                MySqlCommand   command        = new MySqlCommand(query, conn);
                MySqlParameter gebruikerParam = new MySqlParameter("gebruikersnaam", MySqlDbType.VarChar);

                gebruikerParam.Value = _gebruiker.Gebruikersnaam;

                command.Parameters.Add(gebruikerParam);

                command.Prepare();
                MySqlDataReader datalezer = command.ExecuteReader();
                while (datalezer.Read())
                {
                    Persooncontact contact = new Persooncontact();
                    contact.Contactcode       = datalezer.GetInt32("contactcode");
                    contact.Voornaam          = datalezer.GetString("voornaam");
                    contact.Achternaam        = datalezer.GetString("achternaam");
                    contact.Locatie           = datalezer.GetString("locatie");
                    contact.Email             = datalezer.GetString("email");
                    contact.Functie           = datalezer["functie"] as string;
                    contact.Afdeling          = datalezer["afdeling"] as string;
                    contact.Isgastdocent      = datalezer.GetBoolean("isgastdocent");
                    contact.Isstagebegeleider = datalezer.GetBoolean("isstagebegeleider");
                    contactenlijst.Add(contact);
                }
            }
            catch (MySqlException e)
            {
                if (trans != null)
                {
                    trans.Rollback();
                }
                Console.WriteLine("Error in contactencontroller - haalcontactenop: " + e);
            }
            finally
            {
                conn.Close();
            }
            return(contactenlijst);
        }
コード例 #9
0
        public void bewerkContact(Persooncontact contact)
        {
            try
            {
                conn.Open();
                string         query            = @"UPDATE contactpersoon SET voornaam = @voornaam, achternaam = @achternaam, locatie = @locatie, email = @email, functie = @functie, afdeling = @afdeling, bedrijfcode = @bedrijfcode 
                                     WHERE contactcode = @contactcode";
                MySqlCommand   command          = new MySqlCommand(query, conn);
                MySqlParameter voornaamParam    = new MySqlParameter("voornaam", MySqlDbType.VarChar);
                MySqlParameter achternaamParam  = new MySqlParameter("achternaam", MySqlDbType.VarChar);
                MySqlParameter locatieParam     = new MySqlParameter("locatie", MySqlDbType.VarChar);
                MySqlParameter emailParam       = new MySqlParameter("email", MySqlDbType.VarChar);
                MySqlParameter functieParam     = new MySqlParameter("functie", MySqlDbType.VarChar);
                MySqlParameter afdelingParam    = new MySqlParameter("afdeling", MySqlDbType.VarChar);
                MySqlParameter bedrijfcodeParam = new MySqlParameter("bedrijfcode", MySqlDbType.Int32);
                MySqlParameter contactcodeParam = new MySqlParameter("contactcode", MySqlDbType.Int32);

                voornaamParam.Value    = contact.Voornaam;
                achternaamParam.Value  = contact.Achternaam;
                locatieParam.Value     = contact.Locatie;
                emailParam.Value       = contact.Email;
                functieParam.Value     = contact.Functie;
                afdelingParam.Value    = contact.Afdeling;
                bedrijfcodeParam.Value = contact.Bedrijf.Bedrijfscode;
                contactcodeParam.Value = contact.Contactcode;


                command.Parameters.Add(voornaamParam);
                command.Parameters.Add(achternaamParam);
                command.Parameters.Add(locatieParam);
                command.Parameters.Add(emailParam);
                command.Parameters.Add(functieParam);
                command.Parameters.Add(afdelingParam);
                command.Parameters.Add(bedrijfcodeParam);
                command.Parameters.Add(contactcodeParam);

                command.Prepare();
                command.ExecuteNonQuery();
            }


            catch (MySqlException e)
            {
                Console.WriteLine("Error in contactencontroller - bewerkContact: " + e);
            }
            finally
            {
                conn.Close();
            }
        }
コード例 #10
0
        private void btnWijzig_Click(object sender, EventArgs e)
        {
            if (lvContacten.SelectedItems.Count == 1) //Om te bewerken moet er minimaal en maximaal 1 contact geselecteerd zijn
            {
                string contactcode          = lvContacten.SelectedItems[0].SubItems[1].Text;
                ContactenController cc      = new ContactenController();
                Persooncontact      contact = cc.HaalInfoOp(contactcode);
                ContactBewerk       bewerk  = new ContactBewerk(contact);
                bewerk.ShowDialog();

                // Reset de listview
                lvContacten.Clear();
                vulContacten();
            }
        }
コード例 #11
0
        public List <Stageopdracht> getOpdrachten()
        {
            List <Stageopdracht> opdrachten = new List <Stageopdracht>();

            try
            {
                conn.Open();

                string          selectQuery = @"SELECT * FROM stageopdracht";
                MySqlCommand    cmd         = new MySqlCommand(selectQuery, conn);
                MySqlDataReader dataReader  = cmd.ExecuteReader();

                while (dataReader.Read())
                {
                    int code = dataReader.GetInt32("opdrachtcode");

                    string        status       = dataReader.GetString("status");
                    string        naam         = dataReader.GetString("naam");
                    string        omschrijving = dataReader.GetString("omschrijving");
                    int           bedrijfcode  = dataReader.GetInt32("bedrijfcode");
                    int           contactcode  = dataReader.GetInt32("contactcode");
                    Stageopdracht opdracht     = new Stageopdracht {
                        Code = code, Status = status, Naam = naam, Omschrijving = omschrijving
                    };
                    BedrijfController   bc             = new BedrijfController();
                    Bedrijfcontact      bedrijfcontact = bc.SelecteerBedrijf(bedrijfcode);
                    ContactenController cc             = new ContactenController();
                    Persooncontact      persooncontact = cc.HaalInfoOp(contactcode.ToString());
                    Console.WriteLine("de bnaam = " + bedrijfcontact.Bedrijfnaam);
                    opdracht.Bedrijf = bedrijfcontact;
                    opdracht.Contact = persooncontact;
                    opdrachten.Add(opdracht);
                }
                return(opdrachten);
            }
            catch (Exception e)
            {
                Console.WriteLine("Error in stageopdrachtcontroller - getopdrachten " + e);
                return(null);
            }
            finally
            {
                conn.Close();
            }
        }
コード例 #12
0
        private void SaveContact(Persooncontact persoon)
        {
            ListViewItem contact = new ListViewItem(persoon.Voornaam);

            contact.SubItems.Add(persoon.Achternaam);
            lvContacten.Items.Add(contact);
            if (contactSoortCbx.Text == "Gastspreker")
            {
                contact.ImageKey = "GS";
            }
            else if (contactSoortCbx.Text == "Gastdocent")
            {
                contact.ImageKey = "GD";
            }
            else if (contactSoortCbx.Text == "Stagebegeleider")
            {
                contact.ImageKey = "SB";
            }
        }
コード例 #13
0
        private void bewerkBtn_Click(object sender, EventArgs e)
        {
            // Zet alle waardes van de textboxes in het nieuwe contact
            Persooncontact bewerktContact = new Persooncontact();

            bewerktContact.Contactcode          = contactcode;
            bewerktContact.Voornaam             = voornaamTb.Text;
            bewerktContact.Achternaam           = achternaamTb.Text;
            bewerktContact.Bedrijf              = new Bedrijfcontact();
            bewerktContact.Bedrijf.Bedrijfscode = Convert.ToInt32(bedrijfCbx.SelectedValue);
            bewerktContact.Functie              = functieTb.Text;
            bewerktContact.Locatie              = locatieTb.Text;
            bewerktContact.Email = emailTb.Text;

            // Contactencontroller
            ContactenController cc = new ContactenController();

            cc.bewerkContact(bewerktContact);
            this.Close();
        }
コード例 #14
0
        public ContactDetails(Persooncontact _contact)
        {
            InitializeComponent();
            contact = _contact;

            /*_contactinfo = new string[4];
             * _contactinfo = contactinfo;
             * Contactnaam = _contact;
             * lblVNvalue.Text = _contactinfo[0];
             * lblANvalue.Text = _contactinfo[1];
             * lblLOvalue.Text = _contactinfo[2];
             * lblMvalue.Text = _contactinfo[3];*/

            lblVNvalue.Text = contact.Voornaam;
            lblANvalue.Text = contact.Achternaam;
            lblLOvalue.Text = contact.Locatie;
            lblMvalue.Text  = contact.Email;
            if (contact.Functie != null)
            {
                lblFUvalue.Text = contact.Functie;
            }
            lblBDvalue.Text = contact.Bedrijf.Bedrijfnaam;
        }
コード例 #15
0
        public ContactBewerk(Persooncontact contact)
        {
            InitializeComponent();

            // Vult de bedrijven combobox met bedrijven
            BedrijfController bc = new BedrijfController();

            bedrijfCbx.DataSource    = bc.haalBedrijfLijstOp();
            bedrijfCbx.DisplayMember = "Bedrijfnaam";
            bedrijfCbx.ValueMember   = "Bedrijfscode";

            // Zet de combobox selectie naar het huidige bedrijf
            bedrijfCbx.SelectedIndex = bedrijfCbx.FindStringExact(contact.Bedrijf.Bedrijfnaam);

            // Koppelt alle contact data aan de texboxes
            voornaamTb.Text   = contact.Voornaam;
            achternaamTb.Text = contact.Achternaam;
            functieTb.Text    = contact.Functie;
            locatieTb.Text    = contact.Locatie;
            emailTb.Text      = contact.Email;
            contactcode       = contact.Contactcode;
            bedrijfcode       = contact.Bedrijf.Bedrijfscode;
        }
コード例 #16
0
        public void voegPersoonToe(Gebruiker gebruiker, Persooncontact contact)
        {
            MySqlTransaction trans = null;

            try
            {
                conn.Open();
                string query = @"INSERT INTO contactpersoon (voornaam, achternaam, locatie, email, functie, afdeling, isgastdocent, isstagebegeleider, gebruikersnaam, bedrijfcode)
                                 VALUES (@voornaam, @achternaam, @locatie, @email, @functie, @afdeling, @isgastdocent, @isstagebegeleider, @gebruikersnaam, @bedrijfcode)";

                MySqlCommand   command                = new MySqlCommand(query, conn);
                MySqlParameter voornaamParam          = new MySqlParameter("voornaam", MySqlDbType.VarChar);
                MySqlParameter achternaamParam        = new MySqlParameter("achternaam", MySqlDbType.VarChar);
                MySqlParameter locatieParam           = new MySqlParameter("locatie", MySqlDbType.VarChar);
                MySqlParameter emailParam             = new MySqlParameter("email", MySqlDbType.VarChar);
                MySqlParameter functieParam           = new MySqlParameter("functie", MySqlDbType.VarChar);
                MySqlParameter afdelingParam          = new MySqlParameter("afdeling", MySqlDbType.VarChar);
                MySqlParameter linkedinParam          = new MySqlParameter("linkedin", MySqlDbType.VarChar);
                MySqlParameter isgastdocentParam      = new MySqlParameter("isgastdocent", MySqlDbType.Binary);
                MySqlParameter isstagebegeleiderParam = new MySqlParameter("isstagebegeleider", MySqlDbType.Binary);
                MySqlParameter gebruikersnaamParam    = new MySqlParameter("gebruikersnaam", MySqlDbType.VarChar);
                MySqlParameter bedrijfcodeParam       = new MySqlParameter("bedrijfcode", MySqlDbType.Int32);

                voornaamParam.Value          = contact.Voornaam;
                achternaamParam.Value        = contact.Achternaam;
                locatieParam.Value           = contact.Locatie;
                emailParam.Value             = contact.Email;
                functieParam.Value           = contact.Functie;
                afdelingParam.Value          = contact.Afdeling;
                isgastdocentParam.Value      = Convert.ToInt32(contact.Isgastdocent);
                isstagebegeleiderParam.Value = Convert.ToInt32(contact.Isstagebegeleider);
                gebruikersnaamParam.Value    = contact.Gebruiker.Gebruikersnaam;
                bedrijfcodeParam.Value       = contact.Bedrijf.Bedrijfscode;

                command.Parameters.Add(voornaamParam);
                command.Parameters.Add(achternaamParam);
                command.Parameters.Add(locatieParam);
                command.Parameters.Add(emailParam);
                command.Parameters.Add(functieParam);
                command.Parameters.Add(afdelingParam);
                command.Parameters.Add(linkedinParam);
                command.Parameters.Add(isgastdocentParam);
                command.Parameters.Add(isstagebegeleiderParam);
                command.Parameters.Add(gebruikersnaamParam);
                command.Parameters.Add(bedrijfcodeParam);


                command.Prepare();
                command.ExecuteNonQuery();
                //trans.Commit();

                // Zet de kwaliteiten in de kwaliteiten tabel
                long primaryKey = command.LastInsertedId;
                conn.Close();
                foreach (string kwaliteit in contact.Kwaliteiten)
                {
                    voegContactPersoonKwaliteitToe(kwaliteit, primaryKey);
                }

                // Zet de contact in de gebruikercontactpersoon koppeltabel
                voegContactPersoonKoppeltabel(gebruiker.Gebruikersnaam, primaryKey);
            }
            catch (MySqlException e)
            {
                if (trans != null)
                {
                    trans.Rollback();
                }
                Console.WriteLine("Error in contactencontroller - voegpersoontoe: " + e);
            }
            finally
            {
                conn.Close();
                // Conn close in Controleer of persoon bestaat
            }
        }
コード例 #17
0
        private void btnOpslaan_Click(object sender, EventArgs e)
        {
            bool opslaan = false;

            if (contactSoortCbx.Text != "Bedrijf")
            {
                bool a = false;
                bool b = false;
                if ((tbVoornaam.Text.Count() <= 0 || tbAchternaam.Text.Count() <= 0 || tbEmail.Text.Count() <= 0 || bedrijfCbx.Text.Count() <= 0))
                {
                    a = false;
                    MessageBox.Show("Een of meer verplichte velden zijn leeg\nVul deze aan en probeer het opnieuw");
                }
                else
                {
                    a = true;
                }
                if (validemail == true && validmobiel == true)
                {
                    b = true;
                }
                else
                {
                    MessageBox.Show("Het ingevoerde emailadres of mobiel nr. is onjuist", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                if (a == true && b == true)
                {
                    opslaan = true;
                }
            }
            else
            {
                bool a = false;
                bool b = false;
                if ((tbHoofdlocatie.Text.Count() <= 0 || tbBedrijfsnaam.Text.Count() <= 0) || (tbEadres.Text.Count() <= 0 && tbTelefoon.Text.Count() <= 0))
                {
                    a = false;
                    MessageBox.Show("Een of meer verplichte velden zijn leeg\nVul deze aan en probeer het opnieuw");
                }
                else
                {
                    a = true;
                }
                if (validbedrijfemail == true)
                {
                    b = true;
                }
                if (a == true && b == true)
                {
                    opslaan = true;
                }
            }
            if (opslaan == true)
            {
                if (contactSoortCbx.Text != "Bedrijf")
                {
                    Persooncontact persooncontact = new Persooncontact()
                    {
                        Voornaam = tbVoornaam.Text, Achternaam = tbAchternaam.Text, Functie = tbFunctie.Text, Afdeling = tbAfdeling.Text, Locatie = tbLocatie.Text, Email = tbEmail.Text, Gebruiker = _gebruiker
                    };
                    string contactSoort = Convert.ToString(contactSoortCbx.SelectedItem);
                    Console.WriteLine(tbFunctie.Text);
                    int bedrijfcode = Convert.ToInt32(bedrijfCbx.SelectedValue);
                    persooncontact.Bedrijf = new Bedrijfcontact()
                    {
                        Bedrijfscode = bedrijfcode
                    };

                    // Haal kwaliteiten op
                    string[] kwaliteiten = new string[tbKwaliteitenP.Lines.Count()];
                    int      i           = 0;
                    foreach (string line in tbKwaliteitenP.Lines)
                    {
                        kwaliteiten[i] = line;
                        i++;
                    }
                    persooncontact.Kwaliteiten = kwaliteiten;

                    switch (contactSoort)
                    {
                    case "Stagebegeleider":
                        persooncontact.Isstagebegeleider = true;
                        break;

                    case "Gastdocent":
                        persooncontact.Isgastdocent = true;
                        break;

                    default:
                        Console.WriteLine("ERROR");
                        break;
                    }
                    ContactenController contactencontroller = new ContactenController();
                    contactencontroller.controleerOfContactBestaat(_gebruiker, persooncontact);
                    SaveContact(persooncontact);
                    lvContacten.Clear();
                    vulContacten();
                }
                else
                {
                    string[] a = new string[tbKwaliteiten.Lines.Count()];
                    int      i = 0;
                    foreach (string line in tbKwaliteiten.Lines)
                    {
                        a[i] = line;
                        i++;
                    }
                    Bedrijfcontact bedrijfcontact = new Bedrijfcontact()
                    {
                        Bedrijfnaam = tbBedrijfsnaam.Text, Contactpersoon = tbContact.Text, Email = tbEadres.Text, Hoofdlocatie = tbHoofdlocatie.Text, Telefoonnr = tbTelefoon.Text, Website = tbWebsite.Text, Kwaliteiten = a
                    };
                    BedrijfController bc = new BedrijfController();
                    bc.voegBedrijfToe(bedrijfcontact);
                    SaveBedrijf(bedrijfcontact);
                }

                pnOptioneel.Visible     = false;
                persoonPnl.Visible      = false;
                pnbedrijf2.Visible      = false;
                bedrijfPnl.Visible      = false;
                bedrijfPnl.Visible      = false;
                btnZoeken.Visible       = true;
                lblSoort.Visible        = false;
                btnVoegtoe.Visible      = true;
                btnWijzig.Visible       = true;
                btnDelete.Visible       = true;
                btnAnnuleer.Visible     = false;
                btnOpslaan.Visible      = false;
                contactSoortCbx.Visible = false;
                lvContacten.Visible     = true;
                ShowSave = false;
            }
        }