Ejemplo n.º 1
0
    private int JumpIntoProduct(ListaDeProductos productos, int actualIndex)
    {
        resetConsole();
        int client = actualIndex;

        Console.Write("Index? ");
        try
        {
            client = Convert.ToInt32(Console.ReadLine());
        }
        catch (Exception)
        {
            Console.WriteLine("Invalid number");
            Console.WriteLine("Press enter to return");
            Console.ReadLine();
        }

        if (client > productos.Count)
        {
            client = actualIndex;
            Console.WriteLine("Doesn't exist");
            Console.WriteLine("Press enter to return");
            Console.ReadLine();
        }

        return(client);
    }
Ejemplo n.º 2
0
    public void Ejecutar()
    {
        ListaDeProductos Productos = new ListaDeProductos();
        int count = 1;

        bool exit = false;

        do
        {
            drawActualProduct(Productos, count);
            getUserImput(ref count, ref Productos, ref exit);
        } while (!exit);
    }
Ejemplo n.º 3
0
    private void getUserImput(ref int count, ref ListaDeProductos Productos, ref bool exit)
    {
        ConsoleKeyInfo key;

        do
        {
            key = Console.ReadKey(true);
        } while (Console.KeyAvailable);


        switch (key.Key)
        {
        case ConsoleKey.D0:
            exit = true;
            Productos.Save();
            break;

        case ConsoleKey.D1:
            if (count > 1)
            {
                count--;
            }
            break;

        case ConsoleKey.D2:
            if (count < Productos.Count)
            {
                count++;
            }
            break;

        case ConsoleKey.D3:
            count = JumpIntoProduct(Productos, count);
            break;

        case ConsoleKey.D4:
            count = searchText(Productos, count);
            break;

        case ConsoleKey.D5:
            Productos.Add(newProduct());
            break;

        case ConsoleKey.D6:
            Productos.Productos[count - 1] = modifyProduct(Productos.Get(count));
            break;

        default:
            break;
        }
    }
Ejemplo n.º 4
0
 public void ObtenerProductos(Guid valor)
 {
     ListaDeProductos.Clear();
     foreach (DataRow item in DatosProductos.ProductosDeSucursal(valor).Rows)
     {
         Guid   uidproducto = new Guid(item["UidProducto"].ToString());
         string nombre      = item["VchNombre"].ToString();
         string rutaimagen  = item["NVchRuta"].ToString();
         ListaDeProductos.Add(new VMProducto()
         {
             UID = uidproducto, STRNOMBRE = nombre, STRRUTA = rutaimagen
         });
     }
 }
Ejemplo n.º 5
0
 public void ListaConImagen(string UidEmpresa)
 {
     foreach (DataRow item in DatosProductos.ProductoConimagen(UidEmpresa).Rows)
     {
         Guid   uidproducto = new Guid(item["UidProducto"].ToString());
         string nombre      = item["VchNombre"].ToString().ToUpper();
         string descripcion = item["VchDescripcion"].ToString();
         string ruta        = item["NVchRuta"].ToString();
         ListaDeProductos.Add(new VMProducto()
         {
             UID = uidproducto, STRNOMBRE = nombre, STRRUTA = ruta
         });
     }
 }
Ejemplo n.º 6
0
    private void newLinea()
    {
        LineaDetalle     lineaActual = new LineaDetalle();
        ListaDeProductos productos   = new ListaDeProductos();

        resetConsole();

        int cont;

        do
        {
            Console.Write("Código producto: ");
            int codigo = Convert.ToInt32(Console.ReadLine());

            cont = 1;
            do
            {
                if (cont <= productos.Count && productos.Get(cont).Codigo != codigo)
                {
                    cont++;
                }
            }while (cont <= productos.Count && productos.Get(cont).Codigo != codigo);
            if (cont == productos.Count + 1)
            {
                Console.WriteLine("Invalid product try again");
            }
            else
            {
                lineaActual.ProductoActual = productos.Get(cont);
            }
        } while (lineaActual.ProductoActual == null);

        Console.Write("Cantidad: ");
        try
        {
            lineaActual.Cantidad = Convert.ToInt32(Console.ReadLine());
        }
        catch (Exception)
        {
            Console.WriteLine("Invalid option set 1");
            lineaActual.Cantidad = 1;
        }

        Facturas.Get(Index).Lineas.Add(lineaActual);
    }
