Esempio n. 1
0
        /// <summary>
        /// Mosta todos os detalhes da de um determindao produto
        /// </summary>
        /// <param name="numPedido"></param>
        /// <param name="frete"></param>
        /// <param name="idStatus"></param>
        /// <param name="dataCompra"></param>
        /// <param name="dataEntr"></param>
        /// <returns></returns>
        public ActionResult Details(string numPedido, decimal frete, string idStatus, string dataCompra, string dataEntr)
        {
            decimal soma        = 0;
            decimal multiplicao = 0;

            HttpCookie cookie = (HttpCookie)Request.Cookies["usuario"];

            if (cookie.Values.AllKeys[0] == null)
            {
                return(RedirectToAction("LogOn", "Account"));
            }

            String usuarioId = Crypt.Decrypter(cookie.Values.AllKeys[0]);

            ObjectResult <SP_GetPedido_Result> result = null;

            result  = _pedidosDao.getAllPedidos(usuarioId, numPedido);
            _pedido = new List <SP_GetPedido>();

            if (result != null)
            {
                ViewBag.status    = GetManutencaoPedido.statusConsultaPedido(idStatus);
                ViewBag.numPedido = numPedido;

                ViewBag.dataCompra          = dataCompra;
                ViewBag.dataPrevistaEntrega = dataEntr + " dias úteis*";

                // if(idStatus.Equals("10")) ViewBag.dataPrevistaEntrega = dataEntr;

                foreach (var item in result)
                {
                    SP_GetPedido ped = new SP_GetPedido();

                    ped.idprod       = item.idprod;
                    ped.dsc          = item.dsc;
                    ped.qtde         = (int)item.qtde;
                    ped.prcvenda     = String.Format("{0:#,0.00}", item.prcvenda);
                    multiplicao      = (decimal)item.prcvenda * ped.qtde;
                    ped.prctotalprod = String.Format("{0:#,0.00}", multiplicao);
                    soma            += multiplicao;

                    _pedido.Add(ped);
                }
            }
            ViewBag.ValorTotaCompra = String.Format("{0:#,0.00}", soma);
            ViewBag.frete           = String.Format("{0:#,0.00}", frete).Trim();
            ViewBag.SomaTotal       = String.Format("{0:#,0.00}", soma + frete);

            ViewBag.Tema = Settings.Default.Tema;

            return(View(_pedido));
        }
Esempio n. 2
0
        /// <summary>
        /// Retorno do PagSeguro.
        /// Método executado quando o usuário espera ou clica no botão
        /// para que seja redirecionado novamente ao site, recebe uma
        /// chave que contem o numero da transação no pagSeguro
        /// </summary>
        /// <author>Claudinei Nascimento</author>
        /// <business>Vip-Systems Tecnologia & Inovação LTDA></business>
        /// <param name="id_pagseguro">exemplo de id:766B9C-AD4B044B04DA-77742F5FA653-E1AB24</param>
        /// <returns></returns>
        public ActionResult Retorno(String id_pagseguro)
        {
            ViewBag.Tema = Settings.Default.Tema;

            AccountCredentials credentials = new AccountCredentials(
                Settings.Default.EmailCredential,
                Settings.Default.TokenCredential
                );

            try
            {
                // obtendo o objeto transaction a partir do código de notificação
                Transaction transaction =
                    TransactionSearchService.SearchByCode(credentials, id_pagseguro);

                ViewBag.Stattus   = GetManutencaoPedido.statusRetornoPedido(transaction.TransactionStatus);
                ViewBag.Valor     = "R$ " + transaction.GrossAmount;
                ViewBag.Codigo    = id_pagseguro;
                ViewBag.Pagamento = GetManutencaoPedido.formaPagamentoPorNome(transaction.PaymentMethod.PaymentMethodType);
            }
            catch (PagSeguroServiceException ex)
            {
                StackTrace      exe = new StackTrace(ex, true);
                CustomException ep  = new CustomException(ex, exe, "");
                ep.Save(AppDomain.CurrentDomain.BaseDirectory + "/Logs/Log.log");

                if (ex.StatusCode == HttpStatusCode.Unauthorized)
                {
                    GravarLog.gravarLogError("Unauthorized: lease verify if the credentials used in the web service call  re correct./n", "Erro Transaction");
                }

                foreach (PagSeguroServiceError error in ex.Errors)
                {
                    GravarLog.gravarLogError(error.ToString(), "Erro PagSeguro");
                }
            }

            return(View("Finalizar"));
        }
