//-----------------------DISPONIBILIDAD (VEHICULOS SIN TRANSPORTES EN EL FUTURO)-------------------------------- /// <summary> /// Muestra los vehiculos disponibles y los saca por pantalla /// </summary> /// <returns> Lista de Flota con los vehiculos disponibles </returns> public ColeccionVehiculos Disponibilidad() { var actual = DateTime.Now; Console.WriteLine("\n\nVEHICULOS DISPONIBLES\n"); var vehiculosDisponible = new ColeccionVehiculos(); foreach (var v in ColeccionVehiculos) { vehiculosDisponible.Add(v); } foreach (var t in ColeccionTransportes) { var fechaTransporte = t.FechaSalida; if (DateTime.Compare(actual, fechaTransporte) < 0) { vehiculosDisponible.Remove(t.Camion); } } foreach (var v in vehiculosDisponible) { Console.WriteLine(v + "\n-------------------------------------\n"); } Console.WriteLine("\nFINALIZADO EL LISTADO"); return(vehiculosDisponible); }
/// <summary> /// Muestra los vehiculos disponibles de un tipo determinado y los saca por pantalla /// </summary> /// <param name="filtro"> char que indica el tipo a filtrar </param> /// <returns> Lista de Flota con los vehículos disponibles del tipo indicado por <see cref="filtro" /> </returns> public ColeccionVehiculos Disponibilidad(char filtro) { string tipo; switch (filtro) { case 'C': case 'c': tipo = "Camion"; break; case 'F': case 'f': tipo = "Furgoneta"; break; default: tipo = "Camion Articulado"; break; } var actual = DateTime.Now; Console.WriteLine("\n\nFLOTA DISPONIBLE DEL TIPO: " + tipo + "\n"); var vehiculoDisponible = new ColeccionVehiculos(); foreach (var v in vehiculoDisponible) { vehiculoDisponible.Add(v); } foreach (var t in ColeccionTransportes) { var fechaTransporte = t.FechaSalida; if (DateTime.Compare(actual, fechaTransporte) < 0 || !t.Camion.Tipo.Equals(tipo)) { vehiculoDisponible.Remove(t.Camion); } } foreach (var v in vehiculoDisponible) { Console.WriteLine(v + "\n-------------------------------------\n"); } Console.WriteLine("\nFINALIZADO EL LISTADO"); return(vehiculoDisponible); }
public static ColeccionVehiculos CargarXml(string f) { var toret = new ColeccionVehiculos(); try { var doc = XDocument.Load(f); if (doc.Root != null && doc.Root.Name == EtqVehiculos) { var vehiculos = doc.Root.Elements(EtqVehiculo); foreach (XElement vehiculoXml in vehiculos) { var comodidades = doc.Root.Elements(EtqComodidad); List <String> c = new List <string>(); foreach (XElement comodidad in comodidades) { c.Add((string)comodidad); } if (vehiculoXml.Element(EtqTipo).Value == "Camion") { toret.listaVehiculos.Add(new Camion((string)vehiculoXml.Element(EtqMatricula), (DateTime)vehiculoXml.Element(EtqFechaFabricacion), (DateTime)vehiculoXml.Element(EtqFechaAdquisicion), (double)vehiculoXml.Element(EtqConsumo), (string)vehiculoXml.Element(EtqMarca), (string)vehiculoXml.Element(EtqModelo), c)); } else if (vehiculoXml.Element(EtqTipo).Value == "CamionArticulado") { toret.listaVehiculos.Add(new Camion((string)vehiculoXml.Element(EtqMatricula), (DateTime)vehiculoXml.Element(EtqFechaFabricacion), (DateTime)vehiculoXml.Element(EtqFechaAdquisicion), (double)vehiculoXml.Element(EtqConsumo), (string)vehiculoXml.Element(EtqMarca), (string)vehiculoXml.Element(EtqModelo), c)); } else if (vehiculoXml.Element(EtqTipo).Value == "Furgoneta") { toret.listaVehiculos.Add(new Camion((string)vehiculoXml.Element(EtqMatricula), (DateTime)vehiculoXml.Element(EtqFechaFabricacion), (DateTime)vehiculoXml.Element(EtqFechaAdquisicion), (double)vehiculoXml.Element(EtqConsumo), (string)vehiculoXml.Element(EtqMarca), (string)vehiculoXml.Element(EtqModelo), c)); } } } }catch (XmlException) { toret.Clear(); } catch (IOException) { toret.Clear(); } return(toret); }
//------------------------------------------ADD----------------------------------------------------------------- /// <summary> /// Añadir vehiculo a la lista correspondiente /// </summary> /// <param name="automovil"> Vehiculo a insertar </param> /// <returns> /// true= El vehiculo se añadió correctamente /// false= Existia otro vehiculo con la misma matricula /// </returns> public void AddVehiculo(Vehiculo automovil) { ColeccionVehiculos.Add(automovil); }
public void GuardaXML() { ColeccionClientes.GuardaXml(); ColeccionVehiculos.GuardaXml(); ColeccionTransportes.GuardaXml(); }
//-------------------------------------------CARGAR Y GUARDAR------------------------------------------------------ /// <summary> /// Carga el XML en las listas /// </summary> public void CargarXML() { ColeccionClientes = GestorDeClientes.CargarXML(); ColeccionVehiculos = ColeccionVehiculos.CargarXml(); ColeccionTransportes = ColeccionTransportes.CargarXML(ColeccionClientes, ColeccionVehiculos); }
//-------------------------------------------CONSTRUCTORES------------------------------------------------------ /// <summary> /// El constructor de garaje vacio /// Inicializa todas las listas vacias /// </summary> public Empresa() { ColeccionClientes = new GestorDeClientes(); ColeccionVehiculos = new ColeccionVehiculos(); ColeccionTransportes = new ColeccionTransportes(); }