getEntityManager(); $result = $em->createQueryBuilder(); $dql = $result->select('persona', 'nacionalidad as Nacionalaidad ', 'nacionalidadPersona as NacionalaidadPersona', 'documentoIdentidad as Documentoidentidad', 'genero as Genero', 'estadoCivil as estadoCivilPersona', 'telefonos as PersonaTelefonos','telefonoCodigoArea','telefonoTipo', 'correos','correoTipo', 'groups') ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') ->Join('persona.genero', 'genero', 'persona.id = genero.persona_id') ->Join('persona.estadoCivil', 'estadoCivil', 'persona.id = estadoCivil.persona_id') ->Join('persona.groups', 'groups', 'persona.id = groups.persona_id') ->LeftJoin('persona.personaCorreos', 'correos', 'persona.id = correos.persona_id') ->leftJoin('persona.personaTelefonos', 'telefonos', 'persona.id = telefonos.persona_id') ->LeftJoin('correos.correoTipo', 'correoTipo', 'correoTipo.id = correo.correo_tipo_id') ->LeftJoin('telefonos.telefonoCodigoArea', 'telefonoCodigoArea', 'telefonoCodigoArea.id = telefono.telefono_codigo_area_id') ->LeftJoin('telefonoCodigoArea.telefonoTipo', 'telefonoTipo', 'telefonoCodigoArea.id = telefonoTipo.telefono_codigo_area_id') ->Join('nacionalidad.documentoIdentidadTipo', 'documentoIdentidad', 'nacionalidad.documento_identidad_tipo_id = documentoIdentidad.id') ->Join('nacionalidad.nacionalidad', 'nacionalidadPersona', 'nacionalidad.nacionalidad_id = nacionalidadPersona.id') ->where('nacionalidad.estatus = :estatusNacionalidad') ->setParameter('estatusNacionalidad', true) ->getQuery() ->getResult(Query::HYDRATE_ARRAY); return $dql; } public function findObjetoPersonaCompletoByIdAspirante($aspiranteId) { $em = $this->getEntityManager(); $result = $em->createQueryBuilder(); $dql = $result->select('persona') ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.aspirantes', 'aspirante', 'persona.id = aspirante.persona_id') ->where('aspirante.id = :aspiranteId') ->setParameter('aspiranteId', $aspiranteId) ->getQuery() ->getSingleResult(Query::HYDRATE_ARRAY); //die(dump($dql)); return $dql; } public function findObjetoPersonaByIdAspirante($aspiranteId) { $em = $this->getEntityManager(); $result = $em->createQueryBuilder(); $dql = $result->select('persona') ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.aspirantes', 'aspirante', 'persona.id = aspirante.persona_id') ->where('aspirante.id = :aspiranteId') ->setParameter('aspiranteId', $aspiranteId) ->getQuery() ->getSingleResult(); //die(dump($dql)); return $dql; } public function findCuentasAspirantes() { $em = $this->getEntityManager(); $result = $em->createQueryBuilder(); $dql = $result->select('persona.username as Correo') ->from('UBVSurUbvBundle:Persona', 'persona') ->getQuery() ->getResult(Query::HYDRATE_ARRAY); $arregloCuentas = array(); foreach ($dql as $persona){ $arregloCuentas[]=$persona["Correo"]; } //die(var_dump($arregloCuentas)); return $arregloCuentas; } public function findObjetoPersonaCompletoById($datos_form) { $em = $this->getEntityManager(); $tipoDocumento = $datos_form["tipoDocumentoIdentificacion"]; $identificacion = $datos_form["identificacion"]; $result = $em->createQueryBuilder(); $dql = $result->select('persona as Persona', 'nacionalidad as Nacionalaidad ', 'documentoIdentidad as Documentoidentidad') ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') ->Join('nacionalidad.documentoIdentidadTipo', 'documentoIdentidad', 'nacionalidad.documento_identidad_tipo_id = documentoIdentidad.id') ->where('nacionalidad.identificacion = :numeroIdentficacion') ->Andwhere('nacionalidad.documentoIdentidadTipo = :tipoIdentficacion') ->setParameter('numeroIdentficacion', $identificacion) ->setParameter('tipoIdentficacion', $tipoDocumento) ->getQuery() ->getOneOrNullResult(Query::HYDRATE_ARRAY); //die(var_dump($dql)); return $dql; } public function findObjetoPersonaById($personaId) { $em = $this->getEntityManager(); $result = $em->createQueryBuilder(); $dql = $result->select('persona','nacionalidad'/*,'documentos'*/) ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') //->innerJoin('persona.estudianteDocumentos', 'documentos', 'persona.id = documentos.persona_id') ->where('persona.id = :personaId') ->AndWhere('nacionalidad.estatus = :estatusNacionalidad') //->Andwhere('documentos.estatus = :estatusDocumentos') ->setParameter('personaId', $personaId) ->setParameter('estatusNacionalidad', true) //->setParameter('estatusDocumentos', true) ->getQuery() ->getOneOrNullResult(); //die(var_dump($dql)); return $dql; } public function findArregloPersonaById($personaId) { $em = $this->getEntityManager(); $result = $em->createQueryBuilder(); $dql = $result->select('persona as Persona', 'nacionalidad as Nacionalaidad ', 'nacionalidadPersona as NacionalaidadPersona', 'documentoIdentidad as Documentoidentidad', 'genero as Genero', 'estadoCivil as estadoCivilPersona', 'telefonos as PersonaTelefonos','telefonoCodigoArea','telefonoTipo', 'correos','correoTipo', 'aspirantes', 'aspiranteEstatus','aspiranteTipo', 'programa','programaTipo','programaNivel','aldea','aldeaTipo','programaRequisito','documentos','requisitos', 'groups') ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') ->Join('persona.genero', 'genero', 'persona.id = genero.persona_id') ->Join('persona.estadoCivil', 'estadoCivil', 'persona.id = estadoCivil.persona_id') ->Join('persona.groups', 'groups', 'persona.id = groups.persona_id') ->LeftJoin('persona.personaCorreos', 'correos', 'persona.id = correos.persona_id') ->LeftJoin('persona.estudianteDocumentos', 'documentos', 'persona.id = documentos.persona_id') ->LeftJoin('documentos.requisitoInscripcion', 'requisitos', 'documentos.requisito_inscripcion_id = requisitos.id') ->LeftJoin('persona.aspirantes', 'aspirantes', 'persona.id = aspirantes.persona_id') ->LeftJoin('aspirantes.programa', 'programa', 'aspirantes.id = programa.aspirante_id') ->LeftJoin('programa.requisitoInscripcions', 'programaRequisito', 'programa.id = programaRequisito.programa_id') ->LeftJoin('aspirantes.aspiranteEstatus', 'aspiranteEstatus', 'aspirantes.id = aspiranteEstatus.aspirante_id') ->LeftJoin('aspirantes.aspiranteTipo', 'aspiranteTipo', 'aspirantes.id = aspiranteTipo.aspirante_id') ->LeftJoin('aspirantes.aldea', 'aldea', 'aspirantes.id = aldea.aspirante_id') ->LeftJoin('aldea.aldeaTipo', 'aldeaTipo', 'aldea.id = aldeaTipo.aldea_id') ->LeftJoin('programa.programaTipo', 'programaTipo', 'programa.id = programaTipo.programa_id') ->LeftJoin('programaTipo.programaNivel', 'programaNivel', 'programaTipo.id = programanivel.programa_id') ->leftJoin('persona.personaTelefonos', 'telefonos', 'persona.id = telefonos.persona_id') ->LeftJoin('correos.correoTipo', 'correoTipo', 'correoTipo.id = correo.correo_tipo_id') ->LeftJoin('telefonos.telefonoCodigoArea', 'telefonoCodigoArea', 'telefonoCodigoArea.id = telefono.telefono_codigo_area_id') ->LeftJoin('telefonoCodigoArea.telefonoTipo', 'telefonoTipo', 'telefonoCodigoArea.id = telefonoTipo.telefono_codigo_area_id') ->Join('nacionalidad.documentoIdentidadTipo', 'documentoIdentidad', 'nacionalidad.documento_identidad_tipo_id = documentoIdentidad.id') ->Join('nacionalidad.nacionalidad', 'nacionalidadPersona', 'nacionalidad.nacionalidad_id = nacionalidadPersona.id') ->where('persona.id = :personaId') ->Andwhere('nacionalidad.estatus = :estatusNacionalidad') ->setParameter('personaId', $personaId) ->setParameter('estatusNacionalidad', true) ->getQuery() ->getSingleResult(Query::HYDRATE_ARRAY); return $dql; } public function findPersonaByIdentificacion($datos_form) { $em = $this->getEntityManager(); //die(dump("hola")); $tipoDocumento = $datos_form["tipoDocumentoIdentificacion"]; $identificacion = $datos_form["identificacion"]; $result = $em->createQueryBuilder(); $dql = $result->select('persona.id as IdPersona, persona.primer_nombre as PrimerNombre, persona.segundo_nombre as SegundoNombre,' .'persona.primer_apellido as PrimerApellido, persona.segundo_apellido as SegundoApellido', 'nacionalidad.identificacion as NumIdentificacion, nacionalidad.estatus as EstatusNacionalidad', 'documentoIdentidad.id as TipoDocIdent') ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') ->Join('nacionalidad.documentoIdentidadTipo', 'documentoIdentidad', 'nacionalidad.documento_identidad_tipo_id = documentoIdentidad.id') ->where('nacionalidad.identificacion = :numeroIdentficacion') ->Andwhere('nacionalidad.documentoIdentidadTipo = :tipoIdentficacion') ->setParameter('numeroIdentficacion', $identificacion) ->setParameter('tipoIdentficacion', $tipoDocumento) ->getQuery() ->getOneOrNullResult(Query::HYDRATE_ARRAY); return $dql; } public function findPersonaByCedula($cedula) { $em = $this->getEntityManager(); $result = $em->createQueryBuilder(); $dql = $result->select('persona') ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') ->Join('nacionalidad.documentoIdentidadTipo', 'documentoIdentidad', 'nacionalidad.documento_identidad_tipo_id = documentoIdentidad.id') ->where('nacionalidad.identificacion = :numeroIdentficacion') ->setParameter('numeroIdentficacion', $cedula) ->getQuery() ->getOneOrNullResult(); return $dql; } public function findCandidatoByIdentificacionPersonaAndNivelPrograma($datos_form) { $em = $this->getEntityManager(); $tipoDocumento = $datos_form["tipoDocumentoIdentificacion"]; $identificacion = $datos_form["identificacion"]; //$primerNombre = $datos_form["primerNombre"]; //$segundoNombre = $datos_form["segundoNombre"]; //$primerApellido = $datos_form["primerApellido"]; //$segundoApellido = $datos_form["segundoApellido"]; //$correoPersonal = $datos_form["correoPersonal"]; $programaNivel = $datos_form["programaNivel"]; $periodoAIniciar = $em->getRepository("UBVSurUbvBundle:PeriodoAcademico")->findObjetoPeriodoAcademicoByEstatus("Por Iniciar"); $result = $em->createQueryBuilder(); $dql = $result->select('candidato','documentoIdentidad','etnia','discapacidad','correoTipo','aldea','programa', 'estado','telefonoCodigoArea','estadoCivil','genero','aspiranteEstatus','aspiranteTipo','periodoAcademico') ->from('UBVSurUbvBundle:Candidato', 'candidato') ->Join('candidato.documentoIdentidadTipo', 'documentoIdentidad', 'candidato.documento_identidad_tipo_id = documentoIdentidad.id') ->Join('candidato.periodoAcademico', 'periodoAcademico', 'candidato.periodo_academico_id = periodoAcademico.id') ->Join('candidato.etnia', 'etnia', 'candidato.etnia_id = etnia.id') ->Join('candidato.discapacidad', 'discapacidad', 'candidato.discapacidad_id = discapacidad.id') ->Join('candidato.correoTipo', 'correoTipo', 'candidato.correo_tipo_id = correoTipo.id') ->Join('candidato.aldea', 'aldea', 'candidato.aldea_id = aldea.id') ->Join('candidato.programa', 'programa', 'candidato.programa_id = programa.id') ->Join('programa.programaTipo', 'programaTipo', 'programa.programa_tipo_id = programaTipo.id') ->Join('programaTipo.programaNivel', 'programaNiivel', 'programaTipo.programa_nivel_id = programaNivel.id') ->Join('candidato.estado', 'estado', 'candidato.estado_id = estado.id') ->Join('candidato.telefonoCodigoArea', 'telefonoCodigoArea', 'candidato.telefono_codigo_area_id = telefonoCodigoArea.id') ->Join('candidato.estadoCivil', 'estadoCivil', 'candidato.estado_civil_id = estadoCivil.id') ->Join('candidato.genero', 'genero', 'candidato.genero_id = genero.id') ->Join('candidato.aspiranteEstatus', 'aspiranteEstatus', 'candidato.aspirante_estatus_id = aspiranteEstatus.id') ->Join('candidato.aspiranteTipo', 'aspiranteTipo', 'candidato.aspirante_tipo_id = aspiranteTipo.id') ->where('candidato.identificacion = :numeroIdentficacion') ->Andwhere('candidato.documentoIdentidadTipo = :tipoIdentficacion') ->Andwhere('programaTipo.programaNivel = :programaNivel') ->setParameter('numeroIdentficacion', $identificacion) ->setParameter('tipoIdentficacion', $tipoDocumento) ->setParameter('programaNivel', $programaNivel) ->getQuery() ->getOneOrNullResult(); //return $dql; //die(dump($dql)); if (!is_null($dql)) { //die(var_dump($dql)); return $dql; } else { //die("no trae nada"); return false; } } public function findAspiranteByIdentificacionPersonaAndNivelPrograma($datos_form) { $em = $this->getEntityManager(); $tipoDocumento = $datos_form["tipoDocumentoIdentificacion"]; $identificacion = $datos_form["identificacion"]; //$primerNombre = $datos_form["primerNombre"]; //$segundoNombre = $datos_form["segundoNombre"]; //$primerApellido = $datos_form["primerApellido"]; //$segundoApellido = $datos_form["segundoApellido"]; //$correoPersonal = $datos_form["correoPersonal"]; $programaNivel = $datos_form["programaNivel"]; $periodoAIniciar = $em->getRepository("UBVSurUbvBundle:PeriodoAcademico")->findObjetoPeriodoAcademicoByEstatus("Por Iniciar"); $result = $em->createQueryBuilder(); $dql = $result->select('persona.id as IdPersona, persona.primer_nombre as PrimerNombre,' . 'persona.primer_apellido as PrimerApellido', 'nacionalidad.identificacion as NumIdentificacion', 'documentoIdentidad.id as TipoDocIdent', 'aspirante.id as AspiranteId', 'pfg.descripcion as Programa', 'pfg_tipo.id as ProgramaTipoId, pfg_tipo.descripcion as ProgramaTipo', 'aldea.descripcion as Aldea' ) ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') ->Join('nacionalidad.documentoIdentidadTipo', 'documentoIdentidad', 'nacionalidad.documento_identidad_tipo_id = documentoIdentidad.id') ->Join('persona.aspirantes', 'aspirante', 'persona.Id = aspirante.persona_id') ->Join('aspirante.programa', 'pfg', 'pfg.id = aspirante.programa_id') ->Join('pfg.programaTipo', 'pfg_tipo', 'pfg.id = pfg_tipo.programa_id') ->Join('pfg_tipo.programaNivel', 'nivel_pfg', 'nivel_pfg.id = pfg_tipo.programa_nivel_id') ->Join('aspirante.aldea', 'aldea', 'aldea.id = aspirante.aldea_id') ->where('nacionalidad.identificacion = :numeroIdentficacion') ->Andwhere('nacionalidad.documentoIdentidadTipo = :tipoIdentficacion') ->Andwhere('pfg_tipo.programaNivel = :nivelPrograma') ->Andwhere('aspirante.periodo_asignado = :periodoAIniciar') ->setParameter('numeroIdentficacion', $identificacion) ->setParameter('tipoIdentficacion', $tipoDocumento) ->setParameter('nivelPrograma', $programaNivel) ->setParameter('periodoAIniciar', $periodoAIniciar) ->getQuery() ->getResult(Query::HYDRATE_ARRAY); if (!empty($dql)) { //die(var_dump($dql)); return $dql; } else { //die("no trae nada"); return false; } } public function findEstudianteByIdentificacionPersonaAndNivelPrograma($datos_form) { $em = $this->getEntityManager(); $tipoDocumento = $datos_form["tipoDocumentoIdentificacion"]; $identificacion = $datos_form["identificacion"]; //$primerNombre = $datos_form["primerNombre"]; //$segundoNombre = $datos_form["segundoNombre"]; //$primerApellido = $datos_form["primerApellido"]; //$segundoApellido = $datos_form["segundoApellido"]; //$correoPersonal = $datos_form["correoPersonal"]; $nivelPrograma = $datos_form["programaNivel"]; $result = $em->createQueryBuilder(); $dql = $result->select('persona.id as IdPersona, persona.primer_nombre as PrimerNombre,' . 'persona.primer_apellido as PrimerApellido', 'nacionalidad.identificacion as NumIdentificacion', 'documentoIdentidad.id as TipoDocIdent', 'estudiante.id as EstudianteId, estudiante.estatus as EstatusEstudiante', 'detalle_estudiante.estatus as EstatusMallaEstudiante', 'periodo_academico.descripcion as PeriodoInscripcion', 'turno_estudio.descripcion as TurnoEstudio', 'programa.descripcion as Programa', 'tipo_programa.descripcion as TipoPrograma, tipo_programa.id as TipoProgramaId' ) ->from('UBVSurUbvBundle:Persona', 'persona') ->Join('persona.personaNacionalidads', 'nacionalidad', 'persona.id = nacionalidad.persona_id') ->Join('nacionalidad.documentoIdentidadTipo', 'documentoIdentidad', 'nacionalidad.documento_identidad_tipo_id = documentoIdentidad.id') ->Join('persona.estudiante', 'estudiante', 'persona.Id = estudiante.persona_id') ->Join('estudiante.estudianteDetalles', 'detalle_estudiante', 'detalle_estudiante.estudiante = estudiante.id') ->Join('detalle_estudiante.periodoAcademico', 'periodo_academico', 'detalle_estudiante.periodoAcademico = periodo_academico.id') ->Join('detalle_estudiante.turno', 'turno_estudio', 'detalle_estudiante.turno = turno_estudio.id') ->Join('detalle_estudiante.aldeaMallaCurricula', 'aldea_malla', 'detalle_estudiante.aldeaMallaCurricula = aldea_malla.id') ->Join('aldea_malla.mallaCurricular', 'malla_curricular', 'aldea_malla.mallaCurricular = malla_curricular.id') ->Join('malla_curricular.programa', 'programa', 'malla_curricular.programa = programa.id') ->Join('programa.programaTipo', 'tipo_programa', 'programa.programaTipo = tipo_programa.id') ->Join('tipo_programa.programaNivel', 'nivel_programa', 'tipo_programa.programaNivel = nivel_programa.id') ->where('nacionalidad.identificacion = :numeroIdentficacion') ->Andwhere('nacionalidad.documentoIdentidadTipo = :tipoIdentficacion') ->Andwhere('programa.programaTipo = :tipoPrograma') ->Andwhere('detalle_estudiante.estatus = :estatusMallaEstudiante') ->setParameter('numeroIdentficacion', $identificacion) ->setParameter('tipoIdentficacion', $tipoDocumento) ->setParameter('tipoPrograma', $nivelPrograma) ->setParameter('estatusMallaEstudiante', 1) ->getQuery() ->getResult(Query::HYDRATE_ARRAY); if (!empty($dql)) { //die(var_dump($dql)); return $dql; } else { //die("prueba"); return false; } } }