Example #1
0
        /// <summary>
        /// Procedimiento para consultar los datos de una empresa seleccionada de un indice de empresas.
        /// <paramref name="migestoria">Recibe el objeto gestoria</</paramref>
        /// </summary>
        public static void consultarEmpresa(Gestora migestoria)
        {
            // 1. LISTAR EMPRESAS
            // 2. SELECCIONAR EMPRESA
            // 3. MOSTRAR DATOS EMPRESA
            int     opcion;
            int     empresas;
            byte    tope;
            Empresa empresa;

            // ENTRADA
            if (migestoria.empresas != null)
            {
                empresas = migestoria.empresas.Length;
                Byte.TryParse(empresas.ToString(), out tope);
                InterfazEmpresa.listadoEmpresas(migestoria, true);
                opcion  = CH.leerOpcionMsg(tope, "SELECCIONA UNA EMPRESA");
                empresa = migestoria.empresas[opcion - 1];

                // SALIDA
                CH.lcd(empresa.ToString());
            }
            else
            {
                CH.lcdColor("!> NO HAY NINGUNA EMPRESA CREADA!", ConsoleColor.DarkYellow);
            }
        }
Example #2
0
        /// <summary>
        /// Procedimiento para listar todos los trabajadore de una empresa. Recibe la Gestoría al completo y el indice de la empresa
        /// que queremos para mostrar los trabajadores. Podría hacerse solo con la lista de trabajadores...
        /// </summary>
        public static void listaTrabajadores(Gestora migestoria, byte empresa)
        {
            string cadena;

            CH.cls();
            cadena  = "";
            cadena += "\nLISTADO DE TRABAJADORES EMPRESA: " + migestoria.empresas[empresa - 1].nombre + "\n";
            cadena += "=================================";
            for (int i = 0; i < migestoria.empresas[empresa - 1].nombre.Length; i++)
            {
                cadena += "=";
            }
            cadena += "\n";
            Console.WriteLine(cadena);
            cadena = "";
            if (migestoria.empresas[empresa - 1].plantilla == null)
            {
                CH.lcdColor("i> LA EMPRESA ACTIVA TODAVÍA NO TIENE TRABAJADORES\n", ConsoleColor.Red);
            }
            else
            {
                Console.ForegroundColor = ConsoleColor.Blue;
                Console.WriteLine("{0} {1}{2} ", "APELLIDOS".PadRight(10), " NOMBRE".PadLeft(11), "D.N.I.  ".PadLeft(13));
                Console.ForegroundColor = ConsoleColor.White;



                foreach (Trabajador trabajador in migestoria.empresas[empresa - 1].plantilla)
                {
                    Console.WriteLine("{0} {1} {2}", trabajador.apellidos.PadRight(15), trabajador.nombre.PadRight(10), trabajador.dni.PadRight(10));
                }
                //Console.WriteLine(cadena);
            }
            ConsoleHelper.pausa();
        }
Example #3
0
        /// <summary>
        /// Procedimiento para modifiar el nombre de una empresa.
        /// <paramref name="migestoria">Recibe la Gestoria por referencia, ya que modificamos a pelo el nombre</paramref>
        /// </summary>
        private static void modificarEmpresa(ref Gestora migestoria)
        {
            // ZONA DE ATRIBUTOS
            int     opcion;
            int     empresas;
            byte    tope;
            Empresa empresa;

            // ENTRADA
            if (migestoria.empresas != null)
            {
                empresas = migestoria.empresas.Length;
                Byte.TryParse(empresas.ToString(), out tope);
                InterfazEmpresa.listadoEmpresas(migestoria, true);
                opcion  = CH.leerOpcionMsg(tope, "SELECCIONA UNA EMPRESA");
                empresa = migestoria.empresas[opcion - 1];
                // PROCESO
                empresa.nombre = CH.leerCadena("NUEVO NOMBRE EMPRESA..");
                // SALIDA
                CH.lcdColor("\ni> SE HA MODIFICADO CORRECTAMENTE EL NOMBRE DE LA EMPRESA", ConsoleColor.Green);
            }
            else
            {
                CH.lcdColor("!> NO HAY NINGUNA EMPRESA CREADA!", ConsoleColor.DarkYellow);
            }
        }
