Exemplo n.º 1
0
        public static double validImporte(string nomCom)
        {
            double importe = 0;
            bool   ok;

            do
            {
                ok = true; // Setea bool para que no entre un bucle infinito al pedir el precio
                try
                {
                    Console.Write($"Ingrese el precio (con IVA) de {nomCom.ToUpper()}: $");
                    importe = double.Parse(Console.ReadLine());
                    if (importe < 0) // Si el valor es menor a 0 lo vuelve a consultar ya que no es valido
                    {                // No se condiciona para cuando es igual a 0 porque el medicamento puede ser gratuito --> $0
                        ok = false;
                        Console.Clear();
                        Console.WriteLine("El importe no debe ser menor a $0!\nIntente nuevamente.");
                        Msj.pausa();
                    }
                }
                catch (Exception)
                {
                    ok = false;     // si ingresa un caracter invalido cambia a false para que vuelva a preguntar
                    Msj.tryCatch(); // Devuelve mensaje de valor invalido
                }
            } while (ok != true);   // Se ejecuta hasta que ingrese un valor valido y mayor a 0
            return(importe);
        }
Exemplo n.º 2
0
        public static void creaFarma() // Solicita datos y crea la farmacia
        {
            Console.WriteLine("Debe crear una Farmacia");
            Console.Write("Ingrese el nombre: ");
            rSoc = Console.ReadLine();
            Console.Write($"Ingrese la dirección de {rSoc}: ");
            dir = Console.ReadLine();
            bool ok;

            do
            {
                ok = true;
                Console.Write($"Ingrese el telefono(sin guiones) de {rSoc}: ");
                try
                {
                    tel = int.Parse(Console.ReadLine());
                }
                catch (System.Exception)
                {
                    ok = false;
                    Msj.tryCatch();
                }
            } while (ok != true);


            farmacia = new Farmacia(rSoc, dir, tel); // Se crea la farmacia
            Console.Clear();
            Console.WriteLine($"Se creo la Farmacia: {rSoc}");
            Console.ReadKey();
        }
Exemplo n.º 3
0
        static int validTicket(string que) // Solicita un codigo, lo valida y verifica que no se repita o que exista segun el string que recibe
        {
            bool encontre = false;
            bool ok;
            int  nroTicket = 123;

            do
            {
                ok = true;     // Setea bool para que no entre un bucle infinito al pedir el ticket
                try
                {
                    Console.Write("Ingrese el Nro de Ticket: ");
                    nroTicket = int.Parse(Console.ReadLine());
                    if (nroTicket != 000)
                    {
                        foreach (int nro in ticketAsig)
                        {
                            if (nro == nroTicket)     // Si encuentra el numero de ticket en los ticket asignados significa que existe la venta
                            {
                                encontre = true;
                                if (que == "repite")     // Si que es igual a repite significa que tiene que verificar que el codigo no se repita
                                {
                                    ok = false;
                                    Console.Clear();
                                    Console.WriteLine($"El numero de ticket {nroTicket} ya fue ingresado!\nVuelva a intentar\n");
                                    Console.WriteLine($"Si no recuerda o desconoce el numero de ticket correcto, ingrese 000 para cancelar\n");
                                    break; // Cuando encuentra coincidencia se sale del foreach
                                }
                                else       // Si que es igual a existe tiene que verificar que el codigo exista
                                {
                                    ok = true;
                                    break;     // Para que deje de seguir buscando
                                }
                            }
                        }
                        if (que == "existe" && encontre == false)
                        {
                            throw new TicketNoValido();      // Si no se encuentra el ticket ejecuta el try-catch
                        }
                    }
                    else
                    {
                        ok = true;     // Se setea ok en true para salir del bucle
                        break;
                    }
                }
                catch (TicketNoValido) {    // Si no se encuentra(encontre en false) nada muestra el mesnaje
                    ok = false;
                    Console.Clear();
                    Console.WriteLine($"No se encontro el Ticket con codigo: {nroTicket}");
                    Console.WriteLine("Si no recuerda o desconoce el numero de ticket correcto, el numero de ticket ingrese 000 para cancelar\n");
                }
                catch (System.Exception)
                {
                    ok = false;
                    Msj.tryCatch();
                }
            }while (ok != true && nroTicket != 000); // Hasta que no ingrese un Ticket valido y no repetido o exita se ejecuta el while
            return(nroTicket);                       // Devuelve un Ticket valido y que exista o no se repita segun lo requerido
        }
Exemplo n.º 4
0
        public static int selecOp() // Devuelve la opcion seleccionada la cual pasa por un try-catch para validar
        {
            int op = 0;

            try
            {
                op = int.Parse(Console.ReadLine());
            }
            catch (Exception)
            {
                op = 0; // seleciona un case que no hace nada para evitar el default y que envie doble mensaje
                Msj.tryCatch();
                Msj.pausa();
            }
            return(op);
        }
Exemplo n.º 5
0
        /*********************************************************************************************************************/
        /******************************************** OTROS METODOS **********************************************************/

        static int validCodigo()  /*Valida codigo de empleado*/
        {
            int  codVendedor = 123;
            bool encontre    = false;

            do
            {
                try
                {
                    Console.Write("Ingrese el codigo del empleado: ");
                    codVendedor = int.Parse(Console.ReadLine());
                    if (codVendedor != 000)
                    {
                        foreach (int nro in codAsig) // Recorre codigos asignados
                        {
                            if (nro == codVendedor)  // Si encuentra que el codigo fue asignado quiere decir que el empleado existe
                            {
                                encontre = true;
                            }
                        }
                        if (encontre == false)
                        {
                            throw new EmpleadoNoEncont(); // Si no se encuentra el empleado ejecuta el try-catch
                        }
                    }
                    else
                    {
                        encontre = true; // Se setea en true para salir del blucle
                    }
                }
                catch (EmpleadoNoEncont)
                {
                    Console.Clear();
                    Console.WriteLine($"No se encontroo el Empleado con codigo: {codVendedor}\nSi no se acuerda ingrese 000 para salir.\n");
                }
                catch (Exception)
                {
                    Msj.tryCatch();                           // Devuelve mensaje de valor invalido
                }
            } while (encontre != true && codVendedor != 000); // Se ejecuta el While hasta que ingresa un codigo valido o ingrese 000, en este ultimo caso se cancela la operación siguiente
            return(codVendedor);
        }