Beispiel #1
0
        public DtoConsultaNivelEducativo GetDtoNivelEducativoByGradoAnio(int idGradoAnio)
        {
            DtoConsultaNivelEducativo dtoConsultaNivelEducativo = null;
            NivelEducativo            nivelEducativo            = null;
            var query = Session.QueryOver <NivelEducativo>();
            NivelEducativoPorTipoEducacion nivelEducativoPorTipoEducacion = null;
            GradoAnioPorTipoNivelEducativo gradoAnioPorTipoNivelEducativo = null;

            query.JoinAlias(x => x.NivelEducativoPorTipoEducacion, () => nivelEducativoPorTipoEducacion);
            query.JoinAlias(x => nivelEducativoPorTipoEducacion.GradosAnioTNE, () => gradoAnioPorTipoNivelEducativo);
            //query.JoinQueryOver(x => x.NivelEducativoPorTipoEducacion, () => nivelEducativoPorTipoEducacion);
            //query.JoinQueryOver(x => nivelEducativoPorTipoEducacion.GradosAnioTNE, () => gradoAnioPorTipoNivelEducativo);


            query.Where(x => gradoAnioPorTipoNivelEducativo.GradoAño.Id == idGradoAnio);

            var resultado = query.List();
            var entidad   = resultado.FirstOrDefault();

            if (entidad != null && entidad.NivelEducativoPorTipoEducacion != null && entidad.NivelEducativoPorTipoEducacion.Count > 0)
            {
                var nivelEducativoAux = entidad.NivelEducativoPorTipoEducacion.FirstOrDefault().NivelEducativo;
                return(new DtoConsultaNivelEducativo {
                    Id = nivelEducativoAux.Id, Nombre = nivelEducativoAux.Nombre
                });
            }
            return(null);

            /* NO ME SALIO EL DTO :) ME TIRA EXCEPCION EN ESTA LINEA
             * return query.SelectList(list => list
             *   .Select(x => nivelEducativo.Id).WithAlias(() => dtoConsultaNivelEducativo.Id)
             *   .Select(x => nivelEducativo.Nombre).WithAlias(() => dtoConsultaNivelEducativo.Nombre))
             *   .TransformUsing(Transformers.AliasToBean<DtoConsultaNivelEducativo>()).List<DtoConsultaNivelEducativo>().FirstOrDefault();*/
        }
Beispiel #2
0
        public int GetIdNivelEducativoByEscuela(int idEscuela)
        {
            NivelEducativoPorTipoEducacion nivelEducativo = null;
            var query = Session.QueryOver <EmpresaBase>();

            query.And(x => x.Id == idEscuela);
            query.Select(x => x.TipoEmpresa);
            var tipoEmpresa = query.SingleOrDefault <TipoEmpresaEnum>();

            if (tipoEmpresa == TipoEmpresaEnum.ESCUELA_MADRE)
            {
                var query2 = Session.QueryOver <Escuela>();
                query2.And(x => x.Id == idEscuela);
                query2.JoinQueryOver(x => x.NivelesEducativo, () => nivelEducativo);
                query2.Select(x => nivelEducativo.NivelEducativo.Id);
                return(query2.SingleOrDefault <int>());
            }
            else
            {
                var query2 = Session.QueryOver <EscuelaAnexo>();
                query2.And(x => x.Id == idEscuela);
                query2.JoinQueryOver(x => x.NivelesEducativo, () => nivelEducativo);
                query2.Select(x => nivelEducativo.NivelEducativo.Id);
                return(query2.SingleOrDefault <int>());
            }
        }
Beispiel #3
0
        public bool EsDireccionDeNivelSuperior(int idEmpresa)
        {
            NivelEducativoPorTipoEducacion nete = null;
            var query = Session.QueryOver <DireccionDeNivel>();

            query.JoinQueryOver(x => x.NivelesEducativoXTE, () => nete);
            query.And(x => x.Id == idEmpresa);
            query.And(x => nete.NivelEducativo.Id == (int)NivelEducativoNombreEnum.SUPERIOR);
            return(query.RowCount() > 0 ? true : false);
        }
