コード例 #1
0
        public static void WijzigGegevens(Persoon persoon)
        {
            Console.ForegroundColor = DarkMode ? ConsoleColor.White : ConsoleColor.Blue;

            var profiel = persoon as Profiel;

            using var context = new EFEindproefContext();

            Console.WriteLine($"Uw profiel is: ID:{profiel.PersoonId} Naam:{profiel.LoginNaam}");
            Console.WriteLine("----------------");
            Console.WriteLine("Wijzigen Profiel");
            Console.WriteLine("----------------");

            Console.WriteLine("1.     Kennismakingstekst");
            Console.WriteLine("2.     Email");
            Console.WriteLine("3.     Firma");
            Console.WriteLine("4.     Taal");

            int goedekeuze;

            do
            {
                Console.Write("Geef het volgnummer uit de lijst: ");
                if (int.TryParse(Console.ReadLine(), out int keuze))
                {
                    if (keuze > 0 && keuze < 5)
                    {
                        goedekeuze = keuze;
                        break;
                    }
                }
                Console.WriteLine("Geen geldige ingave");
            } while (true);

            Console.WriteLine("");
            switch (goedekeuze)
            {
            case 1:
                profiel.KenningsmakingTekst   = ConsoleHelper.LeesString("Kennismaking Tekst", 250, OptionMode.Mandatory);
                profiel.LaatsteUpdateTijdstip = DateTime.Now;
                context.Update(profiel);
                context.SaveChanges();
                Console.WriteLine($"Uw tekst werd gewijzigd naar: {profiel.KenningsmakingTekst}");


                break;

            case 2:
                profiel.EmailAdres            = ConsoleHelper.LeesEmailAdres("Emailadres", OptionMode.Mandatory);
                profiel.LaatsteUpdateTijdstip = DateTime.Now;
                context.Update(profiel);
                context.SaveChanges();
                Console.WriteLine($"Uw email werd gewijzigd naar: {profiel.EmailAdres}");

                break;

            case 3:
                profiel.FirmaNaam             = ConsoleHelper.LeesString("Firma", 30, OptionMode.Optional);
                profiel.LaatsteUpdateTijdstip = DateTime.Now;
                context.Update(profiel);
                context.SaveChanges();
                Console.WriteLine($"Uw firma werd gewijzigd naar: {profiel.FirmaNaam}");

                break;

            case 4:
                int keuzeTaal;
                var lijstTaal = context.Talen.OrderBy(m => m.TaalId).ToList();
                Console.WriteLine("Kies taal*");
                Console.WriteLine("-----------");
                foreach (var item in lijstTaal)
                {
                    Console.WriteLine($"{item.TaalId}           {item.TaalNaam}");
                }

                do
                {
                    Console.Write("Geef het volgnummer uit de lijst: ");
                    if (int.TryParse(Console.ReadLine(), out int keuze))
                    {
                        if (keuze > 0 && keuze < 4)
                        {
                            keuzeTaal = keuze;
                            break;
                        }
                    }
                    Console.WriteLine("Geen geldige ingave");
                } while (true);
                profiel.TaalId = keuzeTaal;
                profiel.LaatsteUpdateTijdstip = DateTime.Now;
                context.Update(profiel);
                context.SaveChanges();
                var gekozenTaal = context.Talen.Where(t => t.TaalId == profiel.TaalId).FirstOrDefault();
                Console.WriteLine($"Gekozen taal is {gekozenTaal.TaalCode} - {gekozenTaal.TaalNaam}");

                break;

            default:
                break;
            }
            Console.WriteLine("");
            Console.WriteLine($"Uw profiel werd gewijzigd!");
            Console.WriteLine("");
            KiesAccountMenu();
        }
