コード例 #1
0
        /*********************************************************************************************************************/
        /******************************************** OTROS METODOS **********************************************************/

        public static int validCodigo()  /*Valida codigo de empleado*/
        {
            int  codVendedor = 123;
            bool encontro    = 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
                            {
                                encontro = true;
                            }
                        }
                        Farmacia_Exception.exe_tryCatch(encontro, "empleado"); // Si no encuentra el empleado ejecuta el try-catch EmpleadoNoEncont()
                    }
                    else
                    {
                        encontro = true; // Se setea en true para salir del blucle
                    }
                }
                catch (Farmacia_Exception.EmpleadoNoEncont)
                {
                    Console.Clear();
                    Msj.tcNoEmpleado(codVendedor);
                    Console.WriteLine("Si no se acuerda ingrese 000 para salir.\n");
                }
                catch (Exception)
                {
                    Msj.tryCatch();                           // Devuelve mensaje de valor invalido
                }
            } while (encontro != 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);
        }
コード例 #2
0
        public 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 = true;
            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 sabe 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
                                }
                            }
                            else
                            {
                                if (que == "existe")     // Solo si se esta verificando si el ticket exite se va a enviar el try en caso de no encontrar
                                {
                                    Console.Clear();
                                    Console.WriteLine($"Si no recuerda o sabe el numero de ticket correcto, el numero de ticket ingrese 000 para cancelar\n");
                                    encontre = false;
                                }
                            }
                        }
                        Farmacia_Exception.exe_tryCatch(encontre, "ticket");
                    }
                    else
                    {
                        ok = true;     // Se setea ok en true para salir del bucle
                    }
                }
                catch (Farmacia_Exception.TicketNoValido) {    // Si no se encuentra(encontre en false) nada muestra el mesnaje
                    Msj.tcTicket(nroTicket);
                }
                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
        }