Beispiel #1
0
        public IActionResult VolledigeUpdateEvenement(Guid evenementId, [FromBody] EvenementVoorUpdateDto evenement)
        {
            var evenementVanRepo = _evenementRepository.GetEvenement(evenementId);

            if (evenementVanRepo == null)
            {
                return(NotFound($"Evenement '{evenementId}' niet gevonden."));
            }

            _mapper.Map(evenement, evenementVanRepo);

            // === START Controle voor manipulatie === //
            if (_evenementRepository.BestaatEvenementMetUitzonderingVan(evenementVanRepo.Naam, evenementId))
            {
                return(Conflict($"Er bestaat reeds een evenement met deze naam."));
            }

            if (evenementVanRepo.EvenementCategorieId.HasValue)
            {
                if (!_evenementCategorieRepository.BestaatEvenementCategorie(evenementVanRepo.EvenementCategorieId.Value))
                {
                    return(NotFound($"Evenement categorie '{evenementVanRepo.EvenementCategorieId.Value}' niet gevonden."));
                }
            }
            // === EINDE Controle voor manipulatie === //

            _evenementRepository.UpdatenEvenement(evenementVanRepo);
            _evenementRepository.Opslaan();

            //return NoContent();
            var evenementTeRetourneren = _mapper.Map <EvenementVoorRaadpleegDto>(evenementVanRepo);

            return(CreatedAtRoute("GetEvenement", new { evenementId = evenementTeRetourneren.Id }, evenementTeRetourneren));
        }