///Report Detallado

        /*private async Task<IQueryable<ElementoViewModel>> ReportDetallado(){
         *  // var elementos= await _IelementosRepository.AllIncludingAsync(a=>a.Proyecto, b=>b.Material, c=>c.LocalizacionElementos, d=>d.Estado, e=>e.NivelTensionElemento, f=>f.LongitudElemento, g=>g.Fotos);
         * IEnumerable<Elemento> elementos=Enumerable.Empty<Elemento>();
         *  //Todas las ciudades y todos los usuarios
         * if(Ciudad_Id==0 && Usuario_Id==0 ){
         *     elementos =await _IelementosRepository.AllIncludingAsyncWhere(a=>a.Ciudad.departmentoId==Departamento_Id,c=>c.Material,d=>d.Proyecto, f=>f.LocalizacionElementos, g=>g.Estado, h=>h.NivelTensionElemento, i=>i.LongitudElemento,k=>k.Ciudad, l=>l.Ciudad.departmento,k=>k.Cables,n=>n.Equipos, o=>o.Fotos, q=>q.Novedades);
         * }
         * //Todas los usuarios de una ciudad
         * else if(Ciudad_Id!=0 && Usuario_Id==0){
         *     elementos =await _IelementosRepository.AllIncludingAsyncWhere(a=>a.Ciudad_Id==Ciudad_Id,c=>c.Material,d=>d.Proyecto, f=>f.LocalizacionElementos, g=>g.Estado, h=>h.NivelTensionElemento, i=>i.LongitudElemento,k=>k.Ciudad, l=>l.Ciudad.departmento,k=>k.Cables,n=>n.Equipos, o=>o.Fotos, q=>q.Novedades);
         * }
         * else{
         *     elementos =await _IelementosRepository.AllIncludingAsyncWhere(a=>a.Ciudad_Id==Ciudad_Id && a.Usuario_Id==Usuario_Id,c=>c.Material,d=>d.Proyecto,  f=>f.LocalizacionElementos, g=>g.Estado, h=>h.NivelTensionElemento, i=>i.LongitudElemento,k=>k.Ciudad, l=>l.Ciudad.departmento,k=>k.Cables,n=>n.Equipos, o=>o.Fotos, q=>q.Novedades);
         * }
         *
         * var filterListElementosDates=elementos.ToList().Where(a=>a.FechaLevantamiento.Day>=SelectedDateStart.Day &&
         *                                     a.FechaLevantamiento.Month>=SelectedDateStart.Month &&
         *                                     a.FechaLevantamiento.Year>=SelectedDateStart.Year &&
         *                                     a.FechaLevantamiento.Day<=SelectedDateEnd.Day &&
         *                                     a.FechaLevantamiento.Month<=SelectedDateEnd.Month &&
         *                                     a.FechaLevantamiento.Year<=SelectedDateEnd.Year ).ToList();
         *
         * var list= new List<ElementoViewModel>();
         *
         * /// var MaximumPrice=0;
         * foreach(var item in filterListElementosDates){
         *
         *     //var sumdata= filterListCablesDates.Count/100;
         *     ///MaximumPrice+=sumdata;
         *
         *    var viewModelMap = _mapper.Map<Elemento, ElementoViewModel>(item);
         *     viewModelMap.NombreCiudad=item.Ciudad.Nombre;
         *     viewModelMap.Direccion= item.LocalizacionElementos.FirstOrDefault().Direccion;
         *     string hourStartFormat = DateTime.ParseExact(item.HoraInicio,"HH:mm",CultureInfo.CurrentCulture).ToString("hh:mm tt");
         *     string hourEndFormat = DateTime.ParseExact(item.HoraFin,"HH:mm",CultureInfo.CurrentCulture).ToString("hh:mm tt");
         *
         *     var usuario= await _usuarioRepository.GetSingleAsync(a=>a.Id==item.Usuario_Id);
         *     viewModelMap.HoraInicio=hourStartFormat;
         *     viewModelMap.HoraFin=hourEndFormat;
         *     viewModelMap.Usuario = string.Format("{0} {1}",usuario.Nombre, usuario.Apellido);
         *     viewModelMap.Cables.Clear();
         *     viewModelMap.Equipos.Clear();
         *     viewModelMap.Fotos.Clear();
         *
         *     //list Fotos
         *     var listFotos= new List<FotoViewModel>();
         *     var listFotosPoste= _fotoRepository.AllIncludingAsyncWhere(a=>a.Elemento_Id==item.Id);
         *     listFotos= _mapper.Map<IEnumerable<Foto>, IEnumerable<FotoViewModel>>(listFotosPoste.Result).ToList();
         *     viewModelMap.Fotos =listFotos;
         *
         *     foreach(var equipo in item.Equipos){
         *         var queryequipo= await _equipoElementoRepository.GetSingleAsync(a=>a.Id==equipo.Id, b=>b.TipoEquipo,c=>c.Ciudad_Empresa, d=>d.Ciudad_Empresa.Empresa);
         *         var mapEquipo= _mapper.Map<EquipoElemento, EquipoViewModel>(queryequipo);
         *
         *         mapEquipo.NombreEmpresaEquipo=mapEquipo.Ciudad_Empresa.Empresa.Nombre;
         *             var ConectadoRbt="NO";
         *             var MedidorBt="NO";
         *             if( equipo.ConectadoRbt){
         *                 ConectadoRbt="SI";
         *             }
         *             if(equipo.MedidorBt){
         *                 MedidorBt="SI";
         *             }
         *             mapEquipo.ConectadoRbt= ConectadoRbt;
         *             mapEquipo.MedidorBt= MedidorBt;
         *             mapEquipo.TipoEquipo=equipo.TipoEquipo;
         *
         *             viewModelMap.Equipos.Add(mapEquipo);
         *     }
         *     foreach(var cable in item.Cables){
         *         var querycable= await _elementoCableRepository.GetSingleAsync(a=>a.Id==cable.Id, b=>b.DetalleTipoCable,c=>c.Ciudad_Empresa, d=>d.Ciudad_Empresa.Empresa,e=>e.DetalleTipoCable.Cable,f=>f.DetalleTipoCable.TipoCable);
         *         var mapCable= _mapper.Map<ElementoCable, ElementoCableViewModel>(querycable);
         *         var sobrerbt="NO";
         *         var tienemarquilla="NO";
         *
         *         if( cable.SobreRbt){
         *             sobrerbt="SI";
         *         }
         *         if(cable.Tiene_Marquilla){
         *             tienemarquilla="SI";
         *         }
         *         mapCable.SobreRbt= sobrerbt;
         *         mapCable.Tiene_Marquilla= tienemarquilla;
         *
         *         mapCable.NombreEmpresaCable=mapCable.Ciudad_Empresa.Empresa.Nombre;
         *         mapCable.TipoCable= mapCable.DetalleTipoCable.TipoCable.Nombre;
         *         mapCable.DetalleCable= mapCable.DetalleTipoCable.Cable.Nombre;
         *         viewModelMap.Cables.Add(mapCable);
         *     }
         *     viewModelMap.Coordenadas= item.LocalizacionElementos.Where(a=>a.Element_Id==item.Id).FirstOrDefault().Coordenadas;
         *     list.Add(viewModelMap);
         * }
         *
         *
         * /// var model = _mapper.Map<IEnumerable<Elemento>, IEnumerable<ElementoViewModel>>(list);
         * // ReportElementos=model.ToList();
         *
         * ReportElementos=list;
         * //empresa.as
         * return  list.AsQueryable();
         *
         * }*/
        private async Task <IQueryable <ElementoReportViewModel> > ReportDetalladoView()
        {
            //IEnumerable<ElementoCable> cables=Enumerable.Empty<ElementoCable>();
            var dataContext = MyAppContext.GetInstance();
            IEnumerable <View_Elemento_Report> cables = Enumerable.Empty <View_Elemento_Report>();

            if (Ciudad_Id == 0 && Usuario_Id == 0)
            {
                cables = dataContext.View_Elementos.Where(a => a.Departamento_Id == Departamento_Id).ToList();
                //cables =await _elementoCableRepository.AllIncludingAsyncWhere(a=>a.Ciudad_Empresa.Ciudad.departmento.Id==Departamento_Id,b=>b.Elemento,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, e=>e.Elemento.Material, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento, f=>f.Ciudad_Empresa.Ciudad.departmento,j=>j.Ciudad_Empresa.Empresa,k=>k.Ciudad_Empresa.Ciudad,l=>l.DetalleTipoCable.Cable,n=>n.Elemento.Equipos);
            }
            //Todas las empresas de una ciudad
            else if (Ciudad_Id != 0 && Usuario_Id == 0)
            {
                cables = dataContext.View_Elementos.Where(a => a.Ciudad_Id == Ciudad_Id).ToList();
            }
            else if (Ciudad_Id == 0 && Usuario_Id != 0)
            {
                cables = dataContext.View_Elementos.Where(a => a.Departamento_Id == Departamento_Id && a.Usuario_Id == Usuario_Id).ToList();
            }
            else
            {
                cables = dataContext.View_Elementos.Where(a => a.Ciudad_Id == Ciudad_Id && a.Usuario_Id == Usuario_Id).ToList();
                // cables =await _elementoCableRepository.AllIncludingAsyncWhere(a=>a.Ciudad_Id==Ciudad_Id && a.Empresa_Id==Empresa_Id,b=>b.Elemento,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, e=>e.Elemento.Material, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,j=>j.Ciudad_Empresa.Empresa,k=>k.Ciudad_Empresa.Ciudad,l=>l.DetalleTipoCable.Cable,n=>n.Elemento.Equipos);
            }
            var filterListCablesDates = cables.ToList().Where(a => a.FechaLevantamiento.Day >= SelectedDateStart.Day &&
                                                              a.FechaLevantamiento.Month >= SelectedDateStart.Month &&
                                                              a.FechaLevantamiento.Year >= SelectedDateStart.Year &&
                                                              a.FechaLevantamiento.Day <= SelectedDateEnd.Day &&
                                                              a.FechaLevantamiento.Month <= SelectedDateEnd.Month &&
                                                              a.FechaLevantamiento.Year <= SelectedDateEnd.Year).ToList();

            var list = new List <ElementoReportViewModel>();

            foreach (var item in filterListCablesDates)
            {
                var viewModelMap = _mapper.Map <View_Elemento_Report, ElementoReportViewModel>(item);
                viewModelMap.Elemento_Id = item.Id;
                viewModelMap.Usuario     = string.Format("{0} {1}", item.Nombre_Usuario, item.Apellido_Usuario);
                if (viewModelMap.CodigoApoyo == null || viewModelMap.CodigoApoyo == "")
                {
                    //Verificar la novedad del codigo de apoyo vacio
                    var novedad = await _novedadRepository.GetSingleAsync(a => a.Elemento_Id == item.Id && a.DetalleTipoNovedad.Tipo_Novedad_id == 1, b => b.DetalleTipoNovedad);

                    if (novedad != null)
                    {
                        if (novedad.Detalle_Tipo_Novedad_Id != 3)
                        {
                            viewModelMap.CodigoApoyo = novedad.DetalleTipoNovedad.Nombre;
                        }
                    }
                }

                viewModelMap.FechaLevantamientoFormat = item.FechaLevantamiento.ToString("dd/MM/yyyy");

                //list Fotos
                var listFotos      = new List <FotoViewModel>();
                var listFotosPoste = _fotoRepository.AllIncludingAsyncWhere(a => a.Elemento_Id == item.Id);
                listFotos          = _mapper.Map <IEnumerable <Foto>, IEnumerable <FotoViewModel> >(listFotosPoste.Result).ToList();
                viewModelMap.Fotos = listFotos;
                //EQUIPOS
                var equiposElementos = await _equipoElementoRepository.AllIncludingAsyncWhere(a => a.Elemento_Id == item.Id, b => b.TipoEquipo, c => c.Ciudad_Empresa, d => d.Ciudad_Empresa.Empresa);

                viewModelMap.Equipos = new List <EquipoViewModel>();
                foreach (var queryequipo in equiposElementos)
                {
                    var mapEquipo = _mapper.Map <EquipoElemento, EquipoViewModel>(queryequipo);
                    mapEquipo.NombreEmpresaEquipo = mapEquipo.Ciudad_Empresa.Empresa.Nombre;
                    viewModelMap.Equipos.Add(mapEquipo);
                }

                //CABLES
                var cablesElementos = await _elementoCableRepository.AllIncludingAsyncWhere(a => a.Elemento_Id == item.Id, b => b.DetalleTipoCable, c => c.Ciudad_Empresa, d => d.Ciudad_Empresa.Empresa, e => e.DetalleTipoCable.Cable, f => f.DetalleTipoCable.TipoCable);

                viewModelMap.Cables = new List <ElementoCableViewModel>();
                foreach (var cable in cablesElementos.ToList())
                {
                    var mapCable = _mapper.Map <ElementoCable, ElementoCableViewModel>(cable);
                    mapCable.NombreEmpresaCable = mapCable.Ciudad_Empresa.Empresa.Nombre;
                    mapCable.TipoCable          = mapCable.DetalleTipoCable.TipoCable.Nombre;
                    mapCable.DetalleCable       = mapCable.DetalleTipoCable.Cable.Nombre;
                    viewModelMap.Cables.Add(mapCable);
                }
                list.Add(viewModelMap);
            }
            return(list.AsQueryable());
        }
        ///Report Detallado

        /*
         * private async Task<IQueryable<ElementoViewModel>> ReportDetallado(){
         *  // var elementos= await _IelementosRepository.AllIncludingAsync(a=>a.Proyecto, b=>b.Material, c=>c.LocalizacionElementos, d=>d.Estado, e=>e.NivelTensionElemento, f=>f.LongitudElemento, g=>g.Fotos);
         * IEnumerable<Novedad> elementosNovedad=Enumerable.Empty<Novedad>();
         *  //Todas las ciudades y todos los usuarios
         * if(Ciudad_Id==0 && Detalle_Tipo_Novedad_Id==0 ){
         *     elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad.departmentoId==Departamento_Id && a.DetalleTipoNovedad.Tipo_Novedad_id==Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
         * }
         * //Todas los usuarios de una ciudad
         * else if(Ciudad_Id!=0 && Detalle_Tipo_Novedad_Id==0){
         *     elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad_Id==Ciudad_Id && a.DetalleTipoNovedad.Tipo_Novedad_id==Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
         * }
         * else if(Ciudad_Id==0 && Detalle_Tipo_Novedad_Id!=0){
         *     elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad.departmentoId==Departamento_Id && a.Detalle_Tipo_Novedad_Id==Detalle_Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
         * }
         * else{
         *     elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad_Id==Ciudad_Id && a.Detalle_Tipo_Novedad_Id==Detalle_Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto,  f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
         * }
         *
         * var list= new List<ElementoViewModel>();
         *
         * /// var MaximumPrice=0;
         * foreach(var item in elementosNovedad){
         *     //var sumdata= filterListCablesDates.Count/100;
         *     ///MaximumPrice+=sumdata;
         *
         *    var viewModelMap = _mapper.Map<Elemento, ElementoViewModel>(item.Elemento);
         *     viewModelMap.NombreCiudad=item.Elemento.Ciudad.Nombre;
         *     viewModelMap.NumeroApoyo= item.Elemento_Id;
         *     viewModelMap.Direccion= item.Elemento.LocalizacionElementos.FirstOrDefault().Direccion;
         *     string hourStartFormat = DateTime.ParseExact(item.Elemento.HoraInicio,"HH:mm",CultureInfo.CurrentCulture).ToString("hh:mm tt");
         *     string hourEndFormat = DateTime.ParseExact(item.Elemento.HoraFin,"HH:mm",CultureInfo.CurrentCulture).ToString("hh:mm tt");
         *
         *     var usuario= await _usuarioRepository.GetSingleAsync(a=>a.Id==item.Elemento.Usuario_Id);
         *     viewModelMap.HoraInicio=hourStartFormat;
         *     viewModelMap.HoraFin=hourEndFormat;
         *     viewModelMap.Usuario = string.Format("{0} {1}",usuario.Nombre, usuario.Apellido);
         *
         *     viewModelMap.Detalle_Tipo_Novedad_Id=item.Detalle_Tipo_Novedad_Id;
         *     viewModelMap.Nombre_Detalle_Tipo_Novedad=item.DetalleTipoNovedad.Nombre;
         *     viewModelMap.Descripcion_Novedad=item.Descripcion;
         *     viewModelMap.Tipo_Novedad_id=item.DetalleTipoNovedad.Tipo_Novedad_id;
         *     viewModelMap.Nombre_Tipo_Novedad=item.DetalleTipoNovedad.TipoNovedad.Nombre;
         *
         *     viewModelMap.Fotos.Clear();
         *      viewModelMap.Equipos.Clear();
         *
         *       viewModelMap.Cables.Clear();
         *     //list Fotos
         *     var listFotos= new List<FotoViewModel>();
         *
         *     var listFotosPoste= _fotoRepository.AllIncludingAsyncWhere(a=>a.Elemento_Id==item.Id);
         *     listFotos= _mapper.Map<IEnumerable<Foto>, IEnumerable<FotoViewModel>>(listFotosPoste.Result).ToList();
         *     viewModelMap.Fotos =listFotos;
         *
         *
         *     viewModelMap.Coordenadas= item.Elemento.LocalizacionElementos.Where(a=>a.Element_Id==item.Elemento_Id).FirstOrDefault().Coordenadas;
         *     list.Add(viewModelMap);
         * }
         * //empresa.as
         * return  list.AsQueryable();
         * }*/

        private async Task <IQueryable <ElementoReportViewModel> > ViewReportDetallado()
        {
            // var elementos= await _IelementosRepository.AllIncludingAsync(a=>a.Proyecto, b=>b.Material, c=>c.LocalizacionElementos, d=>d.Estado, e=>e.NivelTensionElemento, f=>f.LongitudElemento, g=>g.Fotos);
            IEnumerable <View_Novedad_Elemento_Report> elementosNovedad = Enumerable.Empty <View_Novedad_Elemento_Report>();
            var dataContext = MyAppContext.GetInstance();

            //Todas las ciudades y todos los usuarios
            if (Ciudad_Id == 0 && Detalle_Tipo_Novedad_Id == 0 && Tipo_Novedad_Id == 0)
            {
                elementosNovedad = dataContext.View_Novedades.Where(a => a.Departamento_Id == Departamento_Id);
            }
            else if (Ciudad_Id != 0 && Detalle_Tipo_Novedad_Id == 0 && Tipo_Novedad_Id == 0)
            {
                elementosNovedad = dataContext.View_Novedades.Where(a => a.Ciudad_Id == Ciudad_Id);
            }
            else if (Ciudad_Id == 0 && Detalle_Tipo_Novedad_Id == 0 && Tipo_Novedad_Id != 0)
            {
                elementosNovedad = dataContext.View_Novedades.Where(a => a.Departamento_Id == Departamento_Id && a.Tipo_Novedad_id == Tipo_Novedad_Id);

                // elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad.departmentoId==Departamento_Id && a.DetalleTipoNovedad.Tipo_Novedad_id==Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
            }
            //Todas los usuarios de una ciudad
            else if (Ciudad_Id != 0 && Detalle_Tipo_Novedad_Id == 0 && Tipo_Novedad_Id != 0)
            {
                elementosNovedad = dataContext.View_Novedades.Where(a => a.Ciudad_Id == Ciudad_Id && a.Tipo_Novedad_id == Tipo_Novedad_Id);
                // elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad_Id==Ciudad_Id && a.DetalleTipoNovedad.Tipo_Novedad_id==Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
            }
            else if (Ciudad_Id == 0 && Detalle_Tipo_Novedad_Id != 0 && Tipo_Novedad_Id != 0)
            {
                elementosNovedad = dataContext.View_Novedades.Where(a => a.Departamento_Id == Departamento_Id && a.Detalle_Tipo_Novedad_Id == Detalle_Tipo_Novedad_Id && a.Tipo_Novedad_id == Tipo_Novedad_Id);
                // elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad.departmentoId==Departamento_Id && a.Detalle_Tipo_Novedad_Id==Detalle_Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto, f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
            }
            else
            {
                elementosNovedad = dataContext.View_Novedades.Where(a => a.Ciudad_Id == Ciudad_Id && a.Detalle_Tipo_Novedad_Id == Detalle_Tipo_Novedad_Id);
                ///  elementosNovedad =await _novedadRepository.AllIncludingAsyncWhere(a=>a.Elemento.Ciudad_Id==Ciudad_Id && a.Detalle_Tipo_Novedad_Id==Detalle_Tipo_Novedad_Id,c=>c.Elemento.Material,d=>d.Elemento.Proyecto,  f=>f.Elemento.LocalizacionElementos, g=>g.Elemento.Estado, h=>h.Elemento.NivelTensionElemento, i=>i.Elemento.LongitudElemento,k=>k.Elemento.Ciudad, m=>m.DetalleTipoNovedad,n=>n.DetalleTipoNovedad.TipoNovedad);
            }

            //var viewModelMap = _mapper.Map<IEnumerable<Elemento>, IEnumerable<ElementoViewModel>>(filterListCablesDates);
            var list = new List <ElementoReportViewModel>();

            /// var MaximumPrice=0;
            foreach (var item in elementosNovedad)
            {
                var    viewModelMap    = _mapper.Map <View_Novedad_Elemento_Report, ElementoReportViewModel>(item);
                string hourStartFormat = DateTime.ParseExact(item.HoraInicio, "HH:mm", CultureInfo.CurrentCulture).ToString("hh:mm tt");
                string hourEndFormat   = DateTime.ParseExact(item.HoraFin, "HH:mm", CultureInfo.CurrentCulture).ToString("hh:mm tt");

                viewModelMap.Usuario = string.Format("{0} {1}", item.Nombre_Usuario, item.Apellido_Usuario);
                viewModelMap.Fotos   = new List <FotoViewModel>();

                //list Fotos
                var listFotos = new List <Foto>();

                if (Detalle_Tipo_Novedad_Id == 0)
                {
                }


                var listFotosPoste = await _fotoRepository.AllIncludingAsyncWhere(a => a.Elemento_Id == item.Elemento_Id);

                foreach (var itemfoto in listFotosPoste.ToList().Where(a => a.Novedad_Id == item.Novedad_Id || a.Novedad_Id == 0))
                {
                    listFotos.Add(itemfoto);
                }
                viewModelMap.Fotos = _mapper.Map <IEnumerable <Foto>, IEnumerable <FotoViewModel> >(listFotos).ToList();
                list.Add(viewModelMap);
            }
            //empresa.as
            return(list.AsQueryable());
        }