Example #4
0
        // ZONA DE MÉTODOS PUBLICOS PARA OPCIONES DE MENU
        /// <summary>
        /// Procedimiento para comenzar la funcion ...
        /// </summary>
        public static void comenzar()
        {
            // ESTO PARA COMPROBAR LA EXISTENCIA DE LOS ARCHIVOS DE CONFIGURACION
            // SI NO EXISTEN... LOS CREAMOS SEGUIDAMENTE...
            ControlerAdministracion.configCheck();


            // 1. CREAMOS NUESTRA GESTORIA
            // 2. MOSTRAMOS MENU
            // 3. PEDIMOS OPCION
            // 4. EVALUAMOS Y MOSTRAMOS MÓDULO
            // 5. CUANDO NOS JARTEMOS... > SALIR!

            // ZONA DE ATRIBITOS Y CONSTANTES
            const string NOMBRE_GESTORIA = "GESTIONES ACHARQUIA";
            bool         salir;
            int          opcion;
            Gestora      migestoria;

            // ENTRADA
            migestoria = new Gestora(NOMBRE_GESTORIA);
            opcion     = 0;
            salir      = false;
            // PROCESO
            do
            {
                InterfazGestoria.menu_principal(NOMBRE_GESTORIA);
                opcion = CH.leerOpcion(5);
                switch (opcion)
                {
                case 1:
                    ControlerEmpresa.menu_empresas(migestoria);
                    break;

                case 2:
                    ControlerTrabajador.menu_trabajadores(migestoria);
                    break;

                case 3:
                    ControlerNomina.menu_nominas(migestoria);
                    break;

                case 4:
                    ControlerAdministracion.menu_adminstracion();
                    break;

                case 5:
                    ControlerGestoria.modoDebug(migestoria);
                    CH.pausa();
                    break;

                case 0:
                    salir = true;
                    break;
                }
            } while (!salir);
            // SALIDA
            Console.WriteLine("\nBYE BYE!! .. MiK.. VUELVE PRONTO >:)\n");
        }
Example #5
0
        /// </summary>
        /// Procedimiento de carga de datos para Modo DEBUG
        /// <param name="migestoria">Recibe la gestoria </param>
        /// </summary>
        public static void modoDebug(Gestora migestoria)
        {
            // MODO DEBUG //
            // MODO DEBUG // -> NUTRIENDO DE DATOS PARA EL MODO DEBUG!!
            // MODO DEBUG //

            Nomina n1  = new Nomina("ARTURO", "PEREZ", "ENERO", 120, 12.0F);
            Nomina n2  = new Nomina("ARTURO", "PEREZ", "FEBRERO", 150, 12.0F);
            Nomina n3  = new Nomina("ARTURO", "PEREZ", "MARZO", 170, 12.0F);
            Nomina n4  = new Nomina("ARTURO", "PEREZ", "ABRIL", 200, 12.0F);
            Nomina n5  = new Nomina("ARTURO", "PEREZ", "MAYO", 240, 12.0F);
            Nomina n6  = new Nomina("ARTURO", "PEREZ", "JUNIO", 142, 12.0F);
            Nomina n7  = new Nomina("ARTURO", "PEREZ", "JULIO", 160, 12.0F);
            Nomina n8  = new Nomina("ARTURO", "PEREZ", "AGOSTO", 145, 12.0F);
            Nomina n9  = new Nomina("ARTURO", "PEREZ", "SEPTIEMBRE", 90, 12.0F);
            Nomina n10 = new Nomina("ARTURO", "PEREZ", "OCUBRE", 210, 12.0F);
            Nomina n11 = new Nomina("ARTURO", "PEREZ", "NOVIEMBRE", 100, 12.0F);
            Nomina n12 = new Nomina("ARTURO", "PEREZ", "DICIEMBRE", 136, 12.0F);
            Nomina n13 = new Nomina("MIGUEL", "CAMACHO", "ENERO", 136, 12.0F);
            Nomina n14 = new Nomina("MIGUEL", "CAMACHO", "FEBRERO", 146, 12.0F);

            Trabajador trabajador1 = new Trabajador("MIGUEL", "CAMACHO", "25020050Y");
            Trabajador trabajador2 = new Trabajador("ROSA", "LOPEZ", "25020050Y");
            Trabajador trabajador3 = new Trabajador("ARTURO", "PEREZ", "25020050Y");

            Empresa empresa  = new Empresa("CENEC", null);
            Empresa empresa2 = new Empresa("PANDORA", null);

            trabajador3.AgregarNomina(n1);
            trabajador3.AgregarNomina(n2);
            trabajador3.AgregarNomina(n3);
            trabajador3.AgregarNomina(n4);
            trabajador3.AgregarNomina(n5);
            trabajador3.AgregarNomina(n6);
            trabajador3.AgregarNomina(n7);
            trabajador3.AgregarNomina(n8);
            trabajador3.AgregarNomina(n9);
            trabajador3.AgregarNomina(n10);
            trabajador3.AgregarNomina(n11);
            trabajador3.AgregarNomina(n12);
            trabajador1.AgregarNomina(n13);
            trabajador1.AgregarNomina(n14);

            empresa.contratar(trabajador1);
            empresa.contratar(trabajador2);
            empresa2.contratar(trabajador3);

            migestoria.agregarEmpresa(empresa);
            migestoria.agregarEmpresa(empresa2);

            CH.lcdColor("\ni> CARGA DE DATOS COMPLETADA", ConsoleColor.Green);
        }
