예제 #1
0
        public PartialViewResult CalcularFrete(int id)
        {
            Carrinho        carrinho;
            List <Endereco> enderecos;
            Endereco        endereco = new Endereco()
            {
                Id = id
            };

            resultado = new Facade().Consultar(endereco);//Busca enderecos
            if (!string.IsNullOrEmpty(resultado.Msg))
            {
                TempData["MsgErro"] = resultado.Msg;
                return(PartialView(null));
            }
            else
            {
                enderecos = new List <Endereco>();
                foreach (var item in resultado.Entidades)
                {
                    enderecos.Add((Endereco)item);
                }
                carrinho = SessionHelper.Get <Carrinho>(HttpContext.Session, "carrinho");

                carrinho.Cep        = enderecos.FirstOrDefault().Cep;
                carrinho.EnderecoId = enderecos.FirstOrDefault().Id;
                carrinho.ValorFrete = CalculoFrete.Calcular(carrinho.Cep, carrinho.QtdeTotalItens);
                SessionHelper.Set <Carrinho>(HttpContext.Session, "carrinho", carrinho);
                return(PartialView("_resumo", carrinho));
            }
        }
예제 #2
0
        public IActionResult Index()
        {
            Carrinho               carrinho;
            Cupom                  cupom    = new Cupom();
            Endereco               endereco = new Endereco();
            CartaoDeCredito        cartao   = new CartaoDeCredito();
            List <Cupom>           cupons;
            List <Endereco>        enderecos;
            List <CartaoDeCredito> cartoes;

            if (HttpContext.Session.Get <int>("idUsuario") > 0)
            {
                ViewBag.NomeUsuario = HttpContext.Session.GetString("nomeUsuario");

                cupom.UsuarioId = HttpContext.Session.Get <int>("idUsuario");
                cupom.Tipo      = 'T';
                cupom.Usado     = 0;

                resultado = new Facade().Consultar(cupom);//Busca cupons
                if (!string.IsNullOrEmpty(resultado.Msg))
                {
                    ViewBag.Mensagem = resultado.Msg;
                }
                else
                {
                    cupons = new List <Cupom>();
                    foreach (var item in resultado.Entidades)
                    {
                        cupons.Add((Cupom)item);
                    }
                    ViewBag.CuponsTroca = cupons;
                }

                endereco.UsuarioId    = HttpContext.Session.Get <int>("idUsuario");
                endereco.TipoEndereco = 1;
                endereco.Ativo        = 1;
                resultado             = new Facade().Consultar(endereco);//Busca enderecos
                if (!string.IsNullOrEmpty(resultado.Msg))
                {
                    ViewBag.Mensagem = resultado.Msg;
                }
                else
                {
                    enderecos = new List <Endereco>();
                    foreach (var item in resultado.Entidades)
                    {
                        enderecos.Add((Endereco)item);
                    }
                    ViewBag.Enderecos = enderecos;
                }

                cartao.UsuarioId = HttpContext.Session.Get <int>("idUsuario");

                resultado = new Facade().Consultar(cartao);//Busca cartoes
                if (!string.IsNullOrEmpty(resultado.Msg))
                {
                    ViewBag.Mensagem = resultado.Msg;
                }
                else
                {
                    cartoes = new List <CartaoDeCredito>();
                    foreach (var item in resultado.Entidades)
                    {
                        cartoes.Add((CartaoDeCredito)item);
                    }
                    ViewBag.Cartoes = cartoes;
                }
            }

            carrinho = SessionHelper.Get <Carrinho>(HttpContext.Session, "carrinho");
            if (carrinho == null)
            {
                carrinho = new Carrinho();
            }
            else
            {
                char statusPedido = HttpContext.Session.Get <char>("statusPedido");
                if (statusPedido != '\0' && statusPedido == 'A')
                {
                    carrinho = new Carrinho();
                    HttpContext.Session.Remove("statusPedido");
                }
            }

            carrinho.QtdeTotalItens = 0;
            foreach (var item in carrinho.ItensPedido)
            {
                carrinho.QtdeTotalItens += item.Qtde;
            }
            if (!string.IsNullOrEmpty(carrinho.Cep) && !string.IsNullOrWhiteSpace(carrinho.Cep))
            {
                carrinho.ValorFrete = CalculoFrete.Calcular(carrinho.Cep, carrinho.ItensPedido.Count());
            }
            if (string.IsNullOrEmpty(carrinho.Cep))
            {
                carrinho.Cep = "";
            }

            SessionHelper.Set <Carrinho>(HttpContext.Session, "carrinho", carrinho);
            string msg = HttpContext.Session.GetString("mensagemCarrinho");

            if (!string.IsNullOrEmpty(msg) && !string.IsNullOrWhiteSpace(msg))
            {
                ViewBag.Mensagem = msg;
                HttpContext.Session.Remove("mensagemCarrinho");
            }
            return(View(carrinho));
        }