예제 #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Bienvenido al sistema de productos farmaceuticos.\n");
            Catalogo catalogo = new Catalogo();

            int     opcion     = MostrarMenu();
            Boolean cargarMenu = true;

            while (cargarMenu)
            {
                switch (opcion)
                {
                case 1:      //cargar catalogo
                    catalogo.cargarProductos();
                    Boolean seguir = ValidarYN(Console.ReadLine());
                    while (seguir)
                    {
                        catalogo.cargarProductos();
                        seguir = ValidarYN(Console.ReadLine().ToUpper());
                    }
                    if (!seguir)
                    {
                        opcion = MostrarMenu();
                        break;
                    }
                    break;

                case 2:      //pedido
                    Console.WriteLine("Ingrese el codigo del producto.\n");
                    int code = Validar(Console.ReadLine());
                    Console.WriteLine("Ingrese la cantidad solicitada.\n");
                    int     cant     = Validar(Console.ReadLine());
                    Pedido  pedido   = new Pedido();
                    Boolean okPedido = pedido.hacerPedido(code, cant, catalogo);
                    while (!okPedido)
                    {
                        Console.WriteLine("Ingrese el codigo del producto.\n");
                        code = Validar(Console.ReadLine());
                        Console.WriteLine("Ingrese la cantidad solicitada.\n");
                        cant     = Validar(Console.ReadLine());
                        okPedido = pedido.hacerPedido(code, cant, catalogo);
                    }
                    opcion = MostrarMenu();
                    break;

                case 3:       //entrega

                    Console.WriteLine("Ingrese el codigo del producto.\n");
                    int codeE = Validar(Console.ReadLine());
                    Console.WriteLine("Ingrese la cantidad entregada.\n");
                    int     cantE     = Validar(Console.ReadLine());
                    Entrega entrega   = new Entrega();
                    Boolean okEntrega = entrega.newEntrega(codeE, cantE, catalogo);
                    while (!okEntrega)
                    {
                        Boolean respuesta = ValidarYN(Console.ReadLine());
                        if (respuesta)
                        {
                            Console.WriteLine("Ingrese el nombre del nuevo producto.\n");
                            String   nameP    = Console.ReadLine();
                            Producto producto = new Producto();
                            producto.Codigo = codeE;
                            producto.Nombre = nameP;
                            producto.Stock  = cantE;
                            catalogo.Total.Add(producto);
                            Console.WriteLine("Carga exitosa.\n");
                            break;
                        }
                        break;
                    }
                    opcion = MostrarMenu();
                    break;

                case 4:      //stock final
                    if (catalogo.Total.Count == 0)
                    {
                        Console.WriteLine("No hay stock disponible.");
                    }
                    else
                    {
                        foreach (Producto pr in catalogo.Total)
                        {
                            Console.WriteLine("Producto: " + pr.Nombre + " (codigo " + pr.Codigo + "), cantidad en stock" + pr.Stock + ".\n");
                        }
                    }
                    opcion = MostrarMenu();
                    break;

                case 5:
                    Console.WriteLine("Para salir, presione cualquier tecla. ¡Saludos!");
                    cargarMenu = false;
                    break;

                default:
                    Console.WriteLine("Opción no válida. Intente de nuevo.\n");
                    opcion = Validar(Console.ReadLine());
                    break;
                }
            }

            Console.ReadKey();
        }