public async Task <RetornoControllerViewModel <ExibicaoMensagemViewModel, AnuncionWebMotorsModel> > Incluir(AnuncionWebMotorsModel obj) { var result = new RetornoControllerViewModel <ExibicaoMensagemViewModel, AnuncionWebMotorsModel>(obj); try { var entity = new AnuncioWebMotorsEntity() { Ano = obj.Ano, Marca = obj.Marca, Modelo = obj.Modelo, Observacao = obj.Observacao, Quilometragem = obj.Quilometragem, Versao = obj.Versao }; _anuncioRepository.Add(entity); _anuncioRepository.Save(); obj.Id = entity.Id; return(result); } catch { return(null); } }
public async Task Execute(IncluirAnuncioInput incluirAnuncioInput) { List <MarcaVeiculo> marcas = await _marcaVeiculoService.Buscar(); var marcaSelecionada = marcas.FirstOrDefault(marca => marca.ID == incluirAnuncioInput.IdMarca); if (marcaSelecionada == null) { _outputHandler.NotFound($"Marca selecionada inválida."); return; } List <ModeloVeiculo> modelos = await _modeloVeiculoService.Buscar(marcaSelecionada.ID); var modeloSelecionado = modelos.FirstOrDefault(modelo => modelo.ID == incluirAnuncioInput.IdModelo && modelo.MakeID == incluirAnuncioInput.IdMarca); if (modeloSelecionado == null) { _outputHandler.NotFound($"Modelo selecionado inválido."); return; } List <VersaoVeiculo> versoes = await _versaoVeiculoService.Buscar(modeloSelecionado.ID); var versaoSelecionada = versoes.FirstOrDefault(versao => versao.ID == incluirAnuncioInput.IdVersao && versao.ModelID == incluirAnuncioInput.IdModelo); if (versaoSelecionada == null) { _outputHandler.NotFound($"Versão selecionada inválida."); return; } var anuncio = _entityFactory.NovoAnuncio( marcaSelecionada.Name, modeloSelecionado.Name, versaoSelecionada.Name, incluirAnuncioInput.Ano, incluirAnuncioInput.Quilometragem, incluirAnuncioInput.Observacao); await _anuncioRepository.Add(anuncio); if (anuncio.ID == 0) { _outputHandler.NotFound($"Ocorreu um erro ao criar o anuncio, por favor tente novamente."); return; } var anuncioJson = JsonConvert.SerializeObject(anuncio); DistributedCacheEntryOptions opcoesCache = new DistributedCacheEntryOptions(); opcoesCache.SetAbsoluteExpiration(TimeSpan.FromMinutes(5)); _cache.SetString($"Anuncio:{anuncio.ID}", anuncioJson, opcoesCache); IncluirAnuncioOutput incluirAnuncioOutput = new IncluirAnuncioOutput(anuncio); _outputHandler.Default(incluirAnuncioOutput); }
public bool Add(Anuncio anuncio) { if (_anuncioRepository.Add(anuncio) > 0) { return(true); } else { return(false); } }
public HttpResponseMessage Post(AnuncioViewModel model) { var anuncio = Mapper.Map <Anuncio>(model); anuncio.DataCadastro = anuncio.DataAlteracao = DateTime.Now; foreach (var tag in model.Tags) { var dbTag = _anuncioRepository.BuscarTagPorPalavra(tag.Palavra); if (dbTag != null) { anuncio.Tags.Add(dbTag); } else { anuncio.Tags.Add(new Tag { Palavra = tag.Palavra }); } } anuncio.IdUsuario = User.Identity.GetUserId <int>(); if (model.DiasUteis) { anuncio.HoraInicialDiaUtil = TimeSpan.FromMinutes(model.DiaUtil[0]); anuncio.HoraFinalDiaUtil = TimeSpan.FromMinutes(model.DiaUtil[1]); } if (model.FinsDeSemanaEFeriados) { anuncio.HoraInicialFimDeSemanaEFeriado = TimeSpan.FromMinutes(model.FimDeSemanaFeriado[0]); anuncio.HoraFinalDeSemanaEFeriado = TimeSpan.FromMinutes(model.FimDeSemanaFeriado[1]); } if (model.BairroIds != null) { foreach (var bairroId in model.BairroIds) { var bairro = _anuncioRepository.BuscarBairroPorId(bairroId); anuncio.Bairros.Add(bairro); } } _anuncioRepository.Add(anuncio); return(Request.CreateResponse(HttpStatusCode.OK)); }
public void Add(Anuncio obj) { _anuncioRepository.Add(obj); }
public Anuncio Add(Anuncio anuncio) { anuncio.DataCadastro = DateTime.Now; return(_repository.Add(anuncio)); }
public void Add(AnuncioRequest anuncio) { _anuncioRepository.Add(anuncio); }