Exemplo n.º 1
0
        /// <summary>
        /// Metodo que evalua las selecciones de la lista, si estamos en categorias carga los articulos de esa categoria
        /// y si estamos en una categoria y clicamos un articulo abre una ventana para introducir las unidades o el peso y agrega ese articulo a la cesta
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Seleccion(object sender, MouseEventArgs e)
        {
            introducidoCantidad = false;
            if (listaCategoria)
            {
                ListView.SelectedIndexCollection seleccionado = listView1.SelectedIndices;
                foreach (int index in seleccionado)
                {
                    DirectoryInfo dir = new DirectoryInfo(Constantes.PRODUCTOS_RUTA + "/" + listView1.Items[index].Text);
                    lCategoria.Text = listView1.Items[index].Text.ToString();
                    int j = 0;
                    listView1.Items.Clear();
                    imageList1.Images.Clear();
                    foreach (FileInfo file in dir.GetFiles())
                    {
                        listView1.View = View.LargeIcon;

                        imageList1.ImageSize = new Size(Constantes.TAMANO_IMAGENES, Constantes.TAMANO_IMAGENES);

                        try
                        {
                            imageList1.Images.Add(System.Drawing.Image.FromFile(file.FullName));

                            listView1.Items.Add(new ListViewItem {
                                ImageIndex = j, Text = file.Name.Substring(0, file.Name.Length - 4)
                            });
                            j++;
                        }
                        catch
                        {
                            Console.WriteLine("No es un archivo de imagen");
                        }
                        listView1.LargeImageList = imageList1;
                        lFlecha.Visible          = true;
                    }
                }
                btAtrasVTienda.Visible = true;
                listaCategoria         = false;
            }
            else
            {
                try
                {
                    if (!introducidoCantidad)
                    {
                        Intro_Peso_UD panel1 = new Intro_Peso_UD();
                        panel1.MinimizeBox   = false;
                        panel1.MaximizeBox   = false;
                        panel1.ShowIcon      = false;
                        panel1.ShowInTaskbar = false;
                        panel1.ShowDialog();
                        introducidoCantidad = true;
                    }
                    if (Constantes.PESO_UD_PRODUCTO != null && Convert.ToDouble(Constantes.PESO_UD_PRODUCTO) > 0 && Convert.ToDouble(Constantes.PESO_UD_PRODUCTO) > 0.000)
                    {
                        ListView.SelectedIndexCollection seleccionado = listView1.SelectedIndices;
                        foreach (int index in seleccionado)
                        {
                            cesta.Rows.Add(1);
                            cesta.Rows[cesta.RowCount - 1].Cells[0].Value = Resource1.bin;
                            cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_NOMBRE].Value   = listView1.Items[index].Text;
                            cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_UNIDADES].Value = Constantes.PESO_UD_PRODUCTO;
                            if (lCategoria.Text.Equals("Suplementos"))
                            {
                                cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_PRECIO].Value = (float)Constantes.suplemento_TA.getPreSupleNombre(listView1.Items[index].Text);
                            }
                            else
                            {
                                cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_PRECIO].Value = (float)Constantes.preciosMayor_TA.getPrecioMayor((int)Constantes.productos_TA.GetCodProducto(listView1.Items[index].Text));
                            }
                            cesta.FirstDisplayedScrollingRowIndex = cesta.RowCount - 1;
                            Total();
                        }
                        Constantes.PESO_UD_PRODUCTO = "0.000";
                    }
                }
                catch (Exception ex)
                {
                }
                finally
                {
                    foreach (ListViewItem item in listView1.SelectedItems)
                    {
                        item.Selected = false;
                    }
                }
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Metodo que evalua las selecciones de la lista, si estamos en categorias carga los articulos de esa categoria
 /// y si estamos en una categoria y clicamos un articulo abre una ventana para introducir las unidades o el peso y agrega ese articulo a la cesta
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void Seleccion(object sender, MouseEventArgs e)
 {
     introducidoCantidad = false; //Establecemos que no hemos introducido la cantidad
     if (listaCategoria)          //Si estamos en la lista de categoria carga los articulos referentes a la categoria seleccionada desde su directorio
     {
         ListView.SelectedIndexCollection seleccionado = listView1.SelectedIndices;
         foreach (int index in seleccionado)
         {
             DirectoryInfo dir = new DirectoryInfo(Constantes.PRODUCTOS_RUTA + "/" + listView1.Items[index].Text);
             lCategoria.Text = listView1.Items[index].Text.ToString();
             int j = 0;
             listView1.Items.Clear();                  //Eliminamos la lista actual para que no se queden las imagenes que habia
             imageList1.Images.Clear();                //Eliminamos la lista actual para que no se queden las imagenes que habia
             foreach (FileInfo file in dir.GetFiles()) //Agregamos las imagenes de los articulos de la categoria seleccionada
             {
                 listView1.View       = View.LargeIcon;
                 imageList1.ImageSize = new Size(Constantes.TAMANO_IMAGENES, Constantes.TAMANO_IMAGENES);
                 try
                 {
                     imageList1.Images.Add(System.Drawing.Image.FromFile(file.FullName));
                     listView1.Items.Add(new ListViewItem {
                         ImageIndex = j, Text = file.Name.Substring(0, file.Name.Length - 4)
                     });
                     j++;
                 }
                 catch
                 {
                     Console.WriteLine("No es un archivo de imagen");
                 }
                 listView1.LargeImageList = imageList1;
                 lFlecha.Visible          = true;//Ponemos visible la flecha para indicar en que categoria estamos
             }
         }
         btAtrasVTienda.Visible = true;  //Habilitamos el boton atras para volver a categorias
         listaCategoria         = false; //Decimos que ya no estamos en la lista de categoria
     }
     else//Entramos en el else cuando estamos dentro de una categoria
     {
         try
         {
             if (!introducidoCantidad)//Si no hemos introducido la cantidad o el peso nos abre la ventana para introducirlo
             {
                 Intro_Peso_UD panel1 = new Intro_Peso_UD();
                 panel1.MinimizeBox   = false;
                 panel1.MaximizeBox   = false;
                 panel1.ShowIcon      = false;
                 panel1.ShowInTaskbar = false;
                 panel1.ShowDialog();
                 introducidoCantidad = true;                                                                                                                        //Decimos que ya hemos introducido la cantidad
             }
             if (Constantes.PESO_UD_PRODUCTO != null && Convert.ToDouble(Constantes.PESO_UD_PRODUCTO) > 0 && Convert.ToDouble(Constantes.PESO_UD_PRODUCTO) > 0.000) //Si el peso del producto no es nulo y es mayor que 0 sera que hemos introducido un peso y que no hemos cerrado la ventana porque no queriamos introducir ese articulo
             {
                 ListView.SelectedIndexCollection seleccionado = listView1.SelectedIndices;                                                                         //Cogemos el articulo seleccionado para agregarlo a la cesta
                 foreach (int index in seleccionado)
                 {
                     cesta.Rows.Add(1);
                     cesta.Rows[cesta.RowCount - 1].Cells[0].Value = Resource1.bin;
                     cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_NOMBRE].Value   = listView1.Items[index].Text;
                     cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_UNIDADES].Value = Constantes.PESO_UD_PRODUCTO;
                     if (lCategoria.Text.Equals("Suplementos"))//Evaluamos si la categoria en la que esstamos es suplementos ya que es una tabla diferente y tenemos que coger el precio con una consulta diferente
                     {
                         cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_PRECIO].Value = (float)Constantes.suplemento_TA.getPreSupleNombre(listView1.Items[index].Text);
                     }
                     else
                     {
                         cesta.Rows[cesta.RowCount - 1].Cells[Constantes.COLUMNA_PRECIO].Value = (float)Constantes.preciosVenta_TA.GetPrecioVenta((int)Constantes.productos_TA.GetCodProducto(listView1.Items[index].Text));
                     }
                     cesta.FirstDisplayedScrollingRowIndex = cesta.RowCount - 1;//Hacemos que el scroll de la cesta baje hasta el ultimo al introducir articulos si hay muchos
                     Total();
                 }
                 Constantes.PESO_UD_PRODUCTO = "0.000";//Ponemos a 0 el peso/unidades para asignar que no hemos introducido nada para los siguientes articulos que seleccionemos
             }
         }catch (Exception ex)
         {
         }
         finally
         {
             foreach (ListViewItem item in listView1.SelectedItems)
             {
                 item.Selected = false;//Deseleccionamos los items de la lista para que no queden azules y para no tener problemas a la hora de volver a clicar en el mismo item
             }
         }
     }
 }