Example #6
0
        /// <summary>
        /// Método para eliminar una empresa de la gestoria.
        /// <paramref name="migestoria">Recibe la gestoria entera</paramref>
        /// </summary>
        public static bool borrarEmpresa(Gestora migestoria)
        {
            // 1. LISTAR EMPRESAS
            // 2. SELECCIONAR EMPRESA
            // 3. BORRAR EMPRESA

            bool    borrada;
            byte    opcion;
            byte    tope;
            int     empresas;
            Empresa empresa;
            string  mensaje;

            // ENTRADA
            mensaje = "";
            borrada = false;

            // PROCESO
            if (migestoria.empresas != null)
            {
                empresas = migestoria.empresas.Length;
                Byte.TryParse(empresas.ToString(), out tope);
                InterfazEmpresa.listadoEmpresas(migestoria, true);
                opcion  = CH.leerOpcionMsg(tope, "SELECCIONA UNA EMPRESA DE LA LISTA");
                empresa = migestoria.empresas[opcion - 1];
                if (migestoria.eliminarEmpresa(empresa))
                {
                    mensaje = "\ni> SE HA ELIMINADO CORRECTAMENTE LA EMPRESA DE LA GESTORIA";
                    borrada = true;
                }
                else
                {
                    mensaje = "\n!> ERROR!! ... ALGO HA PASADO QUE LA COSA NO HA SALIDO MUY BIEN";
                }
            }
            else
            {
                mensaje = "\n!> NO HAY NINGUA EMPRESA EN LA GESTORIA!";
            }

            // SALIDA
            if (borrada)
            {
                CH.lcdColor(mensaje, ConsoleColor.Green);
            }
            else
            {
                CH.lcdColor(mensaje, ConsoleColor.Red);
            }

            return(borrada);
        }
Example #7
0
        /// <summary>
        /// Procedimiento para listar las empresas de la gestoria, con o sin indices
        /// <paramref name="indices">True o False para indicar si queremos indices o no</paramref>
        /// <paramref name="migestoria">La Gestoria</paramref>
        /// </summary>
        public static void listadoEmpresas(Gestora migestoria, bool indices)
        {
            int    indice;
            int    trabajadores;
            string salida;

            indice       = 1;
            trabajadores = 0;
            salida       = "\nLISTADO DE EMPRESAS\n===================\n";
            CH.lcd(salida);
            Console.ForegroundColor = ConsoleColor.Blue;
            if (indices)
            {
                Console.WriteLine("{0}{1}{2}", "ID".PadRight(5), "NOMBRE".PadRight(15), "TRABAJADORES");
            }
            else
            {
                Console.WriteLine("{0}{1}", "NOMBRE".PadRight(15), "TRABAJADORES");
            }
            Console.ForegroundColor = ConsoleColor.White;
            salida = "";

            if (migestoria.empresas != null)
            {
                if (migestoria.empresas.Length > 0)
                {
                    for (int i = 0; i < migestoria.empresas.Length; i++)
                    {
                        if (migestoria.empresas[i].plantilla != null)
                        {
                            trabajadores = migestoria.empresas[i].plantilla.Length;
                        }
                        if (indices)
                        {
                            Console.WriteLine("{0}{1}{2}", indice.ToString().PadRight(5), migestoria.empresas[i].nombre.PadRight(15), trabajadores);
                        }
                        else
                        {
                            Console.WriteLine("{0}{1}", migestoria.empresas[i].nombre.PadRight(15), trabajadores);
                        }
                        indice++;
                        trabajadores = 0;
                    }
                }
            }
            else
            {
                salida += "\n!> NO HAY NINGUNA EMPRESA REGISTRADA, MELÓN!!";
            }
            CH.lcdColor(salida, ConsoleColor.Red);
            //ConsoleHelper.pausa();
        }
