private void AnaydirObra() { if (countObras <= TAM_MAX) { Console.WriteLine("Añadir Obra"); Console.WriteLine( "Que tipo de obra?, Pintura o Escultura"); string tipo = Console.ReadLine().ToUpper(); if (tipo != "PINTURA" && tipo != "ESCULTURA") { Console.WriteLine("tipo incorrecto"); } else { Console.WriteLine("Dime su autor"); string autor = Console.ReadLine(); Console.WriteLine("Dime su titulo"); string titulo = Console.ReadLine(); Console.WriteLine("Dime su fecha"); int anyo = Convert.ToInt32(Console.ReadLine()); if (tipo == "PINTURA") { Console.WriteLine("Dime la tecnica empleada"); string tecnica = Console.ReadLine(); obras[countObras] = new Pintura(autor, titulo, anyo, tecnica); } else if (tipo == "ESCULTURA") { Console.WriteLine("Dime el material"); string material = Console.ReadLine(); obras[countObras] = new Escultura( autor, titulo, anyo, material); } countObras++; } } else { Console.WriteLine("no cabe"); } }
private List <Escultura> GetDataFromExcel(string path, bool hasHeader = true) { using (var pck = new OfficeOpenXml.ExcelPackage()) { using (var stream = File.OpenRead(path)) { pck.Load(stream); } var ws = pck.Workbook.Worksheets.First(); var esculturas = new List <Escultura>(); //foreach (var firstRowCell in ws.Cells[1, 1, 1, ws.Dimension.End.Column]) //{ // tbl.Columns.Add(hasHeader ? firstRowCell.Text : string.Format(“Column { 0}”, firstRowCell.Start.Column)); //} var startRow = hasHeader ? 2 : 1; for (int rowNum = startRow; rowNum <= ws.Dimension.End.Row; rowNum++) { var wsRow = ws.Cells[rowNum, 1, rowNum, ws.Dimension.End.Column]; var rowData = (object[, ])wsRow.Value; var escultura = new Escultura() { Numero = Convert.ToInt32(rowData[0, (int)EsculturaExcelColumEnum.Numero]), Nombre = DataToString(rowData, EsculturaExcelColumEnum.Nombre), Escultor = new Escultor(DataToString(rowData, EsculturaExcelColumEnum.Escultor)), Material = DataToString(rowData, EsculturaExcelColumEnum.Material), Direccion = DataToString(rowData, EsculturaExcelColumEnum.Direccion), Coordenada = new Coordenada(DataToString(rowData, EsculturaExcelColumEnum.Coordenada)), Premios = DataToString(rowData, EsculturaExcelColumEnum.Premios) }; esculturas.Add(escultura); } return(esculturas); } }
public void Ejecutar() { const int CANT_EMPL = 1000; const int CANT_OBRAS = 5000; Empleado[] e = new Empleado[CANT_EMPL]; Obra[] o = new Obra[CANT_OBRAS]; e[0] = new EmpleadoEnPlantilla(1, "Manuel", "Limpieza"); e[1] = new EmpleadoEnPlantilla(2, "Luisa", "Seguridad"); o[0] = new Pintura( "Anónimo", "Pintura anónima bonita", 2000, "Brocha gorda"); o[1] = new Escultura( "Clase 5 años A", "Camión con plastilina", 2017, "Plastilina"); int contadorEmpl = 2; int contadorObras = 2; int opcion; do { MostrarMenu(); opcion = Convert.ToInt32(Console.ReadLine()); Console.WriteLine(); switch (opcion) { case 1: if (contadorEmpl <= CANT_EMPL) { e[contadorEmpl] = NuevoEmpleado(1); contadorEmpl++; } else { Console.WriteLine("Base de datos de empleados llena"); } break; case 2: if (contadorEmpl <= CANT_EMPL) { e[contadorEmpl] = NuevoEmpleado(2); contadorEmpl++; } else { Console.WriteLine("Base de datos de empleados llena"); } break; case 3: BuscarEmpleado(contadorEmpl, e); break; case 4: if (contadorObras <= CANT_OBRAS) { o[contadorObras] = NuevaObra(); contadorObras++; } else { Console.WriteLine("Base de datos de empleados llena"); } break; case 5: BuscarObra(contadorObras, o); break; case 0: Console.WriteLine("Hasta otra!"); break; default: Console.WriteLine("Opción incorrecta"); break; } Console.WriteLine(); } while (opcion != 0); }