Exemplo n.º 1
0
        public Grupo buscarGrupo()
        {
            Grupo  g = null;
            string nombre, ruta;

            do
            {
                nombre = Auxiliar.leerCadena("\nIntroduzca el nombre del grupo: ");
            } while (nombre.Equals(""));

            nombre = nombre.ToUpper();
            ruta   = @"..\..\" + nombre + ".dat";

            if (File.Exists(ruta))
            {
                string opcion;
                bool   sino;

                do
                {
                    Auxiliar.imprimirVerde("\nYa existe un grupo con este nombre. ¿Desea abrirlo? S/N ");
                    opcion = Auxiliar.leerCadena("").ToUpper();
                    sino   = (opcion.Equals("S") || opcion.Equals("N"));

                    if (!sino)
                    {
                        Auxiliar.imprimirError("\nERROR. Debe contestar con el carácter 'S' o 'N'.\n");
                    }
                }while (!sino);

                if (opcion.Equals("S"))
                {
                    g = leerFichero(ruta);
                }
                else
                {
                    g = creaGrupo(nombre);
                }
            }
            else
            {
                g = creaGrupo(nombre);
            }

            return(g);
        }
Exemplo n.º 2
0
        public static Grupo creaGrupo(string nombre)
        {
            Grupo g = null;

            while (nombre == null)
            {
                nombre = Auxiliar.leerCadena("\nIntroduzca el nombre del grupo: ");
            }

            nombre = nombre.ToUpper();

            //Comprobar si existe fichero con el nombre indicado

            byte nAsig;

            do
            {
                nAsig = Auxiliar.leerNAsig("\nIntroduzca el número de asignaturas: ");
            } while (nAsig == 0);

            string[] asig = new string[nAsig];

            Console.Clear();
            Console.WriteLine("\nIntroduzca los códigos de las asignaturas.");

            for (int i = 0; i < nAsig; i++)
            {
                asig[i] = Auxiliar.leerCodAsig("\nAsignatura " + (i + 1) + ": ");
                asig[i] = asig[i].ToUpper();

                if (asig[i].Equals(""))
                {
                    i--;
                }
                else if (Array.IndexOf(asig, asig[i]) < i)
                {
                    Auxiliar.imprimirError("\nERROR. El código ya existe.\n");
                    i--;
                }
            }

            g = new Grupo(nombre, nAsig, asig);

            return(g);
        }
Exemplo n.º 3
0
        private void guardarCambios(Grupo g)
        {
            bool   sino;
            string opcion;

            do
            {
                Auxiliar.imprimirVerde("\n¿Desea guardar los cambios realizados a " + g.NombreGrupo + "? S/N ");
                opcion = Auxiliar.leerCadena("").ToUpper();
                sino   = (opcion.Equals("S") || opcion.Equals("N"));

                if (!sino)
                {
                    Auxiliar.imprimirError("\nERROR. Debe contestar con el carácter 'S' o 'N'.\n");
                }
            }while (!sino);

            if (opcion.Equals("S"))
            {
                g.creaFichero();
            }
        }
Exemplo n.º 4
0
        private void seleccionOpcion(byte n, Grupo g)
        {
            if (n > 1 && n < 5 && g.Alumnos.Count == 0)
            {
                Auxiliar.imprimirError("\nERROR. La lista de alumnos está vacía.\n");
                Auxiliar.esperaLarga();
            }
            else
            {
                uint   nMat;
                Alumno a = null;

                switch (n)
                {
                case 1:

                    Console.Clear();
                    a = creaAlumno(g);
                    Auxiliar.imprimirAzul("\nAlumno creado:\n");
                    a.imprimeAlumno();
                    g.aniadirAlumno(a);

                    Auxiliar.pulsarContinuar();
                    break;

                case 2:

                    Console.Clear();
                    do
                    {
                        nMat = Auxiliar.leerUInt("\nIntroduzca el nº de matrícula: ");

                        if (nMat == 0)
                        {
                            Auxiliar.imprimirError("\nERROR. Nº de matrúcla no válido.\n");
                        }
                        else if (g.buscaAlumno(nMat) == null)
                        {
                            nMat = 0;
                            Auxiliar.imprimirError("\nERROR. El nº de matrícula no existe.\n");
                        }
                    }while (nMat == 0);

                    if (g.borraAlumno(g.buscaAlumno(nMat)))
                    {
                        Auxiliar.imprimirAzul("\nAlumno eliminado.");
                    }

                    Auxiliar.pulsarContinuar();

                    break;

                case 3:

                    Console.Clear();

                    do
                    {
                        nMat = Auxiliar.leerUInt("\nIntroduzca el nº de matrícula: ");

                        if (nMat == 0)
                        {
                            Auxiliar.imprimirError("\nERROR. Nº de matrúcla no válido.\n");
                        }
                        else
                        {
                            Auxiliar.imprimirError("\nERROR. Nº de matrícula inexistente.\n");
                            a = g.buscaAlumno(nMat);
                        }
                    }while (nMat == 0 || a == null);

                    if (a != null)
                    {
                        a.imprimeAlumno();
                    }

                    Auxiliar.pulsarContinuar();
                    break;

                case 4:

                    Console.Clear();
                    g.actaGrupo();
                    Auxiliar.pulsarContinuar();
                    break;

                case 5:

                    guardarCambios(g);
                    break;

                case 6:

                    guardarCambios(g);
                    Environment.Exit(0);
                    break;

                default:
                    Auxiliar.imprimirError("\nERROR. Opción no válida.\n");
                    Auxiliar.esperaCorta();
                    break;
                }
            }
        }
Exemplo n.º 5
0
        private void seleccionInicial(byte n)
        {
            Grupo g;

            switch (n)
            {
            case 1:

                Console.Clear();
                g = listarGrupos();

                if (g != null)
                {
                    mostrarGrupo(g);
                    mostrarMenuOpciones(g);
                }

                break;

            case 2:

                Console.Clear();
                g = buscarGrupo();

                mostrarGrupo(g);
                mostrarMenuOpciones(g);

                break;

            case 3:

                Console.Clear();
                g = listarGrupos();

                if (g != null)
                {
                    bool   sino;
                    string opcion;

                    do
                    {
                        Auxiliar.imprimirVerde("\n¿Está seguro de que desea borrarlo? S/N ");
                        opcion = Auxiliar.leerCadena("").ToUpper();
                        sino   = (opcion.Equals("S") || opcion.Equals("N"));

                        if (!sino)
                        {
                            Auxiliar.imprimirError("\nERROR. Debe contestar con el carácter 'S' o 'N'.\n");
                        }
                    }while (!sino);

                    if (opcion.Equals("S"))
                    {
                        File.Delete(@"..\..\" + g.NombreGrupo + ".dat");
                    }
                }

                break;

            case 4:

                Environment.Exit(0);
                break;

            default:
                Auxiliar.imprimirError("\nERROR. Opción no válida.\n");
                Auxiliar.esperaCorta();
                break;
            }
        }