コード例 #2
0
        public static Persoon Registeren()
        {
            Console.ForegroundColor = DarkMode ? ConsoleColor.White : ConsoleColor.Blue;
            Profiel persoon = new Profiel();

            Console.WriteLine("---------------------------");
            Console.WriteLine("R E G I S T R E R E N");
            Console.WriteLine("---------------------------");
            Console.WriteLine("");
            Console.WriteLine("");
            Console.WriteLine("--> Ingave Profiel");

            persoon.VoorNaam    = ConsoleHelper.LeesString("Voornaam (< Enter >= Terug)", 20, OptionMode.Mandatory);
            persoon.FamilieNaam = ConsoleHelper.LeesString("Familienaam", 30, OptionMode.Mandatory);
            do
            {
                Console.Write("Geboortedatum (JJJJ-MM--DD)* : ");
                if (DateTime.TryParse(Console.ReadLine(), out DateTime date))
                {
                    persoon.GeboorteDatum = date;
                    break;
                }
                Console.WriteLine("Geen correcte datum");
            } while (true);

            persoon.TelefoonNr = ConsoleHelper.LeesTelefoonNummer("Telefoonnummer", OptionMode.Optional);

            persoon.KenningsmakingTekst = ConsoleHelper.LeesString("Kennismaking Tekst", 250, OptionMode.Mandatory);

            persoon.EmailAdres = ConsoleHelper.LeesEmailAdres("Emailadres", OptionMode.Mandatory);

            persoon.BeroepTekst = ConsoleHelper.LeesString("Beroep", 30, OptionMode.Optional);

            persoon.FirmaNaam = ConsoleHelper.LeesString("Firma", 30, OptionMode.Optional);

            persoon.FacebookNaam = ConsoleHelper.LeesString("Facebooknaam", 50, OptionMode.Optional);

            persoon.WebsiteAdres = ConsoleHelper.LeesWebsiteUrl("Website URL", OptionMode.Optional);

            Console.Write("Geslacht (M/V)* : ");
            string testGeslacht = Console.ReadLine().ToUpper();

            while (testGeslacht != "M" && testGeslacht != "V")
            {
                Console.WriteLine("Verplicht veld!");
                Console.Write("Geslacht (M/V)* : ");
                testGeslacht = Console.ReadLine().ToUpper();
            }
            if (testGeslacht == "M")
            {
                persoon.GeslachtType = Persoon.Geslacht.Man;
            }
            else
            {
                persoon.GeslachtType = Persoon.Geslacht.Vrouw;
            }


            do
            {
                Console.Write("Woont hier sinds (JJJJ-MM-DD)* : ");
                if (DateTime.TryParse(Console.ReadLine(), out DateTime date))
                {
                    persoon.WoontHierSindsDatum = date;
                    break;
                }
                Console.WriteLine("Geen correcte datum");
            } while (true);

            using var context = new EFEindproefContext();
            var lijstTaal = context.Talen.OrderBy(m => m.TaalId).ToList();

            Console.WriteLine("");
            Console.WriteLine("Kies taal*");
            Console.WriteLine("-----------");
            foreach (var item in lijstTaal)
            {
                Console.WriteLine($"{item.TaalId}           {item.TaalNaam}");
            }
            int keuzeTaal;

            do
            {
                Console.Write("Geef het volgnummer uit de lijst: ");
                if (int.TryParse(Console.ReadLine(), out int keuze))
                {
                    if (keuze > 0 && keuze < 4)
                    {
                        keuzeTaal = keuze;
                        break;
                    }
                }
                Console.WriteLine("Geen geldige ingave");
            } while (true);
            persoon.TaalId = keuzeTaal;

            var gekozenTaal = context.Talen.Where(t => t.TaalId == persoon.TaalId).FirstOrDefault();

            Console.WriteLine($"Gekozen taal is {gekozenTaal.TaalCode} - {gekozenTaal.TaalNaam}");
            Console.WriteLine("");
            Console.WriteLine("Kies Geboorteplaats");
            Console.WriteLine("-------------------");
            Console.Write("Geef een aantal letters in van de gemeente: ");
            string zoekGGemeente = Console.ReadLine();

            var lijstGGemeentes = context.Gemeentes.Where(t => t.GemeenteNaam.Contains(zoekGGemeente));

            if (lijstGGemeentes == null)
            {
                persoon.GeboorteplaatsId = 0;
                Console.WriteLine("Geen gekozen gemeente");
            }
            else
            {
                foreach (var item in lijstGGemeentes)
                {
                    Console.WriteLine($"{item.GemeenteId}         {item.GemeenteNaam}");
                }
                Console.Write("Geef het volgnummer uit de lijst : ");
                persoon.GeboorteplaatsId = Convert.ToInt32(Console.ReadLine());
                var gekozenGGemeente = context.Gemeentes.Where(g => g.GemeenteId == persoon.GeboorteplaatsId).FirstOrDefault();
                Console.WriteLine($"Gekozen gemeente is {gekozenGGemeente.GemeenteNaam}");
            }
            Console.WriteLine("");
            Console.WriteLine("--> Ingave adres");
            Console.WriteLine("");
            Console.WriteLine("Kies Woonplaats*");
            Console.WriteLine("-----------------");
            Console.Write("Geef een aantal letters in van de gemeente: ");
            string zoekGemeente   = Console.ReadLine();
            var    lijstGemeentes = context.Gemeentes.Where(t => t.GemeenteNaam.Contains(zoekGemeente));

            while (lijstGemeentes == null)
            {
                Console.WriteLine("Gemeente niet gevonden; Verplicht veld!");
                Console.Write("Geef een aantal letters in van de gemeente: ");
                zoekGemeente   = Console.ReadLine();
                lijstGemeentes = context.Gemeentes.Where(t => t.GemeenteNaam.Contains(zoekGemeente));
            }

            foreach (var item in lijstGemeentes)
            {
                Console.WriteLine($"{item.GemeenteId}         {item.GemeenteNaam}");
            }
            Console.Write("Geef het volgnummer uit de lijst : ");
            int gemeenteID      = Convert.ToInt16(Console.ReadLine());
            var gekozenGemeente = context.Gemeentes.Where(g => g.GemeenteId == gemeenteID).FirstOrDefault();

            Console.WriteLine($"Gekozen gemeente is {gekozenGemeente.GemeenteNaam}");
            Console.WriteLine("");
            Console.WriteLine("Kies Straat*");
            Console.WriteLine("-----------------");
            Console.Write("Geef een aantal letters in van de straat: ");
            var lijstStraten = context.Straten.Where(s => s.StraatNaam.Contains(Console.ReadLine()));

            while (lijstStraten == null)
            {
                Console.WriteLine("Straat niet gevonden; Verplicht veld!");
                Console.Write("Geef een aantal letters in van de straat: ");
                lijstStraten = context.Straten.Where(s => s.StraatNaam.Contains(Console.ReadLine()));
            }
            foreach (var item in lijstStraten)
            {
                Console.WriteLine($"{item.StraatId}      {item.StraatNaam}");
            }
            Console.Write("Geef het volgnummer uit de lijst : ");
            int straatId      = Convert.ToInt32(Console.ReadLine());
            var gekozenStraat = context.Straten.Where(s => s.StraatId == straatId).FirstOrDefault();

            Console.WriteLine($"Gekozen straat is {gekozenStraat.StraatNaam}.");
            Console.WriteLine("");
            Console.Write($"Huisnummer* : ");
            string gekozenHuisNr = Console.ReadLine();

            Console.Write("Busnummer : ");
            string gekozenBusNr = Console.ReadLine();

            Console.WriteLine("");
            Console.WriteLine("-->Ingave Login");
            Console.Write("Login naam* : ");
            persoon.LoginNaam = Console.ReadLine();
            Console.Write("Wachtwoord* : ");
            string eersteWachtwoord = Console.ReadLine();

            Console.Write("Wachtwoord bevestigen* : ");
            string tweedeWachtwoord = Console.ReadLine();

            while (eersteWachtwoord != tweedeWachtwoord)
            {
                Console.WriteLine("De wachtwoorden matchen niet. Probeer opnieuw.");
                Console.Write("Wachtwoord* : ");
                eersteWachtwoord = Console.ReadLine();
                Console.Write("Wachtwoord bevestigen* : ");
                tweedeWachtwoord = Console.ReadLine();
            }
            persoon.LoginPaswoord = eersteWachtwoord;
            //Console.WriteLine("");
            //Console.WriteLine("--> Ingave interesses");
            //Console.WriteLine("");

            var adresID = (from a in context.Adressen
                           where a.HuisNr == gekozenHuisNr && a.BusNr == gekozenBusNr && a.StraatId == straatId
                           select a).FirstOrDefault();

            if (adresID == null)
            {
                var adres = new Adres
                {
                    HuisNr   = gekozenHuisNr,
                    BusNr    = gekozenBusNr,
                    StraatId = straatId
                };
                context.Adressen.Add(adres);
                context.SaveChanges();
                persoon.AdresId = adres.AdresId;
            }
            else
            {
                persoon.AdresId = adresID.AdresId;
            }


            var profiel = new Profiel
            {
                VoorNaam              = persoon.VoorNaam,
                FamilieNaam           = persoon.FamilieNaam,
                GeslachtType          = persoon.GeslachtType,
                GeboorteDatum         = persoon.GeboorteDatum,
                AdresId               = persoon.AdresId,
                GeboorteplaatsId      = persoon.GeboorteplaatsId,
                TelefoonNr            = persoon.TelefoonNr,
                LoginNaam             = persoon.LoginNaam,
                LoginPaswoord         = persoon.LoginPaswoord,
                TaalId                = persoon.TaalId,
                KenningsmakingTekst   = persoon.KenningsmakingTekst,
                WoontHierSindsDatum   = persoon.WoontHierSindsDatum,
                BeroepTekst           = persoon.BeroepTekst,
                FirmaNaam             = persoon.FirmaNaam,
                WebsiteAdres          = persoon.WebsiteAdres,
                EmailAdres            = persoon.EmailAdres,
                FacebookNaam          = persoon.FacebookNaam,
                CreatieTijdstip       = DateTime.Now,
                LaatsteUpdateTijdstip = DateTime.Now
            };

            context.Profielen.Add(profiel);

            ToonGegegevens(profiel);
            bool?opslaan = ConsoleHelper.LeesBool("Bewaren OK ? ", OptionMode.Mandatory);

            if (opslaan == false)
            {
                KiesHoofdmenu();
            }
            else
            {
                context.SaveChanges();
                Console.WriteLine($"toegevoegd als gebruiker (id: {profiel.PersoonId}).");
                Console.WriteLine("Wacht nu op goedkeuring van een medewerker");
                KiesHoofdmenu();
            }
            return(Account);
        }