Ejemplo n.º 1
0
        public GebaeudeViewModel Update(GebaeudeViewModel gebaeudeViewModel)
        {
            Guard.IsNotNull(gebaeudeViewModel, nameof(gebaeudeViewModel));

            using (var unit = new UnitOfWork())
            {
                var      repo       = unit.GetRepository <GebaeudeRepository>();
                Gebaeude dbGebaeude = repo.GetGebaeudeById(gebaeudeViewModel.Id);
                if (dbGebaeude == null)
                {
                    throw new CustomException("Das Gebäude konnte nicht gefunden werden.");
                }

                if (gebaeudeViewModel.Raeume == null || gebaeudeViewModel.Raeume.Count == 0 && dbGebaeude.Raeume?.Count > 0)
                {
                    gebaeudeViewModel.Raeume = _mapper.Map <List <RaumViewModel> >(dbGebaeude.Raeume);
                }

                dbGebaeude = _mapper.Map(gebaeudeViewModel, dbGebaeude);
                repo.Update(dbGebaeude);
                unit.SaveChanges();

                return(_mapper.Map <GebaeudeViewModel>(dbGebaeude));
            }
        }
Ejemplo n.º 2
0
 public IActionResult UpdateGebaeude(GebaeudeViewModel gebaeudeViewModel)
 {
     return(Execute(() =>
     {
         return _gebaeudeService.Update(gebaeudeViewModel);
     }));
 }
Ejemplo n.º 3
0
        public GebaeudeViewModel Create(GebaeudeViewModel gebaeudeViewModel)
        {
            using (var unit = new UnitOfWork())
            {
                var repo = unit.GetRepository <GebaeudeRepository>();

                var dbModel = _mapper.Map <Gebaeude>(gebaeudeViewModel);
                repo.Create(dbModel);

                unit.SaveChanges();
                var result = _mapper.Map <GebaeudeViewModel>(dbModel);
                return(result);
            }
        }