Beispiel #4
0
        public List <CicloEducativo> GetCiclosEducativosByNivelId(int nivelEducativoId)
        {
            NivelEducativoPorTipoEducacion nete = null;
            var query = Session.QueryOver <GradoAnioPorTipoNivelEducativo>();

            query.JoinQueryOver(x => x.NivelEducativoPorTipoEducacion, () => nete);
            query.And(x => nete.NivelEducativo.Id == nivelEducativoId);
            query.Select(x => x.CicloEducativo);
            return(query.List <CicloEducativo>().Distinct().ToList());
        }
Beispiel #5
0
        public NivelEducativo GetNivelEducativoByGradoAnio(int idGradoAnio)
        {
            var query = Session.QueryOver <NivelEducativo>();
            NivelEducativoPorTipoEducacion nivelEducativoPorTipoEducacion = null;
            GradoAnioPorTipoNivelEducativo gradoAnioPorTipoNivelEducativo = null;

            query.JoinQueryOver(x => x.NivelEducativoPorTipoEducacion, () => nivelEducativoPorTipoEducacion);
            query.JoinQueryOver(x => nivelEducativoPorTipoEducacion.GradosAnioTNE, () => gradoAnioPorTipoNivelEducativo);
            query.Where(x => gradoAnioPorTipoNivelEducativo.GradoAño.Id == idGradoAnio);
            var rdo = query.List();

            return(rdo.FirstOrDefault());
        }
Beispiel #6
0
        public List <CicloEducativo> CicloEducativoPorEscuela(int escuelaId)
        {
            NivelEducativoPorTipoEducacion nete  = null;
            NivelEducativoPorTipoEducacion nete2 = null;
            GradoAnioPorTipoNivelEducativo gatne = null;
            var query = Session.QueryOver <EmpresaBase>();

            query.And(x => x.Id == escuelaId);
            query.Select(x => x.TipoEmpresa);
            var tipoEmpresa = query.SingleOrDefault <TipoEmpresaEnum>();

            if (tipoEmpresa == TipoEmpresaEnum.ESCUELA_MADRE)
            {
                var query2 = Session.QueryOver <Escuela>();
                query2.And(x => x.Id == escuelaId);
                query2.JoinQueryOver(x => x.NivelesEducativo, () => nete);
                query2.Select(x => nete.TipoEducacion);
                var tipoEducacion = query2.SingleOrDefault <TipoEducacionEnum>();
                query2.JoinQueryOver(x => nete.GradosAnioTNE, () => gatne);
                query2.JoinQueryOver(x => gatne.NivelEducativoPorTipoEducacion, () => nete2);
                query2.And(x => nete2.TipoEducacion == tipoEducacion);
                query2.Select(x => gatne.CicloEducativo);
                return(query2.List <CicloEducativo>().Distinct().ToList());
            }
            else
            {
                var query2 = Session.QueryOver <EscuelaAnexo>();
                query2.And(x => x.Id == escuelaId);
                query2.JoinQueryOver(x => x.NivelesEducativo, () => nete);
                query2.Select(x => nete.TipoEducacion);
                var tipoEducacion = query2.SingleOrDefault <TipoEducacionEnum>();
                query2.JoinQueryOver(x => nete.GradosAnioTNE, () => gatne);
                query2.JoinQueryOver(x => gatne.NivelEducativoPorTipoEducacion, () => nete2);
                query2.And(x => nete2.TipoEducacion == tipoEducacion);
                query2.Select(x => gatne.CicloEducativo);
                return(query2.List <CicloEducativo>().Distinct().ToList());
            }
        }