Example #8
0
        /// <summary>
        /// Procedimiento para mostrar el menu de opciones seccion 3. Trabajadores
        /// <paramref name="migestoria">Recibe la Gestoria por referencia</paramref>
        /// </summary>
        public static void menu_trabajadores(Gestora migestoria)
        {
            if (migestoria.empresas != null)
            {
                bool salir         = false; // CONTROL DE SALIDA MENU
                byte opcion        = 0;     // LA OPCIÓN DE MENÚ ELEGIDA
                byte empresaActiva = 0;     // GUARDARA LA EMPRESA SOBRE LA CUAL SE GESTIONAN LOS TRABAJADORES

                do                          // MIENTRAS NO DIGAMOS QUE QUEREMOS SALIR.... HACER ESTO...
                {
                    // SI NO HAY EMPRESA ACTIVCA, LA PEDIMOS Y MOSTRAMOS MENU
                    if (empresaActiva == 0)
                    {
                        empresaActiva = InterfazTrabajador.pedirEmpresa(migestoria);
                    }
                    InterfazTrabajador.menuTrabajador(empresaActiva, migestoria);
                    opcion = CH.leerOpcion(5);
                    switch (opcion)
                    {
                    case 1:         // REGISTRAR TRABAJADOR
                        ControlerTrabajador.nuevoTrabajador(migestoria, empresaActiva);
                        break;

                    case 2:         // CONSULTAR TRABAJADOR
                        ControlerTrabajador.consultarTrabajador(migestoria, empresaActiva);
                        break;

                    case 3:         // MODIFICAR TRABAJADOR
                        ControlerTrabajador.modificarTrabajador(ref migestoria, empresaActiva);
                        break;

                    case 4:         // ELIMINAR TRABAJADOR
                        ControlerTrabajador.despedirTrabajador(ref migestoria, empresaActiva);
                        break;

                    case 5:         // CONSULTAR TRABAJADORES
                        InterfazEmpresa.listaTrabajadores(migestoria, empresaActiva);
                        break;

                    case 0:         // SALIR
                        salir = true;
                        break;
                    }
                } while (!salir);
            }
            else
            {
                CH.lcdColor("\n!> NO HAY NINGUNA 'EMPRESA' EN LA GESTORÍA COMO PARA TENER TRABAJADORES QUE GESTIONAR...\ni> CRÉA ALGUNA Y CONTRATA!!, BONIKO", ConsoleColor.Red);
                CH.pausa();
            }
        }
Example #9
0
        /// <summary>
        /// Procedimiento para mostrar el menu de opciones sección 1. empresas
        /// <paramref name="migestoria">Recibe la gestoria</paramref>
        /// </summary>
        public static void menu_empresas(Gestora migestoria)
        {
            // ZONA DE ATRIBUTOS E INICIALIZACIÓN
            bool salir;     // CONTROL DE SALIDA DEL MENU
            int  opcion;    // OPCION DEL MENU ELEGIDA

            // ENTRADA
            salir  = false;
            opcion = 0;
            // PROCESO
            do
            {
                InterfazEmpresa.menu_empresa();
                opcion = CH.leerOpcion(5);
                switch (opcion)
                {
                case 1:
                    ControlerEmpresa.nuevaEmpresa(migestoria);
                    break;

                case 2:
                    ControlerEmpresa.consultarEmpresa(migestoria);
                    CH.pausa();
                    break;

                case 3:
                    ControlerEmpresa.modificarEmpresa(ref migestoria);
                    CH.pausa();
                    break;

                case 4:
                    ControlerEmpresa.borrarEmpresa(migestoria);
                    CH.pausa();
                    break;

                case 5:
                    InterfazEmpresa.listadoEmpresas(migestoria, false);
                    CH.pausa();
                    break;

                case 0:
                    //Console.WriteLine("\nBYE BYE!! .. MiK.. VUELVE PRONTO :)\n");
                    salir = true;
                    break;
                }
            } while (!salir);

            // SALIDA
        }
