/// <summary> /// Adiciona um remetente a uma mensagem de e-mail se o remetente ainda não está adicionado; /// </summary> /// <param name="message">A mensagem a ser enviada</param> /// <param name="Nome">Nome do Remetente</param> /// <param name="Email">E-mail do Remetente</param> /// <returns>A mensagem com o remetente adicionado</returns> public static MailMessage RemetenteAddMessage(string Nome, string Email, MailMessage message) { try { if (message == null) { return(message); } MailAddress address = RemetenteNew(Nome, Email); if (!message.To.Contains(address)) { message.To.Add(address); } return(message); } catch (FormatException ex) { GravarLog.Erro(ex); throw; } catch (ArgumentException ex) { GravarLog.Erro(ex); throw; } }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } app.UseExceptionHandler(errorApp => { errorApp.Run(async context => { context.Response.StatusCode = 500; context.Response.ContentType = "application/json"; //await context.Response.WriteAsync("<html lang=\"en\"><body>\r\n"); //await context.Response.WriteAsync("ERROR!<br><br>\r\n"); //await context.Response.WriteAsync(" Escreve alguma mensagem de erro aqui se precisar "); //await context.Response.WriteAsync("<a href=\"/\">Home</a><br>\r\n"); //await context.Response.WriteAsync("</body></html>\r\n"); //await context.Response.WriteAsync(new string(' ', 512)); // IE padding var exceptionHandlerPathFeature = context.Features.Get <IExceptionHandlerPathFeature>(); string excecaoMensagem = ""; if (exceptionHandlerPathFeature?.Error is NaoGravaLogException) { NaoGravaLogException ex = exceptionHandlerPathFeature?.Error as NaoGravaLogException; excecaoMensagem = ex.Message; } else if (exceptionHandlerPathFeature?.Error is GravaLogException) { GravaLogException ex = exceptionHandlerPathFeature?.Error as GravaLogException; GravarLog.Gravar(ex); excecaoMensagem = ex.Message; } else //SystemException { GravarLog.Gravar(exceptionHandlerPathFeature?.Error); excecaoMensagem = "SystemException"; } await context.Response.WriteAsync($"{{\"Mensagem\": \"Deu Erro\", \"Exception\": \"{excecaoMensagem}\" }}"); }); }); app.UseMvc(); }
/// <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")); }
private static void SendMessages(List <MailMessage> messages, object state) { try { HttpContext.Current = state as HttpContext; SmtpClient client = new SmtpClient(); foreach (MailMessage message in messages) { client.Send(message); GravarLog.Info(string.Format("E-mail para o(s) destinatário(s) '{0}' foi enviado.", message.To.ToString())); } client = null; } catch (SmtpException sEx) { GravarLog.Erro(sEx); } catch (Exception ex) { GravarLog.Erro(ex); } }
protected void Reload() { ValOrd = Request.QueryString["ORDE"]; if (ValOrd == null) { ValOrd = ""; } ValCid = Request.QueryString["CIDA"]; if (ValCid == null) { ValCid = ""; } ValFor = Request.QueryString["LOJA"]; if (ValFor == null) { ValFor = ""; } ValCla = Request.QueryString["CLAS"]; if (ValCla == null) { ValCla = ""; } ValPes = Request.QueryString["PESQ"]; if (ValPes == null) { ValPes = ""; } if (Request.QueryString["PAGE"] == null) { ValPag = 0; } else { ValPag = Convert.ToInt32(Request.QueryString["PAGE"]); } _ler = new LerSelect(); var DtLoja = _ler.LerDropLoja(); if (DtLoja != null && DropFornecedor.Items.Count.ToString() == "0") { DropFornecedor.DataTextField = "Loja"; DropFornecedor.DataSource = DtLoja.ValDataTable; DropFornecedor.DataBind(); DropFornecedor.AppendDataBoundItems = true; } _ler = new LerSelect(); var DtCategoria = _ler.LerDropCategoria(); if (DtCategoria != null && DropCategoria.Items.Count.ToString() == "0") { DropCategoria.DataTextField = "Categoria"; DropCategoria.DataSource = DtCategoria.ValDataTable; DropCategoria.DataBind(); DropCategoria.AppendDataBoundItems = true; } _ler = new LerSelect(); var DtCidade = _ler.LerDropCidade(); if (DtCidade != null && DropCidade.Items.Count.ToString() == "0") { DropCidade.DataTextField = "Cidade"; DropCidade.DataSource = DtCidade.ValDataTable; DropCidade.DataBind(); DropCidade.AppendDataBoundItems = true; } Pegar_Valor(); _insert = new GravarLog(); string ValIP = ""; if (Request.UserHostAddress != null) { ValIP = Request.UserHostAddress; } string ValRequest = "Ord:" + ValOrd + " Cid:" + ValCid + " Loj:" + ValFor + " Cat:" + ValCla + " Pes:" + ValPes + " Pag:" + ValPag; _insert.InserirLog(ValIP, ValRequest); Refresh_Anuncios(ValOrd, ValCid, ValFor, ValCla, ValPes, ValPag); }
protected void Reload() { ValOrd = Request.QueryString["ORDE"]; if (ValOrd == null) { ValOrd = ""; } ValCid = Request.QueryString["CIDA"]; if (ValCid == null) { ValCid = ""; } ValFor = Request.QueryString["LOJA"]; if (ValFor == null) { ValFor = ""; } ValCla = Request.QueryString["CLAS"]; if (ValCla == null) { ValCla = ""; } ValPes = Request.QueryString["PESQ"]; if (ValPes == null) { ValPes = ""; } if (Request.QueryString["PAGE"] == null) { ValPag = 0; } else { ValPag = Convert.ToInt32(Request.QueryString["PAGE"]); } _ler = new LerSelect(); var DtLoja = _ler.LerDropLoja(); if (DtLoja != null && DropFornecedor.Items.Count.ToString() == "0") { DropFornecedor.DataTextField = "Loja"; DropFornecedor.DataSource = DtLoja.ValDataTable; DropFornecedor.DataBind(); DropFornecedor.AppendDataBoundItems = true; } _ler = new LerSelect(); var DtCategoria = _ler.LerDropCategoria(); if (DtCategoria != null && DropCategoria.Items.Count.ToString() == "0") { DropCategoria.DataTextField = "Categoria"; DropCategoria.DataSource = DtCategoria.ValDataTable; DropCategoria.DataBind(); DropCategoria.AppendDataBoundItems = true; } _ler = new LerSelect(); var DtCidade = _ler.LerDropCidade(); if (DtCidade != null && DropCidade.Items.Count.ToString() == "0") { DropCidade.DataTextField = "Cidade"; DropCidade.DataSource = DtCidade.ValDataTable; DropCidade.DataBind(); DropCidade.AppendDataBoundItems = true; } _insert = new GravarLog(); string ValIP = ""; if (Request.UserHostAddress != null) { ValIP = Request.UserHostAddress; } string ValRequest = "Home"; _insert.InserirLog(ValIP, ValRequest); _lerpainelhome = new LerPainelHome(); try { var SelectPainel = _lerpainelhome.LerPainel(); if (SelectPainel.PainelFoto1 != null) { ImgPnl1.ImageUrl = SelectPainel.PainelFoto1; ImgLink1.Attributes.Add("target", "_blank"); ImgLink1.Attributes.Add("onclick", "window.open('" + SelectPainel.PainelLink1 + "');return false;"); ImgLink1.NavigateUrl = ""; } if (SelectPainel.PainelFoto2 != null) { ImgPnl2.ImageUrl = SelectPainel.PainelFoto2; ImgLink2.Attributes.Add("target", "_blank"); ImgLink2.Attributes.Add("onclick", "window.open('" + SelectPainel.PainelLink2 + "');return false;"); ImgLink2.NavigateUrl = ""; } if (SelectPainel.PainelFoto3 != null) { ImgPnl3.ImageUrl = SelectPainel.PainelFoto3; ImgLink3.Attributes.Add("target", "_blank"); ImgLink3.Attributes.Add("onclick", "window.open('" + SelectPainel.PainelLink3 + "');return false;"); ImgLink3.NavigateUrl = ""; } if (SelectPainel.PainelFoto4 != null) { ImgPnl4.ImageUrl = SelectPainel.PainelFoto4; ImgLink4.Attributes.Add("target", "_blank"); ImgLink4.Attributes.Add("onclick", "window.open('" + SelectPainel.PainelLink4 + "');return false;"); ImgLink4.NavigateUrl = ""; } if (SelectPainel.PainelFoto5 != null) { ImgPnl5.ImageUrl = SelectPainel.PainelFoto5; ImgLink5.Attributes.Add("target", "_blank"); ImgLink5.Attributes.Add("onclick", "window.open('" + SelectPainel.PainelLink5 + "');return false;"); ImgLink5.NavigateUrl = ""; } if (SelectPainel.PainelFoto6 != null) { ImgPnl6.ImageUrl = SelectPainel.PainelFoto6; ImgLink6.Attributes.Add("target", "_blank"); ImgLink6.Attributes.Add("onclick", "window.open('" + SelectPainel.PainelLink6 + "');return false;"); ImgLink6.NavigateUrl = ""; } } catch (Exception) { } _leranunciohome = new LerAnuncioHome(); var CorDoAnuncio = "AZUL"; try { var SelectAnuncio = _leranunciohome.LerAnuncio(CorDoAnuncio); if (SelectAnuncio.AnuncioPreco1 != null) { LabelPrecoAzul1.Text = SelectAnuncio.AnuncioPreco1; LabelTituloAzul1.Text = SelectAnuncio.AnuncioProduto1; LabelValidadeAzul1.Text = SelectAnuncio.AnuncioDataFim1; LabelLojaAzul1.Text = SelectAnuncio.AnuncioFornecedor1; BtnAzul1.PostBackUrl = ""; BtnAzul1.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink1 + "');"; BtnAzul1.Text = "Ir para a loja"; ImgHomeAzul1.ImageUrl = SelectAnuncio.AnuncioFoto1; ImgHomeAzul1.Attributes.Add("title", SelectAnuncio.AnuncioTitle1); ImgHomeAzul1.AlternateText = SelectAnuncio.AnuncioTitle1; } if (SelectAnuncio.AnuncioPreco2 != null) { LabelPrecoAzul2.Text = SelectAnuncio.AnuncioPreco2; LabelTituloAzul2.Text = SelectAnuncio.AnuncioProduto2; LabelValidadeAzul2.Text = SelectAnuncio.AnuncioDataFim2; LabelLojaAzul2.Text = SelectAnuncio.AnuncioFornecedor2; BtnAzul2.PostBackUrl = ""; BtnAzul2.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink2 + "');"; BtnAzul2.Text = "Ir para a loja"; ImgHomeAzul2.ImageUrl = SelectAnuncio.AnuncioFoto2; ImgHomeAzul2.Attributes.Add("title", SelectAnuncio.AnuncioTitle2); ImgHomeAzul2.AlternateText = SelectAnuncio.AnuncioTitle2; } if (SelectAnuncio.AnuncioPreco3 != null) { LabelPrecoAzul3.Text = SelectAnuncio.AnuncioPreco3; LabelTituloAzul3.Text = SelectAnuncio.AnuncioProduto3; LabelValidadeAzul3.Text = SelectAnuncio.AnuncioDataFim3; LabelLojaAzul3.Text = SelectAnuncio.AnuncioFornecedor3; BtnAzul3.PostBackUrl = ""; BtnAzul3.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink3 + "');"; BtnAzul3.Text = "Ir para a loja"; ImgHomeAzul3.ImageUrl = SelectAnuncio.AnuncioFoto3; ImgHomeAzul3.Attributes.Add("title", SelectAnuncio.AnuncioTitle3); ImgHomeAzul3.AlternateText = SelectAnuncio.AnuncioTitle3; } if (SelectAnuncio.AnuncioPreco4 != null) { LabelPrecoAzul4.Text = SelectAnuncio.AnuncioPreco4; LabelTituloAzul4.Text = SelectAnuncio.AnuncioProduto4; LabelValidadeAzul4.Text = SelectAnuncio.AnuncioDataFim4; LabelLojaAzul4.Text = SelectAnuncio.AnuncioFornecedor4; BtnAzul4.PostBackUrl = ""; BtnAzul4.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink4 + "');"; BtnAzul4.Text = "Ir para a loja"; ImgHomeAzul4.ImageUrl = SelectAnuncio.AnuncioFoto4; ImgHomeAzul4.Attributes.Add("title", SelectAnuncio.AnuncioTitle4); ImgHomeAzul4.AlternateText = SelectAnuncio.AnuncioTitle4; } } catch (Exception) { } CorDoAnuncio = "VERMELHO"; try { var SelectAnuncio = _leranunciohome.LerAnuncio(CorDoAnuncio); if (SelectAnuncio.AnuncioPreco1 != null) { LabelPrecoVermelho1.Text = SelectAnuncio.AnuncioPreco1; LabelTituloVermelho1.Text = SelectAnuncio.AnuncioProduto1; LabelValidadeVermelho1.Text = SelectAnuncio.AnuncioDataFim1; LabelLojaVermelho1.Text = SelectAnuncio.AnuncioFornecedor1; BtnVermelho1.PostBackUrl = ""; BtnVermelho1.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink1 + "');"; BtnVermelho1.Text = "Ir para a loja"; ImgHomeVermelho1.ImageUrl = SelectAnuncio.AnuncioFoto1; ImgHomeVermelho1.Attributes.Add("title", SelectAnuncio.AnuncioTitle1); ImgHomeVermelho1.AlternateText = SelectAnuncio.AnuncioTitle1; } if (SelectAnuncio.AnuncioPreco2 != null) { LabelPrecoVermelho2.Text = SelectAnuncio.AnuncioPreco2; LabelTituloVermelho2.Text = SelectAnuncio.AnuncioProduto2; LabelValidadeVermelho2.Text = SelectAnuncio.AnuncioDataFim2; LabelLojaVermelho2.Text = SelectAnuncio.AnuncioFornecedor2; BtnVermelho2.PostBackUrl = ""; BtnVermelho2.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink2 + "');"; BtnVermelho2.Text = "Ir para a loja"; ImgHomeVermelho2.ImageUrl = SelectAnuncio.AnuncioFoto2; ImgHomeVermelho2.Attributes.Add("title", SelectAnuncio.AnuncioTitle2); ImgHomeVermelho2.AlternateText = SelectAnuncio.AnuncioTitle2; } if (SelectAnuncio.AnuncioPreco3 != null) { LabelPrecoVermelho3.Text = SelectAnuncio.AnuncioPreco3; LabelTituloVermelho3.Text = SelectAnuncio.AnuncioProduto3; LabelValidadeVermelho3.Text = SelectAnuncio.AnuncioDataFim3; LabelLojaVermelho3.Text = SelectAnuncio.AnuncioFornecedor3; BtnVermelho3.PostBackUrl = ""; BtnVermelho3.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink3 + "');"; BtnVermelho3.Text = "Ir para a loja"; ImgHomeVermelho3.ImageUrl = SelectAnuncio.AnuncioFoto3; ImgHomeVermelho3.Attributes.Add("title", SelectAnuncio.AnuncioTitle3); ImgHomeVermelho3.AlternateText = SelectAnuncio.AnuncioTitle3; } if (SelectAnuncio.AnuncioPreco4 != null) { LabelPrecoVermelho4.Text = SelectAnuncio.AnuncioPreco4; LabelTituloVermelho4.Text = SelectAnuncio.AnuncioProduto4; LabelValidadeVermelho4.Text = SelectAnuncio.AnuncioDataFim4; LabelLojaVermelho4.Text = SelectAnuncio.AnuncioFornecedor4; BtnVermelho4.PostBackUrl = ""; BtnVermelho4.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink4 + "');"; BtnVermelho4.Text = "Ir para a loja"; ImgHomeVermelho4.ImageUrl = SelectAnuncio.AnuncioFoto4; ImgHomeVermelho4.Attributes.Add("title", SelectAnuncio.AnuncioTitle4); ImgHomeVermelho4.AlternateText = SelectAnuncio.AnuncioTitle4; } } catch (Exception) { } CorDoAnuncio = "VERDE"; try { var SelectAnuncio = _leranunciohome.LerAnuncio(CorDoAnuncio); if (SelectAnuncio.AnuncioPreco1 != null) { LabelPrecoVerde1.Text = SelectAnuncio.AnuncioPreco1; LabelTituloVerde1.Text = SelectAnuncio.AnuncioProduto1; LabelValidadeVerde1.Text = SelectAnuncio.AnuncioDataFim1; LabelLojaVerde1.Text = SelectAnuncio.AnuncioFornecedor1; BtnVerde1.PostBackUrl = ""; BtnVerde1.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink1 + "');"; BtnVerde1.Text = "Ir para a loja"; ImgHomeVerde1.ImageUrl = SelectAnuncio.AnuncioFoto1; ImgHomeVerde1.Attributes.Add("title", SelectAnuncio.AnuncioTitle1); ImgHomeVerde1.AlternateText = SelectAnuncio.AnuncioTitle1; } if (SelectAnuncio.AnuncioPreco2 != null) { LabelPrecoVerde2.Text = SelectAnuncio.AnuncioPreco2; LabelTituloVerde2.Text = SelectAnuncio.AnuncioProduto2; LabelValidadeVerde2.Text = SelectAnuncio.AnuncioDataFim2; LabelLojaVerde2.Text = SelectAnuncio.AnuncioFornecedor2; BtnVerde2.PostBackUrl = ""; BtnVerde2.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink2 + "');"; BtnVerde2.Text = "Ir para a loja"; ImgHomeVerde2.ImageUrl = SelectAnuncio.AnuncioFoto2; ImgHomeVerde2.Attributes.Add("title", SelectAnuncio.AnuncioTitle2); ImgHomeVerde2.AlternateText = SelectAnuncio.AnuncioTitle2; } if (SelectAnuncio.AnuncioPreco3 != null) { LabelPrecoVerde3.Text = SelectAnuncio.AnuncioPreco3; LabelTituloVerde3.Text = SelectAnuncio.AnuncioProduto3; LabelValidadeVerde3.Text = SelectAnuncio.AnuncioDataFim3; LabelLojaVerde3.Text = SelectAnuncio.AnuncioFornecedor3; BtnVerde3.PostBackUrl = ""; BtnVerde3.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink3 + "');"; BtnVerde3.Text = "Ir para a loja"; ImgHomeVerde3.ImageUrl = SelectAnuncio.AnuncioFoto3; ImgHomeVerde3.Attributes.Add("title", SelectAnuncio.AnuncioTitle3); ImgHomeVerde3.AlternateText = SelectAnuncio.AnuncioTitle3; } if (SelectAnuncio.AnuncioPreco4 != null) { LabelPrecoVerde4.Text = SelectAnuncio.AnuncioPreco4; LabelTituloVerde4.Text = SelectAnuncio.AnuncioProduto4; LabelValidadeVerde4.Text = SelectAnuncio.AnuncioDataFim4; LabelLojaVerde4.Text = SelectAnuncio.AnuncioFornecedor4; BtnVerde4.PostBackUrl = ""; BtnVerde4.OnClientClick = "window.open('" + SelectAnuncio.AnuncioLink4 + "');"; BtnVerde4.Text = "Ir para a loja"; ImgHomeVerde4.ImageUrl = SelectAnuncio.AnuncioFoto4; ImgHomeVerde4.Attributes.Add("title", SelectAnuncio.AnuncioTitle4); ImgHomeVerde4.AlternateText = SelectAnuncio.AnuncioTitle4; } } catch (Exception) { } }
public ActionResult Notificacao() { ViewBag.Tema = Settings.Default.Tema; try { //Stopwatch tempo = new Stopwatch(); //tempo.Start(); AccountCredentials credentials = new AccountCredentials( Settings.Default.EmailCredential, Settings.Default.TokenCredential ); string notificationType = Request.Form["notificationType"]; string notificationCode = Request.Form["notificationCode"];//Recupera o código da transação que foi aberta pelo pagseguro if (notificationType == "transaction") { // obtendo o objeto transaction a partir do código de notificação Transaction transaction = NotificationService.CheckTransaction(credentials, notificationCode); IList <Item> lstItem = transaction.Items;//Lista com os itens que foram comprados if (transaction != null) { if (Settings.Default.ReservaPedidoBotaoComprar) { updatePedido.gerarPedido(transaction, lstItem); } else { pedido.gerarPedido(transaction, lstItem); } } //tempo.Stop(); //GravarLog.gravarLogError("Tempo de inserção: " + tempo.Elapsed, "Tempo de Inserção"); } else { GravarLog.gravarLogError("Tipo de transação: " + notificationType, "Não retornou transaction"); } } 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()); }
/// <summary> /// Função responsável por abrir uma requisição /// com a operadora de pagamentos PagSeguro, /// onde é passado para a mesma, as informações /// referente a os itens que estão sendo comprados /// </summary> /// <author>Claudinei Nascimento</author> /// <business>Vip-Systems Tecnologia & Inovação LTDA></business> /// <returns>Redireciona para a pagina do PagSeguro</returns> public ActionResult FinalizarPagSeguro() { //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(); Uri paymentRedirectUri = null; if (usuario != null) { if (Settings.Default.FiltraEstoque > 0) { if (getEstoque().Count > 0) { return(RedirectToAction("IndexCarrinho")); } } decimal peso = Settings.Default.PesoMinimoCorreios; if (controleCarrinho.getTotalPeso(produtosCarrinho) >= (int)Settings.Default.PesoMinimoCorreios) { peso = 0; } try { decimal vlrTotalCompra = 0; PaymentRequest payment = new PaymentRequest(); payment.Currency = Currency.Brl; payment.Reference = cookie.Values.AllKeys[0]; payment.Sender = new Sender(usuario.nome, usuario.EMAIL1); payment.Shipping = new Shipping(); //Forma de envio não especificada, o usuário podera escolher entra PAC e SEDEX dos Correios payment.Shipping.ShippingType = ShippingType.NotSpecified; Address address = new Address("BRASIL", usuario.UF_RESIDENCIAL, usuario.CIDADE_RESIDENCIAL, usuario.BAIRRO_RESIDENCIAL, usuario.CEP_RESIDENCIAL.Replace("-", ""), usuario.ENDERECO_RESIDENCIAL, usuario.NRO_RESIDENCIAL, usuario.COMPLEMENTO_RESIDENCIAL); payment.Shipping.Address = address; //payment.RedirectUri = new Uri("http://" + Settings.Default.LinkSite + "/e-commerce/Carrinho/Retorno"); AccountCredentials credentials = new AccountCredentials( Settings.Default.EmailCredential, Settings.Default.TokenCredential ); String[] ids = produtosCarrinho.Split(','); foreach (var itemId in ids) { String[] ids2 = itemId.Split('-'); ObjectResult <buscaprodutos_result> result = produtos.getProdutosById(ids2[0]); if (result != null) { ObjectResult <SP_GetPeso_Result> resultPeso = null; foreach (var item in result) { resultPeso = produtos.getPeso(item.codigo.ToString()); foreach (var itemPesso in resultPeso) { if (peso == 0) { string pesoTotalFormatado = String.Format("{0:N3}", itemPesso.peso); peso = Convert.ToDecimal(pesoTotalFormatado.Replace(",", ".")); payment.Items.Add(new Item(item.codigo.ToString(), item.nomeresumido, Convert.ToInt32(ids2[1]), item.preco, (int)peso, 0)); peso = 0; } else { decimal totalItens = Convert.ToDecimal(controleCarrinho.ContarCarrinho(produtosCarrinho)); decimal pesoT = Convert.ToDecimal(peso); int lPeso = 1; if (pesoT / totalItens > 0.54m) { lPeso = Convert.ToInt32(pesoT / totalItens); } payment.Items.Add(new Item(item.codigo.ToString(), item.nomeresumido, Convert.ToInt32(ids2[1]), item.preco, lPeso, 0)); } vlrTotalCompra += Convert.ToInt32(ids2[1]) * item.preco; } } } } ServicePointManager.ServerCertificateValidationCallback = delegate { return(true); }; if (Settings.Default.ReservaPedidoBotaoComprar) { SetPedidoFinalizar setFinalizar = new SetPedidoFinalizar(); setFinalizar.usuario = usuario; setFinalizar.lstItem = payment.Items; setFinalizar.vlrTotalCompra = vlrTotalCompra; payment.Reference = setFinalizar.gerarPedido(); } paymentRedirectUri = PaymentService.Register(credentials, payment); if (!string.IsNullOrEmpty(produtosCarrinho)) { LimparCarrinho(produtosCarrinho); } return(Redirect(paymentRedirectUri.AbsoluteUri.ToString())); } catch (PagSeguroServiceException ex) { StackTrace exe = new StackTrace(ex, true); CustomException ep = new CustomException(ex, exe, ""); ep.Save(AppDomain.CurrentDomain.BaseDirectory + "/Logs/LogRedirect.log"); foreach (PagSeguroServiceError error in ex.Errors) { GravarLog.gravarLogError(error.ToString(), "Erro PagSeguro"); } } ViewBag.Tema = Settings.Default.Tema; } return(View("Shared/Error")); }