Пример #1
0
 public MaestroRepository(AeropuertoRepository aeropuertoRepo, PaisRepository paisRepo,
                          EstadoRepository estadoRepo, CiudadRepository ciudadRepo,
                          OrigenDestinoRepository oriDestRepo)
 {
     _aeropuertoRepositorio    = aeropuertoRepo;
     _paisRepositorio          = paisRepo;
     _estadoRepositorio        = estadoRepo;
     _ciudadRepositorio        = ciudadRepo;
     _origenDestinoRepositorio = oriDestRepo;
 }
 public bool Post(Aeropuerto aeropuerto)
 {
     if (aeropuerto != null)
     {
         return(AeropuertoRepository.addAeropuertoToDB(aeropuerto));
     }
     else
     {
         return(false);
     }
 }
Пример #3
0
        public ICollection <AeropuertoTo> ObtenerAeropuertosPorFiltro(FiltroGeograficoTo filtro)
        {
            List <AeropuertoTo> aeropuertos = new List <AeropuertoTo>();

            using (var Contexto = ViveVolarDbContext.GetDbContext())
            {
                var aeropuertoRepositorio = new AeropuertoRepository(Contexto);

                var result = aeropuertoRepositorio.Filtrar(ConstruirExpresionConsultaAeropuertoPorFiltroGeografico(filtro)).ToList();
                aeropuertos = Mapper.Map <List <AeropuertoTo> >(result);
            }
            return(aeropuertos);
        }
Пример #4
0
        //Se puede hacer inyección de dependencias por constructor - desde la Api se hace por setter y cuando se llame el repositorio  se le pasa por constructor.
        public async Task <AeropuertoTo> ObtenerAeropuertoPorIdAsync(int id)
        {
            AeropuertoTo aeropuerto = new AeropuertoTo();

            using (var Contexto = ViveVolarDbContext.GetDbContext())
            {
                var aeropuertoRepositorio = new AeropuertoRepository(Contexto);
                var result = await aeropuertoRepositorio.ObtenerPorId(id.ToString());

                aeropuerto = Mapper.Map <AeropuertoTo>(result);
            }
            return(aeropuerto);
        }
Пример #5
0
        public ICollection <AeropuertoTo> ObtenerAeropuertosPorFiltro(FiltroAeropuertoTo filtro)
        {
            List <AeropuertoTo> aeropuertos = new List <AeropuertoTo>();

            using (var Contexto = ViveVolarDbContext.GetDbContext())
            {
                var aeropuertoRepositorio = new AeropuertoRepository(Contexto);
                var expressionFilter      = ConstruirExpresionConsultaAeropuertoPorFiltroAeropuerto(filtro);
                if (expressionFilter != null)
                {
                    var result = aeropuertoRepositorio.Filtrar(expressionFilter).ToList();
                    aeropuertos = Mapper.Map <List <AeropuertoTo> >(result);
                }
                else
                {
                    Expression <Func <OrigenDestino, bool> > filtroInfo = null;
                    var origenDestinoRepositorio = new OrigenDestinoRepository(Contexto);

                    if (filtro.CriterioOrigenDestino == EsOrigenODestino.EsDestino)
                    {
                        filtroInfo = o => o.Id == int.Parse(filtro.Id) && o.EsDestino == "S";
                    }
                    else if (filtro.CriterioOrigenDestino == EsOrigenODestino.EsOrigen)
                    {
                        filtroInfo = o => o.Id == int.Parse(filtro.Id) && o.EsDestino == "S";
                    }
                    else
                    {
                        filtroInfo = o => o.Id == int.Parse(filtro.Id);
                    }

                    var result = origenDestinoRepositorio.Filtrar(filtroInfo).Select(a => a.Aeropuerto).ToList();
                    aeropuertos = Mapper.Map <List <AeropuertoTo> >(result);
                }
            }
            return(aeropuertos);
        }
 public bool Delete(string nombre)
 {
     return(AeropuertoRepository.deleteAeropuertoFromDB(nombre));
 }
 public Aeropuerto Get(string nombre)
 {
     return(AeropuertoRepository.getAeropuertoFromDB(nombre));
 }
 public IEnumerable <Aeropuerto> Get()
 {
     return(AeropuertoRepository.getAllAeropuertosFromDB());
 }