public Task <DepartementDetailVM> Handle(GetDepartementByIdQuery query, CancellationToken cancellationToken) { var departement = _repository.GetById(query.Id); if (departement == null) { throw new RpcException(new Status(StatusCode.NotFound, "Data not found")); } else { return(Task.Run(() => new DepartementDetailVM { Id = departement.Id, Name = departement.Name, Location = departement.Location, Employees = departement.Employees.Select(y => new EmployeeVM { Id = y.Id, FirstName = y.FirstName, LastName = y.LastName, JoinDate = y.JoinDate }).ToList() })); } }
public IActionResult Index(Analyse analyse) { try { if (analyse.Departement == null) { TempData["error"] = "U hebt nog geen werkgever geselecteerd, gelieve deze eerst te selecteren"; return(RedirectToAction("Index", "Werkgever")); } ViewData["analyseId"] = analyse.AnalyseId; int id = analyse.Departement.Werkgever.WerkgeverId; ViewData["WerkgeverId"] = id; Werkgever werkgever = _werkgeverRepository.GetById(id); analyse.Departement = _departementRepository.GetById(analyse.Departement.DepartementId); if (analyse.Departement?.ContactPersoon != null) { ContactPersoonViewModel model = new ContactPersoonViewModel(analyse.Departement?.ContactPersoon, analyse.Departement.Werkgever.WerkgeverId); return(View("Index", model)); } else { TempData["error"] = "Er is nog geen contactpersoon, voeg hier eventueel een contactpersoon toe"; return(RedirectToAction("VoegContactPersoonToe", new { id = werkgever.WerkgeverId })); } } catch (Exception e) { _exceptionLogRepository.Add(new ExceptionLog(e, "ContactPersoon", "Index")); _exceptionLogRepository.Save(); TempData["error"] = "Er ging onverwachts iets mis, probeer later opnieuw"; return(RedirectToAction("Index", "Werkgever")); } }
public Task<SuccessResponse> Handle(DeleteDepartementCommand command, CancellationToken cancellationToken) { var result = new SuccessResponse(); var departement = _departementRepository.GetById(command.Id); if (departement == null) result.Reason = $"Departement with ID'{command.Id}' not found."; else { foreach (var employee in departement.Employees) _employeeRepository.Delete(employee); _departementRepository.Delete(departement); result.Success = true; } return Task.Run(() => result); }
public Departement GetById(int Id) { return(_departementRepository.GetById(Id)); }
public IActionResult Opslaan(Analyse analyse, WerkgeverViewModel model) { try { Departement departement = _departementRepository.GetById(model.DepartementId); Werkgever werkgever = departement.Werkgever; DecimalConverter dc = new DecimalConverter(); analyse = _analyseRepository.GetByIdAll(analyse.AnalyseId); // werkgever instellen Werkgever nieuweWerkgever = new Werkgever(model.Naam, model.Straat, model.Nummer ?? 0, model.Bus, model.Postcode, model.Gemeente, dc.ConvertToDecimal(model.AantalWerkuren), dc.ConvertToDecimal(model.PatronaleBijdrage)); // departement instellen if (departement != null && !string.Equals(model.Departement, departement.Naam)) { // de jobcoach heeft de departementsnaam gewijzigd, // dus we maken een nieuw departement aan departement = new Departement(model.Departement) { Werkgever = werkgever }; werkgever.Departementen.Add(departement); } if (werkgever != null && !nieuweWerkgever.Equals(werkgever)) { werkgever.Departementen.Remove(departement); departement = new Departement(model.Departement) { Werkgever = nieuweWerkgever }; nieuweWerkgever.Departementen.Add(departement); } else { departement.Werkgever = werkgever; } // instellen in de analyse analyse.Departement = departement; // alles opslaan _departementRepository.Save(); _analyseRepository.Save(); TempData["message"] = "De werkgever is succesvol opgeslaan"; return(RedirectToAction("Index")); } catch (Exception e) { if (e is ArgumentException || e is FormatException) { TempData["error"] = e.Message; } else { _exceptionLogRepository.Add(new ExceptionLog(e, "Werkgever", "Opslaan ")); _exceptionLogRepository.Save(); TempData["error"] = "Er ging onverwachts iets fout, probeer later opnieuw"; } } return(View("Index", model)); }