/// <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);
        }
예제 #2
0
        /// <summary>
        ///     Consulta de requisitos paginando el resultado
        /// </summary>
        /// <param name="Paginado"></param>
        /// <param name="EsActivo"></param>
        /// <param name="CatTipoTramiteId"></param>
        /// <returns></returns>
        public async Task <PagedInformationDTO <RequisitoDTO> > ConsultaRequisitosPaginado(BasePageInformationDTO Paginado,
                                                                                           bool?EsActivo, int?CatTipoTramiteId)
        {
            var pageInfo = new PagedInformationDTO <RequisitoDTO>
            {
                SetElementosPorPagina = Paginado.PageSize,
                CurrentPage           = Paginado.CurrentPage,
                QueryString           = Paginado.QueryString
            };


            using (var modelo = new ISSSTEEntities())
            {
                var requestsQuery = (from a in modelo.Requisito
                                     where !EsActivo.HasValue || a.EsActivo == EsActivo
                                     select new RequisitoDTO
                {
                    RequisitoId = a.RequisitoId,
                    CatTipoTramiteId = a.CatTipoTramiteId,
                    NombreDocumento = a.NombreDocumento,
                    EsObligatorio = a.EsObligatorio,
                    EsActivo = a.EsActivo,
                    Descripcion = a.Descripcion
                }).AsQueryable();

                if (!string.IsNullOrEmpty(pageInfo.GetFiltroBusqueda))
                {
                    requestsQuery = requestsQuery
                                    .Where(R => R.Descripcion.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower()) ||
                                           R.NombreDocumento.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower()));
                }

                if (CatTipoTramiteId.HasValue)
                {
                    requestsQuery = requestsQuery.Where(R => R.CatTipoTramiteId == CatTipoTramiteId);
                }

                var requestCount = requestsQuery;
                pageInfo.ResultCount = await requestCount.CountAsync();

                var requests = await requestsQuery
                               .OrderByDescending(R => R.RequisitoId)
                               .Skip(pageInfo.GetElementosPorPagina * (pageInfo.GetCurrentPage - 1))
                               .Take(pageInfo.GetElementosPorPagina)
                               .ToListAsync();

                pageInfo.ResultList = requests;
            }
            return(pageInfo);
        }
예제 #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="Paginado"></param>
        /// <param name="EsActivo"></param>
        /// <returns></returns>
        public async Task <PagedInformationDTO <CatalogoResultDTO> > ConsultaConceptos(BasePageInformationDTO Paginado,
                                                                                       bool?EsActivo)
        {
            var pageInfo = new PagedInformationDTO <CatalogoResultDTO>
            {
                SetElementosPorPagina = Paginado.PageSize,
                CurrentPage           = Paginado.CurrentPage,
                QueryString           = Paginado.QueryString
            };


            using (var modelo = new ISSSTEEntities())
            {
                var requestsQuery = (from a in modelo.CatSysConfiguracion
                                     where (!EsActivo.HasValue || a.EsActivo == EsActivo) && a.EsAdministrable
                                     select new CatalogoResultDTO
                {
                    CatalogoId = a.CatSysConfiguracionId,
                    Concepto = a.Concepto,
                    Descripcion = a.Descripcion,
                    Valor = a.Valor,
                    EsAdministrable = a.EsAdministrable,
                    TipoDato = a.TipoDato,
                    EsActivo = a.EsActivo
                }).AsQueryable();

                if (!string.IsNullOrEmpty(pageInfo.GetFiltroBusqueda))
                {
                    requestsQuery = requestsQuery
                                    .Where(R => R.Concepto.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower()) ||
                                           R.Valor.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower()));
                }

                var requestCount = requestsQuery;
                pageInfo.ResultCount = await requestCount.CountAsync();

                var requests = await requestsQuery
                               .OrderByDescending(R => R.CatalogoId)
                               .Skip(pageInfo.GetElementosPorPagina * (pageInfo.GetCurrentPage - 1))
                               .Take(pageInfo.GetElementosPorPagina)
                               .ToListAsync();

                pageInfo.ResultList = requests;
            }

            return(pageInfo);
        }
        /// <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);
        }