Example #10
0
        public static byte seleccionarTrabajador(Gestora migestoria, byte empresa)
        {
            string cadena = null;
            byte   opcion;

            cadena += "\nLISTADO DE TRABAJADORES\n";
            cadena += "=======================\n";
            for (int i = 0; i < migestoria.empresas[empresa - 1].plantilla.Length; i++)
            {
                cadena += (i + 1) + ". " + migestoria.empresas[empresa - 1].plantilla[i].nombre + " " + migestoria.empresas[empresa - 1].plantilla[i].apellidos + "\n";
            }
            Console.WriteLine(cadena);
            opcion = ConsoleHelper.leerTrabajador((byte)migestoria.empresas[empresa - 1].plantilla.Length);
            return(opcion);
        }
Example #11
0
        /// <summary>
        /// Procedimiento para añadir un nuevo trabajador a la empresa activa.. Pdría recibir sólo la empresa activa. >> V2.0
        /// <paramref name="empresaActiva">El indice de la empresa activa para gestionar sus trajadores</paramref>
        /// <paramref name="migestoria">Le Gestoria con todas las empresa</paramref>
        public static void nuevoTrabajador(Gestora migestoria, byte empresaActiva)
        {
            // 1. PEDIR DATOS TRABAJADOR.
            // 2. AÑADIR AL ARRAY DE TRABAJADORES DE LA EMPRESA ACTIVA!

            Console.WriteLine("i> TU MANDAS, AMO... VAMOS A CONTRATAR UN NUEVO TRABAJADOR");

            Trabajador trabajador = new Trabajador();

            trabajador = InterfazTrabajador.pedirTrabajador();
            migestoria.empresas[empresaActiva - 1].contratar(trabajador);

            CH.lcdColor("\ni> SE HA REGISTRADO AL TRABAJADOR CORRECTAMENTE EN LA EMPRESA!", ConsoleColor.Green);
            ConsoleHelper.pausa();
        }
Example #12
0
        /// <summary>
        /// Procedimiento para modificar los datos de un trabajador.. Mejorar listando campos a modificar en lugar de uno por uno >> V2.0
        /// <paramref name="empresaActiva">El indice de la empresa activa para gestionar sus trajadores</paramref>
        /// <paramref name="migestoria">Le Gestoria con todas las empresa</paramref>
        public static void modificarTrabajador(ref Gestora migestoria, byte empresaActiva)
        {
            byte opcion = 0;

            InterfazTrabajador.listarTrabajadores(migestoria.empresas[empresaActiva - 1]);
            if (migestoria.empresas[empresaActiva - 1].plantilla != null)
            {
                opcion = InterfazTrabajador.leerOpcionTrabajadorOp((byte)migestoria.empresas[empresaActiva - 1].plantilla.Length, "MODIFICAR");
                if (opcion != 0)
                {
                    InterfazTrabajador.modificarTrabajador(ref migestoria.empresas[empresaActiva - 1].plantilla[opcion - 1]);
                }
            }
            ConsoleHelper.pausa();
        }
Example #13
0
        public static void menuTrabajador(byte empresa, Gestora migestoria)
        {
            ConsoleHelper.cls();
            string cadena = null;

            cadena += "\n+======================+\n";
            cadena += "| MENU DE TRABAJADORES |\n";
            cadena += "+======================+\n\n";
            cadena += "*> EMPRESA: " + empresa + ". " + migestoria.empresas[empresa - 1].nombre + " <*\n";
            CH.lcdColor(cadena, ConsoleColor.Cyan);
            cadena  = "1. REGISTRAR TRABAJADOR\n";
            cadena += "2. CONSULTAR TRABAJADOR\n";
            cadena += "3. MODIFICAR TRABAJADOR\n";
            cadena += "4. DESPEDIR TRABAJADOR\n\n";
            cadena += "5. LISTAR TRABAJADORES\n\n";
            cadena += "0. << GORVER <<\n";
            Console.WriteLine(cadena);
        }
Example #14
0
        /// <summary>
        /// Procedimiento para consultar los datos de una nómida de un trabajador.
        /// <paramref name="empresaActiva">El indice de la empresa activa para gestionar sus trajadores</paramref>
        /// <paramref name="migestoria">Le Gestoria con todas las empresa</paramref>
        public static void consultarTrabajador(Gestora migestoria, byte empresaActiva)
        {
            byte opcion;

            opcion = 0;

            InterfazTrabajador.listarTrabajadores(migestoria.empresas[empresaActiva - 1]);
            if (migestoria.empresas[empresaActiva - 1].plantilla != null)
            {
                opcion = InterfazTrabajador.leerOpcionTrabajadorOp((byte)migestoria.empresas[empresaActiva - 1].plantilla.Length, "VER");
                if (opcion != 0)
                {
                    InterfazTrabajador.muestraDatosTrabajador(migestoria.empresas[empresaActiva - 1], opcion);
                }
            }

            ConsoleHelper.pausa();
        }