Esempio n. 3
0
        /// <summary>
        /// Lista todos os pedidos feitos pelo cliente
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            HttpCookie cookie = (HttpCookie)Request.Cookies["usuario"];

            if (cookie.Values.AllKeys[0] == null)
            {
                return(RedirectToAction("LogOn", "Account"));
            }

            String usuarioId = Crypt.Decrypter(cookie.Values.AllKeys[0]);

            ObjectResult <SP_GetPedido_Result> result = null;

            result  = _pedidosDao.getAllPedidos(usuarioId, "");
            _pedido = new List <SP_GetPedido>();
            if (result != null)
            {
                foreach (var item in result)
                {
                    SP_GetPedido ped = new SP_GetPedido();

                    ped.pednum      = item.pednum;
                    ped.dtcad       = String.Format("{0:dd/MM/yyyy}", item.dtcad);
                    ped.vlrPedido   = String.Format("{0:#,0.00}", item.vlrpedido);
                    ped.idstaPedido = item.idsta;
                    ped.idsta       = GetManutencaoPedido.statusConsultaPedido(item.idsta);
                    ped.totitem     = (int)item.totitem;
                    ped.frete       = item.frete;
                    // ped.dtprventrega = String.Format("{0:dd/MM/yyyy}", item.dtprventrega);
                    ped.dtprventrega = getNumerodeDias(item.dtcad, item.dtprventrega).ToString();
                    _pedido.Add(ped);
                }
            }

            ViewBag.Tema = Settings.Default.Tema;

            return(View(_pedido));
        }
Esempio n. 4
0
        /// <summary>
        /// Metodo utilizado para gerar um pedido, em uma loja local
        /// quando o sistema é acessado por um quiosque
        /// </summary>
        /// <returns></returns>
        public ActionResult FinalizarNoCaixa()
        {
            ViewBag.Tema = Settings.Default.Tema;

            //Recupera o id do usuário que esta gravado nos cookies
            HttpCookie cookie = (HttpCookie)Request.Cookies["usuario"];

            //se não ouver id, a pagina é redirecionada para a tela de login
            if (cookie.Values.AllKeys[0] == null)
            {
                //linkModel model = new linkModel();
                //model.link = "/Carrinho/IndexCarrinho";
                //return RedirectToAction("LogOn", "Account", model);
                return(RedirectToAction("LogOn", "Account"));
            }

            ecomm_clientes usuario          = cliente.getUsuarioById(cookie.Values.AllKeys[0]);
            String         produtosCarrinho = this.RecuperarIDProdutos();

            PaymentRequest payment = new PaymentRequest();

            if (usuario != null)
            {
                string retorno = string.Empty;

                if (Settings.Default.FiltraEstoque > 0)
                {
                    if (getEstoque().Count > 0)
                    {
                        return(RedirectToAction("IndexCarrinho"));
                    }
                }
                String[] ids            = produtosCarrinho.Split(',');
                decimal  vlrTotalCompra = 0;
                foreach (var itemId in ids)
                {
                    String[] ids2 = itemId.Split('-');

                    ObjectResult <buscaprodutos_result> result = produtos.getProdutosById(ids2[0]);

                    if (result != null)
                    {
                        foreach (var item in result)
                        {
                            payment.Items.Add(new Item(item.codigo.ToString(), item.nomeresumido, Convert.ToInt32(ids2[1]), item.preco, 0, 0));
                            vlrTotalCompra += Convert.ToInt32(ids2[1]) * item.preco;
                        }
                    }
                }

                SetPedidoLocal setFinalizarLocal = new SetPedidoLocal();
                setFinalizarLocal.usuario        = usuario;
                setFinalizarLocal.lstItem        = payment.Items;
                setFinalizarLocal.vlrTotalCompra = vlrTotalCompra;
                setFinalizarLocal.rede           = Request.Cookies["rede"].Value.Replace("=", "");
                setFinalizarLocal.filial         = Request.Cookies["filial"].Value.Replace("=", "");
                retorno = setFinalizarLocal.gerarPedido();

                if (retorno != null)
                {
                    ViewBag.Status = GetManutencaoPedido.statusRetornoPedido(1);
                    ViewBag.Valor  = "R$ " + vlrTotalCompra;
                    ViewBag.Numero = retorno;

                    if (!string.IsNullOrEmpty(produtosCarrinho))
                    {
                        LimparCarrinho(produtosCarrinho);
                    }

                    LogOff();
                    return(View("FinalizarNoCaixaMsg"));
                }
            }


            return(View("Index"));
        }