示例#1
0
        protected void btnBuscar_Click(object sender, EventArgs e)
        {
            Usuario usuario2 = (Usuario)Session["usuario"];
            string  termino  = txtBuscarCliente.Text;

            IEnumerable <Cupon_Usuario> lista = (IEnumerable <Cupon_Usuario>)Cupon_UsuarioLN.listaCupon_UsuarioporUsuario(usuario2.Id_Usuario);

            if (lista != null || lista.Any())
            {
                grvListado.DataSource = lista.ToList().Where(x => x.Cupon.nombre.Contains(termino));
                grvListado.DataBind();
            }
            else
            {
                lblMensaje.Visible = true;
                lblMensaje.Text    = "Aún no tienes cupones canjeados";
            }
        }
示例#2
0
        private void cargarGrid()
        {
            Usuario usuario2 = (Usuario)Session["usuario"];


            IEnumerable <Cupon_Usuario> lista = (IEnumerable <Cupon_Usuario>)Cupon_UsuarioLN.listaCupon_UsuarioporUsuario(usuario2.Id_Usuario);

            if (lista != null || lista.Any())
            {
                grvListado.DataSource = lista.ToList();
                grvListado.DataBind();
            }
            else
            {
                lblMensaje.Visible = true;
                lblMensaje.Text    = "Aún no tienes cupones canjeados";
            }
        }
示例#3
0
        protected void linkAgregar_Click(object sender, EventArgs e)
        {
            Usuario usuario2 = (Usuario)Session["usuario"];


            //Otra forma de obtener el id del producto
            ListViewDataItem fila = (ListViewDataItem)(sender as Control).Parent;
            HiddenField      hi   = (HiddenField)fila.FindControl("hiddenID");
            int idCupon           = Convert.ToInt32(hi.Value);

            if (idCupon != 0)
            {
                Cupon     cupon     = CuponLN.obtenerCupon(idCupon);
                Billetera billetera = BilleteraLN.obtenerBilletera(usuario2.Billetera.Id_Billetera);

                if (billetera.Total_Disponible >= cupon.Precio_Canje)
                {
                    // Cambiamos la billetera

                    BilleteraLN.ObtenerCupon(billetera.Id_Billetera, cupon.Precio_Canje);
                    lblTotalEcomonedas.Text = billetera.Total_Disponible.ToString();


                    //Agregamos el cupon a la bd
                    Cupon_UsuarioLN.registrarCupon_Usuario(usuario2.Id_Usuario, cupon.Id_Cupon, cupon.activo.Value);



                    //Creamos un qr

                    var             txtQRCode   = cupon.nombre + numeroAleatorio();
                    QRCodeGenerator qrGenerator = new QRCodeGenerator();
                    QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(txtQRCode, QRCodeGenerator.ECCLevel.Q);
                    QRCode          qrCode      = new QRCode(qrCodeData);
                    Bitmap          qrCodeImage = qrCode.GetGraphic(20);

                    //guardamos la imagen
                    var folder = "images/Qrs/";
                    var path   = System.Web.HttpContext.Current.Server.MapPath(folder);
                    qrCodeImage.Save(path + cupon.nombre + "qr.Jpeg", ImageFormat.Jpeg);


                    //Asignamos la ruta de las imagenes
                    System.Drawing.Image imagen = System.Drawing.Image.FromFile(Server.MapPath("~/images/cupones/" + cupon.imagen));


                    //Hacemos las imagenes en byte
                    CanjeCupon Canje = new CanjeCupon();
                    Canje.cliente     = usuario2.NombreCompleto;
                    Canje.id          = cupon.Id_Cupon;
                    Canje.imagenQR    = CanjeCuponLN.ImagenByte(qrCodeImage);
                    Canje.imagenCupon = CanjeCuponLN.ImagenByte(imagen);
                    Canje.nombreCupon = cupon.nombre;



                    //llamamos al reporte
                    LocalReport report = new LocalReport();
                    report.DataSources.Clear();

                    ReportDataSource rdc = new ReportDataSource("DataSet1", CanjeCuponLN.canjeCupon(Canje));
                    report.DataSources.Add(rdc);
                    report.ReportPath           = Server.MapPath("~/Reportes/CuponObtenido.rdlc");
                    report.EnableExternalImages = true;


                    string    FileName = "Cupon-" + cupon.nombre.Trim() + ".pdf";
                    string    extension;
                    string    encoding;
                    string    mimeType;
                    string[]  streams;
                    Warning[] warnings;



                    Byte[] mybytes = report.Render("PDF", null,
                                                   out extension, out encoding,
                                                   out mimeType, out streams, out warnings); //for exporting to PDF
                    using (FileStream fs = File.Create(Server.MapPath("~/images/DescargasCupones/") + FileName))
                    {
                        fs.Write(mybytes, 0, mybytes.Length);
                    }



                    Response.Buffer = true;

                    Response.ContentType = "application/pdf";

                    Response.AddHeader("content-disposition", "inline;filename=" + FileName + ".pdf");
                    Response.WriteFile(Server.MapPath(Path.Combine("~/images/DescargasCupones/" + FileName)));
                    Response.End();
                }
                else
                {
                    lblMensaje.Visible   = true;
                    lblMensaje.Text      = "Lo sentimos, no le alcanza para este cupón";
                    lblMensaje.ForeColor = Color.Red;
                }
            }
        }