/// <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)); }
/// <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")); }
/// <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)); }
/// <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")); }