public async Task DeveInserirAutor_ERetornarIdDiferenteZero()
        {
            var mapper  = AutoMapperHelper.Mapper;
            var command = new Mock <IAutorRepository>();

            var autorInserido = AutorBogus.GerarAutor();

            var viewModel = new InserirAutorViewModel
            {
                Nome  = autorInserido.Nome,
                Email = autorInserido.Email,
                Pais  = autorInserido.Pais
            };

            var esperado = new AutorViewModel
            {
                Id    = autorInserido.Id,
                Nome  = autorInserido.Nome,
                Email = autorInserido.Email,
                Pais  = autorInserido.Pais
            };

            command
            .Setup(x => x.InserirAutor(It.IsAny <Domain.Entities.Autor>()))
            .ReturnsAsync(autorInserido);

            var useCase = new InserirAutorUseCase(mapper, command.Object);

            var resultado = await useCase.Executar(viewModel);

            command.Verify(x => x.InserirAutor(It.IsAny <Domain.Entities.Autor>()), Times.Once);
            resultado.Should().BeEquivalentTo(esperado);
        }
        public ActionResult Edit(int?id, AutorViewModel model)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var modelAutor = new AutorViewModel();

            modelAutor.Id = id.Value;

            try
            {
                if (ModelState.IsValid)
                {
                    var entityOld   = db.Autores.Find(model.Id);
                    var modelUpdate = Mapper.Map <AutorViewModel, Autor>(model, entityOld);
                    db.Entry(modelUpdate).State = EntityState.Modified;
                    db.SaveChanges();
                }
                return(PartialView("_AutorDetalhe", modelAutor));
            }
            catch
            {
                return(PartialView("_AutorDetalhe", modelAutor));
            }
        }
        public ActionResult AutorEditPartial(int id)
        {
            var model = new AutorViewModel();

            model.Id = id;
            return(PartialView("_AutorEditar", model));
        }
Exemple #4
0
        public async Task <ActionResult> Edit(int id, AutorViewModel Autor)
        {
            Autor autor = new Autor()
            {
                AutorId   = Autor.AutorId,
                Livros    = Autor.Livros,
                Nome      = Autor.Nome,
                Sobrenome = Autor.Sobrenome
            };


            try
            {
                using (var apiClient = new HttpClient())
                {
                    var mediaType = new MediaTypeWithQualityHeaderValue("application/json");
                    apiClient.BaseAddress = new Uri("http://localhost:51345/");
                    apiClient.DefaultRequestHeaders.Accept.Add(mediaType);
                    await apiClient.PutAsJsonAsync("/api/Autors/" + id, autor);

                    return(RedirectToAction("Index"));
                }
            }

            catch
            {
                return(View());
            }
        }
