public IActionResult VerwijderBevestigd(int id, int werkgeverid, Analyse analyse)
        {
            // id is het id van de contactpersoon

            try
            {
                // contactpersoon verwijderen van Departement
                analyse.Departement.ContactPersoon = null;
                ContactPersoon cp = _contactPersoonRepository.GetById(id);

                // contactpersoon verwijderen uit repo
                _contactPersoonRepository.Remove(cp);

                // alles opslaan
                _contactPersoonRepository.Save();
                _analyseRepository.Save();

                TempData["message"] = "De contactpersoon " + cp.Voornaam + " " + cp.Naam + " is succesvol verwijderd";
            }
            catch (Exception e)
            {
                _exceptionLogRepository.Add(new ExceptionLog(e, "ContactPersoon", "VerwijderBevestigd"));
                _exceptionLogRepository.Save();
                TempData["error"] = "Er is een fout opgetreden tijdens het verwijderen van de contactpersoon, probeer later opnieuw";
            }

            return(RedirectToAction("Index"));
        }
        public ContactPersoonViewModel(ContactPersoon contactPersoon, int werkgeverid)
        {
            PersoonId = contactPersoon.ContactPersoonId;

            Voornaam = contactPersoon.Voornaam;

            Naam = contactPersoon.Naam;

            Email = contactPersoon.Emailadres;



            WerkgeverId = werkgeverid;
        }
        public void TestVerwijderContactPersoon_Succes()
        {
            ContactPersoon cp = new ContactPersoon
            {
                Voornaam   = "Thomas",
                Naam       = "Aelbrecht",
                Emailadres = "*****@*****.**"
            };

            _dbContext.Aldi.ContactPersoon = new ContactPersoon();

            _contactPersoonRepository.Setup(c => c.GetById(It.IsAny <int>())).Returns(cp);

            var result = _controller.VerwijderContactpersoon(0, 0) as ViewResult;

            Assert.Equal("Verwijder", result?.ViewName);
            Assert.Equal(0, result?.ViewData["contactPersoonId"]);
            Assert.Equal(0, result?.ViewData["werkgeverId"]);
            Assert.Equal("Thomas Aelbrecht", result?.ViewData["contactpersoon"]);
        }
        public void TestIndex_ContactPersoonReedsGeselecteerd_ReturnedIndexView()
        {
            _departementRepository.Setup(r => r.GetById(It.IsAny <int>())).Returns(_dbContext.Aldi);
            ContactPersoon          cp    = new ContactPersoon("Thomas", "Aelbrecht", "*****@*****.**");
            ContactPersoonViewModel model = new ContactPersoonViewModel(cp, 0);

            Analyse analyse = new Analyse {
                Departement = _dbContext.Aldi
            };

            var result      = _controller.Index(analyse) as ViewResult;
            var resultModel = result?.Model as ContactPersoonViewModel;

            Assert.Equal("Index", result?.ViewName);
            Assert.Equal(model.AnalyseId, resultModel?.AnalyseId);
            Assert.Equal(model.Email, resultModel?.Email);
            Assert.Equal(model.Naam, resultModel?.Naam);
            Assert.Equal(model.PersoonId, resultModel?.PersoonId);
            Assert.Equal(model.Voornaam, resultModel?.Voornaam);
            Assert.Equal(model.WerkgeverId, resultModel?.WerkgeverId);
        }
        public IActionResult VerwijderContactpersoon(int id, int werkgeverid)
        {
            // id is het id van de contactpersoon
            try
            {
                ContactPersoon cp = _contactPersoonRepository.GetById(id);

                ViewData["contactPersoonId"] = id;
                ViewData["werkgeverId"]      = werkgeverid;
                ViewData["contactpersoon"]   = cp.Voornaam + " " + cp.Naam;
            }
            catch (Exception e)
            {
                _exceptionLogRepository.Add(new ExceptionLog(e, "ContactPersoon", "VerwijderContactPersoon"));
                _exceptionLogRepository.Save();
                TempData["error"] = "Er is een fout opgetreden tijdens het voorbereiden van het verwijderen, probeer later opnieuw";
                return(RedirectToAction("Index"));
            }

            return(View("Verwijder"));
        }
        public void TestVerwijderBevestigd_Succes()
        {
            Analyse analyse = new Analyse {
                Departement = _dbContext.Aldi
            };

            ContactPersoon cp = new ContactPersoon
            {
                Voornaam   = "Thomas",
                Naam       = "Aelbrecht",
                Emailadres = "*****@*****.**"
            };

            _contactPersoonRepository.Setup(c => c.GetById(It.IsAny <int>())).Returns(cp);

            var result = _controller.VerwijderBevestigd(0, 0, analyse) as RedirectToActionResult;

            Assert.Equal("Index", result?.ActionName);

            _contactPersoonRepository.Verify(c => c.Remove(cp), Times.Once);
            _contactPersoonRepository.Verify(c => c.Save(), Times.Once);
            _analyseRepository.Verify(c => c.Save(), Times.Once);
        }
        public IActionResult VoegContactPersoonToe(Analyse analyse, ContactPersoonViewModel model)
        {
            try
            {
                analyse.Departement = _departementRepository.GetById(analyse.Departement.DepartementId);
                ContactPersoon cp = new ContactPersoon(model.Voornaam, model.Naam, model.Email);

                analyse.Departement.ContactPersoon = cp;
                _departementRepository.Save();
                _analyseRepository.Save();

                TempData["message"] = "De contactpersoon " + cp.Voornaam + " " + cp.Naam + " is succesvol toegevoegd";
            }
            catch (Exception e)
            {
                _exceptionLogRepository.Add(new ExceptionLog(e, "ContactPersoon", "VoegToe"));
                _exceptionLogRepository.Save();
                TempData["error"] = "Er ging onverwachts iets mis, probeer later opnieuw";
                return(View("Index", model));
            }

            return(RedirectToAction("Index", "Kosten"));
        }
        public IActionResult Opslaan(ContactPersoonViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    ContactPersoon cp = _contactPersoonRepository
                                        .GetById(model.PersoonId);

                    if (cp != null)
                    {
                        cp.Naam       = model.Naam;
                        cp.Voornaam   = model.Voornaam;
                        cp.Emailadres = model.Email;

                        _contactPersoonRepository.Save();

                        TempData["message"] = "De contactpersoon " + model.Voornaam + " " + model.Naam +
                                              " is succesvol opgeslaan";
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        TempData["error"] = "Er ging iets mis tijdens het opslaan, probeer later opnieuw";
                    }
                }
            }
            catch (Exception e)
            {
                _exceptionLogRepository.Add(new ExceptionLog(e, "ContactPersoon", "Opslaan"));
                _exceptionLogRepository.Save();
                TempData["error"] = "Er ging onverwachts iets mis, probeer later opnieuw";
            }

            // als we hier komen, moet het formulier nog eens getoond worden
            return(View("Index", model));
        }
 public void Remove(ContactPersoon contactPersoon)
 {
     _contactPersonen.Remove(contactPersoon);
 }
 public void Add(ContactPersoon contactPersoon)
 {
     _contactPersonen.Add(contactPersoon);
 }
