/// <summary>
        /// mostra as informacoes sobre a passagem
        /// </summary>
        /// <returns></returns>
        public IActionResult Index()
        {
            //Id usuario session
            var solicitacao = _gerenciadorPagarPassagem.ObterViagemPorUsuarioData(
                MethodsUtils.RetornaUserLogado((ClaimsIdentity)User.Identity).Id, DateTime.Now);

            if (solicitacao != null)
            {
                var viagem         = _gerenciadorViagem.ObterPorId(solicitacao.IdViagem);
                var rota           = _gerenciadorRota.ObterPorId(viagem.IdRota);
                var creditos       = _gerenciadorCredito.ObterPorId(solicitacao.IdUsuario);
                var viagemPassagem = new ViagemPassagemViewModel
                {
                    Viagem      = viagem,
                    Solicitacao = solicitacao,
                    Rota        = rota,
                    Creditos    = creditos
                };
                return(View(viagemPassagem));
            }
            else
            {
                return(View());
            }
        }
Beispiel #2
0
        /// <summary>
        /// mostra as informacoes sobre a passagem
        /// </summary>
        /// <returns></returns>
        public IActionResult Index()
        {
            //Id usuario session
            var solicitacao = PagarPassagemService.PagamentoPassagemUnityOfWork.PagarPassagemRepository.ObterViagemPorUsuarioData(
                MethodsUtils.RetornaUserLogado((ClaimsIdentity)User.Identity).Id, DateTime.Now);

            if (solicitacao != null)
            {
                var viagem         = ViagemService.ViagemUnityOfWork.ViagemRepository.ObterPorId(solicitacao.IdViagem);
                var rota           = RotaService.RotaUnityOfWork.RotaRepository.ObterPorId(viagem.IdRota);
                var creditos       = CreditoService.CreditoUnityOfWork.ComprarCreditoRepository.ObterPorId(solicitacao.IdUsuario);
                var viagemPassagem = new ViagemPassagemViewModel
                {
                    Viagem      = viagem,
                    Solicitacao = solicitacao,
                    Rota        = rota,
                    Creditos    = creditos
                };
                return(View(viagemPassagem));
            }
            else
            {
                return(View());
            }
        }
Beispiel #3
0
        // GET: Solicitacao/Delete/5
        public ActionResult Delete(int id)
        {
            var viagem         = _gerenciadorViagem.ObterPorId(id);
            var veiculo        = _gerenciadorVeiculo.ObterPorId(viagem.IdVeiculo);
            var rota           = _gerenciadorRota.ObterPorId(viagem.IdRota);
            var _usuarioLogado = MethodsUtils.RetornaUserLogado((ClaimsIdentity)User.Identity);

            ViewBag.solicitacao = _gerenciadorSolicitacao.ObterPorViagemUsuario(_usuarioLogado.Id, id);
            // Obter a solicitação pelo ID da viagem/ID do usuario em questao.
            //var solicitacao = _gerenciadorSolicitacao.ObterPorViagemUsuario(idUsuario, id);
            return(View(new ViagemRotaViewModel {
                Veiculo = veiculo, Rota = rota, Viagem = viagem
            }));
        }
Beispiel #4
0
        public ActionResult Delete(int id, IFormCollection collection)
        {
            try
            {
                var _usuarioLogado = MethodsUtils.RetornaUserLogado((ClaimsIdentity)User.Identity);
                var solicitacao    = _gerenciadorSolicitacao.ObterPorViagemUsuario(_usuarioLogado.Id, id);
                if (_gerenciadorSolicitacao.Remover(solicitacao.Id))
                {
                    return(RedirectToAction("Index", "Solicitacao", new { msg = "sucess" }));
                }

                return(RedirectToAction("Index", "Solicitacao", new { msg = "fail" }));
            }
            catch
            {
                return(RedirectToAction("Index", "Solicitacao"));
            }
        }
Beispiel #5
0
        public ActionResult Create(int id)
        {
            try
            {
                var _usuarioLogado = MethodsUtils.RetornaUserLogado((ClaimsIdentity)User.Identity);
                var x = new SolicitacaoVeiculoModel {
                    IdUsuario = _usuarioLogado.Id, IdViagem = id, DataSolicitacao = DateTime.Now, IdPagamento = 1
                };
                if (_gerenciadorSolicitacao.Inserir(x))
                {
                    TempData["msg"] = "success";
                    return(RedirectToAction("Index", "Solicitacao"));
                }

                return(RedirectToAction("Index", "Solicitacao"));
            }
            catch
            {
                return(RedirectToAction("Index", "Solicitacao"));
            }
        }
Beispiel #6
0
        // GET: Solicitacao
        public ActionResult Index()
        {
            var _usuarioLogado = MethodsUtils.RetornaUserLogado((ClaimsIdentity)User.Identity);
            // Retornando todas as viagens do determinado usuario, obtido pelo id setado na sessão.
            var listViewModels = new List <ViagemRotaViewModel>();

            foreach (var solicitacao in _gerenciadorSolicitacao.ObterSolicitacoesAbertasPorUsuario(_usuarioLogado.Id))
            {
                var viagem = _gerenciadorViagem.ObterPorId(solicitacao.IdViagem);
                listViewModels.Add(new ViagemRotaViewModel
                {
                    Rota    = _gerenciadorRota.ObterPorId(viagem.IdRota),
                    Veiculo = _gerenciadorVeiculo.ObterPorId(viagem.IdVeiculo),
                    Viagem  = viagem
                });
            }

            var rotas = _gerenciadorRota.ObterTodos();

            ViewBag.rotaOrigem  = new SelectList(rotas, "Origem", "Origem");
            ViewBag.rotaDestino = new SelectList(rotas, "Destino", "Destino");
            return(View(listViewModels));
        }
        public IActionResult Index(CreditoViagemModel cv)
        {
            bool deferido;

            ViewBag.Creditos = addListaCreditos();
            cv.IdUsuario     = MethodsUtils.RetornaUserLogado((ClaimsIdentity)User.Identity).Id;

            if (ModelState.IsValid)
            {
                if (_gerenciadorUsuario.ObterPorId(cv.IdUsuario) != null)
                {
                    if (_gerenciadorComprarCredito.Inserir(cv))
                    {
                        TempData["mensagemSucesso"] = "Compra realizada com sucesso!.";
                        deferido = true;
                    }
                    else
                    {
                        TempData["mensagemErro"] = "Compra não pode ser realizada!.";
                        deferido = false;
                    }

                    if (!_gerenciadorTransacao.Inserir(addTransacao(cv, deferido)))
                    {
                        TempData["mensagemErroTransacao"] = "Houve um problema ao gravar a transacao";
                    }
                }
                else
                {
                    TempData["mensagemErro"] = "Compra não pode ser finalizada pois não existe nenhum usuário logado na sessão!.";
                }

                return(RedirectToAction(nameof(Index)));
            }
            return(View());
        }