Exemple #5
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Nome,UltimoNome,Nascimento")] AutorViewModel autorViewModel)
        {
            if (id != autorViewModel.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    await _autorAppService.EditAsync(autorViewModel);
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AutorViewModelExists(autorViewModel.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(autorViewModel));
        }
Exemple #6
0
        public ActionResult EditarAutor(int id)
        {
            IRepositorio repositorio = new Repositorio.Repositorio();

            ActionResult action = ValidarLogin(HttpContext);

            if (action != null)
            {
                return(action);
            }

            if (id == 0)
            {
                ViewBag.Adicionar = true;
                return(View());
            }

            Autor autor = repositorio.SelecionarAutorPorId(id);

            AutorViewModel model = new AutorViewModel()
            {
                IdAutor      = autor.IdAutor,
                Nome         = autor.Nome,
                DtNascimento = autor.DtNascimento.HasValue ? autor.DtNascimento.Value.ToString("yyyy-MM-dd") : ""
            };

            ViewBag.Adicionar = false;

            return(View(model));
        }
Exemple #7
0
        public async Task <IActionResult> VerificaUsuario(string email)
        {
            try
            {
                var usuario = await _accountRepository.BuscaUsuario(email);

                if (usuario != null)
                {
                    var status = await _autorRepository.GetStatusAutor(usuario.Id);

                    var autor = new AutorViewModel()
                    {
                        Email     = usuario.Email,
                        Id        = usuario.Id,
                        Nome      = usuario.Nome,
                        Sobrenome = usuario.Sobrenome,
                        StatusId  = status,
                    };
                    return(Json(autor));
                }
                else
                {
                    return(Ok());
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Exemple #8
0
        public AutorViewModel Atualizar(AutorViewModel autor)
        {
            var index = autores.FindIndex(e => e.IdAutor == autor.IdAutor);

            autores[index] = autor;
            return(autor);
        }
Exemple #9
0
        // VIEW DETAILS
        public ActionResult ViewDetails(int codAutor = -1, Boolean editar = false)
        {
            AutorViewModel autorModel = new AutorViewModel();

            autorModel.Autor  = aS.getById(codAutor);
            autorModel.Libros = lS.getAllLibrosByAutor(codAutor);

            if (codAutor > 0 && editar == true)
            {
                ViewBag.Title = MyResources.AutorResources.AccionEditar;
            }
            else if (autorModel.Autor != null)
            {
                ViewBag.Title = MyResources.AutorResources.ElementoToken + autorModel.Autor.Nombre + " " + autorModel.Autor.Apellidos;
            }
            else
            {
                ViewBag.Title    = MyResources.AutorResources.AccionCrear;
                autorModel.Autor = new Autor();
            }



            return(View("Autor", autorModel));
        }
Exemple #10
0
        public async Task <IActionResult> PesquisaAutor(string busca)
        {
            var autores = await _autorRepository.PesquisaAutor(busca);

            List <AutorViewModel> autoresList = new List <AutorViewModel>();

            foreach (var autor in autores)
            {
                var instituicao = await _trabalhoRepository.GetInstituicao(autor.InstituicaoId);

                var status = await _autorRepository.GetStatusAutor(autor.Id);

                var autorInfo = new AutorViewModel()
                {
                    Email       = autor.Email,
                    Id          = autor.Id,
                    Nome        = autor.Nome,
                    Sobrenome   = autor.Sobrenome,
                    Instituicao = instituicao,
                    StatusId    = status,
                };
                autoresList.Add(autorInfo);
            }
            return(Json(autoresList));
        }
Exemple #11
0
        // SAVE
        public ActionResult Save(AutorViewModel avm)
        {
            ActionResult resultado = null;

            //ViewBag.infoController = "Controller Save";
            try {
                if (avm.Autor.CodAutor > -1)
                {
                    try {
                        aS.update(avm.Autor);

                        resultado = View("Autor", avm);
                    } catch (Exception ex) {
                        ViewBag.ErrorMessage = MyResources.AutorResources.ErrorEditar + ex.Message;
                        resultado            = RedirectToAction("Index");
                    }
                }
                else
                {
                    try {
                        aS.create(avm.Autor);
                        resultado = RedirectToAction("Index");
                    } catch (Exception ex) {
                        ViewBag.ErrorMessage = MyResources.AutorResources.ErrorCrear + ex.Message;
                        resultado            = RedirectToAction("Index");
                    }
                }
            } catch (Exception ex) {
                ViewBag.ErrorMessage = MyResources.AutorResources.ErrorVistaDetalle + ex.Message;
                resultado            = RedirectToAction("Index");
            }

            return(resultado);
        }
        public void PutAutor([FromRoute] int id, [FromBody] AutorViewModel model)
        {
            model.Id = id;

            var autor = _mapper.Map <Autor>(model);

            _service.Alterar(autor);
        }
Exemple #13
0
        public AutorViewModel Atualizar(AutorViewModel autor)
        {
            var model = _mapper.Map <AutorViewModel, Autor>(autor);

            model = _repository.Atualizar(model);
            _repository.SaveChanges();
            return(_mapper.Map <Autor, AutorViewModel>(model));
        }
Exemple #14
0
        public ActionResult Edit(int id, AutorViewModel autorViewModel)
        {
            autorViewModel.AutorId = id;
            var autorEntidade = Mapper.Map <AutorViewModel, Autor>(autorViewModel);

            _autorAppServico.Atualizar(autorEntidade);
            return(RedirectToAction("Index"));
        }
Exemple #15
0
        public async Task <int> AddAsync(AutorViewModel autorViewModel)
        {
            var autorEntity = _mapper.Map <AutorEntity>(autorViewModel);

            var id = await _autorService.AddAsync(autorEntity);

            return(id);
        }
Exemple #16
0
        public AutorViewModel Novo(AutorViewModel auto)
        {
            var model = _mapper.Map <AutorViewModel, Autor>(auto);

            model = _repository.Novo(model);
            _repository.SaveChanges();
            return(_mapper.Map <Autor, AutorViewModel>(model));
        }
Exemple #17
0
        public static Autor MapearAutor(AutorViewModel autorViewModel)
        {
            var autor = new Autor(
                autorViewModel.Nome,
                autorViewModel.LinkedIn,
                autorViewModel.Lattes);

            return(autor);
        }
        // GET: Autor/Details/5
        public ActionResult Details(int id)
        {
            List <LivroViewModel> livros = null;
            AutorViewModel        autor  = tr.BuscarAutor(id, out livros);

            ViewBag.Livros = livros;

            return(View(autor));
        }
Exemple #19
0
 public IHttpActionResult Add(AutorViewModel autorFromView)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     _autorService.Create(Mapper.Map <AutorViewModel, AutorDTO>(autorFromView));
     return(Ok(autorFromView));
 }
Exemple #20
0
        private AutorViewModel MontarView(AutorModel autor)
        {
            var view = new AutorViewModel();

            view.id   = autor._id.ToString();
            view.Nome = autor.nome;

            return(view);
        }
        public IActionResult Novo(AutorViewModel model)
        {
            if (ModelState.IsValid)
            {
                var autor = model;
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
Exemple #22
0
        // LLEVA A AUTOR
        public ActionResult Autor(int codAutor)
        {
            AutorViewModel avm = new AutorViewModel();

            avm.Autor  = aS.getById(codAutor);
            avm.Libros = lS.getAllLibrosByAutor(codAutor);

            ViewBag.Title = MyResources.AutorResources.ElementoTituloPagina + " - " + avm.Autor.Nombre + " " + avm.Autor.Apellidos;
            return(View("~/Views/Autor/Autor.cshtml", avm));
        }
 public ActionResult Delete(int id, AutorViewModel autor)
 {
     if (ModelState.IsValid)
     {
         var _autorDomain = Mapper.Map <AutorViewModel, Autor>(autor);
         _autorAppService.Remove(_autorDomain);
         return(RedirectToAction("Index"));
     }
     return(View(autor));
 }
Exemple #24
0
        public async Task <IActionResult> Create([Bind("Id,Nome,UltimoNome,Nascimento")] AutorViewModel autorViewModel)
        {
            if (ModelState.IsValid)
            {
                await _autorAppService.AddAsync(autorViewModel);

                return(RedirectToAction(nameof(Index)));
            }
            return(View(autorViewModel));
        }
Exemple #25
0
        public async Task <ActionResult> Create(AutorViewModel autor)
        {
            var response = await _client.PostAsJsonAsync("/api/Autors", autor);

            if (response.IsSuccessStatusCode)
            {
                return(RedirectToAction("GetAll"));
            }
            return(View());
        }
        private Autor PrepararAutor(AutorViewModel autor)
        {
            Autor autorPreparado = new Autor();

            autorPreparado.Nome           = autor.Nome;
            autorPreparado.DataNascimento = autor.DataNascimento;
            autorPreparado.Biografia      = autor.Biografia;

            return(autorPreparado);
        }
Exemple #27
0
        public Autor ObterEntidadeAutorEdicao(AutorViewModel autorModel)
        {
            Autor autor = new Autor
            {
                Id   = autorModel.Id,
                Nome = autorModel.Nome
            };

            return(autor);
        }
        public AutorViewModel DeletarAutor(int id, AutorViewModel autor)
        {
            HttpResponseMessage response = repositorio.DeleteResponse("api/autor/" + id);

            if (response.IsSuccessStatusCode != true)
            {
                return(null);
            }

            return(autor);
        }
        private AutorViewModel TraduzirAutor(Autor autor)
        {
            AutorViewModel autorTraduzido = new AutorViewModel();

            autorTraduzido.Id             = autor.Id;
            autorTraduzido.Nome           = autor.Nome;
            autorTraduzido.DataNascimento = autor.DataNascimento;
            autorTraduzido.Biografia      = autor.Biografia;

            return(autorTraduzido);
        }
        public async Task <IActionResult> Novo(AutorViewModel autorViewModel)
        {
            if (ModelState.IsValid)
            {
                var autor = AutorFactory.MapearAutor(autorViewModel);
                await _criarAutor.Executar(autor);

                return(RedirectToAction("Index"));
            }
            return(View(autorViewModel));
        }