public async Task AddProdutoCarrinho(string userId, CompraUsuario compra) { var compraUsuarioExistente = _ICompraUsuario.List().Result.Find(c => c.IdProduto == compra.IdProduto && c.UserId == userId); if (compraUsuarioExistente != null) { compraUsuarioExistente.QtdCompra += compra.QtdCompra; await _ICompraUsuario.Update(compraUsuarioExistente); } else { await _ICompraUsuario.Add(compra); } }
public async Task AdicionaProdutoCarrinho(string userId, CompraUsuario compraUsuario) { var compra = await _iCompra.CompraPorEstado(userId, EnumEstadoCompra.Produto_Carrinho); if (compra == null) { compra = new Compra { UserId = userId, Estado = EnumEstadoCompra.Produto_Carrinho }; await _iCompra.Add(compra); } if (compra.Id > 0) { compraUsuario.IdCompra = compra.Id; await _iCompraUsuario.Add(compraUsuario); } }
public async Task <IActionResult> Download(CompraUsuario compraUsuario, IWebHostEnvironment _environment) { using (var doc = new PdfSharpCore.Pdf.PdfDocument()) { #region Configuracoes da folha var page = doc.AddPage(); page.Size = PdfSharpCore.PageSize.A4; page.Orientation = PdfSharpCore.PageOrientation.Portrait; var graphics = XGraphics.FromPdfPage(page); var corFonte = XBrushes.Black; #endregion #region Numeração das paginas int qtdPaginas = doc.PageCount; var numeracaoPagina = new PdfSharpCore.Drawing.Layout.XTextFormatter(graphics); numeracaoPagina.DrawString(Convert.ToString(qtdPaginas), new PdfSharpCore.Drawing.XFont("Arial", 10), corFonte, new PdfSharpCore.Drawing.XRect(575, 825, page.Width, page.Height)); #endregion #region Logo var webRoot = _environment.WebRootPath; var logoFatura = string.Concat(webRoot, "/img/", "loja-virtual-1.png"); XImage imagem = XImage.FromFile(logoFatura); graphics.DrawImage(imagem, 20, 5, 300, 50); #endregion #region Informações 2 var alturaTituloDetalhesY = 120; var detalhes = new PdfSharpCore.Drawing.Layout.XTextFormatter(graphics); var tituloInfo_1 = new PdfSharpCore.Drawing.XFont("Arial", 8, XFontStyle.Regular); detalhes.DrawString("Dados do banco", tituloInfo_1, corFonte, new XRect(25, alturaTituloDetalhesY, page.Width, page.Height)); detalhes.DrawString("Banco Itau 004", tituloInfo_1, corFonte, new XRect(150, alturaTituloDetalhesY, page.Width, page.Height)); alturaTituloDetalhesY += 9; detalhes.DrawString("Código Gerado", tituloInfo_1, corFonte, new XRect(25, alturaTituloDetalhesY, page.Width, page.Height)); detalhes.DrawString("000000 000000 000000 000000", tituloInfo_1, corFonte, new XRect(150, alturaTituloDetalhesY, page.Width, page.Height)); alturaTituloDetalhesY += 9; detalhes.DrawString("Quantidade:", tituloInfo_1, corFonte, new XRect(25, alturaTituloDetalhesY, page.Width, page.Height)); detalhes.DrawString(compraUsuario.QuantidadeProdutos.ToString(), tituloInfo_1, corFonte, new XRect(150, alturaTituloDetalhesY, page.Width, page.Height)); alturaTituloDetalhesY += 9; detalhes.DrawString("Valor Total:", tituloInfo_1, corFonte, new XRect(25, alturaTituloDetalhesY, page.Width, page.Height)); detalhes.DrawString(compraUsuario.QuantidadeProdutos.ToString(), tituloInfo_1, corFonte, new XRect(150, alturaTituloDetalhesY, page.Width, page.Height)); var tituloInfo_2 = new PdfSharpCore.Drawing.XFont("Arial", 8, XFontStyle.Bold); try { var img = await GeraQrCode("Dados do banco aqui"); Stream streamImage = new MemoryStream(img); XImage qrCode = XImage.FromStream(() => streamImage); alturaTituloDetalhesY += 40; graphics.DrawImage(qrCode, 140, alturaTituloDetalhesY, 310, 310); } catch (Exception erro) { } alturaTituloDetalhesY += 620; detalhes.DrawString("Canhoto com QrCode para pagamento online.", tituloInfo_2, corFonte, new XRect(20, alturaTituloDetalhesY, page.Width, page.Height)); #endregion using (MemoryStream stream = new MemoryStream()) { var contentType = "application/pdf"; doc.Save(stream, false); return(File(stream.ToArray(), contentType, "BoletoLojaOnline.pdf")); } } }
public async Task Update(CompraUsuario Objeto) { await _ICompraUsuario.Update(Objeto); }
public async Task Delete(CompraUsuario Objeto) { await _ICompraUsuario.Delete(Objeto); }
public async Task Add(CompraUsuario Objeto) { await _ICompraUsuario.Add(Objeto); }
public async Task AdicionaProdutoCarrinho(string userId, CompraUsuario compraUsuario) { await _IServiceCompraUsuario.AdicionaProdutoCarrinho(userId, compraUsuario); }
public CompraValidation(CompraUsuario compraUsuario) { CompraUsuario = compraUsuario; }
public async Task Excluir(CompraUsuario Objeto) { await _ICompraUsuario.Excluir(Objeto); }
public async Task Atualizar(CompraUsuario Objeto) { await _ICompraUsuario.Atualizar(Objeto); }
public async Task Adicionar(CompraUsuario Objeto) { await _ICompraUsuario.Adicionar(Objeto); }