Ejemplo n.º 7
0
        public void Buscar(string Nombre = "", string Descripcion = "", string estatus = "", Guid UidEmpresa = new Guid(), Guid UidProducto = new Guid(), string Giro = "", string Categoria = "", string Subcategoria = "")
        {
            SqlCommand Comando = new SqlCommand();

            ListaDeProductos.Clear();
            try
            {
                Comando.CommandType = CommandType.StoredProcedure;
                Comando.CommandText = "asp_BuscarProductos";

                if (UidProducto == Guid.Empty)
                {
                    Comando.Parameters.Add("@UidEmpresa", SqlDbType.UniqueIdentifier);
                    Comando.Parameters["@UidEmpresa"].Value = UidEmpresa;

                    if (Nombre != string.Empty && Nombre != "")
                    {
                        Comando.Parameters.Add("@VchNombre", SqlDbType.VarChar, 50);
                        Comando.Parameters["@VchNombre"].Value = Nombre;
                    }
                    if (Descripcion != string.Empty && Descripcion != "")
                    {
                        Comando.Parameters.Add("@VchDescripcion", SqlDbType.VarChar, 300);
                        Comando.Parameters["@VchDescripcion"].Value = Descripcion;
                    }
                    if (estatus != "-1" && estatus != "")
                    {
                        Comando.Parameters.Add("@IntEstatus", SqlDbType.Int);
                        Comando.Parameters["@IntEstatus"].Value = int.Parse(estatus);
                    }
                    if (!string.IsNullOrEmpty(Giro))
                    {
                        Comando.Parameters.Add("@VchGiro", SqlDbType.VarChar, 10000);
                        Comando.Parameters["@VchGiro"].Value = Giro;
                    }
                    if (!string.IsNullOrEmpty(Categoria))
                    {
                        Comando.Parameters.Add("@VchCategorias", SqlDbType.VarChar, 10000);
                        Comando.Parameters["@VchCategorias"].Value = Categoria;
                    }
                    if (!string.IsNullOrEmpty(Subcategoria))
                    {
                        Comando.Parameters.Add("@VchSubcategoria", SqlDbType.VarChar, 10000);
                        Comando.Parameters["@VchSubcategoria"].Value = Subcategoria;
                    }

                    foreach (DataRow item in CN.Busquedas(Comando).Rows)
                    {
                        Guid   uidproducto = new Guid(item["UidProducto"].ToString());
                        string nombre      = item["VchNombre"].ToString().ToUpper();
                        string descripcion = item["VchDescripcion"].ToString();
                        string Estatus     = item["intEstatus"].ToString();
                        ListaDeProductos.Add(new VMProducto()
                        {
                            UID = uidproducto, STRNOMBRE = nombre, ESTATUS = Int32.Parse(Estatus)
                        });
                    }
                }
                else
                {
                    Comando.Parameters.Add("@UidEmpresa", SqlDbType.UniqueIdentifier);
                    Comando.Parameters["@UidEmpresa"].Value = UidEmpresa;

                    Comando.Parameters.Add("@UidProducto", SqlDbType.UniqueIdentifier);
                    Comando.Parameters["@UidProducto"].Value = UidProducto;

                    foreach (DataRow item in CN.Busquedas(Comando).Rows)
                    {
                        UID            = new Guid(item["UidProducto"].ToString());
                        STRNOMBRE      = item["VchNombre"].ToString();
                        STRDESCRIPCION = item["VchDescripcion"].ToString();
                        ESTATUS        = Int32.Parse(item["intEstatus"].ToString());
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Ejemplo n.º 8
0
    private void drawActualProduct(ListaDeProductos productos, int index)
    {
        resetConsole();

        string line      = new string('-', Console.WindowWidth);
        string emptyLine = new string(' ', Console.WindowWidth - 2);
        string helpLine1 = "1-Anterior  2-Posterior  3-Número  4-Buscar  " +
                           "5-Añadir  6-Modificar  B-Borrar";
        string helpLine2 = "7-Listados  F1-Ayuda  0-Terminar";
        string topLine   = "Productos (ficha actual: " + index + "/" + productos.Count + ")";
        string date      = (DateTime.Now.Date + "").Substring(0, 11) + "       " +
                           (DateTime.Now.Date + "").Substring(11);

        //Cuadrado de arriba
        Console.SetCursorPosition(0, 0);
        Console.Write(line);
        Console.Write("|" + emptyLine + "|");
        Console.Write(line);
        Console.SetCursorPosition(1, 1);
        Console.Write(topLine);
        Console.SetCursorPosition(Console.WindowWidth / 2, 1);
        Console.Write(date);

        string[] campos = { "Codigo:",       "Descripcion:",   "Categoria:",
                            "Precio Venta:", "Precio Compra:", "Stock:", "Stock mínimo:" };

        //Cuerpo del programa
        try
        {
            int cont = 0;
            ConsolaMejorada.Escribir(0, 4, campos[cont], "white", false);
            ConsolaMejorada.Escribir(15, 4,
                                     checkVacio(productos.Get(index).Codigo), "gray", true);
            cont++;

            Console.WriteLine();
            ConsolaMejorada.Escribir(0, 7, campos[cont], "white", false);
            ConsolaMejorada.Escribir(15, 7,
                                     checkVacio(productos.Get(index).Descripcion), "gray", true);
            cont++;

            ConsolaMejorada.Escribir(0, 8, campos[cont], "white", false);
            ConsolaMejorada.Escribir(15, 8,
                                     checkVacio(productos.Get(index).Categoria), "gray", true);
            cont++;

            Console.WriteLine();
            ConsolaMejorada.Escribir(0, 10, campos[cont], "white", false);
            ConsolaMejorada.Escribir(15, 10,
                                     checkVacio(productos.Get(index).PrecioVenta), "gray", true);
            cont++;

            ConsolaMejorada.Escribir(0, 11, campos[cont], "white", false);
            ConsolaMejorada.Escribir(15, 11,
                                     checkVacio(productos.Get(index).PrecioCompra), "gray", true);
            cont++;

            Console.WriteLine();
            ConsolaMejorada.Escribir(0, 14, campos[cont], "white", false);
            ConsolaMejorada.Escribir(15, 14,
                                     checkVacio(productos.Get(index).Stock), "gray", true);
            cont++;

            ConsolaMejorada.Escribir(0, 15, campos[cont], "white", false);
            ConsolaMejorada.Escribir(15, 15,
                                     checkVacio(productos.Get(index).StockMinimo), "gray", true);
            cont = 0;
        }
        catch (Exception)
        {
            // Nothing if there is no data
        }


        //Parte de abajo
        Console.SetCursorPosition(0, Console.WindowHeight - 4);
        Console.Write(line);
        Console.SetCursorPosition(Console.WindowWidth / 2 -
                                  (helpLine1.Length / 2), Console.WindowHeight - 3);
        Console.WriteLine(helpLine1);
        Console.SetCursorPosition(Console.WindowWidth / 2 -
                                  (helpLine2.Length / 2), Console.WindowHeight - 2);
        Console.WriteLine(helpLine2);


        Console.ResetColor();
    }
Ejemplo n.º 9
0
    private int searchText(ListaDeProductos productos, int actualIndex)
    {
        resetConsole();
        Console.Write("Text to search: ");
        string text = Console.ReadLine().ToLower();

        Console.WriteLine("From this file or begining? file/begining");
        string index = Console.ReadLine();

        Console.WriteLine("Stop when finding a product o when finish? finding/finish");
        string stop = Console.ReadLine();

        int        actualPos      = 1;
        List <int> foundPositions = new List <int>();

        if (index == "file")
        {
            actualPos = actualIndex;
        }

        bool find = false;

        do
        {
            Producto productoActual = productos.Get(actualPos);
            if (productoActual.Codigo.ToString().ToLower().Contains(text) ||
                productoActual.Descripcion.ToLower().Contains(text) ||
                productoActual.Categoria.ToLower().Contains(text) ||
                productoActual.PrecioVenta.ToString().ToLower().Contains(text) ||
                productoActual.PrecioCompra.ToString().ToLower().Contains(text) ||
                productoActual.Stock.ToString().ToLower().Contains(text) ||
                productoActual.StockMinimo.ToString().ToLower().Contains(text))
            {
                if (stop == "finding")
                {
                    find = true;
                }
                foundPositions.Add(actualPos);
            }
            if (!find && actualPos < productos.Count)
            {
                actualPos++;
            }
        } while (!find && actualPos < productos.Count);

        if (foundPositions.Count > 1)
        {
            Console.Write("Found at positions: ");
            Console.Write(foundPositions[0]);
            for (int i = 1; i < foundPositions.Count; i++)
            {
                Console.Write(", " + foundPositions[i]);
            }
            Console.WriteLine();
            Console.WriteLine("Press enter to return");
            Console.ReadLine();
            return(actualIndex);
        }

        return(actualPos);
    }