static void GuardarEmpresa() { Console.WriteLine("Nombre de la empresa: "); string nombre = Console.ReadLine(); Console.WriteLine("Rut de la empresa: "); string rut = Console.ReadLine(); Empresa empresa = new Empresa(nombre, rut); List <List <string> > personasAsignar = new List <List <string> >(); personasAsignar.Add(new List <string>(new string[] { "Rodrigo", "Guzman", "20.164.752-5" })); personasAsignar.Add(new List <string>(new string[] { "Pedro", "Perez", "13.421.376-3" })); personasAsignar.Add(new List <string>(new string[] { "Javier", "Gonzales", "9.462.204-5" })); personasAsignar.Add(new List <string>(new string[] { "Sofia", "Soto", "18.638.097-k" })); personasAsignar.Add(new List <string>(new string[] { "Javiera", "Opazo", "19.954.285-k" })); personasAsignar.Add(new List <string>(new string[] { "Felipe", "Alcalde", "21.488.213-8" })); personasAsignar.Add(new List <string>(new string[] { "Maximiliano", "Gross", "17.841.552-4" })); personasAsignar.Add(new List <string>(new string[] { "Nicolas", "Vial", "11.245.899-3" })); Random rnd = new Random(); for (int i = 0; i < 4; i++) { int numero = rnd.Next(0, personasAsignar.Count); if (i == 0) { Departamento departamento = new Departamento("Departamento 1", new Persona(personasAsignar[numero][0], personasAsignar[numero][1], personasAsignar[numero][2], "Jefe de Departamento")); empresa.divisiones.Add(departamento); personasAsignar.RemoveAt(numero); } if (i == 1) { Seccion seccion = new Seccion("Seccion 1", new Persona(personasAsignar[numero][0], personasAsignar[numero][1], personasAsignar[numero][2], "Jefe de Seccion")); empresa.divisiones.Add(seccion); personasAsignar.RemoveAt(numero); } if (i == 2 || i == 3) { Bloque bloque = new Bloque("Bloque " + (i - 1), new Persona(personasAsignar[numero][0], personasAsignar[numero][1], personasAsignar[numero][2], "Jefe de Bloque")); personasAsignar.RemoveAt(numero); numero = rnd.Next(0, personasAsignar.Count); bloque.personal.Add(new Persona(personasAsignar[numero][0], personasAsignar[numero][1], personasAsignar[numero][2], "Personal")); personasAsignar.RemoveAt(numero); numero = rnd.Next(0, personasAsignar.Count); bloque.personal.Add(new Persona(personasAsignar[numero][0], personasAsignar[numero][1], personasAsignar[numero][2], "Personal")); personasAsignar.RemoveAt(numero); empresa.divisiones.Add(bloque); } } IFormatter formatter = new BinaryFormatter(); Stream stream = new FileStream("empresa.bin", FileMode.Create, FileAccess.Write, FileShare.None); formatter.Serialize(stream, empresa); stream.Close(); }
static void Main(string[] args) { Console.WriteLine("Desea utilizar el archivo para cargar la informacion de la empresa?"); Console.WriteLine("1. Si"); Console.WriteLine("2. No"); string respuesta = Console.ReadLine(); Console.Clear(); Empresa empresa = null; if (respuesta == "1") { try { empresa = Empresa.Load(); } catch { Console.WriteLine("No hay informacion guardada para cargar"); Thread.Sleep(2000); Console.Clear(); respuesta = "2"; } } if (respuesta == "2") { Console.WriteLine("Ingrese el nombre de la empresa:"); string Nombre = Console.ReadLine(); Console.WriteLine("Ingrese el rut de la empresa"); string Rut = Console.ReadLine(); empresa = new Empresa(Nombre, Rut); //Creamos los datos para la empresa (1 departamento con 1 encargado, 1 seccion con 1 encargado, 2 bloques con 1 encargado y 2 trabajadores cada uno) Departamento departamento = new Departamento("Produccion"); departamento.encargado = new Persona("Marcos", "Plaza", "8499564-9", "Director"); Seccion seccion = new Seccion("Ensamblaje"); seccion.encargado = new Persona("Fabian", "Casal", "14555241-9", "Supervisor"); Bloque bloque1 = new Bloque("Armadores"); bloque1.encargado = new Persona("Angel", "Fonseca", "7877346-4", "Encargado"); bloque1.trabajadores.Add(new Persona("Antonia", "Fuente", "5954871-9", "Armador1")); bloque1.trabajadores.Add(new Persona("Andres", "Pinto", "6773308-8", "Armador2")); Bloque bloque2 = new Bloque("Testers"); bloque2.encargado = new Persona("Stefan", "Pichara", "13040056-6", "Encargado"); bloque2.trabajadores.Add(new Persona("Paco", "Bellido", "12830816-4", "Tester1")); bloque2.trabajadores.Add(new Persona("Elena", "Moyano", "8323222-6", "Tester2")); //Agregamos cada seccion a la lista de la clase superior respectiva seccion.bloques.Add(bloque1); seccion.bloques.Add(bloque1); departamento.secciones.Add(seccion); empresa.divisiones.Add(departamento); empresa.divisiones.Add(seccion); empresa.divisiones.Add(bloque1); empresa.divisiones.Add(bloque2); Empresa.Save(empresa); } empresa.Info(); Console.ReadLine(); }
public static void Main() { bool value = false; while (!value) { Console.WriteLine("1- Si desea utilizar un archivo para cargar la informacion de su empresa 2- Ingresar datos manuales de mi empresa 3-Salir"); string opcion = Console.ReadLine(); switch (opcion) { case "1": try { Console.WriteLine("Leyendo empresa.bin"); Empresa.Deserializar("empresa.bin").Empresainformacion(); } catch (Exception) { Console.WriteLine("No se encontro la empresa, se solicitara de forma manual"); Console.WriteLine("Escriba el nombre de la empresa"); string nombre1 = Console.ReadLine(); Console.WriteLine("Escriba el rut de la empresa"); int rut1 = Convert.ToInt32(Console.ReadLine()); Empresa empresa1 = new Empresa(nombre1, rut1); Area area1 = new Area("Economia"); area1.Personaencargada = new Persona("Juan", "Perez", 193242006, "Gerente"); area1.Listadepersonas.Add(new Persona("Ivan", "Santivanez", 19078504, "Consejero")); Departamento departamento1 = new Departamento("Cuentas nacionales"); departamento1.Personaencargada = new Persona("Diana", "Lopez", 14572216, "Jefe"); departamento1.Listadepersonas.Add(new Persona("Pamela", "Vela", 14485792, "Senior")); area1.Departamentos.Add(departamento1); Seccion seccion1 = new Seccion("Gobierno"); seccion1.Personaencargada = new Persona("Agustin", "Fernandez", 19322466, "Jefe"); seccion1.Listadepersonas.Add(new Persona("James", "Mcgil", 14078905, "Coordinador")); departamento1.Secciones.Add(seccion1); Bloque bloque11 = new Bloque("Gobierno municipal"); bloque11.Personaencargada = new Persona("Diego", "Aviles", 145728, "Ayudante"); bloque11.Listadepersonas.Add(new Persona("Saul", "Godmas", 1234565, "Digitador")); Bloque bloque22 = new Bloque("Gobierno general"); bloque22.Personaencargada = new Persona("Javier", "Gonzalez", 1324458, "Ayudante"); bloque22.Listadepersonas.Add(new Persona("Kim", "Waxler", 1234565, "Digitador")); seccion1.Bloques.Add(bloque11); seccion1.Bloques.Add(bloque22); empresa1.Divisiones.Add(area1); empresa1.Divisiones.Add(departamento1); empresa1.Divisiones.Add(seccion1); empresa1.Divisiones.Add(bloque11); empresa1.Divisiones.Add(bloque22); Empresa.Serializar("empresa.bin", empresa1); empresa1.Empresainformacion(); } break; case "2": Console.WriteLine("Escriba el nombre de la empresa"); string nombre = Console.ReadLine(); Console.WriteLine("Escriba el rut de la empresa"); int rut = Convert.ToInt32(Console.ReadLine()); Empresa empresa = new Empresa(nombre, rut); Area area = new Area("Economia"); area.Personaencargada = new Persona("Juan", "Perez", 193242006, "Gerente"); area.Listadepersonas.Add(new Persona("Ivan", "Santivanez", 19078504, "Consejero")); Departamento departamento = new Departamento("Cuentas nacionales"); departamento.Personaencargada = new Persona("Diana", "Lopez", 14572216, "Jefe"); departamento.Listadepersonas.Add(new Persona("Pamela", "Vela", 14485792, "Senior")); area.Departamentos.Add(departamento); Seccion seccion = new Seccion("Gobierno"); seccion.Personaencargada = new Persona("Agustin", "Fernandez", 19322466, "Jefe"); seccion.Listadepersonas.Add(new Persona("James", "Mcgil", 14078905, "Coordinador")); departamento.Secciones.Add(seccion); Bloque bloque1 = new Bloque("Gobierno municipal"); bloque1.Personaencargada = new Persona("Diego", "Aviles", 145728, "Ayudante"); bloque1.Listadepersonas.Add(new Persona("Saul", "Godmas", 1234565, "Digitador")); Bloque bloque2 = new Bloque("Gobierno general"); bloque2.Personaencargada = new Persona("Javier", "Gonzalez", 1324458, "Ayudante"); bloque2.Listadepersonas.Add(new Persona("Kim", "Waxler", 1234565, "Digitador")); seccion.Bloques.Add(bloque1); seccion.Bloques.Add(bloque2); empresa.Divisiones.Add(area); empresa.Divisiones.Add(departamento); empresa.Divisiones.Add(seccion); empresa.Divisiones.Add(bloque1); empresa.Divisiones.Add(bloque2); Empresa.Serializar("empresa.bin", empresa); empresa.Empresainformacion(); break; case "3": value = true; break; } } }