public AnuncioAdicionarResponse Adicionar(AnuncioAdicionarRequest request) { // Criei o UnitOfWork para mostrar um controle de transação com o dapper quando for preciso using (_unitOfWork) { // Inicia a transação _unitOfWork.BeginTransaction(); // Faz o mapeamento para a model e chama a service Anuncio requestModel = _mapper.Map <Anuncio>(request); Anuncio responseModel = _anuncioService.Adicionar(requestModel); // Commit ou RollBack if (responseModel.Erros != null && responseModel.Erros.Any()) { _unitOfWork.RollBack(); } else { _unitOfWork.CommitTransaction(); } // Mapemento do response e retorna para a api AnuncioAdicionarResponse response = _mapper.Map <AnuncioAdicionarResponse>(responseModel); return(response); } }
public IActionResult Post([FromBody] Anuncio anuncio) { if (anuncio == null) { return(BadRequest(new Exception("Nao foi possivel identificar o anuncio na requisicao"))); } if (anuncio.Id > 0) { _anuncioService.Atualizar(anuncio); } else { _anuncioService.Adicionar(anuncio); } return(Ok("Anuncio cadastrado com sucesso")); }
public async Task <IActionResult> Adicionar(AnuncioViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var anuncio = new Anuncio { Nome = model.Nome, DataInicio = model.DataInicio, DataFim = model.DataFim, InvestimentoPorDia = model.InvestimentoPorDia, ClienteId = model.ClienteId, Ativo = model.Ativo, }; await _servico.Adicionar(anuncio); return(RedirectToAction("Index")); }