Example #15
0
        /// <summary>
        /// Procedimiento para mostar el menu principal para la gestión de nóminas, previa seleccion
        /// de empresa y trabajador
        /// <paramref name="empresa">La empresa activa con los trabajadores</paramref>
        /// <paramref name="trabajador">El trabajador Activo...</paramref>
        /// <paramref name="migestoria">La getoria entera ... ?!?!</paramref>
        /// </summary>
        public static void menuNomina(byte empresa, byte trabajador, Gestora migestoria)
        {
            string salida;

            CH.cls();
            salida  = "\n";
            salida += "+---------------------+\n";
            salida += "|   MENU DE NÓMINAS   |\n";
            salida += "+---------------------+\n\n";
            salida += "*> EMPRESA.: " + empresa + ". " + migestoria.empresas[empresa - 1].nombre + " <*\n";
            salida += "*> EMPLEADO: " + trabajador + ". " + migestoria.empresas[empresa - 1].plantilla[trabajador - 1].nombre
                      + " " + migestoria.empresas[empresa - 1].plantilla[trabajador - 1].apellidos + " <*\n";
            CH.lcdColor(salida, ConsoleColor.Cyan);
            salida  = "1. AÑADIR UNA NOMINA\n";
            salida += "2. CONSULTAR NOMINA\n";
            salida += "3. MODIFICAR NOMINA\n";
            salida += "4. ELIMINAR NOMINA\n\n";
            salida += "5. LISTAR NOMINAS\n\n";
            salida += "0. << GORVER <<\n";
            CH.lcd(salida);
        }
Example #16
0
        /// <summary>
        /// Procedimiento para elminar un trabador.
        /// <paramref name="empresaActiva">El indice de la empresa activa para gestionar sus trajadores</paramref>
        /// <paramref name="migestoria">Le Gestoria con todas las empresa</paramref>
        public static void despedirTrabajador(ref Gestora migestoria, byte empresaActiva)
        {
            // 1. LISTAR TRABAJADORES CON INDICE
            // 2. PEDIR TRABAJADOR
            // 3. ELIMINAR TRABAJADOR > MÉTODO .despedir MODELO Trabajador
            byte opcion = 0;

            InterfazTrabajador.listarTrabajadores(migestoria.empresas[empresaActiva - 1]);
            if (migestoria.empresas[empresaActiva - 1].plantilla != null)
            {
                opcion = InterfazTrabajador.leerOpcionTrabajadorOp((byte)migestoria.empresas[empresaActiva - 1].plantilla.Length, "ELIMINAR");
                if (opcion != 0)
                {
                    Trabajador trabajador = migestoria.empresas[empresaActiva - 1].plantilla[opcion - 1];
                    if (migestoria.empresas[empresaActiva - 1].despedir(trabajador))
                    {
                        CH.lcdColor("i> SE HA DESPEDIDO AL TRABAJADOR!", ConsoleColor.Red);
                    }
                }
            }
            ConsoleHelper.pausa();
        }
Example #17
0
        /// <summary>
        /// Procedimiento para agregar una nueva empresa al listado de empresas de la Gestoria
        /// <paramref name="migestoria">La Estructura Gestoria por referencia</paramref>
        /// </summary>
        public static void nuevaEmpresa(Gestora migestoria)
        {
            // 1. PEDIR LOS DATOS DE LA EMPRESA
            // 2. SI NO EXISTE ESTRUCTURA EMPRESA, LA CREO
            // 3. SI EXISTE, AÑADO. SE COMPRUEBA EN EL MÉTODO AGREGAR
            string  aux;
            Empresa empresa;

            // ENTRADA
            CH.lcd("i> SI, AMO... VAMOS A CREAR UNA NUEVA EMPRESA\n");
            empresa = null;
            aux     = null;
            // PROCESO
            aux     = InterfazEmpresa.leerEmpresa();
            empresa = new Empresa(aux);
            if (migestoria.agregarEmpresa(empresa))
            {
                aux = "\ni> SE HA CREADO UNA NUEVA EMPRESA Y AGREGADO A LA GESTORIA";
            }
            // SALIDA
            CH.lcdColor(aux, ConsoleColor.Green);
            CH.pausa();
        }
