public async Task <HttpResponseMessage> ObtenerCatalogo(CatalogoRequestDTO CatalogoRequest) { return(await HandleOperationExecutionAsync(async() => { var catalogo = await new CatalogosService().ConsultaCatalogoPorIdCatalogo(CatalogoRequest); return Request.CreateResponse(HttpStatusCode.OK, catalogo); })); }
/// <summary> /// /// </summary> /// <param name="CatalogoReques"></param> /// <param name="EsActivo"></param> /// <returns></returns> public async Task <PagedInformationDTO <TramiteUnidadAtencionDTO> > ConsultaConceptos( CatalogoRequestDTO CatalogoReques, bool?EsActivo) { var pageInfo = new PagedInformationDTO <TramiteUnidadAtencionDTO>(); var paginado = CatalogoReques.Paginado; pageInfo.SetElementosPorPagina = paginado.PageSize; pageInfo.CurrentPage = paginado.CurrentPage; pageInfo.QueryString = paginado.QueryString; using (var modelo = new ISSSTEEntities()) { var requestsQuery = (from a in modelo.TramiteUnidadAtencion where !EsActivo.HasValue || a.EsActivo == EsActivo select new TramiteUnidadAtencionDTO { TramiteUnidadAtencionId = a.TramiteUnidadAtencionId, UnidadAtencionConcepto = a.UnidadAtencion.Descripcion, TramiteUnidadAtencionConcepto = a.CatTipoTramite.Concepto, EsActivo = a.EsActivo, UnidadAtencionId = a.UnidadAtencionId, CatTipoTramiteId = a.CatTipoTramiteId }).AsQueryable(); if (!string.IsNullOrEmpty(pageInfo.GetFiltroBusqueda)) { requestsQuery = requestsQuery .Where(R => R.UnidadAtencionConcepto.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower()) || R.TramiteUnidadAtencionConcepto.ToLower() .Contains(pageInfo.GetFiltroBusqueda.ToLower())); } var requestCount = requestsQuery; pageInfo.ResultCount = await requestCount.CountAsync(); var requests = await requestsQuery .OrderByDescending(R => R.UnidadAtencionId) .Skip(pageInfo.GetElementosPorPagina * (pageInfo.GetCurrentPage - 1)) .Take(pageInfo.GetElementosPorPagina) .ToListAsync(); pageInfo.ResultList = requests; } return(pageInfo); }
public async Task <InformacionCatalogo> ConsultaCatalogoPorIdCatalogo(CatalogoRequestDTO CatalogoReques) { var informacionCatalogo = new InformacionCatalogo(); switch (CatalogoReques.CatalogoId) { case (int)CatalogoEnum.TipoTramite: informacionCatalogo.Atributos = ReflexionHelper.ObtenerElementosLinq(new CatTipoTramiteDTO(), MemberTypes.Property); informacionCatalogo.Resultado = await new CatTipoTramiteDAO().ConsultaConceptos(CatalogoReques, null); break; case (int)CatalogoEnum.EstadoCita: informacionCatalogo.Atributos = ReflexionHelper.ObtenerElementosLinq(new CatTipoEdoCitaDTO(), MemberTypes.Property); informacionCatalogo.Resultado = await new CatTipoEdoCitaDAO().ConsultaConceptos(CatalogoReques, null); break; case (int)CatalogoEnum.UnidadAtencion: informacionCatalogo.Atributos = ReflexionHelper.ObtenerElementosLinq(new UnidadAtencionDTO(), MemberTypes.Property); informacionCatalogo.Resultado = await new UnidadAtencionDAO().ConsultaConceptos(CatalogoReques, null); break; case (int)CatalogoEnum.TramiteUnidadAtencion: informacionCatalogo.Atributos = ReflexionHelper.ObtenerElementosLinq(new TramiteUnidadAtencionDTO(), MemberTypes.Property); informacionCatalogo.Resultado = await new TramiteUnidadAtencionDAO().ConsultaConceptos(CatalogoReques, null); break; case (int)CatalogoEnum.UnidadMedica: informacionCatalogo.Atributos = ReflexionHelper.ObtenerElementosLinq(new UnidadMedicaDTO(), MemberTypes.Property); informacionCatalogo.Resultado = await new UnidadMedicaDAO().ConsultaConceptos(CatalogoReques, null); break; } return(informacionCatalogo); }
/// <summary> /// /// </summary> /// <param name="CatalogoReques"></param> /// <param name="EsActivo"></param> /// <returns></returns> public async Task <PagedInformationDTO <UnidadAtencionDTO> > ConsultaConceptos(CatalogoRequestDTO CatalogoReques, bool?EsActivo) { var paginado = CatalogoReques.Paginado; var pageInfo = new PagedInformationDTO <UnidadAtencionDTO> { SetElementosPorPagina = paginado.PageSize, CurrentPage = paginado.CurrentPage, QueryString = paginado.QueryString }; using (var modelo = new ISSSTEEntities()) { var requestsQuery = (from a in modelo.UnidadAtencion join b in modelo.Domicilio on a.DomicilioId equals b.DomicilioId into ab from res in ab.DefaultIfEmpty() select new UnidadAtencionDTO { UnidadAtencionId = a.UnidadAtencionId, Descripcion = a.Descripcion, EsActivo = a.EsActivo, CatTipoEntidadId = a.CatTipoEntidadId, Contador = a.Contador, Prefijo = a.Prefijo, Mascara = a.Mascara, ReiniciarContador = a.ReiniciarContador, DomicilioId = res == null ? default(int) : res.DomicilioId, Calle = res == null ? string.Empty : res.Calle, NumeroExterior = res == null ? string.Empty : res.NumeroExterior, NumeroInterior = res == null ? string.Empty : res.NumeroInterior, CodigoPostal = res == null ? default(int) : res.CodigoPostal, Colonia = res == null ? string.Empty : res.Colonia, Municipio = res == null ? string.Empty : res.Municipio }).AsQueryable(); if (EsActivo.HasValue) { requestsQuery = requestsQuery.Where(R => R.EsActivo == EsActivo); } if (!string.IsNullOrEmpty(pageInfo.GetFiltroBusqueda)) { requestsQuery = requestsQuery .Where(R => R.Descripcion.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower())); } var requestCount = requestsQuery; pageInfo.ResultCount = await requestCount.CountAsync(); pageInfo.ResultList = await requestsQuery .OrderByDescending(R => R.UnidadAtencionId) .Skip(pageInfo.GetElementosPorPagina * (pageInfo.GetCurrentPage - 1)) .Take(pageInfo.GetElementosPorPagina) .ToListAsync(); } return(pageInfo); }