/** * Eliminar un Estudiante Dado el $estudianteId * * @param $estudianteId */ public function removeEstudiante($estudianteId) { $objetoPerdidoBean = new ObjetoPerdidoBean($this->persistenceManager); $prestamoBean = new PrestamoBean($this->persistenceManager); $impresionBean = new ImpresionBean($this->persistenceManager); $monitorBean = new MonitorBean($this->persistenceManager); $estudiante = new Estudiante(); $estudiante->setId($estudianteId); # Validamos los campos if (!EntityValidator::validateId($estudianteId)) { throw new Exception(SALAS_COMP_ALERT_E_VALIDATION_FAIL, $this->ID + 148); } # Verificamos que la entidad exista. if (!$this->estudianteBean->getEstudiante($estudiante)) { throw new Exception(SALAS_COMP_ALERT_E_ENTITY_NOT_FOUND_FAIL, $this->ID + 149); } # Verificamos que la entidad no esté siendo utilziada en alguna otra. # Verificamos que la entidad no esté siendo utilziada en ObjetoPerdido->objetoPerdidoEstudiante $objetoPerdidos = $objetoPerdidoBean->getObjetoPerdidosByObjetoPerdidoEstudiante($estudiante); if (count($objetoPerdidos) > 0) { throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_LINKED_FAIL, $this->ID + 144); } # Verificamos que la entidad no esté siendo utilziada en Prestamo->prestamoEstudiante $prestamos = $prestamoBean->getPrestamosByPrestamoEstudiante($estudiante); if (count($prestamos) > 0) { throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_LINKED_FAIL, $this->ID + 145); } # Verificamos que la entidad no esté siendo utilziada en Impresion->impresionEstudiante $impresions = $impresionBean->getImpresionsByImpresionEstudiante($estudiante); if (count($impresions) > 0) { throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_LINKED_FAIL, $this->ID + 146); } # Verificamos que la entidad no esté siendo utilziada en Monitor->monitorEstudiante $monitors = $monitorBean->getMonitorsByMonitorEstudiante($estudiante); if (count($monitors) > 0) { throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_LINKED_FAIL, $this->ID + 147); } # Eliminamos la entidad if (!$this->estudianteBean->removeEstudiante($estudiante)) { throw new Exception(SALAS_COMP_ALERT_E_PERSISTENCE_REMOVE_FAIL, $this->ID + 150); } }