Beispiel #11
0
        public async Task InitializeData()
        {
            _dbContext.Database.EnsureDeleted();
            if (_dbContext.Database.EnsureCreated())
            {
                await InitializeUsers();

                // Doelgroepen aanmaken
                InitializeDoelgroepen();

                ContactPersoon contactThomas = new ContactPersoon("Thomas", "Aelbrecht", "*****@*****.**");
                ContactPersoon contactRobin  = new ContactPersoon("Robin", "Coppens", "*****@*****.**");
                ContactPersoon contactDimi   = new ContactPersoon("Dimmy", "Maenhout", "*****@*****.**");

                Werkgever werkgever =
                    new Werkgever("VDAB", "Vooruitgangstraat", 1, "", 9300, "Aalst", 37);

                Departement departement = new Departement("Onderhoudsdienst")
                {
                    Werkgever = werkgever
                };
                werkgever.Departementen.Add(departement);
                _departementRepository.Add(departement);
                _werkgeverRepository.Add(werkgever);

                werkgever =
                    new Werkgever("ALDI", "Leo Duboistraat", 20, "", 9280, "Lebbeke", 37);

                departement = new Departement("Aankoop")
                {
                    Werkgever = werkgever
                };
                werkgever.Departementen.Add(departement);
                _departementRepository.Add(departement);
                _werkgeverRepository.Add(werkgever);

                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 1, "", 1000, "Brussel", 35);

                departement = new Departement("Human resources")
                {
                    Werkgever = werkgever
                };
                werkgever.Departementen.Add(departement);
                _departementRepository.Add(departement);
                _werkgeverRepository.Add(werkgever);

                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 2, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);
                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 3, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);
                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 4, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);
                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 5, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);
                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 6, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);
                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 7, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);
                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 8, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);
                werkgever =
                    new Werkgever("Coolblue", "Medialaan", 9, "", 1000, "Brussel", 35);
                _werkgeverRepository.Add(werkgever);


                InitializeIntrotekst();

                _departementRepository.Save();
                _werkgeverRepository.Save();

                Jobcoach thomas = _gebruikerRepository.GetByEmail("*****@*****.**");

                Analyse analyse = new Analyse();

                departement = new Departement("Verkoop")
                {
                    Werkgever = werkgever
                };
                analyse.Departement = departement;

                analyse.Loonkosten = MaakLoonkosten();

                analyse.ExtraKosten = MaakExtraKosten();

                analyse.MedewerkersZelfdeNiveauBaten = MaakMedewerkerNiveauBaten();

                analyse.Subsidie = new Subsidie {
                    Bedrag = 1500
                };

                analyse.UitzendKrachtBesparingen = MaakUitzendKrachtBesparingen();

                analyse.UpdateTotalen(_analyseRepository);

                _analyseRepository.Add(analyse);
                _analyseRepository.Save();

                thomas.Analyses.Add(analyse);
                _gebruikerRepository.Save();
            }
            _dbContext.SaveChanges();
        }