예제 #5
0
        //public bool EsUsuarioBloqueado(int CatTipoTramiteId)
        //{
        //    using (var context = new ISSSTEEntities())
        //    {
        //        var result = context.Involucrado
        //            .Where(inv => inv.EsUsuarioBloqueado == true
        //            && inv.CatTipoInvolucradoId == Enumeracion.EnumTipoInvolucrado.Paciente
        //            && inv.Solicitud.TramiteUnidadAtencion.CatTipoTramiteId == CatTipoTramiteId);

        //        return result.Any();
        //    }

        //}


        /// <summary>
        ///     Obtiene una lista de solicitudes por diversos parámetros
        /// </summary>
        /// <param name="PageSize"></param>
        /// <param name="Page"></param>
        /// <param name="RoleName"></param>
        /// <param name="DelegationId"></param>
        /// <param name="Username"></param>
        /// <param name="Dates"></param>
        /// <param name="StatusId"></param>
        /// <param name="Query"></param>
        /// <param name="CatTipoTramiteId"></param>
        /// <returns></returns>
        // PEER_AAAV_MARCELO
        public async Task <PagedInformationDTO <RequestResultDTO> > ObtenerSolicituesPaginadasAsync(List <int> DelegationId,
                                                                                                    DatesDTO Fechas, int PageSize, int Page, int?StatusId = default(int?), string Query = null, int?CatTipoTramiteId = null)
        {
            var pageInfo = new PagedInformationDTO <RequestResultDTO>
            {
                SetElementosPorPagina = PageSize,
                CurrentPage           = Page,
                QueryString           = Query
            };

            using (var context = new ISSSTEEntities())
            {
                var requestsQuery = context.Solicitud
                                    .Join(context.TramiteUnidadAtencion,
                                          Req => Req.TramiteUnidadAtencionId, Tua => Tua.TramiteUnidadAtencionId,
                                          (Req, Tua) => new { req = Req, tua = Tua })
                                    .Select(UaReq => new RequestResultDTO
                {
                    SolicitudId            = UaReq.req.SolicitudId,
                    CatTipoTramiteId       = UaReq.tua.CatTipoTramiteId,
                    CatTipoTramiteConcepto = UaReq.tua.CatTipoTramite.Concepto,
                    Folio = UaReq.req.NumeroFolio,
                    Cita  = new CitaDTO
                    {
                        CatTipoEdoCitaId = UaReq.req.CatTipoEdoCitaId,
                        FechaCita        = UaReq.req.FechaCita,
                        HoraCita         = UaReq.req.Horario.HoraInicio,
                        ConceptoEdoCita  = UaReq.req.CatTipoEdoCita.Concepto
                    },
                    Paciente = UaReq.req.Involucrado
                               .Where(S => S.CatTipoInvolucradoId == Enumeracion.EnumTipoInvolucrado.Paciente)
                               .Select(S => new PersonaDTO
                    {
                        PersonaId         = S.PersonaId,
                        CURP              = S.Persona.CURP,
                        Materno           = S.Persona.Materno,
                        Paterno           = S.Persona.Paterno,
                        FechaNacimiento   = S.Persona.FechaNacimiento,
                        Nombre            = S.Persona.Nombre,
                        EsMasculino       = S.Persona.EsMasculino,
                        CorreoElectronico = S.Persona.Correo,
                        TelFijo           = "(" + S.Persona.Lada + ") " + S.Persona.Telefono,
                        TelMovil          = S.Persona.TelefonoMovil
                    })
                               .FirstOrDefault(),
                    Promovente = UaReq.req.Involucrado
                                 .Where(S => S.CatTipoInvolucradoId == Enumeracion.EnumTipoInvolucrado.Promovente)
                                 .Select(S => new PersonaDTO
                    {
                        PersonaId         = S.PersonaId,
                        CURP              = S.Persona.CURP,
                        Materno           = S.Persona.Materno,
                        Paterno           = S.Persona.Paterno,
                        FechaNacimiento   = S.Persona.FechaNacimiento,
                        Nombre            = S.Persona.Nombre,
                        EsMasculino       = S.Persona.EsMasculino,
                        CorreoElectronico = S.Persona.Correo,
                        TelFijo           = "(" + S.Persona.Lada + ") " + S.Persona.Telefono,
                        TelMovil          = S.Persona.TelefonoMovil
                    })
                                 .FirstOrDefault(),
                    UnidadAtencion = new UnidadAtencionDTO
                    {
                        UnidadAtencionId = UaReq.tua.UnidadAtencionId,
                        Descripcion      = UaReq.tua.UnidadAtencion.Descripcion
                    }
                }
                                            );

                if (Fechas.FechaInicio.HasValue && Fechas.FechaFin.HasValue)
                {
                    requestsQuery = requestsQuery.Where(R => R.Cita.FechaCita >= Fechas.FechaInicio &&
                                                        R.Cita.FechaCita <= Fechas.FechaFin);
                }

                if (!DelegationId.Contains(Enumeracion.EnumVarios.TodasLasDelegaciones))
                {
                    requestsQuery = requestsQuery
                                    .Where(R => DelegationId.Contains(R.UnidadAtencion.UnidadAtencionId));
                }

                if (!string.IsNullOrEmpty(pageInfo.GetFiltroBusqueda))
                {
                    requestsQuery = requestsQuery.Where(
                        R => R.Folio.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower()) ||
                        R.Paciente.Nombre.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower()) ||
                        R.Promovente.Nombre.ToLower().Contains(pageInfo.GetFiltroBusqueda.ToLower())
                        );
                }

                if (StatusId.HasValue)
                {
                    requestsQuery = requestsQuery.Where(R => R.Cita.CatTipoEdoCitaId == StatusId);
                }

                if (CatTipoTramiteId.HasValue)
                {
                    requestsQuery = requestsQuery.Where(R => R.CatTipoTramiteId == CatTipoTramiteId);
                }

                var requestCount = requestsQuery;
                pageInfo.ResultCount = await requestCount.CountAsync();

                var requests = await requestsQuery
                               .OrderByDescending(R => R.Cita.FechaCita)
                               .Skip(pageInfo.GetElementosPorPagina * (pageInfo.GetCurrentPage - 1))
                               .Take(pageInfo.GetElementosPorPagina)
                               .ToListAsync();

                pageInfo.ResultList = requests;
            }

            return(pageInfo);
        }