Example #18
0
        public static byte pedirEmpresa(Gestora migestoria)
        {
            string cadena       = null;
            int    trabajadores = 0;
            byte   opcion;

            cadena += "\nLISTADO DE EMPRESAS\n";
            cadena += "===================\n";
            for (int i = 0; i < migestoria.empresas.Length; i++)
            {
                if (migestoria.empresas[i].plantilla == null)
                {
                    trabajadores = 0;
                }
                else
                {
                    trabajadores = migestoria.empresas[i].plantilla.Length;
                }
                cadena += (i + 1) + ". " + migestoria.empresas[i].nombre + " | TRABAJADORES: " + trabajadores + "\n";
            }
            Console.WriteLine(cadena);
            opcion = ConsoleHelper.leerEmpresa((byte)migestoria.empresas.Length);
            return(opcion);
        }
Example #19
0
        // MÉTODO PARA MOSTRAR EL MENU DE NOMINAS. RECIBE LA GESTORIA POR REFERENCIA
        // PARA PODER APLICARLE LOS CAMIOS QUE SE REALIZEN

        /// <summary>
        /// Procedimiento para mostrar el menu principal para gestión de nóminas
        /// <paramref name="migestoria">Recibe el objeto gestoria</paramref>
        /// </summary>
        public static void menu_nominas(Gestora migestoria)
        {
            if (migestoria.empresas != null)
            {
                // 1. PEDIR EMPRESA
                // 2. PEDIR TRABAJADOR
                // 3. MOSTRAR MENU NOMINAS

                bool salir            = false; // FLAG PARA SALIR DEL PROGRAMA
                int  opcion           = 0;     // OPCIÓN ELEGIDA DEL MENU
                byte empresaActiva    = 0;     // EMPRESA DE TRABAJO SELECCIONADA
                byte trabajadorActivo = 0;     // TRABAJADOR ACTIVO SELECCIONADO


                do
                {
                    if (empresaActiva == 0)
                    {
                        empresaActiva = InterfazTrabajador.pedirEmpresa(migestoria);
                    }
                    if (migestoria.empresas[empresaActiva - 1].plantilla != null)
                    {
                        //InterfazTrabajador.menuTrabajador(empresaActiva, migestoria);
                        if (trabajadorActivo == 0)
                        {
                            trabajadorActivo = InterfazTrabajador.seleccionarTrabajador(migestoria, empresaActiva);
                        }
                        InterfazNomina.menuNomina(empresaActiva, trabajadorActivo, migestoria);
                        opcion = ConsoleHelper.leerOpcion(5);
                        Trabajador trabajador = migestoria.empresas[empresaActiva - 1].plantilla[trabajadorActivo - 1];
                        switch (opcion)
                        {
                        case 1:
                            ControlerNomina.pedirNomina(ref trabajador);
                            break;

                        case 2:
                            ControlerNomina.consultarDatosNomina(trabajador);
                            ConsoleHelper.pausa();
                            break;

                        case 3:
                            ControlerNomina.modificarNomina(ref trabajador);
                            ConsoleHelper.pausa();
                            break;

                        case 4:
                            ControlerNomina.eliminarNomina(ref trabajador);
                            break;

                        case 5:
                            ControlerNomina.listadoNominas(migestoria.empresas[empresaActiva - 1].plantilla[trabajadorActivo - 1]);
                            ConsoleHelper.pausa();
                            break;

                        case 0:
                            //Console.WriteLine("\nBYE BYE!! .. MiK.. VUELVE PRONTO :)\n");
                            salir = true;
                            break;
                        }
                    }
                    else
                    {
                        CH.lcdColor("\n!> ¡¡NO HAY NINGUN TRABAJADOR EN LA EMPRESA ACTIVA!!...\n!> CONTRATA ALGUIEN, RATA", ConsoleColor.Red);
                        CH.pausa();
                        salir = true;
                    }
                } while (!salir);
            }
            else
            {
                CH.lcdColor("\n!> NO HAY NINGUNA 'EMPRESA' EN LA GESTORÍA...\ni> CRÉA ALGUNA Y CONTRATA!!, BONIKO", ConsoleColor.Red);
                CH.pausa();
            }
        }