public static void Main(string[] args) { Console.WriteLine("Desea Cargar la Informacion de la Empresa?"); Console.WriteLine("1 -> Si, deseo cargar un archivo\n" + "2 -> No, Ingresare los datos manualmente\n"); int op = Numero(2); if (op == 2) { serial(crear_empresa()); } else if (op == 1) { Console.Clear(); Empresa empresa = deserial(); Console.WriteLine("NOMBRE EMPRESA: " + empresa.Name); if (empresa.Lista_areas.Count() != 0) { foreach (Area area in empresa.Lista_areas) { area.Info_area(); foreach (Departamento depto in area.Lista_departamentos) { depto.Info_depto(); foreach (Seccion seccion in depto.Lista_secciones) { seccion.Info_seccion(); foreach (Bloque bloque in seccion.Lista_bloquess) { bloque.Info_bloque(); } } } } } else if (empresa.Lista_dptos.Count() != 0) { foreach (Departamento depto in empresa.Lista_dptos) { depto.Info_depto(); foreach (Seccion seccion in depto.Lista_secciones) { seccion.Info_seccion(); foreach (Bloque bloque in seccion.Lista_bloquess) { bloque.Info_bloque(); } } } } else if (empresa.Lista_secciones.Count() != 0) { foreach (Seccion seccion in empresa.Lista_secciones) { seccion.Info_seccion(); foreach (Bloque bloque in seccion.Lista_bloquess) { bloque.Info_bloque(); } } } else { foreach (Bloque bloque in empresa.Lista_bloques) { bloque.Info_bloque(); } } serial(empresa); Console.ReadKey(); } }
public static Empresa crear_empresa() { Console.Clear(); Console.WriteLine("Ingrese el nombre de la Empresa:"); string nombre = Palabra(); Console.WriteLine("Ingrese el RUT de la Empresa:"); int rut = Numero(999999999); Empresa empresa = new Empresa(nombre, rut); Console.WriteLine("Cual es la mayor Division que posee su empresa:\n" + "1 -> Area\n" + "2 -> Departamento\n" + "3 -> Seccion\n" + "4 -> Bloque\n"); int div = Numero(4); int seg, w; switch (div) { case 1: w = 0; do { Console.Clear(); Console.WriteLine("Ingrese el nombre de un Area:"); string ar = Palabra(); Console.WriteLine("Ingrese el Rut del encargado de Area:"); int id = Numero(999999999); do { foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Area area = new Area(ar, p); empresa.Lista_areas.Add(area); w = 1; break; } } break; } while (w != 1); if (w != 1) { Console.WriteLine("\n====Rut incorrecto, posiblemente el empleado ingresado aun no ha sido registrado====\n" + "Registre al Empleado:"); empresa.agregar_personal(); foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Area area = new Area(ar, p); empresa.Lista_areas.Add(area); w = 1; break; } } } Console.WriteLine("Si agregar otra area ingrese 1 de lo contrario ingrese 2"); seg = Numero(2); } while (seg != 2); break; case 2: w = 0; do { Console.Clear(); Console.WriteLine("Ingrese el nombre de un Departamento:"); string ar = Palabra(); Console.WriteLine("Ingrese el Rut del encargado de Departamento:"); int id = Numero(999999999); do { foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Departamento d = new Departamento(ar, p); empresa.Lista_dptos.Add(d); w = 1; break; } } break; } while (w != 1); if (w != 1) { Console.WriteLine(" \n====Rut incorrecto, posiblemente el empleado ingresado aun no ha sido registrado ====\n" + "Registre al Empleado:"); empresa.agregar_personal(); foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Departamento d = new Departamento(ar, p); empresa.Lista_dptos.Add(d); w = 1; break; } } } Console.WriteLine("Si desea agregar otro Departamento ingrese 1 de lo contrario ingrese 2"); seg = Numero(2); } while (seg != 2); break; case 3: w = 0; do { Console.Clear(); Console.WriteLine("Ingrese el nombre de un Seccion:"); string ar = Palabra(); Console.WriteLine("Ingrese el Rut del encargado de Seccion:"); int id = Numero(999999999); do { foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Seccion s = new Seccion(ar, p); empresa.Lista_secciones.Add(s); w = 1; break; } } break; } while (w != 1); if (w != 1) { Console.WriteLine(" \n====Rut incorrecto, posiblemente el empleado ingresado aun no ha sido registrado ====\n" + "Registre al Empleado:"); empresa.agregar_personal(); foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Seccion s = new Seccion(ar, p); empresa.Lista_secciones.Add(s); w = 1; break; } } } Console.WriteLine("Si desea agregar otra Seccion ingrese 1 de lo contrario ingrese 2"); seg = Numero(2); } while (seg != 2); break; case 4: w = 0; do { Console.WriteLine("Ingrese el nombre de un Bloque:"); string ar = Palabra(); Console.WriteLine("Ingrese el Rut del encargado de Bloque:"); int id = Numero(999999999); do { foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Bloque area = new Bloque(ar, p); empresa.Lista_bloques.Add(area); Console.Clear(); Console.WriteLine("Debe Ingresar el Personal que trabaja en el Bloque"); empresa.agregar_per_bloque(area); w = 1; break; } } break; } while (w != 1); if (w != 1) { Console.WriteLine("\n====Rut incorrecto, posiblemente el empleado ingresado aun no ha sido registrado====\n" + "Registre al Empleado:"); empresa.agregar_personal(); foreach (Persona p in empresa.Personal_empresa) { if (p.rut == id) { Bloque area = new Bloque(ar, p); empresa.Lista_bloques.Add(area); Console.Clear(); Console.WriteLine("Debe Ingresar el Personal que trabaja en el Bloque"); empresa.agregar_per_bloque(area); w = 1; break; } } } Console.WriteLine("Si desea agregar otro Bloque ingrese 1 de lo contrario ingrese 2"); seg = Numero(2); } while (seg != 2); break; } if (div == 1) { Console.Clear(); Console.WriteLine("Debe agregar los Departamentos de cada area."); List <string> nom_area = new List <string>(); int num = 1; foreach (Area aa in empresa.Lista_areas) { nom_area.Add(aa.name); num++; } int num_select = 1; string criterio; while (num_select <= num) { Console.WriteLine("Seleccione un area:"); criterio = "\0"; criterio = ShowOptions(nom_area); nom_area.Remove(criterio); Console.WriteLine("ENTRE--------------------------------"); foreach (Area area in empresa.Lista_areas) { if (area.name == criterio) { empresa.agregar_depto(area); Console.Clear(); Console.WriteLine("Debe agregar las Secciones de cada Departamento."); List <string> nom_depto = new List <string>(); num = 1; foreach (Departamento dd in area.Lista_departamentos) { nom_depto.Add(dd.name); num++; } num_select = 1; while (num_select <= num) { Console.WriteLine("Seleccione un Departamento:"); criterio = "\0"; criterio = ShowOptions(nom_depto); nom_depto.Remove(criterio); foreach (Departamento dpto in area.Lista_departamentos) { if (dpto.name == criterio) { empresa.agregar_seccion(dpto); Console.Clear(); Console.WriteLine("Debe agregar los Bloques de cada Seccion."); List <string> nom_sec = new List <string>(); num = 1; foreach (Seccion ss in dpto.Lista_secciones) { nom_sec.Add(ss.name); num++; } num_select = 1; while (num_select <= num) { Console.WriteLine("Seleccione una Seccion:"); criterio = "\0"; criterio = ShowOptions(nom_sec); nom_sec.Remove(criterio); foreach (Seccion se in dpto.Lista_secciones) { if (se.name == criterio) { empresa.agregar_bloque(se); } } if (nom_sec.Count() == 0) { break; } num_select++; } } } if (nom_depto.Count() == 0) { break; } num_select++; } } } if (nom_area.Count() == 0) { break; } num_select++; } Console.Clear(); } else if (div == 2) { Console.Clear(); Console.WriteLine("Debe agregar las Secciones de cada Departamento."); List <string> nom_depto = new List <string>(); int num = 1; foreach (Departamento depto in empresa.Lista_dptos) { nom_depto.Add(depto.name); num++; } int num_select = 1; while (num_select <= num) { Console.WriteLine("Seleccione un Departamento:"); string criterio = "\0"; criterio = ShowOptions(nom_depto); nom_depto.Remove(criterio); foreach (Departamento dpto in empresa.Lista_dptos) { if (dpto.name == criterio) { empresa.agregar_seccion(dpto); serial(empresa); serial(dpto); Console.Clear(); Console.WriteLine("Debe agregar los Bloques de cada Seccion."); List <string> nom_sec = new List <string>(); num = 1; foreach (Seccion seccion in dpto.Lista_secciones) { nom_sec.Add(seccion.name); num++; } num_select = 1; while (num_select <= num) { Console.WriteLine("Seleccione una Seccion:"); criterio = "\0"; criterio = ShowOptions(nom_sec); nom_sec.Remove(criterio); foreach (Seccion se in dpto.Lista_secciones) { if (se.name == criterio) { empresa.agregar_bloque(se); serial(empresa); serial(se); } serial(empresa); } num_select++; } } serial(empresa); } num_select++; } serial(empresa); } else if (div == 3) { Console.Clear(); Console.WriteLine("Debe agregar los Bloques de cada Seccion."); List <string> nom_sec = new List <string>(); int num = 1; foreach (Seccion seccion in empresa.Lista_secciones) { nom_sec.Add(seccion.name); serial(empresa); num++; } int num_select = 1; while (num_select <= num) { Console.WriteLine("Seleccione una Seccion:"); string criterio = "\0"; criterio = ShowOptions(nom_sec); nom_sec.Remove(criterio); foreach (Seccion se in empresa.Lista_secciones) { if (se.name == criterio) { empresa.agregar_bloque(se); serial(empresa); serial(se); } serial(empresa); } num_select++; } } return(empresa); }