Beispiel #1
0
        public string verCaja()
        {
            string est;

            if (this.getEstado())
            {
                est = "Abierta";
            }
            else
            {
                est = "Cerrada";
            }

            if (this.CajeroAcargo != null)
            {
                Cajero cajero = this.getCajeroAcargo();

                return("Caja Nº: " + this.getCodigoCaja()
                       + " --> Estado de la caja: " + est
                       + " --> Cajero a cargo: " + (string)cajero.getNombre() + " " + cajero.getApellido());
            }
            else
            {
                return("Caja Nº: " + this.getCodigoCaja()
                       + " --> Estado de la caja: " + est);
            }
        }
Beispiel #2
0
        //creo la funcion con los parametros que recibe de los otros menues
        public void iniciar(ArrayList listaProductos, ArrayList listaPromociones, ArrayList listaCajas, ArrayList listaCajeros, ArrayList listaClientes)
        {
            Console.WriteLine("C A J A S");
            Console.WriteLine("");
            Console.WriteLine("Ingrese un número:");
            Console.WriteLine("1 --> Nuevo cajero");
            Console.WriteLine("2 --> Abrir caja");
            Console.WriteLine("3 --> Cerrar caja");
            Console.WriteLine("4 --> Listado de cajas");
            Console.WriteLine("5 --> Volver al menu principal");
            Console.WriteLine("");
            string ac = Console.ReadLine();

            try{
                long accion = long.Parse(ac);

                while (accion != 5)
                {
                    switch (accion)
                    {
                    case 1:
                        Console.Clear();
                        Console.WriteLine("C A J A S [Carga-cajero]");
                        Console.WriteLine("");
                        Console.Write("Ingrese el nombre: ");
                        string nombre = Console.ReadLine();
                        Console.Write("Ingrese el apellido: ");
                        string apellido = Console.ReadLine();
                        Console.Write("Ingrese el dni: ");
                        string dni = Console.ReadLine();
                        Console.Write("Ingrese el horario de trabajo: ");
                        string horario         = Console.ReadLine();
                        int    cantidadCajeros = listaCajeros.Count;

                        //crea un cajero, los setea y lo agrega a listaCajeros
                        Cajero cajero = new Cajero();
                        cajero.setCodigoCajero(cantidadCajeros + 1);
                        cajero.setNombre(nombre);
                        cajero.setApellido(apellido);
                        cajero.setDni(dni);
                        cajero.setHorario(horario);
                        listaCajeros.Add(cajero);

                        Console.Clear();
                        Console.WriteLine("C A J A S");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese un número:");
                        Console.WriteLine("1 --> Nuevo cajero");
                        Console.WriteLine("2 --> Abrir caja");
                        Console.WriteLine("3 --> Cerrar caja");
                        Console.WriteLine("4 --> Listado de cajas");
                        Console.WriteLine("5 --> Volver al menu principal");
                        Console.WriteLine("");
                        ac     = Console.ReadLine();
                        accion = long.Parse(ac);
                        break;

                    case 2:
                        Console.Clear();
                        Console.WriteLine("C A J A S [Abrir-caja]");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese el número de la caja a abrir [del 1 al 5]:");
                        string CodCaja    = Console.ReadLine();
                        int    CodigoCaja = int.Parse(CodCaja);

                        Console.Clear();
                        Console.WriteLine("C A J A S [Abrir-caja]");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese el Nº del cajero a cargo:");
                        Console.WriteLine("");
                        Console.WriteLine("Lista de cajeros cargados:");

                        //lista los cajeros
                        foreach (Cajero cajero1 in listaCajeros)
                        {
                            Console.WriteLine("Nº" + cajero1.getCodigoCajero() + " " + cajero1.getApellido() + ", " + cajero1.getNombre() + ".");
                        }

                        Console.WriteLine("");
                        string CajeroAcargo = Console.ReadLine();
                        int    codigoCajero = int.Parse(CajeroAcargo);
                        Caja   cajaASetear  = null;

                        foreach (Caja caja in listaCajas)
                        {
                            if (caja.getCodigoCaja() == CodigoCaja)
                            {
                                cajaASetear = caja;
                            }
                        }

                        //crea una variable booleana para verificar si el cajero
                        //recibido por parametro ya está atendiendo.
                        bool tieneCajero = false;
                        int  codCaja     = 0;

                        //realiza la funcion para verificar si el cajero está en alguna caja
                        foreach (Caja caja in listaCajas)
                        {
                            Cajero cajeroCaja = caja.getCajeroAcargo();
                            if (cajeroCaja != null)
                            {
                                if (cajeroCaja.getCodigoCajero() == codigoCajero)
                                {
                                    tieneCajero = true;
                                    codCaja     = caja.getCodigoCaja();
                                }
                            }
                        }

                        //si el cajero está en alguna caja muestra un mensaje
                        //de que no se puede asignar a una caja.
                        if (tieneCajero == true)
                        {
                            Console.WriteLine("El cajero ya está atendiendo la caja N° " + codCaja);
                            Console.WriteLine("Pulse cualquier tecla para volver...");
                            Console.ReadKey();
                        }
                        else
                        {
                            //se verifica si algun cajero ya está atendiendo la caja a abrir
                            if (cajaASetear.getCajeroAcargo() != null)
                            {
                                Cajero cajeroSeteado = (Cajero)cajaASetear.getCajeroAcargo();
                                Console.WriteLine("La caja " + cajaASetear.getCodigoCaja().ToString() + " ya esta siendo atendida por " + cajeroSeteado.getNombre() + " " + cajeroSeteado.getApellido());
                                Console.WriteLine("Presione alguna tecla para volver...");
                                Console.ReadKey();
                            }
                            else
                            {
                                foreach (Cajero cajeroFiltro in listaCajeros)
                                {
                                    if (cajeroFiltro.getCodigoCajero() == codigoCajero)
                                    {
                                        cajaASetear.setCajeroAcargo(cajeroFiltro);
                                        cajaASetear.setEstado(true);
                                    }
                                }
                            }
                        }
                        Console.Clear();
                        Console.WriteLine("C A J A S");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese un número:");
                        Console.WriteLine("1 --> Nuevo cajero");
                        Console.WriteLine("2 --> Abrir caja");
                        Console.WriteLine("3 --> Cerrar caja");
                        Console.WriteLine("4 --> Listado de cajas");
                        Console.WriteLine("5 --> Volver al menu principal");
                        Console.WriteLine("");
                        ac     = Console.ReadLine();
                        accion = long.Parse(ac);
                        break;

                    case 3:
                        Console.Clear();
                        Console.WriteLine("C A J A S [Cerrar-caja]");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese el número de la caja a cerrar [del 1 al 5]:");
                        CodCaja    = Console.ReadLine();
                        CodigoCaja = int.Parse(CodCaja);

                        foreach (Caja caja in listaCajas)
                        {
                            if (caja.getCodigoCaja() == CodigoCaja)
                            {
                                caja.setEstado(false);
                                caja.setCajeroAcargo(null);
                            }
                        }

                        Console.Clear();
                        Console.WriteLine("C A J A S");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese un número:");
                        Console.WriteLine("1 --> Nuevo cajero");
                        Console.WriteLine("2 --> Abrir caja");
                        Console.WriteLine("3 --> Cerrar caja");
                        Console.WriteLine("4 --> Listado de cajas");
                        Console.WriteLine("5 --> Volver al menu principal");
                        Console.WriteLine("");
                        ac     = Console.ReadLine();
                        accion = long.Parse(ac);
                        break;

                    case 4:

                        Console.Clear();
                        Console.WriteLine("C A J A S [lista-cajas]");
                        Console.WriteLine("");
                        foreach (Caja caj in listaCajas)
                        {
                            Console.WriteLine(caj.verCaja());
                        }
                        Console.WriteLine("");
                        Console.WriteLine("Presione alguna tecla para volver...");
                        Console.ReadLine();

                        Console.Clear();
                        Console.WriteLine("C A J A S");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese un número:");
                        Console.WriteLine("1 --> Nuevo cajero");
                        Console.WriteLine("2 --> Abrir caja");
                        Console.WriteLine("3 --> Cerrar caja");
                        Console.WriteLine("4 --> Listado de cajas");
                        Console.WriteLine("5 --> Volver al menu principal");
                        Console.WriteLine("");
                        ac     = Console.ReadLine();
                        accion = long.Parse(ac);
                        break;

                    default:
                        Console.Clear();
                        Console.WriteLine("C A J A S");
                        Console.WriteLine("");
                        Console.WriteLine("Ingrese otro número:");
                        Console.WriteLine("1 --> Nuevo cajero");
                        Console.WriteLine("2 --> Abrir caja");
                        Console.WriteLine("3 --> Cerrar caja");
                        Console.WriteLine("4 --> Listado de cajas");
                        Console.WriteLine("5 --> Volver al menu principal");
                        Console.WriteLine("");
                        Console.WriteLine("El número ingresado no es valido, vuelva a ingresar:");
                        ac     = Console.ReadLine();
                        accion = long.Parse(ac);
                        break;
                    }
                }
            }catch {
                Console.Clear();
                Console.WriteLine("*******************************************************");
                Console.WriteLine("Ha ingresado carácteres no válidos vuelva a intentarlo");
                Console.WriteLine("*******************************************************");
                Console.WriteLine("");

                this.iniciar(listaProductos, listaPromociones, listaCajas, listaCajeros, listaClientes);
            }
            Console.Clear();
            //pasa parametros a la funcion volverSupermercado
            this.volverSupermercado(listaProductos, listaPromociones, listaCajas, listaCajeros, listaClientes);
        }