public List<MigranteBE> ListaMigrantesInternacionales(string codPaisNacimiento, System.DateTime fecIni, System.DateTime fecFin) { AerolineaEntities MiAerolinea = new AerolineaEntities(); List<MigranteBE> objListaBE = new List<MigranteBE>(); //SI es internacional devuelve datos con paises try { var query = (from tbPasajero in MiAerolinea.PASAJERO join tbReservacion in MiAerolinea.RESERVACION on tbPasajero.COD_PASAJERO equals tbReservacion.COD_PASAJERO join tbVuelo in MiAerolinea.VUELO on tbReservacion.COD_VUELO equals tbVuelo.COD_VUELO join tbRuta in MiAerolinea.RUTA on tbVuelo.COD_RUTA equals tbRuta.COD_RUTA join tbLugar in MiAerolinea.LUGAR on tbRuta.COD_DESTINO equals tbLugar.COD_LUGAR join tbPais in MiAerolinea.PAIS on tbLugar.COD_PAIS equals tbPais.COD_PAIS where tbPasajero.COD_PAIS == codPaisNacimiento && tbRuta.TIPO_RUTA == "INTERNACIONAL" && tbVuelo.FECHA_LLEGADA >= fecIni && tbVuelo.FECHA_LLEGADA <= fecFin select new { Codigo = tbPasajero.COD_PASAJERO, Nombre = tbPasajero.NOMBRE_PASAJERO, Apellido = tbPasajero.APELLIDO_PASAJERO, DNI = tbPasajero.DNI, Genero = tbPasajero.SEXO, NumTel = tbPasajero.NUMERO_TELEFONICO, Email = tbPasajero.EMAIL, FecNac = tbPasajero.FECHA_NACIMIENTO, PaisDestino = tbPais.NOMBRE_PAIS }).Take(100); foreach (var resultado in query) { MigranteBE objMigranteBE = new MigranteBE(); objMigranteBE.CodMigrante = resultado.Codigo; objMigranteBE.NomMigrante = resultado.Nombre; objMigranteBE.ApeMigrante = resultado.Apellido; objMigranteBE.Dni = resultado.DNI; objMigranteBE.Genero = resultado.Genero.ElementAt(0); objMigranteBE.NumTelefono = resultado.NumTel; objMigranteBE.Email = resultado.Email; objMigranteBE.FecNac = Convert.ToDateTime(resultado.FecNac); objMigranteBE.PaisDestino = resultado.PaisDestino; objListaBE.Add(objMigranteBE); } } catch (Exception ex) { throw ex; } return objListaBE; }
public List<MigranteBE> ListaMigrantesPaisesFechas(string codPaisOrigen, string codPaisDestino, System.DateTime fecIni, System.DateTime fecFin) { AerolineaEntities MiAerolinea = new AerolineaEntities(); List<MigranteBE> objListaBE = new List<MigranteBE>(); try { var codLDestino = from tbLugar in MiAerolinea.LUGAR where tbLugar.COD_PAIS == codPaisDestino select tbLugar.COD_LUGAR; var query = (from tbPasajero in MiAerolinea.PASAJERO join tbReservacion in MiAerolinea.RESERVACION on tbPasajero.COD_PASAJERO equals tbReservacion.COD_PASAJERO join tbVuelo in MiAerolinea.VUELO on tbReservacion.COD_VUELO equals tbVuelo.COD_VUELO join tbRuta in MiAerolinea.RUTA on tbVuelo.COD_RUTA equals tbRuta.COD_RUTA where tbVuelo.FECHA_LLEGADA >= fecIni && tbVuelo.FECHA_LLEGADA <= fecFin && tbPasajero.COD_PAIS == codPaisOrigen && codLDestino.Contains(tbRuta.COD_DESTINO) select new { Codigo = tbPasajero.COD_PASAJERO, Nombre = tbPasajero.NOMBRE_PASAJERO, Apellido = tbPasajero.APELLIDO_PASAJERO, DNI = tbPasajero.DNI, Genero = tbPasajero.SEXO, NumTel = tbPasajero.NUMERO_TELEFONICO, Email = tbPasajero.EMAIL, FecNac = tbPasajero.FECHA_NACIMIENTO }).Take(100); foreach (var resultado in query) { MigranteBE objMigranteBE = new MigranteBE(); objMigranteBE.CodMigrante = resultado.Codigo; objMigranteBE.NomMigrante = resultado.Nombre; objMigranteBE.ApeMigrante = resultado.Apellido; objMigranteBE.Dni = resultado.DNI; objMigranteBE.Genero = resultado.Genero.ElementAt(0); objMigranteBE.NumTelefono = resultado.NumTel; objMigranteBE.Email = resultado.Email; objMigranteBE.FecNac = Convert.ToDateTime(resultado.FecNac); objListaBE.Add(objMigranteBE); } } catch (Exception ex) { throw ex; } return objListaBE; }