Beispiel #7
0
        /// <summary>
        /// Obtiene una lista de escuelas segun filtro avanzado
        /// </summary>
        /// <param name="fechaAltaDesde">Fecha de alta (desde)</param>
        /// <param name="fechaAltaHasta">Fecha de alta (hasta)</param>
        /// <param name="fechaInicioActividadDesde">Fecha de inicio de actividades (desde)</param>
        /// <param name="fechaInicioActividadHasta">Fecha de inicio de actividades (hasta)</param>
        /// <param name="TipoEmpresaEnum">Tipo de empresa</param>
        /// <param name="numeroEscuela">Núero de escuela</param>
        /// <param name="tipoEscuelaEnum">Tipo de escuela</param>
        /// <param name="categoriaEscuelaEnum">Categoría de escuela</param>
        /// <param name="tipoEducacionEnum">Tipo educación </param>
        /// <param name="nivelEducativo">Nivel educativo</param>
        /// <param name="dependenciaEnum">Dependencia</param>
        /// <param name="ambitoEscuelaEnum">Ambito de escuela</param>
        /// <param name="esReligioso">Religioso</param>
        /// <param name="esArancelado">Arancelado</param>
        /// <param name="tipoInspeccionEnum">Tipo de inspección</param>
        /// <param name="idDepartamentoProvincial">Pertenece al domicilio</param>
        /// <param name="idLocalidad">Pertenece al domicilio</param>
        /// <param name="barrio">Pertenece al domicilio</param>
        /// <param name="calle">Pertenece al domicilio</param>
        /// <param name="altura">Pertenece al domicilio</param>
        /// <param name="estadoEmpresaEnum">Estado de la empresa</param>
        /// <param name="idObraSocial">Obra social</param>
        /// <param name="idPeriodoLectivo">Periodo lectivo</param>
        /// <returns>Devuelve una lista de escuelas que cumplan con los parametros de búsqueda</returns>
        public List <EscuelaAnexo> GetByFiltroAvanzado(DateTime?fechaAltaDesde, DateTime?fechaAltaHasta, DateTime?fechaInicioActividadDesde, DateTime?fechaInicioActividadHasta, TipoEmpresaEnum?tipoEmpresaEnum, int?numeroEscuela, int?tipoEscuelaEnum, CategoriaEscuelaEnum?categoriaEscuelaEnum, TipoEducacionEnum?tipoEducacionEnum, int?nivelEducativo, DependenciaEnum?dependenciaEnum, AmbitoEscuelaEnum?ambitoEscuelaEnum, bool?esReligioso, bool?esArancelado, TipoInspeccionEnum?tipoInspeccionEnum, int?idLocalidad, string barrio, string calle, int?altura, List <EstadoEmpresaEnum> estadoEmpresaEnum, int?idObraSocial, PeriodoLectivo periodoLectivo, Turno turno, string nombre, DateTime?fechaDesdeNotificacion, DateTime?fechaHastaNotificacion, int?idEmpresaUsuarioLogueado, string fltCodigoInspeccion)
        {
            var escuela         = new EscuelaAnexo();
            var _nivelEducativo = new NivelEducativo();
            var obraSocial      = new ObraSocial();
            var perLectivo      = new PeriodoLectivo();
            var turnoN          = new Turno();
            var nivelEducativoPorTipoEducacion = new NivelEducativoPorTipoEducacion();
            var empresaRegistro = new EmpresaBase();

            var query = Session.QueryOver <EscuelaAnexo>(() => escuela);

            if (idEmpresaUsuarioLogueado.HasValue)
            {
                query.JoinQueryOver(x => x.EmpresaRegistro, () => empresaRegistro);
                query.And(x => empresaRegistro.Id == idEmpresaUsuarioLogueado);
            }
            if (fechaAltaDesde.HasValue)
            {
                query.And(x => x.FechaAlta >= fechaAltaDesde);
            }
            if (fechaAltaHasta.HasValue)
            {
                query.And(x => x.FechaAlta <= fechaAltaHasta);
            }
            if (fechaInicioActividadDesde.HasValue)
            {
                query.And(x => x.FechaInicioActividad >= fechaInicioActividadDesde);
            }
            if (fechaInicioActividadHasta.HasValue)
            {
                query.And(x => x.FechaInicioActividad <= fechaInicioActividadHasta);
            }
            if (!string.IsNullOrEmpty(nombre))
            {
                query.And(x => x.Nombre.IsLike(nombre));
            }
            if (fechaDesdeNotificacion.HasValue)
            {
                query.And(x => x.FechaNotificacion >= fechaDesdeNotificacion);
            }
            if (fechaHastaNotificacion.HasValue)
            {
                query.And(x => x.FechaNotificacion <= fechaHastaNotificacion);
            }
            if (tipoEmpresaEnum.HasValue)
            {
                query.And(x => x.TipoEmpresa == tipoEmpresaEnum);
            }
            if (numeroEscuela.HasValue)
            {
                query.And(x => x.NumeroEscuela == numeroEscuela);
            }
            if (categoriaEscuelaEnum.HasValue)
            {
                query.And(x => x.TipoCategoria == categoriaEscuelaEnum);
            }
            if (tipoEducacionEnum.HasValue)
            {
                query.And(x => x.TipoEducacion == tipoEducacionEnum);
            }
            if (nivelEducativo.HasValue)
            {
                query.JoinQueryOver(x => x.NivelesEducativo, () => nivelEducativoPorTipoEducacion);
                query.JoinQueryOver(x => nivelEducativoPorTipoEducacion.NivelEducativo, () => _nivelEducativo);
                query.And(x => _nivelEducativo.Id == nivelEducativo);
            }
            if (!string.IsNullOrEmpty(fltCodigoInspeccion))
            {
                query.And(x => x.CodigoInspeccion == fltCodigoInspeccion);
            }
            if (dependenciaEnum.HasValue)
            {
                query.And(x => x.Dependencia == dependenciaEnum);
            }
            if (ambitoEscuelaEnum.HasValue)
            {
                query.And(x => x.Ambito == ambitoEscuelaEnum);
            }
            if (esReligioso.HasValue)
            {
                query.And(Restrictions.Eq("Religioso", esReligioso.Value ? 'Y' : 'N'));
            }
            if (esArancelado.HasValue)
            {
                query.And(Restrictions.Eq("Arancelado", esArancelado.Value ? 'Y' : 'N'));
            }
            if (idObraSocial.HasValue)
            {
                query.JoinQueryOver <ObraSocial>(() => obraSocial);
                query.And(() => obraSocial.Id == idObraSocial);
            }
            if (periodoLectivo != null)
            {
                query.JoinQueryOver <PeriodoLectivo>(() => perLectivo);
                query.And(() => perLectivo.Id == periodoLectivo.Id);
            }
            if (turno != null)
            {
                query.JoinQueryOver <Turno>(() => turnoN);
                query.And(() => turnoN.Id == turno.Id);
            }
            List <EscuelaAnexo> listadoEscuelas = (List <EscuelaAnexo>)query.List <EscuelaAnexo>();

            List <EscuelaAnexo> listaEscuela = new List <EscuelaAnexo>();

            if (estadoEmpresaEnum != null && estadoEmpresaEnum.Count > 0)
            {
                foreach (var est in estadoEmpresaEnum)
                {
                    listaEscuela.AddRange(listadoEscuelas.Where(esc => esc.EstadoEmpresa == est));
                }
                return(listaEscuela);
            }
            return(listadoEscuelas);


            //if (idLocalidad.HasValue || !string.IsNullOrEmpty(barrio) || !string.IsNullOrEmpty(calle) || altura.HasValue)
            //{
            //    foreach (Escuela emp in escuelas)
            //    {
            //        emp.Domicilio = new DaoDomicilio().GetByEntidad(emp.VinculoDomicilio, emp.Id);
            //    }
            //    escuelas = (List<Escuela>)escuelas.Where(x => x.Domicilio.Localidad.Id == idLocalidad &&
            //        x.Domicilio.Barrio.Nombre.Contains(barrio) && x.Domicilio.Calle.Nombre.Contains(calle)
            //        && x.Domicilio.Altura == altura);
            //}
            //return escuelas;
        }