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();*/ }
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()); }
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()); } }