/// <summary> /// Validación de curvas HBT /// </summary> /// <param name="info">Información de curvas HBT</param> private void ValidarCurvasHBT(InfoDisrupcion2D info) { List <string> analizados = new List <string>(); SerializableDictionary <string, SerializableDictionary <string, DataDisrupcion> > data = info.Parametros; foreach (Avion a in _itinerario.AvionesDictionary.Values) { Tramo tramoAux = a.Tramo_Raiz; while (tramoAux != null) { string key1 = tramoAux.ParOD; string key2 = a.GrupoAvion != null ? a.GrupoAvion.Nombre : null; List <string> lista = new List <string>(); lista.Add(key1); lista.Add(key2 != null ? key2 : " "); string key = key1 + "_" + key2; if (key2 != null && !analizados.Contains(key)) { analizados.Add(key); if (!data.ContainsKey(key1)) { AgregarFalta(new Falta(TipoFaltaInformacion.Curva_HBT, lista)); } else if (!data[key1].ContainsKey(key2)) { AgregarFalta(new Falta(TipoFaltaInformacion.Curva_HBT, lista)); } } tramoAux = tramoAux.Tramo_Siguiente; } } }
/// <summary> /// Validación de curvas que dependen del aeropuerto /// </summary> /// <param name="info">Información de curvas</param> /// <param name="tipo">Tipo de falta buscada</param> private void ValidarCurvasAeropuerto(InfoDisrupcion2D info, TipoFaltaInformacion tipo) { List <string> analizados = new List <string>(); SerializableDictionary <string, SerializableDictionary <string, DataDisrupcion> > data = info.Parametros; foreach (Avion a in _itinerario.AvionesDictionary.Values) { Tramo tramoAux = a.Tramo_Raiz; while (tramoAux != null) { string key1 = tramoAux.TramoBase.Origen; List <string> lista = new List <string>(); lista.Add(key1); string key = key1; if (!analizados.Contains(key)) { analizados.Add(key); if (!data.ContainsKey(key1)) { AgregarFalta(new Falta(tipo, lista)); } } tramoAux = tramoAux.Tramo_Siguiente; } } }