public IActionResult Update([FromForm] EditMoovieModel moovie) { var tokenValidationResult = ValidateToken(); if (!tokenValidationResult.Status) { var tokenValidationResultJson = JsonConvert.SerializeObject(tokenValidationResult); return(Content(tokenValidationResultJson, "aplication/json")); } var result = _moovieService.Edit(moovie); var resultJson = JsonConvert.SerializeObject(result); return(Content(resultJson, "aplication/json")); }
public Result Edit(EditMoovieModel moovie) { if (moovie.Id == null || moovie.Id == Guid.Empty) { moovie.Id = GetId(moovie.Name); } if (moovie.Id == null || moovie.Id == Guid.Empty) { return new Result() { Status = false, Message = "Filme não encontrado." } } ; var currentDatabaseMoovie = Get((Guid)moovie.Id); if (currentDatabaseMoovie == null) { return new Result() { Status = false, Message = "Filme não encontrado." } } ; var directorId = _artistService.Get(moovie.DirectorName, Data.Enums.Artist.Type.Director); if (directorId == null || directorId == Guid.Empty) { return new Result() { Status = false, Message = "Diretor não encontrado." } } ; var countryId = _countryService.Get(moovie.CountryName); if (countryId == null || countryId == Guid.Empty) { return new Result() { Status = false, Message = "Nacionalidade não encontrada." } } ; var genreId = _genreService.Get(moovie.GenreName); if (genreId == null || genreId == Guid.Empty) { return new Result() { Status = false, Message = "Gênero de filme não encontrado." } } ; currentDatabaseMoovie.Name = moovie.Name; currentDatabaseMoovie.ReleaseDate = moovie.ReleaseDate; currentDatabaseMoovie.DirectorId = (Guid)directorId; currentDatabaseMoovie.CountryId = (Guid)countryId; currentDatabaseMoovie.GenreId = (Guid)genreId; currentDatabaseMoovie.Observations = moovie.Observations; _unitOfWork.RepositoryBase.Edit(currentDatabaseMoovie); _unitOfWork.Commit(); return(new Result() { Status = true, Message = "Filme editado com sucesso!", Object = moovie }); }