private static bool ComprobarAsignacionEstacionesEnNervio(List <cEstacion> EstacionesNuevas, cNervio nervio) { List <cEstacion> Estaciones = new List <cEstacion>(); List <cEstacion> EstacionesNuevas1 = EstacionesNuevas.FindAll(z => nervio.PisoOrigen.Nombre == z.StoryLinea); nervio.Lista_Elementos.ForEach(elemento => { if (elemento is cSubTramo) { cSubTramo subtramo = (cSubTramo)elemento; Estaciones.AddRange(subtramo.Estaciones); } }); int CantEstacionEquals = 0; EstacionesNuevas1.ForEach(EstacionN => { Estaciones.ForEach(EstacionA => { if (EstacionA.Equals(EstacionN)) { CantEstacionEquals++; } }); }); return(CantEstacionEquals == Estaciones.Count); }
public static void CargarNuevasSolicitacionesANevio(List <cEstacion> EstacionesNuevas, cNervio nervio) { if (ComprobarAsignacionEstacionesEnNervio(EstacionesNuevas, nervio)) { List <cEstacion> EstacionesNuevas1 = EstacionesNuevas.FindAll(z => nervio.PisoOrigen.Nombre == z.StoryLinea); List <cEstacion> Estaciones = new List <cEstacion>(); nervio.Lista_Elementos.ForEach(elemento => { if (elemento is cSubTramo) { cSubTramo subtramo = (cSubTramo)elemento; Estaciones.AddRange(subtramo.Estaciones); } }); EstacionesNuevas1.ForEach(EstacionN => { Estaciones.ForEach(EstacionA => { if (EstacionA.Equals(EstacionN)) { EstacionN.Lista_Solicitaciones.ForEach(Solic => { AsignacionNombreCombinacionRepetida(Solic.Nombre, Solic, EstacionA.Lista_Solicitaciones, 1); EstacionA.Lista_Solicitaciones.Add(Solic); }); } }); }); } else { cFunctionsProgram.VentanaEmergenteError($"No se puede agregar las nuevas solicitaciones en el nervio {nervio.Nombre}."); } }