public override Task Handle(Domain.Events.VeiculoDevolvido notification, CancellationToken cancellationToken) { var aluguel = _aluguelRepository.ObterPorId(notification.AluguelId); aluguel.SinalizarVeiculoDevolvido(notification.DataHoraDevolucao); _aluguelRepository.Update(aluguel); return(Task.CompletedTask); }
public JsonResult AtualizarAluguel(AluguelAtualizaSolicitacaoViewModel model) { if (ModelState.IsValid) { try { Aluguel a = new Aluguel(); a.IdAluguel = model.IdAluguel; a.DataAlguel = model.DataAluguel; a.HoraInicio = model.HorInicio; a.HoraFim = model.HoraFim; a.Descricao = model.DescricaoEvento; a.IdEspaco = model.IdEspaco; a.IdUsuario = model.IdUsuario; a.ValorAluguel = 0; a.FlCancelado = 0; a.FlVerificado = 0; repository.Update(a); return(Json("Aluguel atualizado com sucesso!")); } catch (Exception e) { return(Json($"Ocorreu um erro:{e.Message}")); } } else { Hashtable erros = new Hashtable(); foreach (var m in ModelState) { if (m.Value.Errors.Count > 0) { erros[m.Key] = m.Value.Errors.Select(e => e.ErrorMessage); } } return(Json(erros)); } }
public override async Task <CommandResult> Handle(FecharAluguelCommand request, CancellationToken cancellationToken) { var aluguel = _aluguelRepository.ObterPorId(request.AluguelId); if (aluguel.EstaEncerrado) { return(CommandResult.Error($"O Aluguel {aluguel.NumeroControle} já está fechado.")); } aluguel.Encerrar(); _aluguelRepository.Update(aluguel); await aluguel.RaiseEvents(_mediator); return(CommandResult.Ok()); }