/// <summary>
        /// Action de mise à jour de la fiche maison
        /// </summary>
        /// <param name="id">Identifiant de la maison à charger pour MAJ</param>
        /// <returns></returns>
        public IActionResult Edit(int id)
        {
            // Requêter en BDD la maison depuis son Id
            var existingHouse = dbContext
                                .Set <House>()
                                .Where(x => x.Id == id)
                                .SingleOrDefault();

            var vm = new EditHouseViewModel();

            if (existingHouse == null)
            {
                // Stocker un message d'erreur
                ViewBag.Error = $"Aucune maison n'existe pour l'id {id}";
            }
            else
            {
                // Initialiser le viewmodel
                vm.Id   = existingHouse.Id;
                vm.Name = existingHouse.Name;
            }

            // TODO ... Have fun!
            return(View(vm));
        }
示例#2
0
        public IActionResult Edit(int id)
        {
            var house = _houseService.GetById(id, User.Identity.GetId());

            if (house != null)
            {
                var model = new EditHouseViewModel
                {
                    IdentificationNumber = house.IdentificationNumber,
                    Name    = house.Name,
                    Surname = house.Surname,
                    Address = house.Address
                };

                return(View(model));
            }

            return(NotFound());
        }
        public IActionResult Edit(int id, EditHouseViewModel vm)
        {
            if (id == vm.Id)
            {
                var existingHouseByName = dbContext.Set <House>()
                                          .Where(x => x.Name == vm.Name)
                                          .SingleOrDefault();

                if (existingHouseByName == null)
                {
                    // Requêtage de l'entité à mettre à jour
                    var houseToUpdate = dbContext
                                        .Set <House>()
                                        .Where(x => x.Id == id)
                                        .SingleOrDefault();

                    // Recopie des valeurs
                    houseToUpdate.Name = vm.Name;

                    // Mise à jour > UPDATE
                    dbContext.SaveChanges();

                    // Affichage du message de succès
                    ViewBag.Success = "Maison mise à jour avec succès";
                }
                else
                {
                    // Affichage du message d'erreur
                    ViewBag.Error = "Ce nom de maison existe déjà";
                }
            }
            else
            {
                ViewBag.Error = "Incohérence entre Ids";
            }

            return(View(vm));
        }
示例#4
0
        public IActionResult Edit(int id, EditHouseViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var houseToUpdate = _houseService.GetById(id, User.Identity.GetId());

            if (houseToUpdate != null)
            {
                houseToUpdate.IdentificationNumber = model.IdentificationNumber;
                houseToUpdate.Name    = model.Name;
                houseToUpdate.Surname = model.Surname;
                houseToUpdate.Address = model.Address;

                _houseService.SaveChanges();

                return(View("EditSuccess"));
            }

            return(NotFound());
        }