public async Task Update(Guid id, [FromBody] AnimalUpdateDto animalUpdateDto)
        {
            var userEmail = User.FindFirstValue(ClaimTypes.Name);
            var user      = await userAppService.Get(userEmail);

            await animalAppService.Update(id, animalUpdateDto, user);
        }
Exemple #2
0
        public async Task Update(Guid id, AnimalUpdateDto animalUpdateDto, UserDto userDto)
        {
            var files = animalUpdateDto.Files
                        .Select(f => new { FileDTO = f, File = fileBuilder.Build(f) })
                        .ToArray();

            await Task.WhenAll(files.Select(f => fileStorageService.Save(
                                                new MemoryStream(Convert.FromBase64String(f.FileDTO.FileInBase64)),
                                                f.File.WayToFile)));

            var animal = animalBuilder.Build(id, animalUpdateDto, files.Select(f => f.File)
                                             .ToArray(), userBuilder.Build(userDto));

            await animalDataService.Update(animal);
        }
Exemple #3
0
        public IActionResult UpdateAnimal(int animalId, [FromBody] AnimalUpdateDto animalDto)
        {
            if (animalDto == null || animalId != animalDto.Id)
            {
                return(BadRequest(ModelState));
            }

            var natiotionalParkObj = _mapper.Map <Animal>(animalDto);

            if (!_animalRepository.UpdateAnimal(natiotionalParkObj))
            {
                ModelState.AddModelError("", $"Somethings went wrong when updation the record {natiotionalParkObj.Name}");
                return(StatusCode(500, ModelState));
            }
            return(NoContent());
        }
Exemple #4
0
        public Animal Build(Guid id, AnimalUpdateDto animal, IEnumerable <File> files, User owner)
        {
            var result = owner.Animals.First(a => a.Id == id);

            result.Id            = id;
            result.AnimalType    = animal.AnimalType;
            result.Passport      = animal.Passport;
            result.Sterilization = animal.Sterilization;
            result.Vaccination   = animal.Vaccination;
            result.Kind          = animal.Kind;
            result.BDate         = animal.BDate;
            result.Description   = animal.Description;
            result.Name          = animal.Name;
            result.Sex           = (Sex)animal.Sex;
            result.Files         = files.ToArray();
            result.UserId        = owner.Id;

            return(result);
        }
Exemple #5
0
        public IActionResult UpdateAnimal(int animalId, [FromBody] AnimalUpdateDto animalToUpdate)
        {
            if (animalToUpdate == null || animalId != animalToUpdate.Id)
            {
                return(BadRequest(ModelState));
            }

            if (animalRepo.AnimalExists(animalToUpdate.Name))
            {
                ModelState.AddModelError("", "Animal already exist");
                return(StatusCode(404, ModelState));
            }

            var animal = mapper.Map <Animal>(animalToUpdate);

            if (!animalRepo.UpdateAnimal(animal))
            {
                ModelState.AddModelError("", $"Error with {animal.Name}");
                return(StatusCode(500, ModelState));
            }
            return(NoContent());
        }